[Bot] Update i18n on 2.17.2 #16162
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: WebAssembly | |
on: | |
push: | |
branches: | |
- main | |
- 'releases/**' | |
pull_request: | |
branches: | |
- main | |
- 'releases/**' | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.ref }} | |
cancel-in-progress: true | |
jobs: | |
wasmQt6: | |
name: Wasm Qt6 | |
runs-on: ubuntu-20.04 | |
outputs: | |
matrix: ${{ steps.testGen.outputs.tests }} | |
env: | |
QTVERSION: 6.2.4 | |
steps: | |
- name: Clone repository | |
uses: actions/checkout@v3 | |
with: | |
submodules: 'true' | |
- name: Install Qt | |
shell: bash | |
run: | | |
python3 -m pip install aqtinstall | |
# qt6.2.3 for wasm needs the desktop linux installation | |
python3 -m aqt install-qt -O /opt linux desktop $QTVERSION | |
python3 -m aqt install-qt -O /opt linux desktop $QTVERSION wasm_32 -m qtcharts qtwebsockets qt5compat | |
- name: Install python dependencies | |
shell: bash | |
run: | | |
pip install -r requirements.txt | |
- name: Setup emsdk | |
uses: mymindstorm/setup-emsdk@v7 | |
- name: Compiling | |
shell: bash | |
run: | | |
export PATH=/opt/$QTVERSION/wasm_32/bin:/opt/$QTVERSION/gcc_64/bin:$PATH | |
mkdir build | |
/opt/$QTVERSION/wasm_32/bin/qt-cmake -S . -B build -DQT_HOST_PATH=/opt/$QTVERSION/gcc_64 -DQT_HOST_PATH_CMAKE_DIR=/opt/$QTVERSION/gcc_64/lib/cmake -DCMAKE_BUILD_TYPE=Release | |
cmake --build build -j4 | |
- name: Generate tasklist | |
id: testGen | |
shell: bash | |
run: | | |
echo -n "tests=" >> $GITHUB_OUTPUT | |
for test in $(find tests/functional -name 'test*.js' | sort); do | |
printf '{"name": "%s", "path": "%s"}' $(basename ${test%.js} | sed -n 's/test//p') $test | |
done | jq -s -c >> $GITHUB_OUTPUT | |
- name: Check tests | |
shell: bash | |
env: | |
TEST_LIST: ${{ steps.testGen.outputs.tests }} | |
run: | | |
echo $TEST_LIST | jq | |
- name: Uploading | |
uses: actions/upload-artifact@v3 | |
with: | |
name: WebAssembly Build Qt6 | |
path: build/wasm_build | |
functionaltests: | |
name: Functional tests | |
needs: | |
- wasmQt6 | |
runs-on: ubuntu-20.04 | |
timeout-minutes: 45 | |
strategy: | |
fail-fast: false # Don't cancel other jobs if a test fails | |
matrix: | |
test: ${{ fromJson(needs.wasmQt6.outputs.matrix) }} | |
env: | |
QTVERSION: 6.2.4 | |
steps: | |
- name: Clone repository | |
uses: actions/checkout@v3 | |
- name: Cache build | |
id: cache-build | |
uses: actions/cache@v3 | |
with: | |
path: build/ | |
key: ${{ github.sha }} | |
- name: Install Qt | |
shell: bash | |
run: | | |
python3 -m pip install aqtinstall | |
python3 -m aqt install-qt -O /opt linux desktop $QTVERSION | |
- name: Install dependecies | |
run: | | |
sudo apt install --no-upgrade firefox xvfb -y | |
pip3 install -r requirements.txt | |
npm install | |
- name: Download a Build Artifact | |
uses: actions/download-artifact@v3 | |
with: | |
name: WebAssembly Build Qt6 | |
# Destination path, WASM_BUILD_DIRECTORY | |
path: wasm_build | |
- name: Build addons | |
shell: bash | |
run: ./scripts/addon/generate_all_tests.py -q /opt/$QTVERSION/gcc_64/bin | |
- name: Running ${{matrix.test.name}} Tests | |
id: runTests | |
uses: nick-invision/retry@v2 | |
with: | |
timeout_minutes: 15 | |
max_attempts: 3 | |
command: | | |
export PATH=$GECKOWEBDRIVER:$(npm bin):$PATH | |
export HEADLESS=yes | |
export WASM_BUILD_DIRECTORY=$(pwd)/wasm_build | |
xvfb-run -a npm run functionalTestWasm -- --retries 3 ${{matrix.test.path}} |