Address the time-out issue of AsyncImportTest. #621
This file contains hidden or 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: CI for macOS | |
| # https://github.com/google/mozc/blob/master/docs/build_mozc_in_osx.md | |
| # Run on push. | |
| on: push | |
| permissions: | |
| contents: read | |
| # Prevent previous workflows from running. | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.head_ref || github.ref }} | |
| cancel-in-progress: true | |
| jobs: | |
| build_arm64: | |
| # https://github.com/actions/runner-images/blob/main/images/macos/macos-15-arm64-Readme.md | |
| runs-on: macos-15 | |
| timeout-minutes: 60 | |
| steps: | |
| - name: checkout | |
| uses: actions/checkout@v5 | |
| with: | |
| submodules: recursive | |
| persist-credentials: false | |
| - name: Try to restore update_deps cache | |
| uses: actions/cache@v4 | |
| with: | |
| path: src/third_party_cache | |
| key: update_deps-${{ runner.os }}-${{ hashFiles('src/build_tools/update_deps.py') }} | |
| - name: Install dependencies | |
| working-directory: ./src | |
| # This command uses src/third_party_cache as the download cache. | |
| run: | | |
| python3 build_tools/update_deps.py | |
| - name: Build Qt | |
| working-directory: ./src | |
| run: | | |
| python3 build_tools/build_qt.py --release --confirm_license --macos_cpus=arm64 | |
| echo "MOZC_QT_PATH=${PWD}/third_party/qt" >> $GITHUB_ENV | |
| - name: bazel build | |
| working-directory: ./src | |
| run: | | |
| bazelisk build --config oss_macos package --macos_cpus=arm64 --config release_build | |
| - name: upload artifacts | |
| uses: actions/upload-artifact@v5 | |
| with: | |
| name: Mozc_arm64.pkg | |
| path: src/bazel-bin/mac/Mozc.pkg | |
| if-no-files-found: warn | |
| build_intel64: | |
| # https://github.com/actions/runner-images/blob/main/images/macos/macos-15-arm64-Readme.md | |
| runs-on: macos-15 | |
| timeout-minutes: 60 | |
| steps: | |
| - name: checkout | |
| uses: actions/checkout@v5 | |
| with: | |
| submodules: recursive | |
| persist-credentials: false | |
| - name: Try to restore update_deps cache | |
| uses: actions/cache@v4 | |
| with: | |
| path: src/third_party_cache | |
| key: update_deps-${{ runner.os }}-${{ hashFiles('src/build_tools/update_deps.py') }} | |
| - name: Install dependencies | |
| working-directory: ./src | |
| # This command uses src/third_party_cache as the download cache. | |
| run: | | |
| python3 build_tools/update_deps.py | |
| - name: Build Qt | |
| working-directory: ./src | |
| run: | | |
| python3 build_tools/build_qt.py --release --confirm_license --macos_cpus=x86_64 | |
| echo "MOZC_QT_PATH=${PWD}/third_party/qt" >> $GITHUB_ENV | |
| - name: bazel build | |
| working-directory: ./src | |
| run: | | |
| bazelisk build --config oss_macos package --macos_cpus=x86_64 --config release_build | |
| - name: upload artifacts | |
| uses: actions/upload-artifact@v5 | |
| with: | |
| name: Mozc_intel64.pkg | |
| path: src/bazel-bin/mac/Mozc.pkg | |
| if-no-files-found: warn | |
| build_universal_binary: | |
| # https://github.com/actions/runner-images/blob/main/images/macos/macos-15-arm64-Readme.md | |
| runs-on: macos-15 | |
| timeout-minutes: 90 | |
| steps: | |
| - name: checkout | |
| uses: actions/checkout@v5 | |
| with: | |
| submodules: recursive | |
| persist-credentials: false | |
| - name: Try to restore update_deps cache | |
| uses: actions/cache@v4 | |
| with: | |
| path: src/third_party_cache | |
| key: update_deps-${{ runner.os }}-${{ hashFiles('src/build_tools/update_deps.py') }} | |
| - name: Install dependencies | |
| working-directory: ./src | |
| # This command uses src/third_party_cache as the download cache. | |
| run: | | |
| python3 build_tools/update_deps.py | |
| - name: Build Qt | |
| working-directory: ./src | |
| run: | | |
| python3 build_tools/build_qt.py --release --confirm_license --macos_cpus=x86_64,arm64 | |
| echo "MOZC_QT_PATH=${PWD}/third_party/qt" >> $GITHUB_ENV | |
| - name: bazel build | |
| working-directory: ./src | |
| run: | | |
| bazelisk build --config oss_macos package --macos_cpus=x86_64,arm64 --config release_build | |
| - name: upload artifacts | |
| uses: actions/upload-artifact@v5 | |
| with: | |
| name: Mozc_universal_binary.pkg | |
| path: src/bazel-bin/mac/Mozc.pkg | |
| if-no-files-found: warn | |
| test: | |
| # https://github.com/actions/runner-images/blob/main/images/macos/macos-15-arm64-Readme.md | |
| runs-on: macos-15 | |
| timeout-minutes: 60 | |
| steps: | |
| - name: checkout | |
| uses: actions/checkout@v5 | |
| with: | |
| submodules: recursive | |
| persist-credentials: false | |
| - name: Try to restore update_deps cache | |
| uses: actions/cache@v4 | |
| with: | |
| path: src/third_party_cache | |
| key: update_deps-${{ runner.os }}-${{ hashFiles('src/build_tools/update_deps.py') }} | |
| - name: Install dependencies | |
| working-directory: ./src | |
| # This command uses src/third_party_cache as the download cache. | |
| run: | | |
| python3 build_tools/update_deps.py | |
| - name: bazel test | |
| working-directory: ./src | |
| run: | | |
| bazelisk test ... --config oss_macos --build_tests_only -c dbg | |
| # actions/cache works without this job, but having this would increase the likelihood of cache hit | |
| # in other jobs. Another approach would be to use "needs:". | |
| # https://docs.github.com/en/actions/using-jobs/using-jobs-in-a-workflow | |
| cache_deps: | |
| # https://github.com/actions/runner-images/blob/main/images/macos/macos-15-arm64-Readme.md | |
| runs-on: macos-15 | |
| timeout-minutes: 15 | |
| steps: | |
| - name: checkout | |
| uses: actions/checkout@v5 | |
| with: | |
| submodules: false | |
| persist-credentials: false | |
| - name: Try to restore update_deps cache | |
| uses: actions/cache@v4 | |
| with: | |
| path: src/third_party_cache | |
| key: update_deps-${{ runner.os }}-${{ hashFiles('src/build_tools/update_deps.py') }} | |
| - name: Install dependencies | |
| working-directory: ./src | |
| # This command uses src/third_party_cache as the download cache. | |
| run: | | |
| python3 build_tools/update_deps.py --cache_only |