Files
hla_framework_bd/.gitea/scripts/deploy-and-restart-service.sh
labrec_bandBenjamin Labrecque 7c86ddd3a3
Build and Publish Site / docker (push) Successful in 6s
Deploy / deploy (push) Successful in 41s
Feature/add services tests cicd (#48)
Closes:
- uv caching #51
- act runner cache #49
- services tests #20

---------

Co-authored-by: Benjamin Labrecque <labrecque.benji@gmail.com>
Reviewed-on: #48
2026-07-31 11:34:42 +02:00

42 lines
1.4 KiB
Bash
Executable File

#!/bin/bash
SERVICE_NAME=$1
AGEBD_ENV=$2
echo "=========================================="
echo "Deploying service: $SERVICE_NAME (${AGEBD_ENV})"
echo "=========================================="
SERVICE_NAME_LOWER=$(echo "$SERVICE_NAME" | tr '[:upper:]' '[:lower:]')
SERVICE_NAME_UPPER=$(echo "$SERVICE_NAME" | tr '[:lower:]' '[:upper:]')
SERVICE_DIR=/sls/bd/hla/${AGEBD_ENV}/services/${SERVICE_NAME_LOWER}/current
SYSTEMD_UNIT_NAME=AGEBD-SERVICE-${SERVICE_NAME_UPPER}.service
SYSTEMD_UNIT_FILE_PATH=${SERVICE_DIR}/systemd/${SYSTEMD_UNIT_NAME}
# TODO: see https://gitea.psi.ch/sls/hla_framework_bd/issues/50
# rm -rf "${SERVICE_DIR}"
# mkdir -p ${SERVICE_DIR}
# cp -r ./services/${SERVICE_NAME_LOWER}/current/* ${SERVICE_DIR}/
rsync -avz --delete \
--exclude='.nfs*' \
--exclude='.git/' \
--exclude='.venv/' \
--exclude='__pycache__/' \
--exclude='*.pyc' \
--exclude='.pytest_cache/' \
./services/${SERVICE_NAME_LOWER}/current/* ${SERVICE_DIR}/
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}"
export XDG_RUNTIME_DIR="/run/user/$(id -u)"
systemctl --user daemon-reload
systemctl --user enable "${SYSTEMD_UNIT_NAME}"
systemctl --user restart "${SYSTEMD_UNIT_NAME}"