54 lines
1.8 KiB
YAML
54 lines
1.8 KiB
YAML
name: Build
|
|
on: [ push, pull_request ]
|
|
jobs:
|
|
build:
|
|
# Only run on PRs if the source branch is on someone else's repo
|
|
if: ${{ github.event_name != 'pull_request' || github.repository != github.event.pull_request.head.repo.full_name }}
|
|
runs-on: ubuntu-latest
|
|
strategy:
|
|
matrix:
|
|
java: [ '17' ]
|
|
fail-fast: true
|
|
steps:
|
|
- name: Checkout Git Repository
|
|
uses: actions/checkout@v2
|
|
- name: Validate Gradle Wrapper
|
|
uses: gradle/wrapper-validation-action@v1
|
|
- name: Set up JDK
|
|
uses: actions/setup-java@v2
|
|
with:
|
|
java-version: ${{ matrix.java }}
|
|
distribution: 'temurin'
|
|
- name: Pull Gradle Cache
|
|
uses: actions/cache@v2
|
|
id: gradle-cache
|
|
with:
|
|
path: ~/.gradle
|
|
key: ${{ runner.os }}-maven-${{ hashFiles('gradle/wrapper/gradle-wrapper.properties') }}-java-${{ matrix.java }}
|
|
- name: Configure Git
|
|
run: |
|
|
git config --global user.email "no-reply@github.com"
|
|
git config --global user.name "Github Actions"
|
|
- name: Patch
|
|
run: |
|
|
./gradlew clean applyPatches --stacktrace --no-daemon
|
|
- name: Build
|
|
run: |
|
|
./gradlew paperclipJar --stacktrace --no-daemon
|
|
- name: Archive Paperclip
|
|
uses: actions/upload-artifact@v2
|
|
with:
|
|
name: Mirai-Java17
|
|
path: build/libs/Mirai-1.17.1-R0.1-SNAPSHOT.jar
|
|
- name: Prepare Github Page Files
|
|
run: |
|
|
mkdir -p public
|
|
cp build/libs/Mirai-1.17.1-R0.1-SNAPSHOT.jar public/
|
|
- name: Deploy to Github Pages
|
|
if: github.event_name != 'pull_request'
|
|
uses: peaceiris/actions-gh-pages@v3
|
|
with:
|
|
github_token: ${{ secrets.GITHUB_TOKEN }}
|
|
publish_dir: ./public
|
|
publish_branch: build/1.17
|