diff --git a/.gitea/scripts/deploy-service.sh b/.gitea/scripts/deploy-service.sh index b741fa9..500b1d6 100755 --- a/.gitea/scripts/deploy-service.sh +++ b/.gitea/scripts/deploy-service.sh @@ -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