Merge pull request #12 from ScriptKittyOS/plan/adr-0009-jido-v2 #93
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| # SPDX-FileCopyrightText: Sudo Apt Holdings LLC | |
| # SPDX-License-Identifier: Apache-2.0 | |
| name: gate | |
| on: | |
| push: | |
| pull_request: | |
| jobs: | |
| gate: | |
| runs-on: ubuntu-latest | |
| env: | |
| MIX_ENV: test | |
| TRINITY_DB: sqlite | |
| steps: | |
| - uses: actions/checkout@11d5960a326750d5838078e36cf38b85af677262 # v4.4.0 | |
| with: | |
| fetch-depth: 0 # plan_check rule 8 reads the whole history | |
| # On a pull request the default checkout is a merge commit GitHub makes on the fly, | |
| # authored by nobody and signed off by nobody. plan_check rule 8 refused it on the | |
| # first pull request this repository ever had (run 35477492177). The branch head is | |
| # what was written and signed, so that is what the gate reads. The ruleset's strict | |
| # policy requires the branch to be current with main before it can merge, so the | |
| # head is also what main will contain. | |
| ref: ${{ github.event.pull_request.head.sha || github.sha }} | |
| - uses: erlef/setup-beam@54075bcc5e249e4758d363f27d099f55d843f124 # v1.24.1 | |
| with: | |
| version-file: .tool-versions | |
| version-type: strict | |
| - uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4.3.0 | |
| with: | |
| path: | | |
| deps | |
| _build | |
| key: ${{ runner.os }}-mix-${{ hashFiles('mix.lock') }} | |
| restore-keys: ${{ runner.os }}-mix- | |
| - run: mix deps.get | |
| # The plan's own consistency, checked before the code's. | |
| - run: ./scripts/plan_check.sh | |
| # DCO. plan_check rule 8 also asserts every commit is signed off; this fails earlier | |
| # and more legibly on a pull request. | |
| - name: DCO sign-off present on every commit | |
| run: | | |
| git log --format=%B ${{ github.event.pull_request.base.sha || 'HEAD~1' }}..HEAD 2>/dev/null \ | |
| | grep -q '^Signed-off-by: ' || { | |
| echo "::error::a commit in this range has no Signed-off-by line"; exit 1; } | |
| - run: mix gate |