fix: cicd

This commit is contained in:
Benjamin Labrecque
2026-07-15 15:18:18 +02:00
parent 7ef3b172ab
commit dff4df83c4
2 changed files with 130 additions and 11 deletions
+30 -11
View File
@@ -21,19 +21,38 @@ jobs:
- name: Checkout repository
uses: actions/checkout@v4
with:
fetch-depth: 0 # needed for git diff tracking
fetch-depth: 2 # needed for git diff tracking
- name: Defined filter paths
uses: dorny/paths-filter@v3
id: filter
with:
filters: |
bin:
- 'bin/**'
agebd:
- 'packages/agebd/**'
services:
- 'services/**'
run: |
# Get list of modified files between current commit (HEAD) and its parent (HEAD~1)
CHANGED_FILES=$(git diff-tree --no-commit-id --name-only -r HEAD HEAD~1 || true)
echo "Changed files:"
echo "$CHANGED_FILES"
# Initialize flags to false
BIN_CHANGED="false"
AGEBD_CHANGED="false"
SERVICES_CHANGED="false"
# Check if any changed files
if echo "$CHANGED_FILES" | grep -q "^bin/"; then
BIN_CHANGED="true"
fi
if echo "$CHANGED_FILES" | grep -q "^packages/agebd/"; then
AGEBD_CHANGED="true"
fi
if echo "$CHANGED_FILES" | grep -q "^services/"; then
SERVICES_CHANGED="true"
fi
# Output variables to the runner step context
echo "bin_changed=$BIN_CHANGED" >> "$GITHUB_OUTPUT"
echo "agebd_changed=$AGEBD_CHANGED" >> "$GITHUB_OUTPUT"
echo "services_changed=$SERVICES_CHANGED" >> "$GITHUB_OUTPUT"
# TODO: maybe this is better: `rsync -av --delete ./ "${DEST_DIR}/"` # Sync everything perfectly, including hidden files, and delete old stale files
- name: Bin - deploy
@@ -91,7 +110,7 @@ jobs:
echo "No services changed in this commit range. Skipping deployment smoothly."
exit 0
fi
# 3. Fire the playbook passing variables down
ansible-playbook playbooks/deploy-and-restart-modified-services.yml \
-i hosts.yml \