Merge pull request #11 from cdalvaro/add_crond_to_supervisor

Add crond to supervisor
This commit is contained in:
Carlos D. Álvaro
2018-12-29 11:08:35 +01:00
committed by GitHub
4 changed files with 42 additions and 6 deletions

View File

@@ -14,6 +14,8 @@ Please refer to the SaltStack [Release Notes](https://docs.saltstack.com/en/deve
- Add support for setting timezone - Add support for setting timezone
- Add logrotate support - Add logrotate support
- Add supervisor support - Add supervisor support
- Add cron support
- Add Docker Labels from label-schema.org
- Addressed a bug that caused the container to crash when `/home/salt/data/keys/minions` was not present - Addressed a bug that caused the container to crash when `/home/salt/data/keys/minions` was not present
**2018.3.2** **2018.3.2**

View File

@@ -1,8 +1,7 @@
FROM ubuntu:xenial-20181113 FROM ubuntu:xenial-20181113
LABEL maintainer="carlos.alvaro@citelan.es" ARG BUILD_DATE
LABEL description="SaltStack master" ARG VCS_REF
LABEL version="2018.3.3"
# https://github.com/saltstack/salt/releases # https://github.com/saltstack/salt/releases
ENV SALT_VERSION="2018.3.3" \ ENV SALT_VERSION="2018.3.3" \
@@ -75,7 +74,20 @@ RUN rm -rf ${SALT_BUILD_DIR}/*
# Entrypoint # Entrypoint
COPY entrypoint.sh /sbin/entrypoint.sh COPY entrypoint.sh /sbin/entrypoint.sh
RUN chmod +x /sbin/entrypoint.sh RUN chmod +x /sbin/entrypoint.sh
WORKDIR ${SALT_HOME}
LABEL \
maintainer="github@cdalvaro.io" \
org.label-schema.vendor=cdalvaro \
org.label-schema.name="SaltStack Master" \
org.label-schema.version=${SALT_VERSION} \
org.label-schema.description="Dockerized SaltStack Master" \
org.label-schema.url="https://github.com/cdalvaro/saltstack-master" \
org.label-schema.vcs-url="https://github.com/cdalvaro/saltstack-master.git" \
org.label-schema.vcs-ref=${VCS_REF} \
org.label-schema.build-date=${BUILD_DATE} \
org.label-schema.docker.schema-version="1.0" \
com.cdalvaro.saltstack-master.license=MIT
WORKDIR ${SALT_HOME}
ENTRYPOINT [ "/sbin/entrypoint.sh" ] ENTRYPOINT [ "/sbin/entrypoint.sh" ]
CMD [ "app:start" ] CMD [ "app:start" ]

View File

@@ -84,13 +84,13 @@ sed -i "s|^su root syslog$|su root root|" /etc/logrotate.conf
# Configure supervisor # Configure supervisor
echo "Configuring supervisor ..." echo "Configuring supervisor ..."
# configure supervisord to start unicorn # configure supervisord to start salt-master
cat > /etc/supervisor/conf.d/salt-master.conf <<EOF cat > /etc/supervisor/conf.d/salt-master.conf <<EOF
[program:salt-master] [program:salt-master]
priority=5 priority=5
directory=${SALT_HOME} directory=${SALT_HOME}
environment=HOME=${SALT_HOME} environment=HOME=${SALT_HOME}
command=salt-master command=/usr/bin/salt-master
user=${SALT_USER} user=${SALT_USER}
autostart=true autostart=true
autorestart=true autorestart=true
@@ -98,3 +98,16 @@ stopsignal=QUIT
stdout_logfile=${SALT_LOGS_DIR}/supervisor/%(program_name)s.log stdout_logfile=${SALT_LOGS_DIR}/supervisor/%(program_name)s.log
stderr_logfile=${SALT_LOGS_DIR}/supervisor/%(program_name)s.log stderr_logfile=${SALT_LOGS_DIR}/supervisor/%(program_name)s.log
EOF EOF
# configure supervisord to start crond
cat > /etc/supervisor/conf.d/cron.conf <<EOF
[program:cron]
priority=20
directory=/tmp
command=/usr/sbin/cron -f
user=root
autostart=true
autorestart=true
stdout_logfile=${SALT_LOGS_DIR}/supervisor/%(program_name)s.log
stderr_logfile=${SALT_LOGS_DIR}/supervisor/%(program_name)s.log
EOF

9
hooks/build Normal file
View File

@@ -0,0 +1,9 @@
#!/bin/bash
# Docker Daemon Build Hook
# $IMAGE_NAME var is injected into the build so the tag is correct.
docker build \
--build-arg=BUILD_DATE="$(date +"%Y-%m-%d %H:%M:%S%:z")" \
--build-arg=VCS_REF="$(git rev-parse --short HEAD)" \
-t ${IMAGE_NAME} .