name: Infrastructure on: pull_request: branches: - main push: branches: - main tags: - infra/** paths: - infra/**-playbook.yaml - .github/workflows/infra.yaml fork: jobs: check: name: Check infrastructure definitions runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v3 - run: | echo ${{ github.event.pull_request.commits }} echo ${{ github.event.pusher }} echo ${{ github.event.forkee }} - name: Setup Python uses: actions/setup-python@v4 with: python-version: "3.11" - name: Install dependencies run: | pip3 install -r requirements.txt ${{ github.event.pull_request.base }} ansible-galaxy collection install community.general ${{ github.event.pull_request.merge_commit_sha }} - name: Get changed playbooks id: changed-playbooks uses: tj-actions/changed-files@v38 with: since_last_remote_commit: "true" files: infra/**-playbook.yaml - name: Check modified playbooks run: | for file in ${{ steps.changed-playbooks.outputs.all_changed_files }}; do ansible --inventory ./inventory --check "$file" done