ci: update workflows
diff --git a/.github/workflows/amd64_linux_bazel.yml b/.github/workflows/amd64_linux_bazel.yml index 133802b..3dddbcb 100644 --- a/.github/workflows/amd64_linux_bazel.yml +++ b/.github/workflows/amd64_linux_bazel.yml
@@ -3,31 +3,27 @@ on: [push, pull_request, workflow_dispatch] +concurrency: + group: ${{github.workflow}}-${{github.ref}} + cancel-in-progress: true + # Building using the github runner environement directly. jobs: native: strategy: matrix: - bazel: [ - {compilation_mode: opt}, - {compilation_mode: dbg}, - ] + examples: [{name: basic}, {name: embed}] cpp: [ - {version: 14, flags: "-std=c++14"}, + #{version: 14, flags: "-std=c++14"}, {version: 17, flags: "-std=c++17"}, {version: 20, flags: "-std=c++20"}, ] python: [ {version: '3.11'}, + {version: '3.12'}, ] - exclude: - # only test `-c dbg` build with C++17 - - cpp: {version: 14} - bazel: {compilation_mode: dbg} - - cpp: {version: 20} - bazel: {compilation_mode: dbg} fail-fast: false - name: Linux•Bazel(${{ matrix.bazel.compilation_mode }})•C++${{ matrix.cpp.version }}•Python${{ matrix.python.version }} + name: Linux•Bzl•C++${{matrix.cpp.version}}•Py${{matrix.python.version}}•${{matrix.examples.name}} runs-on: ubuntu-latest steps: - uses: actions/checkout@v5 @@ -36,7 +32,7 @@ - name: Setup Python uses: actions/setup-python@v6 with: - python-version: ${{ matrix.python.version }} + python-version: ${{matrix.python.version}} - name: Check Python run: | python --version @@ -44,27 +40,27 @@ - uses: bazel-contrib/setup-bazel@0.15.0 with: bazelisk-cache: true - disk-cache: ${{ github.workflow }} + disk-cache: ${{github.workflow}} repository-cache: true - name: Check Bazel run: bazel version - name: Build run: > - cd examples/basic && + cd examples/${{matrix.examples.name}} && bazel build - -c ${{ matrix.bazel.compilation_mode }} - --cxxopt=${{ matrix.cpp.flags }} --host_cxxopt=${{ matrix.cpp.flags }} + --config=ci + --@rules_python//python/config_settings:python_version=${{matrix.python.version}} + --cxxopt=${{matrix.cpp.flags}} --host_cxxopt=${{ matrix.cpp.flags }} --subcommands=pretty_print - --enable_bzlmod //... - name: Test run: > - cd examples/basic && + cd examples/${{matrix.examples.name}} && bazel test - -c ${{ matrix.bazel.compilation_mode }} - --cxxopt=${{ matrix.cpp.flags }} --host_cxxopt=${{ matrix.cpp.flags }} + --config=ci + --@rules_python//python/config_settings:python_version=${{matrix.python.version}} + --cxxopt=${{matrix.cpp.flags}} --host_cxxopt=${{ matrix.cpp.flags }} --subcommands=pretty_print - --enable_bzlmod //... amd64_linux_bazel:
diff --git a/.github/workflows/amd64_macos_bazel.yml b/.github/workflows/amd64_macos_bazel.yml index b6d2aad..d9cfa6c 100644 --- a/.github/workflows/amd64_macos_bazel.yml +++ b/.github/workflows/amd64_macos_bazel.yml
@@ -3,31 +3,27 @@ on: [push, pull_request, workflow_dispatch] +concurrency: + group: ${{github.workflow}}-${{github.ref}} + cancel-in-progress: true + # Building using the github runner environement directly. jobs: native: strategy: matrix: - bazel: [ - {compilation_mode: opt}, - {compilation_mode: dbg}, - ] + examples: [{name: basic}, {name: embed}] cpp: [ #{version: 14, flags: "-std=c++14"}, {version: 17, flags: "-std=c++17"}, - #{version: 20, flags: "-std=c++20"}, + {version: 20, flags: "-std=c++20"}, ] python: [ {version: '3.11'}, + {version: '3.12'}, ] - exclude: - # only test `-c dbg` build with C++17 - - cpp: {version: 14} - bazel: {compilation_mode: dbg} - - cpp: {version: 20} - bazel: {compilation_mode: dbg} fail-fast: false - name: MacOS•Bazel(${{ matrix.bazel.compilation_mode }})•C++${{ matrix.cpp.version }}•Python${{ matrix.python.version }} + name: MacOS•Bzl•C++${{matrix.cpp.version}}•Py${{matrix.python.version}}•${{matrix.examples.name}} runs-on: macos-13 # last macos intel based runner steps: - uses: actions/checkout@v5 @@ -39,7 +35,7 @@ - name: Setup Python uses: actions/setup-python@v6 with: - python-version: ${{ matrix.python.version }} + python-version: ${{matrix.python.version}} - name: Check Python run: | python --version @@ -48,21 +44,21 @@ run: bazel version - name: Build run: > - cd examples/basic && + cd examples/${{matrix.examples.name}} && bazel build - -c ${{ matrix.bazel.compilation_mode }} - --cxxopt=${{ matrix.cpp.flags }} --host_cxxopt=${{ matrix.cpp.flags }} + --config=ci + --@rules_python//python/config_settings:python_version=${{matrix.python.version}} + --cxxopt=${{matrix.cpp.flags}} --host_cxxopt=${{ matrix.cpp.flags }} --subcommands=pretty_print - --enable_bzlmod //... - name: Test run: > - cd examples/basic && + cd examples/${{matrix.examples.name}} && bazel test - -c ${{ matrix.bazel.compilation_mode }} - --cxxopt=${{ matrix.cpp.flags }} --host_cxxopt=${{ matrix.cpp.flags }} + --config=ci + --@rules_python//python/config_settings:python_version=${{matrix.python.version}} + --cxxopt=${{matrix.cpp.flags}} --host_cxxopt=${{ matrix.cpp.flags }} --subcommands=pretty_print - --enable_bzlmod //... amd64_macos_bazel:
diff --git a/.github/workflows/amd64_windows_bazel.yml b/.github/workflows/amd64_windows_bazel.yml index 0ae86c1..74adad3 100644 --- a/.github/workflows/amd64_windows_bazel.yml +++ b/.github/workflows/amd64_windows_bazel.yml
@@ -3,46 +3,34 @@ on: [push, pull_request, workflow_dispatch] +concurrency: + group: ${{github.workflow}}-${{github.ref}} + cancel-in-progress: true + # Building using the github runner environement directly. jobs: native: strategy: matrix: - runner: [ - windows-2022, - #windows-2019, - ] - bazel: [ - {compilation_mode: opt}, - {compilation_mode: dbg}, - ] + examples: [{name: basic}, {name: embed}] cpp: [ - {version: 14, flags: "/std:c++14"}, + #{version: 14, flags: "/std:c++14"}, {version: 17, flags: "/std:c++17"}, - #{version: 20, flags: "/std:c++20"}, + {version: 20, flags: "/std:c++20"}, ] python: [ {version: '3.11'}, + {version: '3.12'}, ] - exclude: - - runner: windows-2019 - cpp: {version: 20} - # only test -c dbg with VS 2022 version 17 to save compute time - - runner: windows-2019 - bazel: {compilation_mode: dbg} - - cpp: {version: 14} - bazel: {compilation_mode: dbg} - - cpp: {version: 20} - bazel: {compilation_mode: dbg} - fail-fast: false # Don't cancel all jobs if one fails. - name: ${{ matrix.runner }}•Bazel(${{ matrix.bazel.compilation_mode }})•C++${{ matrix.cpp.version }}•Python${{ matrix.python.version }} - runs-on: ${{ matrix.runner }} + fail-fast: false + name: Windows•Bzl•C++${{matrix.cpp.version}}•Py${{matrix.python.version}}•${{matrix.examples.name}} + runs-on: windows-2022 steps: - uses: actions/checkout@v5 - name: Setup Python uses: actions/setup-python@v6 with: - python-version: ${{ matrix.python.version }} + python-version: ${{matrix.python.version}} - name: Check Python run: | python --version @@ -53,21 +41,21 @@ run: bazel version - name: Build run: > - cd examples/basic && + cd examples/${{matrix.examples.name}} && bazel build - -c ${{ matrix.bazel.compilation_mode }} - --cxxopt=${{ matrix.cpp.flags }} --host_cxxopt=${{ matrix.cpp.flags }} + --config=ci + --@rules_python//python/config_settings:python_version=${{matrix.python.version}} + --cxxopt=${{matrix.cpp.flags}} --host_cxxopt=${{ matrix.cpp.flags }} --subcommands=pretty_print - --enable_bzlmod //... - name: Test run: > - cd examples/basic && + cd examples/${{matrix.examples.name}} && bazel test - -c ${{ matrix.bazel.compilation_mode }} - --cxxopt=${{ matrix.cpp.flags }} --host_cxxopt=${{ matrix.cpp.flags }} + --config=ci + --@rules_python//python/config_settings:python_version=${{matrix.python.version}} + --cxxopt=${{matrix.cpp.flags}} --host_cxxopt=${{ matrix.cpp.flags }} --subcommands=pretty_print - --enable_bzlmod //... amd64_windows_bazel:
diff --git a/.github/workflows/arm64_macos_bazel.yml b/.github/workflows/arm64_macos_bazel.yml index 59494fc..fd52f24 100644 --- a/.github/workflows/arm64_macos_bazel.yml +++ b/.github/workflows/arm64_macos_bazel.yml
@@ -3,31 +3,27 @@ on: [push, pull_request, workflow_dispatch] +concurrency: + group: ${{github.workflow}}-${{github.ref}} + cancel-in-progress: true + # Building using the github runner environement directly. jobs: native: strategy: matrix: - bazel: [ - {compilation_mode: opt}, - {compilation_mode: dbg}, - ] + examples: [{name: basic}, {name: embed}] cpp: [ #{version: 14, flags: "-std=c++14"}, {version: 17, flags: "-std=c++17"}, - #{version: 20, flags: "-std=c++20"}, + {version: 20, flags: "-std=c++20"}, ] python: [ {version: '3.11'}, + {version: '3.12'}, ] - exclude: - # only test `-c dbg` build with C++17 - - cpp: {version: 14} - bazel: {compilation_mode: dbg} - - cpp: {version: 20} - bazel: {compilation_mode: dbg} fail-fast: false - name: MacOS•Bazel(${{ matrix.bazel.compilation_mode }})•C++${{ matrix.cpp.version }}•Python${{ matrix.python.version }} + name: MacOS•Bzl•C++${{matrix.cpp.version}}•Py${{matrix.python.version}}•${{matrix.examples.name}} runs-on: macos-latest steps: - uses: actions/checkout@v5 @@ -39,7 +35,7 @@ - name: Setup Python uses: actions/setup-python@v6 with: - python-version: ${{ matrix.python.version }} + python-version: ${{matrix.python.version}} - name: Check Python run: | python --version @@ -48,21 +44,21 @@ run: bazel version - name: Build run: > - cd examples/basic && + cd examples/${{matrix.examples.name}} && bazel build - -c ${{ matrix.bazel.compilation_mode }} - --cxxopt=${{ matrix.cpp.flags }} --host_cxxopt=${{ matrix.cpp.flags }} + --config=ci + --@rules_python//python/config_settings:python_version=${{matrix.python.version}} + --cxxopt=${{matrix.cpp.flags}} --host_cxxopt=${{ matrix.cpp.flags }} --subcommands=pretty_print - --enable_bzlmod //... - name: Test run: > - cd examples/basic && + cd examples/${{matrix.examples.name}} && bazel test - -c ${{ matrix.bazel.compilation_mode }} - --cxxopt=${{ matrix.cpp.flags }} --host_cxxopt=${{ matrix.cpp.flags }} + --config=ci + --@rules_python//python/config_settings:python_version=${{matrix.python.version}} + --cxxopt=${{matrix.cpp.flags}} --host_cxxopt=${{ matrix.cpp.flags }} --subcommands=pretty_print - --enable_bzlmod //... arm64_macos_bazel: