From 707188197cc4432f8ef6a9f4eec8812030a155ce Mon Sep 17 00:00:00 2001 From: Bluemangoo Date: Sat, 11 May 2024 22:58:05 +0800 Subject: [PATCH] Upgrade CI Again --- .github/workflows/leaves.yml | 167 ++++++++++++++++++----------------- .github/workflows/test.yml | 17 ++-- 2 files changed, 93 insertions(+), 91 deletions(-) diff --git a/.github/workflows/leaves.yml b/.github/workflows/leaves.yml index d6ddad2f..c2bec553 100644 --- a/.github/workflows/leaves.yml +++ b/.github/workflows/leaves.yml @@ -2,7 +2,7 @@ name: Leaves CI on: push: - branches: [ master ] + branches: [master] workflow_dispatch: jobs: @@ -10,85 +10,86 @@ jobs: runs-on: ubuntu-latest if: github.event.pull_request.merged || github.event_name == 'push' || github.event_name == 'workflow_dispatch' steps: - - name: Get repository - uses: actions/checkout@v4 - with: - fetch-depth: 0 - - name: Get JDK 17 - uses: actions/setup-java@v4 - with: - java-version: '21' - distribution: 'zulu' - - name: Setup Git Config - run: | - git config --global user.email "ci@leavesmc.top" - git config --global user.name "Leaves CI" - - name: Apply Patches - uses: gradle/gradle-build-action@937999e9cc2425eddc7fd62d1053baf041147db7 - with: - arguments: applyPatches - - name: Create Paperclip Jar - uses: gradle/gradle-build-action@937999e9cc2425eddc7fd62d1053baf041147db7 - with: - arguments: createReobfPaperclipJar - - name: Publish API - continue-on-error: true - uses: gradle/gradle-build-action@937999e9cc2425eddc7fd62d1053baf041147db7 - with: - arguments: publish -PleavesUsername=${{ secrets.REPO_USERNAME }} -PleavesPassword=${{ secrets.REPO_PASSWORD }} - - name: Create Configuration - continue-on-error: true - uses: gradle/gradle-build-action@937999e9cc2425eddc7fd62d1053baf041147db7 - with: - arguments: createLeavesConfig - - name: Push Configuration - continue-on-error: true - run: | - mkdir --parents "$HOME/.ssh" - ssh-keyscan -H "github.com" > "$HOME/.ssh/known_hosts" - echo "${{ secrets.CONFIG_DEPLOY_KEY }}" > "$HOME/.ssh/deploy.key" - chmod 400 "$HOME/.ssh/deploy.key" - export GIT_SSH_COMMAND="ssh -i $HOME/.ssh/deploy.key" - git clone git@github.com:LeavesMC/Configuration.git configuration -b Leaves - cp run/leaves.yml configuration/leaves.yml -f - cd configuration - git add leaves.yml - git commit leaves.yml -m "$(date -u +"%Y-%m-%dT%H:%M:%SZ") - https://github.com/LeavesMC/Leaves/commit/$(cd .. && git rev-parse HEAD)" - git push origin HEAD:Leaves - - name: Get Release Info - run: sh scripts/GetReleaseInfo.sh - - name: Create Release - if: "!contains(github.event.commits[0].message, '[release-skip]')" - uses: ncipollo/release-action@v1 - with: - artifacts: ${{ env.jar }} - bodyFile: ${{ env.info }} - tag: ${{ env.tag }} - name: ${{ env.name }} - prerelease: ${{ env.pre }} - token: ${{ secrets.GITHUB_TOKEN }} - makeLatest: ${{ env.make_latest }} - - name: Delete Draft Releases - uses: hugo19941994/delete-draft-releases@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - name: Github Releases To Discord - continue-on-error: true - uses: tsickert/discord-webhook@v6 - with: - webhook-url: ${{ secrets.DISCORD_WEBHOOK }} - raw-data: ${{ env.discordmes }} - - name: Upload Artifact - uses: actions/upload-artifact@v4 - with: - name: ${{ env.jar }} - path: ${{ env.jar }} - - name: Push to Api - continue-on-error: true - if: "!contains(github.event.commits[0].message, '[release-skip]')" - env: - secret: ${{ secrets.API_PUSH_TOKEN }} - secret_v2: ${{ secrets.API_V2_PUSH_TOKEN }} - tag: ${{ env.tag }} - run: sh scripts/PushToAPI.sh + - name: Get repository + uses: actions/checkout@v4 + with: + fetch-depth: 0 + - name: Get JDK 17 + uses: actions/setup-java@v4 + with: + java-version: "21" + distribution: "zulu" + - name: Setup Gradle + uses: gradle/actions/setup-gradle@v3 + with: + add-job-summary: never + generate-job-summary: false + - name: Setup Git Config + run: | + git config --global user.email "ci@leavesmc.top" + git config --global user.name "Leaves CI" + - name: Apply Patches + run: ./gradlew applyPatches + - name: Create Paperclip Jar + run: ./gradlew createReobfPaperclipJar + - name: Publish API + continue-on-error: true + uses: gradle/gradle-build-action@v3 + with: + arguments: publish -PleavesUsername=${{ secrets.REPO_USERNAME }} -PleavesPassword=${{ secrets.REPO_PASSWORD }} + - name: Create Configuration + continue-on-error: true + uses: gradle/gradle-build-action@v3 + with: + arguments: createLeavesConfig + - name: Push Configuration + continue-on-error: true + run: | + mkdir --parents "$HOME/.ssh" + ssh-keyscan -H "github.com" > "$HOME/.ssh/known_hosts" + echo "${{ secrets.CONFIG_DEPLOY_KEY }}" > "$HOME/.ssh/deploy.key" + chmod 400 "$HOME/.ssh/deploy.key" + export GIT_SSH_COMMAND="ssh -i $HOME/.ssh/deploy.key" + git clone git@github.com:LeavesMC/Configuration.git configuration -b Leaves + cp run/leaves.yml configuration/leaves.yml -f + cd configuration + git add leaves.yml + git commit leaves.yml -m "$(date -u +"%Y-%m-%dT%H:%M:%SZ") + https://github.com/LeavesMC/Leaves/commit/$(cd .. && git rev-parse HEAD)" + git push origin HEAD:Leaves + - name: Get Release Info + run: sh scripts/GetReleaseInfo.sh + - name: Create Release + if: "!contains(github.event.commits[0].message, '[release-skip]')" + uses: ncipollo/release-action@v1 + with: + artifacts: ${{ env.jar }} + bodyFile: ${{ env.info }} + tag: ${{ env.tag }} + name: ${{ env.name }} + prerelease: ${{ env.pre }} + token: ${{ secrets.GITHUB_TOKEN }} + makeLatest: ${{ env.make_latest }} + - name: Delete Draft Releases + uses: hugo19941994/delete-draft-releases@v1 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + - name: Github Releases To Discord + continue-on-error: true + uses: tsickert/discord-webhook@v6 + with: + webhook-url: ${{ secrets.DISCORD_WEBHOOK }} + raw-data: ${{ env.discordmes }} + - name: Upload Artifact + uses: actions/upload-artifact@v4 + with: + name: ${{ env.jar }} + path: ${{ env.jar }} + - name: Push to Api + continue-on-error: true + if: "!contains(github.event.commits[0].message, '[release-skip]')" + env: + secret: ${{ secrets.API_PUSH_TOKEN }} + secret_v2: ${{ secrets.API_V2_PUSH_TOKEN }} + tag: ${{ env.tag }} + run: sh scripts/PushToAPI.sh diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index e1202b04..4481391c 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -27,20 +27,21 @@ jobs: - name: Get JDK 17 uses: actions/setup-java@v4 with: - java-version: '21' - distribution: 'zulu' + java-version: "21" + distribution: "zulu" + - name: Setup Gradle + uses: gradle/actions/setup-gradle@v3 + with: + add-job-summary: never + generate-job-summary: false - name: Setup Git Config run: | git config --global user.email "ci@leavesmc.top" git config --global user.name "Leaves CI" - name: Apply Patches - uses: gradle/gradle-build-action@937999e9cc2425eddc7fd62d1053baf041147db7 - with: - arguments: applyPatches + run: ./gradlew applyPatches - name: Create Paperclip Jar - uses: gradle/gradle-build-action@937999e9cc2425eddc7fd62d1053baf041147db7 - with: - arguments: createReobfPaperclipJar + run: ./gradlew createReobfPaperclipJar - name: Get Release Info run: sh scripts/GetReleaseInfo.sh - name: Archive Leaves