init commit of working things

This commit is contained in:
TheRealM18 2024-07-21 21:14:33 -03:00
commit 06a0ff2060
66 changed files with 1917 additions and 0 deletions

View file

@ -0,0 +1,37 @@
name: build
on:
pull_request:
push:
branches: [ '**' ]
jobs:
build:
strategy:
matrix:
java: [ 17 ]
os: [ ubuntu-latest, windows-latest ]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v2
- name: Set up JDK ${{ matrix.java }}
uses: actions/setup-java@v1
with:
java-version: ${{ matrix.java }}
- name: Grant execute permission for gradlew
run: chmod +x gradlew
- name: Validate Gradle wrapper
uses: gradle/wrapper-validation-action@v1
- uses: actions/cache@v2
with:
path: |
~/.gradle/caches
~/.gradle/wrapper
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*') }}
restore-keys: ${{ runner.os }}-gradle-
- name: Build with Gradle
run: ./gradlew build
env:
GPR_USER: ${{ secrets.GPR_USER }}
GPR_KEY: ${{ secrets.GPR_KEY }}

View file

@ -0,0 +1,101 @@
name: publish
on:
release:
types: [published]
jobs:
publish-github:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Extract Version from Tag
uses: rishabhgupta/split-by@v1
id: split_tag
with:
string: ${{ github.event.release.tag_name }}
split-by: '/'
- name: Set up JDK
uses: actions/setup-java@v1
with:
java-version: 17
- name: Grant execute permission for gradlew
run: chmod +x gradlew
- name: Validate Gradle wrapper
uses: gradle/wrapper-validation-action@v1
- uses: actions/cache@v2
with:
path: |
~/.gradle/caches
~/.gradle/wrapper
key: ubuntu-latest-gradle-${{ hashFiles('**/*.gradle*') }}
restore-keys: ubuntu-latest-gradle-
- name: Build with Gradle
run: ./gradlew -Psemver='${{ steps.split_tag.outputs._1 }}' build
env:
GPR_USER: ${{ secrets.GPR_USER }}
GPR_KEY: ${{ secrets.GPR_KEY }}
- name: Add Artifacts to Github Release
uses: alexellis/upload-assets@0.3.0
env:
GITHUB_TOKEN: ${{ github.token }}
with:
asset_paths: '["./build/libs/*.jar"]'
- name: Publish to Github Packages
run: gradle -Psemver='${{ steps.split_tag.outputs._1 }}' publish
env:
GPR_USER: ${{ secrets.GPR_USER }}
GPR_KEY: ${{ secrets.GPR_KEY }}
GITHUB_MAVEN_URL: 'https://maven.pkg.github.com/${{ github.repository }}'
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
publish-curse:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Extract Version from Tag
uses: rishabhgupta/split-by@v1
id: split_tag
with:
string: ${{ github.event.release.tag_name }}
split-by: '/'
- name: Set up JDK
uses: actions/setup-java@v1
with:
java-version: 17
- name: Grant execute permission for gradlew
run: chmod +x gradlew
- name: Validate Gradle wrapper
uses: gradle/wrapper-validation-action@v1
- uses: actions/cache@v2
with:
path: |
~/.gradle/caches
~/.gradle/wrapper
key: ubuntu-latest-gradle-${{ hashFiles('**/*.gradle*') }}
restore-keys: ubuntu-latest-gradle-
# Set Curseforge release type based on pre-release flag.
- name: Set release type to 'release'
run: |
echo "CURSEFORGE_RELEASE_TYPE=release" >> $GITHUB_ENV
if: github.event.release.prerelease == false
- name: Set release type to 'alpha'
run: |
echo "CURSEFORGE_RELEASE_TYPE=alpha" >> $GITHUB_ENV
if: github.event.release.prerelease == true
- name: Publish to Curseforge
run: ./gradlew -Psemver='${{ steps.split_tag.outputs._1 }}' curseforge
env:
GPR_USER: ${{ secrets.GPR_USER }}
GPR_KEY: ${{ secrets.GPR_KEY }}
CURSEFORGE_API_KEY: ${{ secrets.CURSEFORGE_API_KEY }}
CURSEFORGE_RELEASE_TYPE: ${{ env.CURSEFORGE_RELEASE_TYPE }}
CHANGELOG: ${{ github.event.release.body }}