diff options
Diffstat (limited to '.github/workflows/build_webclient.yml')
-rw-r--r-- | .github/workflows/build_webclient.yml | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/.github/workflows/build_webclient.yml b/.github/workflows/build_webclient.yml new file mode 100644 index 0000000..7d8afd0 --- /dev/null +++ b/.github/workflows/build_webclient.yml @@ -0,0 +1,45 @@ +name: Build latest (Webclient) +# trigger via either push to selected branches or on manual run +on: + push: + branches: + - main + - master + workflow_dispatch: + +concurrency: + group: ${{ github.ref }}-webclient + cancel-in-progress: true + +jobs: + build: + runs-on: ubuntu-latest + container: + image: trzeci/emscripten-fastcomp:1.39.0 + steps: + - uses: actions/checkout@v4 + - name: Compiles webclient + id: compile + run: | + cd src + emcc *.c -o ClassiCube.js -s WASM=0 -s NO_EXIT_RUNTIME=1 -s LEGACY_VM_SUPPORT=1 -s ALLOW_MEMORY_GROWTH=1 -s ABORTING_MALLOC=0 -s ENVIRONMENT=web -s TOTAL_STACK=256Kb --js-library interop_web.js -Os -g2 -s SINGLE_FILE + sed -i 's#eventHandler.useCapture);#{ useCapture: eventHandler.useCapture, passive: false });#g' ClassiCube.js + + - uses: ./.github/actions/notify_failure + if: ${{ always() && steps.compile.outcome == 'failure' }} + with: + NOTIFY_MESSAGE: 'Failed to compile Webclient' + WEBHOOK_URL: '${{ secrets.WEBHOOK_URL }}' + + - uses: ./.github/actions/upload_build + if: ${{ always() && steps.compile.outcome == 'success' }} + with: + SOURCE_FILE: 'src/ClassiCube.js' + DEST_NAME: 'ClassiCube.js' + + + - uses: ./.github/actions/notify_success + if: ${{ always() && steps.compile.outcome == 'success' }} + with: + DESTINATION_URL: '${{ secrets.NOTIFY_URL }}' + WORKFLOW_NAME: 'webclient' \ No newline at end of file |