Move helper conditions from another rule into here (#18) #133
Workflow file for this run
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: Build example project | |
on: [pull_request, push] | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.head_ref || github.ref }} | |
cancel-in-progress: true | |
jobs: | |
build_native: | |
strategy: | |
fail-fast: false | |
matrix: | |
include: | |
# Build non-bzlmod, native | |
- { name: "windows - native", os: windows-2022, java_arch: "x64", command: "test", config: "--noenable_bzlmod --config=windows", bazel_options: "--output_user_root=C:\\bazelroot", } | |
- { name: "windows arm - native", os: windows-2022, java_arch: "x64", command: "build", config: "--noenable_bzlmod --config=windows_arm", bazel_options: "--output_user_root=C:\\bazelroot", } | |
- { name: "ubuntu - native", os: ubuntu-22.04, java_arch: "x64", command: "test", config: "--noenable_bzlmod --config=linux", bazel_options: "", } | |
- { name: "macos - native", os: macos-14, java_arch: "aarch64", command: "test", config: "--noenable_bzlmod --config=macos", bazel_options: "", } | |
# Build bzlmod, native | |
- { name: "windows - bzlmod native", os: windows-2022, java_arch: "x64", command: "test", config: "--enable_bzlmod --config=windows", bazel_options: "--output_user_root=C:\\bazelroot", } | |
- { name: "windows arm - bzlmod native", os: windows-2022, java_arch: "x64", command: "build", config: "--enable_bzlmod --config=windows_arm", bazel_options: "--output_user_root=C:\\bazelroot", } | |
- { name: "ubuntu - bzlmod native", os: ubuntu-22.04, java_arch: "x64", command: "test", config: "--enable_bzlmod --config=linux", bazel_options: "", } | |
- { name: "macos - bzlmod native", os: macos-14, java_arch: "aarch64", command: "test", config: "--enable_bzlmod --config=macos", bazel_options: "", } | |
name: "Build - ${{ matrix.name }}" | |
runs-on: ${{ matrix.os }} | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions/setup-python@v5 | |
with: { python-version: '3.11' } | |
- uses: actions/setup-java@v4 | |
with: | |
distribution: 'zulu' | |
java-version: 17 | |
architecture: ${{ matrix.java_arch }} | |
- id: setup_build_buddy | |
uses: ./.github/actions/setup-build-buddy | |
with: | |
token: ${{ secrets.BUILDBUDDY_API_KEY }} | |
- run: bazel ${{ matrix.bazel_options }} build -k ${{ matrix.config }} --config=ci @rules_bzlmodrio_toolchains//... | |
working-directory: tests | |
- name: Build and allow failure # TODO Sometimes symlinks don't get created correctly the first time around | |
run: bazel ${{ matrix.bazel_options }} build -k ${{ matrix.config }} --verbose_failures --config=ci //... || true | |
working-directory: tests | |
- name: Build | |
run: bazel ${{ matrix.bazel_options }} ${{ matrix.command }} //... -k ${{ matrix.config }} --verbose_failures --config=ci | |
working-directory: tests | |
build_roborio: | |
strategy: | |
fail-fast: false | |
matrix: | |
include: | |
# Build non-bzlmod, roborio | |
- { name: "windows - roborio", os: windows-2022, java_arch: "x64", command: "build", config: "--noenable_bzlmod --config=roborio", bazel_options: "--output_user_root=C:\\bazelroot", } | |
- { name: "ubuntu - roborio", os: ubuntu-22.04, java_arch: "x64", command: "build", config: "--noenable_bzlmod --config=roborio", bazel_options: "", } | |
- { name: "macos - roborio", os: macos-14, java_arch: "aarch64", command: "build", config: "--noenable_bzlmod --config=roborio", bazel_options: "", } | |
# Build bzlmod, roborio | |
# - { name: "windows - bzlmod roborio", os: windows-2022, java_arch: "x64", command: "build", config: "--enable_bzlmod --config=roborio", bazel_options: "--output_user_root=C:\\bazelroot", } | |
- { name: "ubuntu - bzlmod roborio", os: ubuntu-22.04, java_arch: "x64", command: "build", config: "--enable_bzlmod --config=roborio", bazel_options: "", } | |
- { name: "macos - bzlmod roborio", os: macos-14, java_arch: "aarch64", command: "build", config: "--enable_bzlmod --config=roborio", bazel_options: "", } | |
name: "Build - ${{ matrix.name }}" | |
runs-on: ${{ matrix.os }} | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions/setup-python@v5 | |
with: { python-version: '3.11' } | |
- uses: actions/setup-java@v4 | |
with: | |
distribution: 'zulu' | |
java-version: 17 | |
architecture: ${{ matrix.java_arch }} | |
- id: setup_build_buddy | |
uses: ./.github/actions/setup-build-buddy | |
with: | |
token: ${{ secrets.BUILDBUDDY_API_KEY }} | |
- name: Build and allow failure # TODO Sometimes symlinks don't get created correctly the first time around | |
run: bazel ${{ matrix.bazel_options }} ${{ matrix.command }} //... -k ${{ matrix.config }} --verbose_failures --config=ci || true | |
working-directory: tests | |
- name: Build | |
run: bazel ${{ matrix.bazel_options }} ${{ matrix.command }} //... -k ${{ matrix.config }} --verbose_failures --config=ci | |
working-directory: tests | |
build_bullseye32: | |
strategy: | |
fail-fast: false | |
matrix: | |
include: | |
# Build non-bzlmod, bullseye32 | |
- { name: "windows - bullseye32", os: windows-2022, java_arch: "x64", command: "build", config: "--noenable_bzlmod --config=bullseye32", bazel_options: "--output_user_root=C:\\bazelroot", } | |
- { name: "ubuntu - bullseye32", os: ubuntu-22.04, java_arch: "x64", command: "build", config: "--noenable_bzlmod --config=bullseye32", bazel_options: "", } | |
- { name: "macos - bullseye32", os: macos-14, java_arch: "aarch64", command: "build", config: "--noenable_bzlmod --config=bullseye32", bazel_options: "", } | |
# Build bzlmod, bullseye32 | |
- { name: "windows - bzlmod bullseye32", os: windows-2022, java_arch: "x64", command: "build", config: "--enable_bzlmod --config=bullseye32", bazel_options: "--output_user_root=C:\\bazelroot", } | |
- { name: "ubuntu - bzlmod bullseye32", os: ubuntu-22.04, java_arch: "x64", command: "build", config: "--enable_bzlmod --config=bullseye32", bazel_options: "", } | |
- { name: "macos - bzlmod bullseye32", os: macos-14, java_arch: "aarch64", command: "build", config: "--enable_bzlmod --config=bullseye32", bazel_options: "", } | |
name: "Build - ${{ matrix.name }}" | |
runs-on: ${{ matrix.os }} | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions/setup-python@v5 | |
with: { python-version: '3.11' } | |
- uses: actions/setup-java@v4 | |
with: | |
distribution: 'zulu' | |
java-version: 17 | |
architecture: ${{ matrix.java_arch }} | |
- id: setup_build_buddy | |
uses: ./.github/actions/setup-build-buddy | |
with: | |
token: ${{ secrets.BUILDBUDDY_API_KEY }} | |
- name: Build and allow failure # TODO Sometimes symlinks don't get created correctly the first time around | |
run: bazel ${{ matrix.bazel_options }} ${{ matrix.command }} //... -k ${{ matrix.config }} --verbose_failures --config=ci || true | |
working-directory: tests | |
- name: Build | |
run: bazel ${{ matrix.bazel_options }} ${{ matrix.command }} //... -k ${{ matrix.config }} --verbose_failures --config=ci | |
working-directory: tests | |
build_bullseye64: | |
strategy: | |
fail-fast: false | |
matrix: | |
include: | |
# Build non-bzlmod, bullseye32: | |
- { name: "windows - bullseye64", os: windows-2022, java_arch: "x64", command: "build", config: "--noenable_bzlmod --config=bullseye64", bazel_options: "--output_user_root=C:\\bazelroot", } | |
- { name: "ubuntu - bullseye64", os: ubuntu-22.04, java_arch: "x64", command: "build", config: "--noenable_bzlmod --config=bullseye64", bazel_options: "", } | |
- { name: "macos - bullseye64", os: macos-14, java_arch: "aarch64", command: "build", config: "--noenable_bzlmod --config=bullseye32", bazel_options: "", } | |
# Build bzlmod, bullseye32: | |
- { name: "windows - bzlmod bullseye64", os: windows-2022, java_arch: "x64", command: "build", config: "--enable_bzlmod --config=bullseye64", bazel_options: "--output_user_root=C:\\bazelroot", } | |
- { name: "ubuntu - bzlmod bullseye64", os: ubuntu-22.04, java_arch: "x64", command: "build", config: "--enable_bzlmod --config=bullseye64", bazel_options: "", } | |
- { name: "macos - bzlmod bullseye64", os: macos-14, java_arch: "aarch64", command: "build", config: "--enable_bzlmod --config=bullseye64", bazel_options: "", } | |
name: "Build - ${{ matrix.name }}" | |
runs-on: ${{ matrix.os }} | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions/setup-python@v5 | |
with: { python-version: '3.11' } | |
- uses: actions/setup-java@v4 | |
with: | |
distribution: 'zulu' | |
java-version: 17 | |
architecture: ${{ matrix.java_arch }} | |
- id: setup_build_buddy | |
uses: ./.github/actions/setup-build-buddy | |
with: | |
token: ${{ secrets.BUILDBUDDY_API_KEY }} | |
- name: Build and allow failure # TODO Sometimes symlinks don't get created correctly the first time around | |
run: bazel ${{ matrix.bazel_options }} ${{ matrix.command }} //... -k ${{ matrix.config }} --verbose_failures --config=ci || true | |
working-directory: tests | |
- name: Build | |
run: bazel ${{ matrix.bazel_options }} ${{ matrix.command }} //... -k ${{ matrix.config }} --verbose_failures --config=ci | |
working-directory: tests | |
build_raspi32: | |
strategy: | |
fail-fast: false | |
matrix: | |
include: | |
# Build non-bzlmod, bullseye32: | |
- { name: "windows - raspi32", os: windows-2022, java_arch: "x64", command: "build", config: "--noenable_bzlmod --config=raspi32", bazel_options: "--output_user_root=C:\\bazelroot", } | |
- { name: "ubuntu - raspi32", os: ubuntu-22.04, java_arch: "x64", command: "build", config: "--noenable_bzlmod --config=raspi32", bazel_options: "", } | |
- { name: "macos - raspi32", os: macos-14, java_arch: "aarch64", command: "build", config: "--noenable_bzlmod --config=raspi32", bazel_options: "", } | |
# Build bzlmod, bullseye32: | |
- { name: "windows - bzlmod raspi32", os: windows-2022, java_arch: "x64", command: "build", config: "--enable_bzlmod --config=raspi32", bazel_options: "--output_user_root=C:\\bazelroot", } | |
- { name: "ubuntu - bzlmod raspi32", os: ubuntu-22.04, java_arch: "x64", command: "build", config: "--enable_bzlmod --config=raspi32", bazel_options: "", } | |
- { name: "macos - bzlmod raspi32", os: macos-14, java_arch: "aarch64", command: "build", config: "--enable_bzlmod --config=raspi32", bazel_options: "", } | |
name: "Build - ${{ matrix.name }}" | |
runs-on: ${{ matrix.os }} | |
steps: | |
- uses: actions/checkout@v4 | |
- run: bazel ${{ matrix.bazel_options }} ${{ matrix.command }} //... -k ${{ matrix.config }} --verbose_failures --config=ci | |
working-directory: tests |