Toolbox/.gitea/workflows/ci.yml
Quentin Legot 10edfe5ef6
All checks were successful
Test and Deploy / build (17, ubuntu-latest) (push) Successful in 4m21s
Test and Deploy / deploy (17, ubuntu-latest) (push) Has been skipped
Improve CI: now create a tag when publishing a new release
2023-08-29 22:44:06 +02:00

73 lines
2.2 KiB
YAML

# Automatically build the project and run any configured tests for every push
# and submitted pull request. This can help catch issues that only occur on
# certain platforms or Java versions, and provides a first line of defence
# against bad commits.
name: Test and Deploy
on:
push:
branches: [ master, dev ]
pull_request_target:
branches: [ master, dev ]
env:
REPO_USERNAME: Altarik
REPO_PASSWORD: ${{ secrets.REPO_PASSWORD }}
DISCORD_PUB_ID: ${{ secrets.DISCORD_PUB_ID }}
DISCORD_PUB_TOKEN: ${{ secrets.DISCORD_PUB_TOKEN }}
jobs:
build:
strategy:
matrix:
java: [ '17' ]
os: [ ubuntu-latest ]
runs-on: ${{ matrix.os }}
steps:
- name: checkout repository
uses: actions/checkout@v3
- name: validate gradle wrapper
uses: https://github.com/gradle/wrapper-validation-action@v1
- name: setup jdk ${{ matrix.Java }}
uses: actions/setup-java@v3
with:
java-version: ${{ matrix.java }}
distribution: 'oracle'
- name: make gradle wrapper executable
if: ${{ runner.os != 'Windows' }}
run: |
chmod +x ./gradlew
touch local.properties
- name: build
run: ./gradlew build # compile classes, testClasses, assemble in jar and javadocJar, and then test
deploy:
strategy:
matrix:
java: [ '17' ]
os: [ ubuntu-latest ]
runs-on: ${{ matrix.os }}
if: gitea.ref == 'refs/heads/master'
needs: build
steps:
- name: checkout repository
uses: actions/checkout@v3
- name: validate gradle wrapper
uses: https://github.com/gradle/wrapper-validation-action@v1
- name: setup jdk ${{ matrix.Java }}
uses: actions/setup-java@v3
with:
java-version: ${{ matrix.java }}
distribution: 'oracle'
- name: make gradle wrapper executable
if: ${{ runner.os != 'Windows' }}
run: |
chmod +x ./gradlew
touch local.properties
- name: deploy
run: ./gradlew publish
- name: create tag
run: ./gradlew createTag
- name: Report to Discord
run: ./gradlew reportToDiscord