summaryrefslogtreecommitdiff
path: root/.github/workflows/web_builds.yml
diff options
context:
space:
mode:
Diffstat (limited to '.github/workflows/web_builds.yml')
-rw-r--r--.github/workflows/web_builds.yml51
1 files changed, 51 insertions, 0 deletions
diff --git a/.github/workflows/web_builds.yml b/.github/workflows/web_builds.yml
new file mode 100644
index 0000000000..8c5b14e314
--- /dev/null
+++ b/.github/workflows/web_builds.yml
@@ -0,0 +1,51 @@
+name: 🌐 Web Builds
+on: [push, pull_request]
+
+# Global Settings
+env:
+ # Only used for the cache key. Increment version to force clean build.
+ GODOT_BASE_BRANCH: master
+ SCONSFLAGS: verbose=yes warnings=extra werror=yes debug_symbols=no
+ EM_VERSION: 3.1.10
+ EM_CACHE_FOLDER: "emsdk-cache"
+
+concurrency:
+ group: ci-${{github.actor}}-${{github.head_ref || github.run_number}}-${{github.ref}}-web
+ cancel-in-progress: true
+
+jobs:
+ web-template:
+ runs-on: "ubuntu-20.04"
+ name: Template (target=release, tools=no)
+
+ steps:
+ - uses: actions/checkout@v3
+
+ - name: Set up Emscripten latest
+ uses: mymindstorm/setup-emsdk@v11
+ with:
+ version: ${{env.EM_VERSION}}
+ actions-cache-folder: ${{env.EM_CACHE_FOLDER}}
+
+ - name: Verify Emscripten setup
+ run: |
+ emcc -v
+
+ - name: Setup Godot build cache
+ uses: ./.github/actions/godot-cache
+ continue-on-error: true
+
+ - name: Setup python and scons
+ uses: ./.github/actions/godot-deps
+
+ - name: Compilation
+ uses: ./.github/actions/godot-build
+ with:
+ sconsflags: ${{ env.SCONSFLAGS }}
+ platform: web
+ target: release
+ tools: false
+ tests: false
+
+ - name: Upload artifact
+ uses: ./.github/actions/upload-artifact