Repository navigation
Release baseSteam for Minecraft 1.15.2 #26
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: CodeQL | |
| on: | |
| push: | |
| branches: [master-1.15.2, 'feature/**'] | |
| pull_request: | |
| branches: [master-1.15.2] | |
| schedule: | |
| - cron: '53 7 * * 4' | |
| permissions: | |
| actions: read | |
| contents: read | |
| security-events: write | |
| jobs: | |
| analyze: | |
| name: Analyze Java | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 90 | |
| steps: | |
| - name: Check out SteamAdvantage | |
| uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7 | |
| - name: Check out pinned OreSpawn | |
| uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7 | |
| with: | |
| repository: MinecraftModDevelopmentMods/OreSpawn | |
| ref: 5613baf876747ed071cb7ad7e2aff4e0ce4f0a03 | |
| path: .ci-dependencies/OreSpawn | |
| - name: Use canonical LF dependency inputs | |
| # Use the same source bytes on hosted and local dependency builds. | |
| run: git config --global core.autocrlf false | |
| - name: Check out pinned Base Metals | |
| uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7 | |
| with: | |
| repository: MinecraftModDevelopmentMods/BaseMetals | |
| ref: ac1781e7cade15045ffe0135077087b4d1722603 | |
| path: .ci-dependencies/BaseMetals | |
| - name: Read basePower source pin | |
| id: power-pin | |
| shell: bash | |
| run: | | |
| ref=$(sed -n 's/^poweradvantage_source_ref=//p' gradle.properties) | |
| if [[ ! "$ref" =~ ^[a-f0-9]{40}$ ]]; then | |
| echo "::error::Set poweradvantage_source_ref to the hosted basePower commit before building in CI." | |
| exit 1 | |
| fi | |
| echo "ref=$ref" >> "$GITHUB_OUTPUT" | |
| - name: Check out pinned basePower | |
| uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7 | |
| with: | |
| repository: MinecraftModDevelopmentMods/basePower | |
| ref: ${{ steps.power-pin.outputs.ref }} | |
| path: .ci-dependencies/PowerAdvantage | |
| - name: Install pinned Java 25 Mavenizer runtime | |
| uses: actions/setup-java@b6effb05e454b25005698d916606bdc6ffcbf961 # v5 | |
| with: | |
| distribution: temurin | |
| java-version: '25.0.3+9.0.LTS' | |
| - name: Install Java 8 toolchain | |
| uses: actions/setup-java@b6effb05e454b25005698d916606bdc6ffcbf961 # v5 | |
| with: | |
| distribution: temurin | |
| java-version: '8.0.502+7' | |
| - name: Install Java 17 for Gradle | |
| uses: actions/setup-java@b6effb05e454b25005698d916606bdc6ffcbf961 # v5 | |
| with: | |
| distribution: temurin | |
| java-version: '17.0.1+12' | |
| - name: Use pinned build toolchains | |
| # These are Gradle project properties, not JVM system properties. | |
| shell: bash | |
| run: >- | |
| echo "MMD_GRADLE_TOOLCHAINS=-Porg.gradle.java.installations.paths=$JAVA_HOME,$JAVA_HOME_8_X64,$JAVA_HOME_25_X64 | |
| -Porg.gradle.java.installations.auto-detect=false | |
| -Porg.gradle.java.installations.auto-download=false" >> "$GITHUB_ENV" | |
| - name: Set up Gradle | |
| uses: gradle/actions/setup-gradle@9c971963bec38e04b3d30dcc455b5382be2fdbfb # v6 | |
| - name: Build 1.15.2 dependency chain | |
| id: dependencies | |
| shell: bash | |
| run: | | |
| set -euo pipefail | |
| orespawn="$GITHUB_WORKSPACE/.ci-dependencies/OreSpawn" | |
| basemetals="$GITHUB_WORKSPACE/.ci-dependencies/BaseMetals" | |
| power="$GITHUB_WORKSPACE/.ci-dependencies/PowerAdvantage" | |
| chmod +x "$orespawn/gradlew" "$basemetals/gradlew" "$power/gradlew" | |
| (cd "$orespawn" && ./gradlew $MMD_GRADLE_TOOLCHAINS jar --no-daemon --stacktrace) | |
| (cd "$basemetals" && ./gradlew $MMD_GRADLE_TOOLCHAINS jar --no-daemon --stacktrace) | |
| osjar="$orespawn/build/libs-dev/OreSpawn-4.1.1.115021-deobf.jar" | |
| bmjar="$basemetals/build/libs-dev/BaseMetals-3.0.2.115021-deobf.jar" | |
| (cd "$power" && ./gradlew $MMD_GRADLE_TOOLCHAINS jar verifyReleaseDependencies \ | |
| -PbaseMetalsDeobfJar="$bmjar" -PoreSpawnDeobfJar="$osjar" \ | |
| --no-daemon --stacktrace) | |
| powerjar="$power/build/libs-dev/basePower-2.4.7.115021-deobf.jar" | |
| test -f "$osjar" && test -f "$bmjar" && test -f "$powerjar" | |
| echo "orespawn=$osjar" >> "$GITHUB_OUTPUT" | |
| echo "basemetals=$bmjar" >> "$GITHUB_OUTPUT" | |
| echo "power=$powerjar" >> "$GITHUB_OUTPUT" | |
| echo "power_ref=$(git -C "$power" rev-parse HEAD)" >> "$GITHUB_OUTPUT" | |
| - name: Initialize CodeQL | |
| uses: github/codeql-action/init@db488ddef3bf6cb639b32c2e9a7c0a7ea8271d28 # v4 | |
| with: | |
| languages: java-kotlin | |
| - name: Compile SteamAdvantage production code | |
| run: | | |
| chmod +x ./gradlew | |
| ./gradlew $MMD_GRADLE_TOOLCHAINS clean classes --rerun-tasks --no-build-cache --no-daemon --stacktrace \ | |
| -PpowerAdvantageDeobfJar=${{ steps.dependencies.outputs.power }} \ | |
| -Ppoweradvantage_source_ref=${{ steps.dependencies.outputs.power_ref }} \ | |
| -PbaseMetalsDeobfJar=${{ steps.dependencies.outputs.basemetals }} \ | |
| -PoreSpawnDeobfJar=${{ steps.dependencies.outputs.orespawn }} | |
| - name: Analyze | |
| uses: github/codeql-action/analyze@db488ddef3bf6cb639b32c2e9a7c0a7ea8271d28 # v4 |