76 lines
2.5 KiB
YAML
76 lines
2.5 KiB
YAML
on:
|
|
workflow_dispatch:
|
|
push:
|
|
paths:
|
|
- ".forgejo/workflows/build-client.yml"
|
|
- "scripts/**"
|
|
- "Client/**"
|
|
|
|
|
|
jobs:
|
|
make:
|
|
name: Build BaseBand DSM & Broadway
|
|
|
|
runs-on: 'docker'
|
|
|
|
steps:
|
|
- name: Setup Java
|
|
uses: https://github.com/actions/setup-java@v4
|
|
with:
|
|
distribution: 'adopt'
|
|
java-version: 8
|
|
- name: Checkout
|
|
uses: actions/checkout@v4
|
|
- name: Notify Action Start
|
|
run: bash scripts/webhook.sh "**(Client)** Build Action Started"
|
|
- name: Initialize Gradle
|
|
uses: https://github.com/gradle/actions/setup-gradle@v3
|
|
- name: Initialize ForgeGradle cache
|
|
uses: actions/cache@v4
|
|
with:
|
|
key: fg_cache
|
|
path: |
|
|
Client/build/fg_cache
|
|
Loader/build/fg_cache
|
|
- name: Refresh deps
|
|
run: |
|
|
./gradlew Client:dependencies | grep -e "tuddylib\|ClientBoot"
|
|
./gradlew Client:dependencies | grep -e "tuddylib\|ClientBoot"
|
|
./gradlew Client:dependencies | grep -e "tuddylib\|ClientBoot"
|
|
- name: Build
|
|
run: |
|
|
bash scripts/gen_hash.sh
|
|
./gradlew Client:build
|
|
- name: Obfuscate DSM
|
|
if: github.ref == 'refs/heads/main' # !! ONLY MAIN
|
|
run: |
|
|
./gradlew Client:proguard
|
|
MOBFARGS=-p bash scripts/mobf.sh Client/build/proguard/BaseBand-DSM.jar
|
|
- name: Obfuscate Broadway
|
|
if: github.ref == 'refs/heads/release' # !! ONLY RELEASE
|
|
run: |
|
|
./gradlew Client:proguardRelease
|
|
MOBFARGS=-p bash scripts/mobf.sh Client/build/proguard/BaseBand-Broadway.jar
|
|
|
|
- name: Push DSM to Prod Server
|
|
if: github.ref == 'refs/heads/main' # !! ONLY MAIN
|
|
env:
|
|
SSH_PRIVATEKEY: ${{ secrets.SSH_PRIVATEKEY }}
|
|
GPG_PRIVATEKEY: ${{ secrets.GPG_PRIVATEKEY }}
|
|
BB_HOST: ${{ vars.BB_HOST }}
|
|
BB_PORT: ${{ vars.BB_PORT }}
|
|
BB_PATH: ${{ vars.BB_PATH }}
|
|
run: bash scripts/push_file.sh Client/build/proguard/BaseBand-DSM.jar 3849
|
|
- name: Push Broadway to Prod Server
|
|
if: github.ref == 'refs/heads/release' # !! ONLY RELEASE
|
|
env:
|
|
SSH_PRIVATEKEY: ${{ secrets.SSH_PRIVATEKEY }}
|
|
GPG_PRIVATEKEY: ${{ secrets.GPG_PRIVATEKEY }}
|
|
BB_HOST: ${{ vars.BB_HOST }}
|
|
BB_PORT: ${{ vars.BB_PORT }}
|
|
BB_PATH: ${{ vars.BB_PATH }}
|
|
run: bash scripts/push_file.sh Client/build/proguard/BaseBand-Broadway.jar 3849
|
|
- name: Notify Action Completion
|
|
if: always()
|
|
run: bash scripts/webhook.sh "# New client build\n Build Action Completed <@&1250456258629341284>"
|
|
|