name: OpenInv CI on: push: pull_request_target: jobs: build: runs-on: ubuntu-latest steps: - name: Checkout Code uses: actions/checkout@v2 - name: Set Up Java uses: actions/setup-java@v1 with: java-version: 16 # Use cache to speed up build - name: Cache Maven Repo uses: actions/cache@v2 id: cache with: path: ~/.m2/repository key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }} # Install Spigot dependencies. # This script uses Maven to check all required installations and ensure that they are present. - name: Install Spigot Dependencies run: . scripts/install_spigot_dependencies.sh - name: Build With Maven run: mvn -e clean package -am -P all # Upload artifacts - name: Upload Distributable Jar id: upload-final uses: actions/upload-artifact@v2 with: name: dist path: ./target/OpenInv.jar - name: Upload API Jar id: upload-api uses: actions/upload-artifact@v2 with: name: api path: ./api/target/openinvapi*.jar release: name: Create Github Release needs: [ build ] if: github.event_name == 'push' && startsWith(github.ref, 'refs/tags/') runs-on: ubuntu-latest steps: - name: Checkout Code uses: actions/checkout@v2 with: fetch-depth: 0 - name: Set Release Variables run: bash ./scripts/set_release_env.sh - name: Download Artifacts uses: actions/download-artifact@v2 - name: Create Release id: create-release uses: softprops/action-gh-release@v0.1.5 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: name: ${{ env.VERSIONED_NAME }} body: ${{ env.GENERATED_CHANGELOG }} draft: true prerelease: false files: ./dist/OpenInv.jar