Files
architectury-api/.github/workflows/1.18_push.yml
Max 82d1b6947f Update workflow files
Signed-off-by: Max <maxh2709@gmail.com>
2021-12-26 23:11:11 +01:00

111 lines
3.1 KiB
YAML

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