Skip to content

Commit

Permalink
Update packaging to add /etc/sysconfig support
Browse files Browse the repository at this point in the history
This makes it easy to provide parameters like the Prometheus
push-gateway address
  • Loading branch information
acdha committed Sep 7, 2017
1 parent 13208d2 commit e060079
Show file tree
Hide file tree
Showing 7 changed files with 15 additions and 7 deletions.
5 changes: 3 additions & 2 deletions Dockerfile.release-deb
Expand Up @@ -14,11 +14,12 @@ RUN cargo build --release
WORKDIR /package-build

RUN mv /mountstatus/target/release/mount_status_monitor /package-build/
COPY systemd/mount_status_monitor.service /package-build/
COPY packaging/sysconfig /package-build/
COPY packaging/systemd/mount_status_monitor.service /package-build/

# This is good for a ~60% size reduction:
RUN strip mount_status_monitor

RUN fpm -s dir -t deb -n mount-status-monitor --version ${PACKAGE_VERSION} --replaces MountStatusMonitor mount_status_monitor=/usr/sbin/mount_status_monitor mount_status_monitor.service=/etc/systemd/system/mount_status_monitor.service
RUN fpm -s dir -t deb -n mount-status-monitor --version ${PACKAGE_VERSION} --replaces MountStatusMonitor mount_status_monitor=/usr/sbin/mount_status_monitor mount_status_monitor.service=/etc/systemd/system/mount_status_monitor.service sysconfig=/etc/sysconfig/mount_status_monitor

CMD /bin/cp -vr /package-build/*.deb /host-packages-volume
5 changes: 3 additions & 2 deletions Dockerfile.release-el6
Expand Up @@ -24,12 +24,13 @@ WORKDIR /mountstatus

COPY Cargo.toml /mountstatus/
COPY src/ /mountstatus/src/
COPY upstart/ /mountstatus/upstart/
COPY packaging/upstart/ /mountstatus/upstart/
COPY packaging/sysconfig /mountstatus/

# EL6 has a very old version of Upstart which predates support for console logging:
RUN sed -i.bak '/console log/d' /mountstatus/upstart/*.conf

RUN cargo build --release && strip target/release/mount_status_monitor
RUN fpm -s dir -t rpm --rpm-dist el6 -n mount-status-monitor --version ${PACKAGE_VERSION} --replaces MountStatusMonitor target/release/mount_status_monitor=/usr/sbin/mount_status_monitor upstart/mount_status_monitor.conf=/etc/init/mount_status_monitor.conf
RUN fpm -s dir -t rpm --rpm-dist el6 -n mount-status-monitor --version ${PACKAGE_VERSION} --replaces MountStatusMonitor target/release/mount_status_monitor=/usr/sbin/mount_status_monitor upstart/mount_status_monitor.conf=/etc/init/mount_status_monitor.conf sysconfig=/etc/sysconfig/mount_status_monitor

CMD /bin/cp -vr /mountstatus/*.rpm /host-packages-volume
5 changes: 3 additions & 2 deletions Dockerfile.release-el7
Expand Up @@ -21,9 +21,10 @@ WORKDIR /mountstatus

COPY Cargo.toml /mountstatus/
COPY src/ /mountstatus/src/
COPY systemd/ /mountstatus/systemd/
COPY packaging/systemd/ /mountstatus/systemd/
COPY packaging/sysconfig /mountstatus/

RUN cargo build --release && strip target/release/mount_status_monitor
RUN fpm -s dir -t rpm --rpm-dist el7 -n mount-status-monitor --version ${PACKAGE_VERSION} --replaces MountStatusMonitor target/release/mount_status_monitor=/usr/sbin/mount_status_monitor systemd/mount_status_monitor.service=/etc/systemd/system/mount_status_monitor.service
RUN fpm -s dir -t rpm --rpm-dist el7 -n mount-status-monitor --version ${PACKAGE_VERSION} --replaces MountStatusMonitor target/release/mount_status_monitor=/usr/sbin/mount_status_monitor systemd/mount_status_monitor.service=/etc/systemd/system/mount_status_monitor.service sysconfig=/etc/sysconfig/mount_status_monitor

CMD /bin/cp -vr /mountstatus/*.rpm /host-packages-volume
File renamed without changes.
1 change: 1 addition & 0 deletions packaging/sysconfig
@@ -0,0 +1 @@
EXTRA_ARGS=""
Expand Up @@ -5,5 +5,6 @@ After=syslog.target
[Service]
Type=simple
ExecStart=/usr/sbin/mount_status_monitor
EnvironmentFile=/etc/sysconfig/mount_status_monitor
Restart=on-failure
RestartSec=10s
Expand Up @@ -8,4 +8,7 @@ console log

respawn

exec /usr/sbin/mount_status_monitor
script
. /etc/sysconfig/mount_status_monitor
exec /usr/sbin/mount_status_monitor ${EXTRA_ARGS:-}
end script

0 comments on commit e060079

Please sign in to comment.