chore(release): 26.06.00 #109
Workflow file for this run
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
| name: CI | |
| on: | |
| push: | |
| branches: [main] | |
| pull_request: | |
| # Least-privilege by default. Third-party actions are pinned by commit SHA (supply-chain hardening). | |
| permissions: | |
| contents: read | |
| concurrency: | |
| group: ci-${{ github.workflow }}-${{ github.ref }} | |
| cancel-in-progress: true | |
| jobs: | |
| workflow-lint: | |
| name: actionlint + shellcheck | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 | |
| # actionlint lints all workflow YAML and, via its bundled shellcheck, the inline `run:` shell in | |
| # every workflow. The image is pinned by digest (supply-chain hardening); -color for readable | |
| # output. A lint error fails this job (and thus CI). | |
| - name: actionlint | |
| uses: docker://rhysd/actionlint:1.7.7@sha256:887a259a5a534f3c4f36cb02dca341673c6089431057242cdc931e9f133147e9 | |
| with: | |
| args: -color | |
| # Lint any standalone shell scripts in the repo (inline workflow shell is already covered by | |
| # actionlint's shellcheck integration above). shellcheck is preinstalled on ubuntu-latest. | |
| - name: shellcheck standalone shell scripts | |
| run: | | |
| set -euo pipefail | |
| mapfile -t scripts < <(git ls-files '*.sh' '*.bash') | |
| if [ "${#scripts[@]}" -eq 0 ]; then | |
| echo "No standalone shell scripts to lint." | |
| exit 0 | |
| fi | |
| shellcheck "${scripts[@]}" | |
| build: | |
| name: Lint, test, assemble (debug) | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 | |
| - name: Set up JDK 17 | |
| uses: actions/setup-java@be666c2fcd27ec809703dec50e508c2fdc7f6654 # v5.2.0 | |
| with: | |
| distribution: temurin | |
| java-version: '17' | |
| - name: Set up Gradle | |
| uses: gradle/actions/setup-gradle@ed408507eac070d1f99cc633dbcf757c94c7933a # v4 | |
| - name: Make gradlew executable | |
| run: chmod +x ./gradlew | |
| - name: ktlint, Android Lint, unit tests, debug assembly | |
| run: ./gradlew ktlintCheck lint test assembleDebug --stacktrace | |
| # Release signing, APK/SHA256SUMS publishing, F-Droid metadata and release-please live in | |
| # release.yml / release-please.yml. This workflow proves the project builds + tests green and lints | |
| # all workflow YAML and shell (actionlint + shellcheck). |