name: Deployment Config CI on: push: branches: - main paths: - "deploy/**" - "Dockerfile*" - ".dockerignore" - "server/Dockerfile" - "server/.dockerignore" pull_request: branches: - main paths: - "deploy/**" - "Dockerfile*" - ".dockerignore" - "server/Dockerfile" - "server/.dockerignore" workflow_dispatch: permissions: contents: read jobs: deploy-config: name: Deployment Config runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v4 - name: Install Docker CLI run: | if command -v docker >/dev/null 2>&1; then docker --version exit 0 fi apt-get update apt-get install -y docker.io docker-compose-plugin - name: Validate compose files run: | docker compose -f deploy/docker-compose.yaml config >/tmp/compose.yaml docker compose -f deploy/docker-compose.yaml -f deploy/docker-compose.offline.yaml config >/tmp/compose-offline.yaml - name: Validate shell scripts run: bash -n deploy/scripts/package.sh deploy/scripts/load-and-start.sh