name: Deploy mini-pc on: push: paths: - 'mini-pc/**' jobs: deploy: runs-on: mini-pc steps: - uses: actions/checkout@v3 with: fetch-depth: 2 - name: Deploy changed stacks run: | cd /opt/services git pull for dir in $(git diff --name-only HEAD~1 HEAD | grep '^mini-pc/' | cut -d/ -f2 | sort -u); do echo "==> Deploying $dir" cd /opt/services/mini-pc/$dir test -f docker-compose.yml || { echo "No docker-compose.yml in $dir, skipping"; cd /opt/services; continue; } if grep -qE '^[[:space:]]*build:' docker-compose.yml; then docker compose up -d --build --remove-orphans else docker compose pull docker compose up -d --remove-orphans fi cd /opt/services done