Skip to content

fix(maven): update dependency org.yaml:snakeyaml to v2.7 (#87) #285

fix(maven): update dependency org.yaml:snakeyaml to v2.7 (#87)

fix(maven): update dependency org.yaml:snakeyaml to v2.7 (#87) #285

Workflow file for this run

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