ChestsPlusPlus/.github/workflows/maven.yml

105 lines
2.7 KiB
YAML

# This workflow will build a Java project with Maven, and cache/restore any dependencies to improve the workflow execution time
# For more information see: https://help.github.com/actions/language-and-framework-guides/building-and-testing-java-with-maven
name: Build ChestsPlusPlus
on:
push:
branches: [ master ]
pull_request:
branches: [ master ]
create:
tags:
- v*
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Cache BuildTools
id: cache-buildtools
uses: actions/cache@v2
with:
path: |
~/.m2
~/BuildTools
key: buildtools-cache-${{ hashFiles('**/spigot-*.jar') }}
- name: Check BuildTools cached
run: |
mkdir -p ~/BuildTools
ls ~/BuildTools
shell: bash
- name: Set up JDK 8
uses: actions/setup-java@v2
with:
java-version: '8'
distribution: 'adopt'
- name: Run BuildTools Pre 1.17
working-directory: BuildTools
run: |
cd ~/BuildTools
# make file runnable, might not be necessary
chmod +x "${GITHUB_WORKSPACE}/BuildTools/build-pre1.17.sh"
# run script
bash ${GITHUB_WORKSPACE}/BuildTools/build-pre1.17.sh
shell: bash
- name: Set up JDK 16
uses: actions/setup-java@v2
with:
java-version: '16'
distribution: 'adopt'
- name: Run BuildTools 1.17
working-directory: BuildTools
run: |
cd ~/BuildTools
# make file runnable, might not be necessary
chmod +x "${GITHUB_WORKSPACE}/BuildTools/build-1.17.sh"
# run script
bash ${GITHUB_WORKSPACE}/BuildTools/build-1.17.sh
shell: bash
- name: Set up JDK 17
uses: actions/setup-java@v2
with:
java-version: '17'
distribution: 'adopt'
- name: Run BuildTools 1.18+
working-directory: BuildTools
run: |
cd ~/BuildTools
# make file runnable, might not be necessary
chmod +x "${GITHUB_WORKSPACE}/BuildTools/build-1.18+.sh"
# run script
bash ${GITHUB_WORKSPACE}/BuildTools/build-1.18+.sh
shell: bash
- name: Check BuildTools cached
run: |
mkdir -p ~/BuildTools
ls ~/BuildTools
shell: bash
- name: Build with Maven
run: mvn -B package --file pom.xml
- name: Upload Release Asset
id: upload-release-asset
uses: softprops/action-gh-release@v1
if: startsWith(github.ref, 'refs/tags/v')
with:
draft: true
generate_release_notes: true
files: |
${GITHUB_WORKSPACE}/Server/plugins/ChestsPlusPlus-*.jar