fix(maven): update dependency org.yaml:snakeyaml to v2.7 (#87) #285
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
| on: | |
| workflow_call: | |
| inputs: | |
| ref: | |
| description: "Branch, tag or SHA to build. Empty = the caller's ref." | |
| required: false | |
| type: string | |
| default: "" | |
| artifact-name: | |
| description: > | |
| Name to upload the build output under. The release flow runs this | |
| workflow twice in one run -- once on the branch, once on the tag -- and | |
| upload-artifact rejects a duplicate name. | |
| required: false | |
| type: string | |
| default: "dist" | |
| workflow_dispatch: | |
| push: | |
| branches: | |
| - main | |
| pull_request: | |
| types: | |
| - opened | |
| - reopened | |
| - synchronize | |
| permissions: | |
| contents: read | |
| jobs: | |
| build: | |
| runs-on: ubuntu-latest | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| reqstool-source: [pypi, main] | |
| steps: | |
| # Full history and tags: git-dyn-semver derives the version from git state, so a | |
| # shallow clone would build the wrong number rather than fail. | |
| - uses: actions/checkout@v7.0.1 | |
| with: | |
| persist-credentials: false | |
| fetch-depth: 0 | |
| fetch-tags: true | |
| ref: ${{ inputs.ref || github.ref }} | |
| - name: Set up Java | |
| uses: actions/setup-java@v6.0.0 | |
| with: | |
| java-version: "21" | |
| distribution: "temurin" | |
| - name: Build | |
| run: ./gradlew clean build | |
| - name: Self-apply plugin to assemble dataset zip | |
| # True self-application (publishing to mavenLocal and re-applying the plugin | |
| # to its own sources from a separate project) is not yet wired up for Gradle. | |
| # As an interim measure, merge the annotation processor's own main/test output | |
| # (already produced by `./gradlew build` above) the same way the plugin's | |
| # combineOutput() would, so reqstool status has real, non-fabricated data. | |
| run: | | |
| mkdir -p build/reqstool | |
| { | |
| echo "# yaml-language-server: \$schema=https://raw.githubusercontent.com/reqstool/reqstool-client/main/src/reqstool/resources/schemas/v1/annotations.schema.json" | |
| yq eval-all '. as $item ireduce ({}; . * $item )' \ | |
| build/generated/sources/annotationProcessor/java/main/resources/annotations.yml \ | |
| build/generated/sources/annotationProcessor/java/test/resources/annotations.yml | grep -v "^#" | |
| } > build/reqstool/annotations.yml | |
| - name: Install reqstool | |
| uses: reqstool/.github/.github/actions/install-reqstool@a4203a58cec87861655512b6b277a859db385796 # 1.1.0 | |
| with: | |
| reqstool-source: ${{ matrix.reqstool-source }} | |
| - name: Validate reqstool spec completeness | |
| # not yet available in the latest PyPI release | |
| if: matrix.reqstool-source == 'main' | |
| uses: reqstool/.github/.github/actions/validate-reqstool@a4203a58cec87861655512b6b277a859db385796 # 1.1.0 | |
| - name: Run reqstool status | |
| uses: reqstool/.github/.github/actions/reqstool-status@a4203a58cec87861655512b6b277a859db385796 # 1.1.0 | |
| with: | |
| fail-if-incomplete: "true" | |
| validate-openspec: | |
| uses: reqstool/.github/.github/workflows/common-validate-openspec.yml@a4203a58cec87861655512b6b277a859db385796 # 1.1.0 |