mirror of
https://github.com/architectury/architectury-api.git
synced 2026-03-28 03:56:59 -05:00
74
.github/workflows/1.18_pr.yml
vendored
Normal file
74
.github/workflows/1.18_pr.yml
vendored
Normal file
@@ -0,0 +1,74 @@
|
||||
name: Build PR snapshot (1.18)
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
paths:
|
||||
- '**.gradle'
|
||||
- '**.properties'
|
||||
- '**/src/**'
|
||||
branches:
|
||||
- "1.18"
|
||||
types: [ opened, synchronize, reopened ]
|
||||
jobs:
|
||||
validate-gradle:
|
||||
name: "Validate Gradle wrapper"
|
||||
runs-on: ubuntu-20.04
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
with:
|
||||
fetch-depth: 0
|
||||
|
||||
- uses: gradle/wrapper-validation-action@v1
|
||||
license:
|
||||
name: "Verify License integrity"
|
||||
runs-on: ubuntu-20.04
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
|
||||
- name: Set up JDK 17
|
||||
uses: actions/setup-java@v2
|
||||
with:
|
||||
java-version: 17
|
||||
distribution: 'temurin'
|
||||
|
||||
- name: Setup Gradle and verify license using Licenser
|
||||
uses: gradle/gradle-build-action@v2
|
||||
with:
|
||||
arguments: licenseCheck
|
||||
|
||||
build:
|
||||
name: "Build"
|
||||
runs-on: ubuntu-20.04
|
||||
if: |
|
||||
!contains(github.event.pull_request.title, '[ci skip]')
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
|
||||
- name: Set up JDK 17
|
||||
uses: actions/setup-java@v2
|
||||
with:
|
||||
java-version: 17
|
||||
distribution: 'temurin'
|
||||
|
||||
- name: Setup and Build with Gradle
|
||||
uses: gradle/gradle-build-action@v2
|
||||
with:
|
||||
arguments: build --stacktrace --no-daemon
|
||||
|
||||
- name: Setting mod version
|
||||
run: |
|
||||
cat $GITHUB_WORKSPACE/gradle.properties | grep ^archives_base_name= >> $GITHUB_ENV
|
||||
cat $GITHUB_WORKSPACE/gradle.properties | grep ^minecraft_version= >> $GITHUB_ENV
|
||||
cat $GITHUB_WORKSPACE/gradle.properties | grep ^base_version= >> $GITHUB_ENV
|
||||
- name: Create package name
|
||||
run: echo "package_name=[$minecraft_version] $archives_base_name-$base_version-SNAPSHOT.PR${{ github.event.number }}" >> $GITHUB_ENV
|
||||
- uses: actions/upload-artifact@v2
|
||||
with:
|
||||
name: ${{ env.package_name }}
|
||||
path: |
|
||||
**/build/libs/
|
||||
!build/libs/
|
||||
!**/*-dev.jar
|
||||
!**/*-shadow.jar
|
||||
!**/*-transformProduction*.jar
|
||||
!**/testmod*/
|
||||
110
.github/workflows/1.18_push.yml
vendored
Normal file
110
.github/workflows/1.18_push.yml
vendored
Normal file
@@ -0,0 +1,110 @@
|
||||
name: Build and Release (1.18)
|
||||
|
||||
on:
|
||||
push:
|
||||
paths:
|
||||
- '**.gradle'
|
||||
- '**.properties'
|
||||
- '**/src/**'
|
||||
branches:
|
||||
- "1.18"
|
||||
workflow_dispatch:
|
||||
inputs:
|
||||
norelease:
|
||||
description: 'Do not publish'
|
||||
required: true
|
||||
default: 'false'
|
||||
|
||||
jobs:
|
||||
validate-gradle:
|
||||
name: "Validate Gradle wrapper"
|
||||
runs-on: ubuntu-20.04
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
with:
|
||||
fetch-depth: 0
|
||||
|
||||
- uses: gradle/wrapper-validation-action@v1
|
||||
license:
|
||||
name: "Verify License integrity"
|
||||
runs-on: ubuntu-20.04
|
||||
if: |
|
||||
!contains(github.event.head_commit.message, '[ci skip]')
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
|
||||
- name: Set up JDK 17
|
||||
uses: actions/setup-java@v2
|
||||
with:
|
||||
java-version: 17
|
||||
distribution: 'temurin'
|
||||
|
||||
- name: Setup Gradle and verify license using Licenser
|
||||
uses: gradle/gradle-build-action@v2
|
||||
with:
|
||||
arguments: licenseCheck
|
||||
|
||||
build:
|
||||
name: "Build"
|
||||
runs-on: ubuntu-20.04
|
||||
if: |
|
||||
!contains(github.event.head_commit.message, '[ci skip]')
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
|
||||
- name: Set up JDK 17
|
||||
uses: actions/setup-java@v2
|
||||
with:
|
||||
java-version: 17
|
||||
distribution: 'temurin'
|
||||
|
||||
- name: Setup and Build with Gradle
|
||||
uses: gradle/gradle-build-action@v2
|
||||
with:
|
||||
arguments: build --stacktrace --no-daemon
|
||||
|
||||
- name: Setting mod version
|
||||
run: |
|
||||
cat $GITHUB_WORKSPACE/gradle.properties | grep ^archives_base_name= >> $GITHUB_ENV
|
||||
cat $GITHUB_WORKSPACE/gradle.properties | grep ^minecraft_version= >> $GITHUB_ENV
|
||||
cat $GITHUB_WORKSPACE/gradle.properties | grep ^base_version= >> $GITHUB_ENV
|
||||
- name: Create package name
|
||||
run: echo "package_name=[$minecraft_version] $archives_base_name-$base_version.${{ github.run_number }}" >> $GITHUB_ENV
|
||||
- uses: actions/upload-artifact@v2
|
||||
with:
|
||||
name: ${{ env.package_name }}
|
||||
path: |
|
||||
**/build/libs/
|
||||
!build/libs/
|
||||
!**/*-dev.jar
|
||||
!**/*-shadow.jar
|
||||
!**/*-transformProduction*.jar
|
||||
!**/testmod*/
|
||||
|
||||
publish:
|
||||
needs:
|
||||
- validate-gradle
|
||||
- license
|
||||
- build
|
||||
runs-on: ubuntu-20.04
|
||||
if: |
|
||||
!contains(github.event.head_commit.message, '[norelease]') && github.event.inputs.norelease != 'true'
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
|
||||
- name: Set up JDK 17
|
||||
uses: actions/setup-java@v2
|
||||
with:
|
||||
java-version: 17
|
||||
distribution: 'temurin'
|
||||
|
||||
- name: Setup Gradle and release to Maven and CurseForge
|
||||
env:
|
||||
# currently unused, may want to use these for changelogs though!
|
||||
# GIT_COMMIT: ${{ github.event.after }}
|
||||
# GIT_PREVIOUS_COMMIT: ${{ github.event.before }}
|
||||
MAVEN_PASS: ${{ secrets.MAVEN_PASS }}
|
||||
CURSE_API_KEY: ${{ secrets.CURSE_API_KEY }}
|
||||
uses: gradle/gradle-build-action@v2
|
||||
with:
|
||||
arguments: publish curseforge --stacktrace --no-daemon
|
||||
137
.github/workflows/dev_pr.yml
vendored
137
.github/workflows/dev_pr.yml
vendored
@@ -1,137 +0,0 @@
|
||||
name: Build PR snapshot (1.17)
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
paths:
|
||||
- '**.gradle'
|
||||
- '**.properties'
|
||||
- '**/src/**'
|
||||
branches:
|
||||
- "1.18"
|
||||
types: [ opened, synchronize, reopened ]
|
||||
jobs:
|
||||
validate-gradle:
|
||||
name: "Validate Gradle wrapper"
|
||||
runs-on: ubuntu-20.04
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
with:
|
||||
fetch-depth: 0
|
||||
|
||||
- uses: gradle/wrapper-validation-action@v1
|
||||
license:
|
||||
name: "Verify License integrity"
|
||||
runs-on: ubuntu-20.04
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
|
||||
- name: Set up JDK 17
|
||||
uses: actions/setup-java@v2
|
||||
with:
|
||||
java-version: 17
|
||||
distribution: 'temurin'
|
||||
|
||||
- name: Cache Gradle wrapper
|
||||
uses: actions/cache@v2
|
||||
with:
|
||||
path: ~/.gradle/wrapper
|
||||
key: gradle-wrapper-${{ runner.os }}-${{ hashFiles('gradle/wrapper/**/*') }}
|
||||
restore-keys: gradle-wrapper-${{ runner.os }}-
|
||||
|
||||
- name: Cache packages
|
||||
id: cache-packages
|
||||
uses: actions/cache@v2
|
||||
with:
|
||||
path: ~/.gradle/caches
|
||||
key: gradle-packages-${{ runner.os }}-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}
|
||||
restore-keys: gradle-packages-${{ runner.os }}-
|
||||
|
||||
- name: Make gradlew executable
|
||||
run: chmod +x ./gradlew
|
||||
|
||||
- name: Verify license using Licenser
|
||||
run: |
|
||||
./gradlew licenseCheck
|
||||
|
||||
# Remove some potentially problematic files from the Gradle cache,
|
||||
# so that GitHub Actions doesn't cache them.
|
||||
- name: Cleanup Gradle Cache
|
||||
if: steps.cache-packages.outputs.cache-hit != 'true'
|
||||
run: |
|
||||
rm -f $HOME/.gradle/caches/*/*.lock
|
||||
rm -rf $HOME/.gradle/caches/*/plugin-resolution/
|
||||
rm -rf $HOME/.gradle/caches/*/scripts/
|
||||
rm -rf $HOME/.gradle/caches/*/scripts-remapped/
|
||||
rm -rf $HOME/.gradle/caches/*/fileHashes/
|
||||
rm -f $HOME/.gradle/caches/journal-1/file-access.bin
|
||||
build:
|
||||
name: "Build"
|
||||
strategy:
|
||||
matrix:
|
||||
java: [ 17 ] # Build on Java 17 (version shipped with MC 1.18)
|
||||
runs-on: ubuntu-20.04
|
||||
if: |
|
||||
!contains(github.event.pull_request.title, '[ci skip]')
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
|
||||
- name: Set up JDK ${{ matrix.java }}
|
||||
uses: actions/setup-java@v2
|
||||
with:
|
||||
java-version: ${{ matrix.java }}
|
||||
distribution: 'temurin'
|
||||
|
||||
- name: Cache Gradle wrapper
|
||||
uses: actions/cache@v2
|
||||
with:
|
||||
path: ~/.gradle/wrapper
|
||||
key: gradle-wrapper-${{ runner.os }}-${{ hashFiles('gradle/wrapper/**/*') }}
|
||||
restore-keys: gradle-wrapper-${{ runner.os }}-
|
||||
|
||||
- name: Cache packages
|
||||
id: cache-packages
|
||||
uses: actions/cache@v2
|
||||
with:
|
||||
path: ~/.gradle/caches
|
||||
key: gradle-packages-${{ runner.os }}-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}
|
||||
restore-keys: gradle-packages-${{ runner.os }}-
|
||||
|
||||
- name: Make gradlew executable
|
||||
run: chmod +x ./gradlew
|
||||
|
||||
- name: Build with Gradle
|
||||
run: |
|
||||
./gradlew build --stacktrace --no-daemon
|
||||
|
||||
# Remove some potentially problematic files from the Gradle cache,
|
||||
# so that GitHub Actions doesn't cache them.
|
||||
- name: Cleanup Gradle Cache
|
||||
if: steps.cache-packages.outputs.cache-hit != 'true'
|
||||
run: |
|
||||
rm -f $HOME/.gradle/caches/*/*.lock
|
||||
rm -rf $HOME/.gradle/caches/*/plugin-resolution/
|
||||
rm -rf $HOME/.gradle/caches/*/scripts/
|
||||
rm -rf $HOME/.gradle/caches/*/scripts-remapped/
|
||||
rm -rf $HOME/.gradle/caches/*/fileHashes/
|
||||
rm -f $HOME/.gradle/caches/journal-1/file-access.bin
|
||||
|
||||
- name: Setting mod version
|
||||
if: ${{ matrix.java == '17' }} # Only upload Java 17 artifacts for MC 1.18
|
||||
run: |
|
||||
cat $GITHUB_WORKSPACE/gradle.properties | grep ^archives_base_name= >> $GITHUB_ENV
|
||||
cat $GITHUB_WORKSPACE/gradle.properties | grep ^minecraft_version= >> $GITHUB_ENV
|
||||
cat $GITHUB_WORKSPACE/gradle.properties | grep ^base_version= >> $GITHUB_ENV
|
||||
- name: Create package name
|
||||
if: ${{ matrix.java == '17' }} # Only upload Java 17 artifacts for MC 1.18
|
||||
run: echo "package_name=[$minecraft_version] $archives_base_name-$base_version-SNAPSHOT.PR${{ github.event.number }}" >> $GITHUB_ENV
|
||||
- uses: actions/upload-artifact@v2
|
||||
if: ${{ matrix.java == '17' }} # Only upload Java 17 artifacts for MC 1.18
|
||||
with:
|
||||
name: ${{ env.package_name }}
|
||||
path: |
|
||||
**/build/libs/
|
||||
!build/libs/
|
||||
!**/*-dev.jar
|
||||
!**/*-shadow.jar
|
||||
!**/*-transformProduction*.jar
|
||||
!**/testmod*/
|
||||
201
.github/workflows/dev_push.yml
vendored
201
.github/workflows/dev_push.yml
vendored
@@ -1,201 +0,0 @@
|
||||
name: Build and Release (1.17)
|
||||
|
||||
on:
|
||||
push:
|
||||
paths:
|
||||
- '**.gradle'
|
||||
- '**.properties'
|
||||
- '**/src/**'
|
||||
branches:
|
||||
- "1.18"
|
||||
workflow_dispatch:
|
||||
inputs:
|
||||
norelease:
|
||||
description: 'Do not publish'
|
||||
required: true
|
||||
default: 'false'
|
||||
|
||||
jobs:
|
||||
validate-gradle:
|
||||
name: "Validate Gradle wrapper"
|
||||
runs-on: ubuntu-20.04
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
with:
|
||||
fetch-depth: 0
|
||||
|
||||
- uses: gradle/wrapper-validation-action@v1
|
||||
license:
|
||||
name: "Verify License integrity"
|
||||
runs-on: ubuntu-20.04
|
||||
if: |
|
||||
!contains(github.event.head_commit.message, '[ci skip]')
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
|
||||
- name: Set up JDK 17
|
||||
uses: actions/setup-java@v2
|
||||
with:
|
||||
java-version: 17
|
||||
distribution: 'temurin'
|
||||
|
||||
- name: Cache Gradle wrapper
|
||||
uses: actions/cache@v2
|
||||
with:
|
||||
path: ~/.gradle/wrapper
|
||||
key: gradle-wrapper-${{ runner.os }}-${{ hashFiles('gradle/wrapper/**/*') }}
|
||||
restore-keys: gradle-wrapper-${{ runner.os }}-
|
||||
|
||||
- name: Cache packages
|
||||
id: cache-packages
|
||||
uses: actions/cache@v2
|
||||
with:
|
||||
path: ~/.gradle/caches
|
||||
key: gradle-packages-${{ runner.os }}-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}
|
||||
restore-keys: gradle-packages-${{ runner.os }}-
|
||||
|
||||
- name: Make gradlew executable
|
||||
run: chmod +x ./gradlew
|
||||
|
||||
- name: Verify license using Licenser
|
||||
run: |
|
||||
./gradlew licenseCheck
|
||||
|
||||
# Remove some potentially problematic files from the Gradle cache,
|
||||
# so that GitHub Actions doesn't cache them.
|
||||
- name: Cleanup Gradle Cache
|
||||
if: steps.cache-packages.outputs.cache-hit != 'true'
|
||||
run: |
|
||||
rm -f $HOME/.gradle/caches/*/*.lock
|
||||
rm -rf $HOME/.gradle/caches/*/plugin-resolution/
|
||||
rm -rf $HOME/.gradle/caches/*/scripts/
|
||||
rm -rf $HOME/.gradle/caches/*/scripts-remapped/
|
||||
rm -rf $HOME/.gradle/caches/*/fileHashes/
|
||||
rm -f $HOME/.gradle/caches/journal-1/file-access.bin
|
||||
|
||||
build:
|
||||
name: "Build"
|
||||
strategy:
|
||||
matrix:
|
||||
java: [ 17 ] # Build on Java 17 (version shipped with MC 1.18)
|
||||
runs-on: ubuntu-20.04
|
||||
if: |
|
||||
!contains(github.event.head_commit.message, '[ci skip]')
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
|
||||
- name: Set up JDK ${{ matrix.java }}
|
||||
uses: actions/setup-java@v2
|
||||
with:
|
||||
java-version: ${{ matrix.java }}
|
||||
distribution: 'temurin'
|
||||
|
||||
- name: Cache Gradle wrapper
|
||||
uses: actions/cache@v2
|
||||
with:
|
||||
path: ~/.gradle/wrapper
|
||||
key: gradle-wrapper-${{ runner.os }}-${{ hashFiles('gradle/wrapper/**/*') }}
|
||||
restore-keys: gradle-wrapper-${{ runner.os }}-
|
||||
|
||||
- name: Cache packages
|
||||
id: cache-packages
|
||||
uses: actions/cache@v2
|
||||
with:
|
||||
path: ~/.gradle/caches
|
||||
key: gradle-packages-${{ runner.os }}-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}
|
||||
restore-keys: gradle-packages-${{ runner.os }}-
|
||||
|
||||
- name: Make gradlew executable
|
||||
run: chmod +x ./gradlew
|
||||
|
||||
- name: Build with Gradle
|
||||
run: |
|
||||
./gradlew build --stacktrace --no-daemon
|
||||
|
||||
# Remove some potentially problematic files from the Gradle cache,
|
||||
# so that GitHub Actions doesn't cache them.
|
||||
- name: Cleanup Gradle Cache
|
||||
if: steps.cache-packages.outputs.cache-hit != 'true'
|
||||
run: |
|
||||
rm -f $HOME/.gradle/caches/*/*.lock
|
||||
rm -rf $HOME/.gradle/caches/*/plugin-resolution/
|
||||
rm -rf $HOME/.gradle/caches/*/scripts/
|
||||
rm -rf $HOME/.gradle/caches/*/scripts-remapped/
|
||||
rm -rf $HOME/.gradle/caches/*/fileHashes/
|
||||
rm -f $HOME/.gradle/caches/journal-1/file-access.bin
|
||||
|
||||
- name: Setting mod version
|
||||
if: ${{ matrix.java == '17' }} # Only upload Java 17 artifacts for MC 1.18
|
||||
run: |
|
||||
cat $GITHUB_WORKSPACE/gradle.properties | grep ^archives_base_name= >> $GITHUB_ENV
|
||||
cat $GITHUB_WORKSPACE/gradle.properties | grep ^minecraft_version= >> $GITHUB_ENV
|
||||
cat $GITHUB_WORKSPACE/gradle.properties | grep ^base_version= >> $GITHUB_ENV
|
||||
- name: Create package name
|
||||
if: ${{ matrix.java == '17' }} # Only upload Java 17 artifacts for MC 1.18
|
||||
run: echo "package_name=[$minecraft_version] $archives_base_name-$base_version.${{ github.run_number }}" >> $GITHUB_ENV
|
||||
- uses: actions/upload-artifact@v2
|
||||
if: ${{ matrix.java == '17' }} # Only upload Java 17 artifacts for MC 1.18
|
||||
with:
|
||||
name: ${{ env.package_name }}
|
||||
path: |
|
||||
**/build/libs/
|
||||
!build/libs/
|
||||
!**/*-dev.jar
|
||||
!**/*-shadow.jar
|
||||
!**/*-transformProduction*.jar
|
||||
!**/testmod*/
|
||||
|
||||
publish:
|
||||
needs:
|
||||
- validate-gradle
|
||||
- license
|
||||
- build
|
||||
runs-on: ubuntu-20.04
|
||||
if: |
|
||||
!contains(github.event.head_commit.message, '[norelease]') && github.event.inputs.norelease != 'true'
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
|
||||
- name: Set up JDK 17
|
||||
uses: actions/setup-java@v2
|
||||
with:
|
||||
java-version: 17
|
||||
distribution: 'temurin'
|
||||
|
||||
- name: Cache Gradle wrapper
|
||||
uses: actions/cache@v2
|
||||
with:
|
||||
path: ~/.gradle/wrapper
|
||||
key: gradle-wrapper-${{ runner.os }}-${{ hashFiles('gradle/wrapper/**/*') }}
|
||||
restore-keys: gradle-wrapper-${{ runner.os }}-
|
||||
|
||||
- name: Cache packages
|
||||
id: cache-packages
|
||||
uses: actions/cache@v2
|
||||
with:
|
||||
path: ~/.gradle/caches
|
||||
key: gradle-packages-${{ runner.os }}-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}
|
||||
restore-keys: gradle-packages-${{ runner.os }}-
|
||||
|
||||
- name: Release to Maven and CurseForge
|
||||
env:
|
||||
# currently unused, may want to use these for changelogs though!
|
||||
# GIT_COMMIT: ${{ github.event.after }}
|
||||
# GIT_PREVIOUS_COMMIT: ${{ github.event.before }}
|
||||
MAVEN_PASS: ${{ secrets.MAVEN_PASS }}
|
||||
CURSE_API_KEY: ${{ secrets.CURSE_API_KEY }}
|
||||
# TODO: make this use the artifacts from the previous build step
|
||||
run: |
|
||||
./gradlew build publish curseforgePublish --stacktrace --no-daemon
|
||||
|
||||
# Remove some potentially problematic files from the Gradle cache,
|
||||
# so that GitHub Actions doesn't cache them.
|
||||
- name: Cleanup Gradle Cache
|
||||
if: steps.cache-packages.outputs.cache-hit != 'true'
|
||||
run: |
|
||||
rm -f $HOME/.gradle/caches/*/*.lock
|
||||
rm -rf $HOME/.gradle/caches/*/plugin-resolution/
|
||||
rm -rf $HOME/.gradle/caches/*/scripts/
|
||||
rm -rf $HOME/.gradle/caches/*/scripts-remapped/
|
||||
rm -rf $HOME/.gradle/caches/*/fileHashes/
|
||||
rm -f $HOME/.gradle/caches/journal-1/file-access.bin
|
||||
Reference in New Issue
Block a user