Skip to content

Add secure Spigot 1.20.1 candidate #52

Add secure Spigot 1.20.1 candidate

Add secure Spigot 1.20.1 candidate #52

Workflow file for this run

name: Verify
on:
pull_request:
push:
permissions:
contents: read
concurrency:
group: verify-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
automation:
name: Automation configuration
runs-on: ubuntu-24.04
timeout-minutes: 5
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
persist-credentials: false
- name: Validate manifests and shell scripts
shell: bash
run: |
set -euo pipefail
./scripts/release/validate-targets.sh
./scripts/release/validate-release-config.sh --development
./scripts/release/validate-workflows.sh
find scripts -type f -name '*.sh' -print0 | xargs -0 -n1 bash -n
matrix:
name: Read loader target matrices
runs-on: ubuntu-24.04
timeout-minutes: 5
outputs:
forge: ${{ steps.targets.outputs.forge }}
neoforge: ${{ steps.targets.outputs.neoforge }}
fabric: ${{ steps.targets.outputs.fabric }}
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
persist-credentials: false
- id: targets
name: Validate and export loader families
shell: bash
run: |
set -euo pipefail
./scripts/release/validate-targets.sh
for loader in forge neoforge fabric; do
matrix=$(jq -c --arg loader "$loader" \
'{include: [.targets[] | select(.loader == $loader) | {target: .id, game_version: .game_version, java: (.java | tostring)}]}' \
release/targets.json)
jq -e '.include | length > 0' <<<"$matrix" >/dev/null
echo "${loader}=$matrix" >> "$GITHUB_OUTPUT"
done
forge:
name: Forge / ${{ matrix.game_version }} (JDK ${{ matrix.java }})
needs: matrix
runs-on: ubuntu-24.04
timeout-minutes: 20
strategy:
fail-fast: false
max-parallel: 6
matrix: ${{ fromJSON(needs.matrix.outputs.forge) }}
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
persist-credentials: false
- name: Install target JDK ${{ matrix.java }} for the Gradle toolchain
uses: actions/setup-java@03ad4de0992f5dab5e18fcb136590ce7c4a0ac95 # v5.6.0
with:
distribution: temurin
java-version: ${{ matrix.java }}
- name: Install the JDK 21 Gradle launcher (Loom is configured on every invocation)
uses: actions/setup-java@03ad4de0992f5dab5e18fcb136590ce7c4a0ac95 # v5.6.0
with:
distribution: temurin
java-version: '21'
cache: gradle
- name: Build and test
run: ./scripts/ci/build-target.sh "${{ matrix.target }}"
neoforge:
name: NeoForge / ${{ matrix.game_version }} (JDK ${{ matrix.java }})
needs: matrix
runs-on: ubuntu-24.04
timeout-minutes: 20
strategy:
fail-fast: false
max-parallel: 6
matrix: ${{ fromJSON(needs.matrix.outputs.neoforge) }}
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
persist-credentials: false
- name: Install target JDK ${{ matrix.java }} for the Gradle toolchain
uses: actions/setup-java@03ad4de0992f5dab5e18fcb136590ce7c4a0ac95 # v5.6.0
with:
distribution: temurin
java-version: ${{ matrix.java }}
- name: Install the JDK 21 Gradle launcher (Loom is configured on every invocation)
uses: actions/setup-java@03ad4de0992f5dab5e18fcb136590ce7c4a0ac95 # v5.6.0
with:
distribution: temurin
java-version: '21'
cache: gradle
- name: Build and test
run: ./scripts/ci/build-target.sh "${{ matrix.target }}"
fabric:
name: Fabric / ${{ matrix.game_version }} (JDK ${{ matrix.java }})
needs: matrix
runs-on: ubuntu-24.04
timeout-minutes: 20
strategy:
fail-fast: false
max-parallel: 6
matrix: ${{ fromJSON(needs.matrix.outputs.fabric) }}
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
persist-credentials: false
- name: Install target JDK ${{ matrix.java }} for the Gradle toolchain
uses: actions/setup-java@03ad4de0992f5dab5e18fcb136590ce7c4a0ac95 # v5.6.0
with:
distribution: temurin
java-version: ${{ matrix.java }}
- name: Install the JDK 21 Gradle launcher (Loom is configured on every invocation)
uses: actions/setup-java@03ad4de0992f5dab5e18fcb136590ce7c4a0ac95 # v5.6.0
with:
distribution: temurin
java-version: '21'
cache: gradle
- name: Build and test
run: ./scripts/ci/build-target.sh "${{ matrix.target }}"
spigot-candidate:
name: Unsupported Spigot 1.20.1 candidate
runs-on: ubuntu-24.04
timeout-minutes: 35
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
persist-credentials: false
- name: Install Java 17 for exact Spigot runtime work
uses: actions/setup-java@03ad4de0992f5dab5e18fcb136590ce7c4a0ac95 # v5.6.0
with:
distribution: temurin
java-version: '17'
- name: Install the JDK 21 Gradle launcher
uses: actions/setup-java@03ad4de0992f5dab5e18fcb136590ce7c4a0ac95 # v5.6.0
with:
distribution: temurin
java-version: '21'
cache: gradle
- name: Build pinned Spigot and verify the unsupported candidate
run: ./scripts/ci/build-spigot-candidate.sh