name: Auto-update clients on: schedule: - cron: '0 0,12 * * *' workflow_dispatch: jobs: build: if: ${{ github.ref == 'refs/heads/main' }} concurrency: group: ${{ github.workflow }} cancel-in-progress: true runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v4 - name: Setup Java uses: actions/setup-java@v4 with: distribution: 'temurin' java-version: '21' - name: Setup Gradle uses: gradle/actions/setup-gradle@v4 with: cache-disabled: true - name: Compile EaglercraftX 1.8 if: success() || failure() run: | git clone https://git.eaglercraft.rip/eaglercraft/eaglercraft-1.8-workspace.git ${{ runner.temp }}/eaglerx rm -rf \ ./src/game/main/1.8.8/lang/ \ ./src/game/main/1.8.8/assets.epk \ ./src/game/main/1.8.8/classes.js \ ./src/game/main/1.8.8/offline.html \ ${{ runner.temp }}/eaglerx/javascript/assets.epk \ ${{ runner.temp }}/eaglerx/javascript/classes.js cd ${{ runner.temp }}/eaglerx/ chmod +x ./gradlew ./gradlew generateJavascript bash ./CompileEPK.sh wget -O ${{ github.workspace }}/src/game/main/1.8.8/offline.html https://git.eaglercraft.rip/eaglercraft/eaglercraft-builds/raw/branch/main/EaglercraftX_1.8_Offline_Signed_Client.html cd ${{ github.workspace }} cp -r --no-preserve=mode ${{ runner.temp }}/eaglerx/javascript/lang/ ./src/game/main/1.8.8/lang/ cp --no-preserve=mode ${{ runner.temp }}/eaglerx/javascript/assets.epk ./src/game/main/1.8.8/assets.epk cp --no-preserve=mode ${{ runner.temp }}/eaglerx/javascript/classes.js ./src/game/main/1.8.8/classes.js # FREEZE AT V0.6.1 UNTIL FURTHER NOTICE #- name: Compile EaglercraftL 1.9 # if: success() || failure() # run: | # git clone https://git.zelz.net/Eagler-Lambda/hoosiertransfer-mod.git ${{ runner.temp }}/eaglerl # rm -rf \ # ./src/game/main/1.9.4/lang/ \ # ./src/game/main/1.9.4/assets.epk \ # ./src/game/main/1.9.4/classes.js \ # ./src/game/main/1.9.4/offline.html \ # ${{ runner.temp }}/eaglerl/javascript/assets.epk \ # ${{ runner.temp }}/eaglerl/javascript/classes.js # cd ${{ runner.temp }}/eaglerl/ # chmod +x ./gradlew # ./gradlew generateJavascript # bash ./CompileEPK.sh # wget -O ${{ github.workspace }}/src/game/main/1.9.4/offline.html https://git.zelz.net/Eagler-Lambda/hoosiertransfer-mod/releases/download/latest/EaglercraftL_1.9_Offline_Signed_Client.html # cd ${{ github.workspace }} # cp -r --no-preserve=mode ${{ runner.temp }}/eaglerl/javascript/lang/ ./src/game/main/1.9.4/lang/ # cp --no-preserve=mode ${{ runner.temp }}/eaglerl/javascript/assets.epk ./src/game/main/1.9.4/assets.epk # cp --no-preserve=mode ${{ runner.temp }}/eaglerl/javascript/classes.js ./src/game/main/1.9.4/classes.js - name: Compile Starlike Client if: success() || failure() run: | git clone https://github.com/SpeedSlicer/Starlike-Client.git ${{ runner.temp }}/starlike rm -rf \ ./src/game/clients/starlike/assets.epk \ ./src/game/clients/starlike/classes.js \ ./src/game/clients/starlike/offline.html \ ${{ runner.temp }}/starlike/javascript/assets.epk \ ${{ runner.temp }}/starlike/javascript/classes.js cd ${{ runner.temp }}/starlike/ chmod +x ./gradlew ./gradlew generateJavascript bash ./CompileEPK.sh bash ./MakeOfflineDownload.sh cd ${{ github.workspace }} cp --no-preserve=mode ${{ runner.temp }}/starlike/javascript/assets.epk ./src/game/clients/starlike/assets.epk cp --no-preserve=mode ${{ runner.temp }}/starlike/javascript/classes.js ./src/game/clients/starlike/classes.js cp --no-preserve=mode ${{ runner.temp }}/starlike/javascript/Starlike_Client_Offline.html ./src/game/clients/starlike/offline.html - name: Compile Shadow Client if: success() || failure() run: | git clone https://github.com/PeytonPlayz595/Shadow-4.0.git ${{ runner.temp }}/shadow rm -rf \ ./src/game/clients/shadow/lang/ \ ./src/game/clients/shadow/assets.epk \ ./src/game/clients/shadow/classes.js \ ./src/game/clients/shadow/offline.html \ ${{ runner.temp }}/shadow/javascript/assets.epk \ ${{ runner.temp }}/shadow/javascript/classes.js cd ${{ runner.temp }}/shadow/ chmod +x ./gradlew ./gradlew generateJavascript bash ./CompileEPK.sh bash ./MakeOfflineDownload.sh cd ${{ github.workspace }} cp -r --no-preserve=mode ${{ runner.temp }}/shadow/javascript/lang/ ./src/game/clients/shadow/lang/ cp --no-preserve=mode ${{ runner.temp }}/shadow/javascript/assets.epk ./src/game/clients/shadow/assets.epk cp --no-preserve=mode ${{ runner.temp }}/shadow/javascript/classes.js ./src/game/clients/shadow/classes.js cp --no-preserve=mode ${{ runner.temp }}/shadow/javascript/Shadow_Client_International.html ./src/game/clients/shadow/offline.html - name: Commit and push changes id: git-auto-commit-action if: success() || failure() uses: stefanzweifel/git-auto-commit-action@v5 with: commit_message: 'github-actions: auto-update clients' commit_author: 'github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>'