diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml new file mode 100644 index 0000000..470bb09 --- /dev/null +++ b/.github/workflows/lint.yml @@ -0,0 +1,47 @@ +name: Lint Dockerfile +on: + workflow_dispatch: + pull_request: + push: + paths: + - "Dockerfile.template" + +jobs: + lint: + name: 'Lint Dockerfile (PHP: ${{ matrix.php-version }})' + runs-on: ubuntu-latest + strategy: + fail-fast: false + matrix: + php-version: + - '8.0' + - '8.1' + - '8.2' + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Lint Dockerfile + id: hadolint + uses: hadolint/hadolint-action@master + with: + dockerfile: ./${{ matrix.php-version }}/Dockerfile + + - name: Update Pull Request + if: failure() && github.event_name == 'pull_request' + uses: actions/github-script@v6 + with: + script: | + const output = ` + #### Hadolint: \`${{ steps.hadolint.outcome }}\` + \`\`\` + ${process.env.HADOLINT_RESULTS} + \`\`\` + `; + + github.rest.issues.createComment({ + issue_number: context.issue.number, + owner: context.repo.owner, + repo: context.repo.repo, + body: output + }) \ No newline at end of file