aboutsummaryrefslogtreecommitdiff
path: root/docker/qdrouterd
diff options
context:
space:
mode:
Diffstat (limited to 'docker/qdrouterd')
-rw-r--r--docker/qdrouterd/Dockerfile.j241
-rw-r--r--docker/qdrouterd/extend_start.sh10
-rw-r--r--docker/qdrouterd/qdrouterd_sudoers1
3 files changed, 52 insertions, 0 deletions
diff --git a/docker/qdrouterd/Dockerfile.j2 b/docker/qdrouterd/Dockerfile.j2
new file mode 100644
index 000000000..e8ce9339a
--- /dev/null
+++ b/docker/qdrouterd/Dockerfile.j2
@@ -0,0 +1,41 @@
+FROM {{ namespace }}/{{ image_prefix }}base:{{ tag }}
+LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build_date }}"
+
+{% block qdrouterd_header %}{% endblock %}
+
+{% import "macros.j2" as macros with context %}
+
+{{ macros.configure_user(name='qdrouterd') }}
+
+{% block qdrouterd_install %}
+{% if base_distro in ['centos', 'oraclelinux', 'rhel'] %}
+ {% set qdrouterd_packages = [
+ 'cyrus-sasl-lib',
+ 'cyrus-sasl-plain',
+ 'qpid-dispatch-router'
+ ] %}
+
+{{ macros.install_packages(qdrouterd_packages | customizable("packages")) }}
+
+{% elif base_distro in ['debian', 'ubuntu'] %}
+ {% set qdrouterd_packages = [
+ 'sasl2-bin',
+ 'libpython2.7',
+ 'qdrouterd',
+ ] %}
+
+{{ macros.install_packages(qdrouterd_packages | customizable("packages")) }}
+
+{% endif %}
+{% endblock %}
+
+COPY extend_start.sh /usr/local/bin/kolla_extend_start
+COPY qdrouterd_sudoers /etc/sudoers.d/kolla_qdrouterd_sudoers
+RUN chmod 755 /usr/local/bin/kolla_extend_start \
+ && chmod 750 /etc/sudoers.d \
+ && chmod 440 /etc/sudoers.d/kolla_qdrouterd_sudoers
+
+{% block qdrouterd_footer %}{% endblock %}
+{% block footer %}{% endblock %}
+
+USER qdrouterd
diff --git a/docker/qdrouterd/extend_start.sh b/docker/qdrouterd/extend_start.sh
new file mode 100644
index 000000000..829b0758b
--- /dev/null
+++ b/docker/qdrouterd/extend_start.sh
@@ -0,0 +1,10 @@
+#!/bin/bash
+
+# Create log directory, with appropriate permissions
+QDROUTERD_LOG_DIR="/var/log/kolla/qdrouterd"
+if [[ ! -d "${QDROUTERD_LOG_DIR}" ]]; then
+ mkdir -p ${QDROUTERD_LOG_DIR}
+fi
+if [[ $(stat -c %a ${QDROUTERD_LOG_DIR}) != "755" ]]; then
+ chmod 755 ${QDROUTERD_LOG_DIR}
+fi
diff --git a/docker/qdrouterd/qdrouterd_sudoers b/docker/qdrouterd/qdrouterd_sudoers
new file mode 100644
index 000000000..dbcd341a4
--- /dev/null
+++ b/docker/qdrouterd/qdrouterd_sudoers
@@ -0,0 +1 @@
+%kolla ALL=(root) NOPASSWD: /usr/bin/chown -R qdrouterd\: /var/lib/qdrouterd, /bin/chown -R qdrouterd\: /var/lib/qdrouterd