fix: only execute systemd stuff on deployment for relevant services
This commit is contained in:
@@ -51,23 +51,26 @@ if [ -n "${AGEBD_ENV_SUFFIX_UPPER}" ]; then
|
||||
done
|
||||
fi
|
||||
|
||||
### SYSTEMD
|
||||
if [ -f "${SYSTEMD_UNIT_FILE_PATH}" ]; then
|
||||
sed -i "s/{{ *agebd_env* }}/${AGEBD_ENV}/g" "${SYSTEMD_UNIT_FILE_PATH}"
|
||||
fi
|
||||
|
||||
|
||||
mkdir -p ${HOME}/.config/systemd/user
|
||||
ln -sf "${SYSTEMD_UNIT_FILE_PATH}" "${HOME}/.config/systemd/user/${SYSTEMD_UNIT_NAME}"
|
||||
|
||||
VERSION_DEPLOYED_PV="AGEBD-ALH${AGEBD_ENV_SUFFIX_UPPER}:${SERVICE_NAME_UPPER}-VERSION-DEPLOYED"
|
||||
echo "Putting ${NOW} in ${VERSION_DEPLOYED_PV}"
|
||||
caput "${VERSION_DEPLOYED_PV}" "${NOW}"
|
||||
|
||||
if [ "$DO_RESTART_SERVICE" ]; then
|
||||
echo "Enabling and restarting systemd service ${SYSTEMD_UNIT_NAME}"
|
||||
export XDG_RUNTIME_DIR="/run/user/$(id -u)"
|
||||
systemctl --user daemon-reload
|
||||
systemctl --user enable "${SYSTEMD_UNIT_NAME}"
|
||||
systemctl --user restart "${SYSTEMD_UNIT_NAME}"
|
||||
### SYSTEMD
|
||||
# Not every service has a systemd unit (e.g. IOC-only services like params) -
|
||||
# skip enabling/restarting entirely when there's nothing to enable/restart.
|
||||
if [ -f "${SYSTEMD_UNIT_FILE_PATH}" ]; then
|
||||
sed -i "s/{{ *agebd_env* }}/${AGEBD_ENV}/g" "${SYSTEMD_UNIT_FILE_PATH}"
|
||||
|
||||
mkdir -p ${HOME}/.config/systemd/user
|
||||
ln -sf "${SYSTEMD_UNIT_FILE_PATH}" "${HOME}/.config/systemd/user/${SYSTEMD_UNIT_NAME}"
|
||||
|
||||
if [ "$DO_RESTART_SERVICE" ]; then
|
||||
echo "Enabling and restarting systemd service ${SYSTEMD_UNIT_NAME}"
|
||||
export XDG_RUNTIME_DIR="/run/user/$(id -u)"
|
||||
systemctl --user daemon-reload
|
||||
systemctl --user enable "${SYSTEMD_UNIT_NAME}"
|
||||
systemctl --user restart "${SYSTEMD_UNIT_NAME}"
|
||||
fi
|
||||
else
|
||||
echo "No systemd unit for ${SERVICE_NAME_LOWER}, skipping enable/restart"
|
||||
fi
|
||||
|
||||
Reference in New Issue
Block a user