remove unused config, try trigger again
diff --git a/.circleci/extra.yml b/.circleci/extra.yml index 5a445b9..5bb818d 100644 --- a/.circleci/extra.yml +++ b/.circleci/extra.yml
@@ -28,20 +28,6 @@ resource_class: macos.m1.medium.gen1 commands: - # TODO Deduplicate - download-chrome: - description: "Download chrome" - steps: - - run: - name: download chrome - command: | - # TODO: Make these part of the base image - apt-get install -q -y libu2f-udev libvulkan1 xdg-utils - # wget -O ~/chrome.deb https://dl.google.com/linux/direct/google-chrome-beta_current_amd64.deb - # If that download link breaks, temporarily use this URL instead: - # wget -O ~/chrome.deb https://storage.googleapis.com/webassembly/chrome/google-chrome-stable_current_amd64.deb - wget -O ~/chrome.deb https://dl.google.com/linux/direct/google-chrome-unstable_current_amd64.deb - dpkg -i ~/chrome.deb emsdk-env: description: "emsdk_env.sh" steps: @@ -67,67 +53,6 @@ - run: name: pip install command: << parameters.python >> -m pip install -r requirements-dev.txt - install-rust: - steps: - - run: - name: install rust - command: | - curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y - export PATH=${HOME}/.cargo/bin:${PATH} - rustup target add wasm32-unknown-emscripten - echo "export PATH=\"\$HOME/.cargo/bin:\$PATH\"" >> $BASH_ENV - install-node-version: - description: "install a specific version of node" - parameters: - node_version: - description: "version of node to install" - type: string - canary: - description: "install a canary version of node" - type: boolean - default: false - steps: - - run: - name: setup node v<< parameters.node_version >> - command: | - cd $HOME - version=<< parameters.node_version >> - if [[ << parameters.canary >> == "true" ]]; then - wget https://nodejs.org/download/v8-canary/v${version}/node-v${version}-linux-x64.tar.xz - else - wget https://nodejs.org/dist/v${version}/node-v${version}-linux-x64.tar.xz - fi - tar xf node-v${version}-linux-x64.tar.xz - echo "NODE_JS_TEST = [os.path.expanduser('~/node-v${version}-linux-x64/bin/node')]" >> ~/emsdk/.emscripten - echo "JS_ENGINES = [NODE_JS_TEST]" >> ~/emsdk/.emscripten - echo "if os.path.exists(V8_ENGINE[0]): JS_ENGINES.append(V8_ENGINE)" >> ~/emsdk/.emscripten - cat ~/emsdk/.emscripten - echo "export PATH=\"$HOME/node-v${version}-linux-x64/bin:\$PATH\"" >> $BASH_ENV - install-node-latest: - description: "install latest version of node" - steps: - - install-node-version: - node_version: "19.0.0" - install-node-canary: - description: "install canary version of node" - steps: - - install-node-version: - node_version: "24.0.0-v8-canary20250303cbbb63ede3" - canary: true - install-v8: - description: "install v8 using jsvu" - steps: - - run: - name: get v8 - command: | - # We can't use a more recent version of node here because the linux - # image we are using doesn't have a recent enough glibc. - cd $HOME - wget https://nodejs.org/dist/v15.14.0/node-v15.14.0-linux-x64.tar.xz - tar -xf node-v15.14.0-linux-x64.tar.xz - export PATH="`pwd`/node-v15.14.0-linux-x64/bin:${PATH}" - npm install jsvu -g - jsvu --os=default --engines=v8 install-emsdk: description: "Install emsdk" steps: @@ -161,65 +86,6 @@ cat ~/emsdk/.emscripten - emsdk-env - bootstrap - build-libs: - description: "Build all libraries" - steps: - - run: - name: clear cache - command: | - ./emcc --clear-cache - - pip-install - - run: apt-get install -q -y ninja-build - - run: - name: embuilder build ALL - command: | - ./embuilder build ALL - ./test/runner test_hello_world - - run: - name: embuilder (LTO) - command: | - ./embuilder build MINIMAL --lto - ./test/runner test_hello_world - - run: - name: embuilder (WASM64) - command: | - ./embuilder build MINIMAL --wasm64 - - run: - name: embuilder (PIC) - command: | - ./embuilder build MINIMAL_PIC --pic - ./test/runner test_hello_world - - run: - name: embuilder (PIC+LTO) - command: | - ./embuilder build MINIMAL --pic --lto - ./test/runner test_hello_world - persist: - description: "Persist the emsdk, libraries, and engines" - steps: - - persist_to_workspace: - # Must be an absolute path, or relative path from working_directory - root: ~/ - # Must be relative path from root - paths: - - emsdk/ - - cache/ - - vms/ - - wasi-sdk/ - - .jsvu/ - prepare-for-tests: - description: "Setup emscripten tests" - steps: - - attach_workspace: - # Must be absolute path or relative path from working_directory - at: ~/ - - checkout - - run: - name: submodule update - command: git submodule update --init - - emsdk-env - - bootstrap - - pip-install upload-test-results: description: "Upload test results" steps: @@ -267,64 +133,7 @@ - run: name: Add EMTEST_RETRY_FLAKY to bash env command: echo "export EMTEST_RETRY_FLAKY=2" >> $BASH_ENV - run-tests-linux: - description: "Runs emscripten tests" - parameters: - test_targets: - description: "Test suites to run" - type: string - frozen_cache: - description: "Run with cache frozen" - type: boolean - default: true - title: - description: "Name of given test suite" - type: string - default: "" - steps: - - prepare-for-tests - - when: - condition: << parameters.frozen_cache >> - steps: - - freeze-cache - - run-tests: - test_targets: << parameters.test_targets >> - title: << parameters.title >> - - upload-test-results - run-tests-chrome: - description: "Runs browser tests under chrome" - parameters: - test_targets: - description: "Test suites to run" - type: string - title: - description: "Name of given test suite" - type: string - default: "" - steps: - - prepare-for-tests - - download-chrome - - run: - name: run tests (<< parameters.title >>) - environment: - EMTEST_DETECT_TEMPFILE_LEAKS: "0" - # --no-sandbox because we are running as root and chrome requires - # this flag for now: https://crbug.com/638180 - CHROME_FLAGS_BASE: "--no-first-run -start-maximized --no-sandbox --use-gl=swiftshader --user-data-dir=/tmp/chrome-emscripten-profile --enable-experimental-web-platform-features" - CHROME_FLAGS_HEADLESS: "--headless=new --remote-debugging-port=1234" - CHROME_FLAGS_WASM: "--enable-experimental-webassembly-features --js-flags=\"--experimental-wasm-stack-switching --experimental-wasm-type-reflection\"" - CHROME_FLAGS_NOCACHE: "--disk-cache-dir=/dev/null --disk-cache-size=1 --media-cache-size=1 --disable-application-cache --incognito" - # The runners lack sound hardware so fallback to a dummy device (and - # bypass the user gesture so audio tests work without interaction) - CHROME_FLAGS_AUDIO: " --use-fake-device-for-media-stream --autoplay-policy=no-user-gesture-required" - command: | - export EMTEST_BROWSER="/usr/bin/google-chrome $CHROME_FLAGS_BASE $CHROME_FLAGS_HEADLESS $CHROME_FLAGS_WASM $CHROME_FLAGS_NOCACHE $CHROME_FLAGS_AUDIO" - # There are tests in the browser test suite that using libraries - # that are not included by "./embuilder build ALL". For example the - # PIC version of libSDL which is used by test_sdl2_misc_main_module - export EM_FROZEN_CACHE="" - test/runner << parameters.test_targets >> - - upload-test-results + setup-macos: steps: - run: @@ -338,89 +147,6 @@ - run: name: submodule update command: git submodule update --init - run-tests-firefox: - description: "Runs emscripten tests under firefox" - parameters: - test_targets: - description: "Test suites to run" - type: string - title: - description: "Name of given test suite" - type: string - default: "" - steps: - - run: - name: download firefox - command: | - wget -O ~/ff.tar.bz2 "https://download.mozilla.org/?product=firefox-nightly-latest-ssl&os=linux64&lang=en-US" - tar -C ~ -xf ~/ff.tar.bz2 - - run: - name: Add audio dependencies - command: | - # This should add and start PulseAudio's dummy mixer. It will warn - # that "This program is not intended to be run as root" but it can - # be ignored. - apt-get update -y - apt-get install -q -y pulseaudio - pulseaudio --start - - run: - name: configure firefox - command: | - # Note: the autoplay pref allows playback without user interaction - mkdir ~/tmp-firefox-profile/ - cat > ~/tmp-firefox-profile/user.js \<<EOF - user_pref("gfx.offscreencanvas.enabled", true); - user_pref("javascript.options.shared_memory", true); - user_pref("javascript.options.wasm_memory64", true); - user_pref("dom.postMessage.sharedArrayBuffer.bypassCOOP_COEP.insecure.enabled", true); - user_pref("media.autoplay.default", 0); - EOF - - run: - name: run tests (<< parameters.title >>) - environment: - GALLIUM_DRIVER: softpipe # TODO: use the default llvmpipe when it supports more extensions - # TODO: Do GL testing when https://bugzil.la/1375585 (lack of WebGL - # support in headless mode) resolves - EMTEST_LACKS_GRAPHICS_HARDWARE: "1" - EMTEST_LACKS_WEBGPU: "1" - # OffscreenCanvas support is not yet done in Firefox. - EMTEST_LACKS_OFFSCREEN_CANVAS: "1" - EMTEST_DETECT_TEMPFILE_LEAKS: "0" - DISPLAY: ":0" - command: | - export EMTEST_BROWSER="$HOME/firefox/firefox -headless -profile $HOME/tmp-firefox-profile/" - # There are tests in the browser test suite that using libraries - # that are not included by "./embuilder build ALL". For example the - # PIC version of libSDL which is used by test_sdl2_misc_main_module - export EM_FROZEN_CACHE="" - echo "-----" - echo "Running browser tests" - echo "-----" - test/runner << parameters.test_targets >> - # posix and emrun suites are disabled because firefox errors on - # "Firefox is already running, but is not responding." - # TODO: find out a way to shut down and restart firefox - - upload-test-results - test-sockets-chrome: - description: "Runs emscripten sockets tests under chrome" - steps: - - prepare-for-tests - - download-chrome - - run: - name: run sockets tests - environment: - EMTEST_LACKS_SOUND_HARDWARE: "1" - EMTEST_DETECT_TEMPFILE_LEAKS: "0" - # --no-sandbox becasue we are running as root and chrome requires - # this flag for now: https://crbug.com/638180 - CHROME_FLAGS_BASE: "--no-first-run -start-maximized --no-sandbox --use-gl=swiftshader --user-data-dir=/tmp/chrome-emscripten-profile" - CHROME_FLAGS_HEADLESS: "--headless=new --remote-debugging-port=1234" - CHROME_FLAGS_WASM: "--enable-experimental-webassembly-features" - CHROME_FLAGS_NOCACHE: "--disk-cache-dir=/dev/null --disk-cache-size=1 --media-cache-size=1 --disable-application-cache --incognito" - command: | - export EMTEST_BROWSER="/usr/bin/google-chrome $CHROME_FLAGS_BASE $CHROME_FLAGS_HEADLESS $CHROME_FLAGS_WASM $CHROME_FLAGS_NOCACHE" - test/runner sockets - - upload-test-results jobs: # windows and mac do not have separate build and test jobs, as they only run