Allow Action router to mutate Actions and implement a remote action r… #22
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
| { | |
| "jobs": { | |
| "build_and_test": { | |
| "name": "build_and_test ${{ matrix.host.os }}", | |
| "runs-on": "${{ matrix.host.os }}", | |
| "steps": [ | |
| { | |
| "name": "Check out source code", | |
| "uses": "actions/checkout@v1" | |
| }, | |
| { | |
| "name": "Installing Bazel", | |
| "run": "v=$(cat .bazelversion) && curl -L https://github.com/bazelbuild/bazel/releases/download/${v}/bazel-${v}-${{matrix.host.bazel_os}}-x86_64 > ~/bazel && chmod +x ~/bazel && echo ~ >> ${GITHUB_PATH}", | |
| "shell": "bash" | |
| }, | |
| { | |
| "if": "matrix.host.platform_name == 'windows_amd64'", | |
| "name": "Override .bazelrc", | |
| "run": "echo \"startup --output_base=D:/bazel_output\" >> .bazelrc" | |
| }, | |
| { | |
| "if": "matrix.host.cross_compile || matrix.host.platform_name == 'linux_amd64'", | |
| "name": "linux_amd64: build${{ matrix.host.platform_name == 'linux_amd64' && ' and test' || '' }}", | |
| "run": "bazel ${{ matrix.host.platform_name == 'linux_amd64' && 'test --test_output=errors' || 'build --platforms=@rules_go//go/toolchain:linux_amd64 --@bazel_tools//tools/test:incompatible_use_default_test_toolchain=False' }} //..." | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "linux_amd64: copy bb_noop_worker", | |
| "run": "rm -f bb_noop_worker && bazel run --run_under cp --platforms=@rules_go//go/toolchain:linux_amd64 //cmd/bb_noop_worker $(pwd)/bb_noop_worker" | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "linux_amd64: upload bb_noop_worker", | |
| "uses": "actions/upload-artifact@v4", | |
| "with": { | |
| "name": "bb_noop_worker.linux_amd64", | |
| "path": "bb_noop_worker" | |
| } | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "linux_amd64: copy bb_runner", | |
| "run": "rm -f bb_runner && bazel run --run_under cp --platforms=@rules_go//go/toolchain:linux_amd64 //cmd/bb_runner $(pwd)/bb_runner" | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "linux_amd64: upload bb_runner", | |
| "uses": "actions/upload-artifact@v4", | |
| "with": { | |
| "name": "bb_runner.linux_amd64", | |
| "path": "bb_runner" | |
| } | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "linux_amd64: copy bb_scheduler", | |
| "run": "rm -f bb_scheduler && bazel run --run_under cp --platforms=@rules_go//go/toolchain:linux_amd64 //cmd/bb_scheduler $(pwd)/bb_scheduler" | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "linux_amd64: upload bb_scheduler", | |
| "uses": "actions/upload-artifact@v4", | |
| "with": { | |
| "name": "bb_scheduler.linux_amd64", | |
| "path": "bb_scheduler" | |
| } | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "linux_amd64: copy bb_virtual_tmp", | |
| "run": "rm -f bb_virtual_tmp && bazel run --run_under cp --platforms=@rules_go//go/toolchain:linux_amd64 //cmd/bb_virtual_tmp $(pwd)/bb_virtual_tmp" | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "linux_amd64: upload bb_virtual_tmp", | |
| "uses": "actions/upload-artifact@v4", | |
| "with": { | |
| "name": "bb_virtual_tmp.linux_amd64", | |
| "path": "bb_virtual_tmp" | |
| } | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "linux_amd64: copy bb_worker", | |
| "run": "rm -f bb_worker && bazel run --run_under cp --platforms=@rules_go//go/toolchain:linux_amd64 //cmd/bb_worker $(pwd)/bb_worker" | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "linux_amd64: upload bb_worker", | |
| "uses": "actions/upload-artifact@v4", | |
| "with": { | |
| "name": "bb_worker.linux_amd64", | |
| "path": "bb_worker" | |
| } | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "linux_amd64: copy fake_python", | |
| "run": "rm -f fake_python && bazel run --run_under cp --platforms=@rules_go//go/toolchain:linux_amd64 //cmd/fake_python $(pwd)/fake_python" | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "linux_amd64: upload fake_python", | |
| "uses": "actions/upload-artifact@v4", | |
| "with": { | |
| "name": "fake_python.linux_amd64", | |
| "path": "fake_python" | |
| } | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "linux_amd64: copy fake_xcrun", | |
| "run": "rm -f fake_xcrun && bazel run --run_under cp --platforms=@rules_go//go/toolchain:linux_amd64 //cmd/fake_xcrun $(pwd)/fake_xcrun" | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "linux_amd64: upload fake_xcrun", | |
| "uses": "actions/upload-artifact@v4", | |
| "with": { | |
| "name": "fake_xcrun.linux_amd64", | |
| "path": "fake_xcrun" | |
| } | |
| }, | |
| { | |
| "if": "matrix.host.cross_compile || matrix.host.platform_name == 'linux_386'", | |
| "name": "linux_386: build${{ matrix.host.platform_name == 'linux_amd64' && ' and test' || '' }}", | |
| "run": "bazel ${{ matrix.host.platform_name == 'linux_amd64' && 'test --test_output=errors' || 'build --platforms=@rules_go//go/toolchain:linux_386 --@bazel_tools//tools/test:incompatible_use_default_test_toolchain=False' }} //..." | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "linux_386: copy bb_noop_worker", | |
| "run": "rm -f bb_noop_worker && bazel run --run_under cp --platforms=@rules_go//go/toolchain:linux_386 //cmd/bb_noop_worker $(pwd)/bb_noop_worker" | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "linux_386: upload bb_noop_worker", | |
| "uses": "actions/upload-artifact@v4", | |
| "with": { | |
| "name": "bb_noop_worker.linux_386", | |
| "path": "bb_noop_worker" | |
| } | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "linux_386: copy bb_runner", | |
| "run": "rm -f bb_runner && bazel run --run_under cp --platforms=@rules_go//go/toolchain:linux_386 //cmd/bb_runner $(pwd)/bb_runner" | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "linux_386: upload bb_runner", | |
| "uses": "actions/upload-artifact@v4", | |
| "with": { | |
| "name": "bb_runner.linux_386", | |
| "path": "bb_runner" | |
| } | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "linux_386: copy bb_scheduler", | |
| "run": "rm -f bb_scheduler && bazel run --run_under cp --platforms=@rules_go//go/toolchain:linux_386 //cmd/bb_scheduler $(pwd)/bb_scheduler" | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "linux_386: upload bb_scheduler", | |
| "uses": "actions/upload-artifact@v4", | |
| "with": { | |
| "name": "bb_scheduler.linux_386", | |
| "path": "bb_scheduler" | |
| } | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "linux_386: copy bb_virtual_tmp", | |
| "run": "rm -f bb_virtual_tmp && bazel run --run_under cp --platforms=@rules_go//go/toolchain:linux_386 //cmd/bb_virtual_tmp $(pwd)/bb_virtual_tmp" | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "linux_386: upload bb_virtual_tmp", | |
| "uses": "actions/upload-artifact@v4", | |
| "with": { | |
| "name": "bb_virtual_tmp.linux_386", | |
| "path": "bb_virtual_tmp" | |
| } | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "linux_386: copy bb_worker", | |
| "run": "rm -f bb_worker && bazel run --run_under cp --platforms=@rules_go//go/toolchain:linux_386 //cmd/bb_worker $(pwd)/bb_worker" | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "linux_386: upload bb_worker", | |
| "uses": "actions/upload-artifact@v4", | |
| "with": { | |
| "name": "bb_worker.linux_386", | |
| "path": "bb_worker" | |
| } | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "linux_386: copy fake_python", | |
| "run": "rm -f fake_python && bazel run --run_under cp --platforms=@rules_go//go/toolchain:linux_386 //cmd/fake_python $(pwd)/fake_python" | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "linux_386: upload fake_python", | |
| "uses": "actions/upload-artifact@v4", | |
| "with": { | |
| "name": "fake_python.linux_386", | |
| "path": "fake_python" | |
| } | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "linux_386: copy fake_xcrun", | |
| "run": "rm -f fake_xcrun && bazel run --run_under cp --platforms=@rules_go//go/toolchain:linux_386 //cmd/fake_xcrun $(pwd)/fake_xcrun" | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "linux_386: upload fake_xcrun", | |
| "uses": "actions/upload-artifact@v4", | |
| "with": { | |
| "name": "fake_xcrun.linux_386", | |
| "path": "fake_xcrun" | |
| } | |
| }, | |
| { | |
| "if": "matrix.host.cross_compile || matrix.host.platform_name == 'linux_arm'", | |
| "name": "linux_arm: build${{ matrix.host.platform_name == 'linux_arm' && ' and test' || '' }}", | |
| "run": "bazel ${{ matrix.host.platform_name == 'linux_arm' && 'test --test_output=errors' || 'build --platforms=@rules_go//go/toolchain:linux_arm --@bazel_tools//tools/test:incompatible_use_default_test_toolchain=False' }} //..." | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "linux_arm: copy bb_noop_worker", | |
| "run": "rm -f bb_noop_worker && bazel run --run_under cp --platforms=@rules_go//go/toolchain:linux_arm //cmd/bb_noop_worker $(pwd)/bb_noop_worker" | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "linux_arm: upload bb_noop_worker", | |
| "uses": "actions/upload-artifact@v4", | |
| "with": { | |
| "name": "bb_noop_worker.linux_arm", | |
| "path": "bb_noop_worker" | |
| } | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "linux_arm: copy bb_runner", | |
| "run": "rm -f bb_runner && bazel run --run_under cp --platforms=@rules_go//go/toolchain:linux_arm //cmd/bb_runner $(pwd)/bb_runner" | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "linux_arm: upload bb_runner", | |
| "uses": "actions/upload-artifact@v4", | |
| "with": { | |
| "name": "bb_runner.linux_arm", | |
| "path": "bb_runner" | |
| } | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "linux_arm: copy bb_scheduler", | |
| "run": "rm -f bb_scheduler && bazel run --run_under cp --platforms=@rules_go//go/toolchain:linux_arm //cmd/bb_scheduler $(pwd)/bb_scheduler" | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "linux_arm: upload bb_scheduler", | |
| "uses": "actions/upload-artifact@v4", | |
| "with": { | |
| "name": "bb_scheduler.linux_arm", | |
| "path": "bb_scheduler" | |
| } | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "linux_arm: copy bb_virtual_tmp", | |
| "run": "rm -f bb_virtual_tmp && bazel run --run_under cp --platforms=@rules_go//go/toolchain:linux_arm //cmd/bb_virtual_tmp $(pwd)/bb_virtual_tmp" | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "linux_arm: upload bb_virtual_tmp", | |
| "uses": "actions/upload-artifact@v4", | |
| "with": { | |
| "name": "bb_virtual_tmp.linux_arm", | |
| "path": "bb_virtual_tmp" | |
| } | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "linux_arm: copy bb_worker", | |
| "run": "rm -f bb_worker && bazel run --run_under cp --platforms=@rules_go//go/toolchain:linux_arm //cmd/bb_worker $(pwd)/bb_worker" | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "linux_arm: upload bb_worker", | |
| "uses": "actions/upload-artifact@v4", | |
| "with": { | |
| "name": "bb_worker.linux_arm", | |
| "path": "bb_worker" | |
| } | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "linux_arm: copy fake_python", | |
| "run": "rm -f fake_python && bazel run --run_under cp --platforms=@rules_go//go/toolchain:linux_arm //cmd/fake_python $(pwd)/fake_python" | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "linux_arm: upload fake_python", | |
| "uses": "actions/upload-artifact@v4", | |
| "with": { | |
| "name": "fake_python.linux_arm", | |
| "path": "fake_python" | |
| } | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "linux_arm: copy fake_xcrun", | |
| "run": "rm -f fake_xcrun && bazel run --run_under cp --platforms=@rules_go//go/toolchain:linux_arm //cmd/fake_xcrun $(pwd)/fake_xcrun" | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "linux_arm: upload fake_xcrun", | |
| "uses": "actions/upload-artifact@v4", | |
| "with": { | |
| "name": "fake_xcrun.linux_arm", | |
| "path": "fake_xcrun" | |
| } | |
| }, | |
| { | |
| "if": "matrix.host.cross_compile || matrix.host.platform_name == 'linux_arm64'", | |
| "name": "linux_arm64: build${{ matrix.host.platform_name == 'linux_arm64' && ' and test' || '' }}", | |
| "run": "bazel ${{ matrix.host.platform_name == 'linux_arm64' && 'test --test_output=errors' || 'build --platforms=@rules_go//go/toolchain:linux_arm64 --@bazel_tools//tools/test:incompatible_use_default_test_toolchain=False' }} //..." | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "linux_arm64: copy bb_noop_worker", | |
| "run": "rm -f bb_noop_worker && bazel run --run_under cp --platforms=@rules_go//go/toolchain:linux_arm64 //cmd/bb_noop_worker $(pwd)/bb_noop_worker" | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "linux_arm64: upload bb_noop_worker", | |
| "uses": "actions/upload-artifact@v4", | |
| "with": { | |
| "name": "bb_noop_worker.linux_arm64", | |
| "path": "bb_noop_worker" | |
| } | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "linux_arm64: copy bb_runner", | |
| "run": "rm -f bb_runner && bazel run --run_under cp --platforms=@rules_go//go/toolchain:linux_arm64 //cmd/bb_runner $(pwd)/bb_runner" | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "linux_arm64: upload bb_runner", | |
| "uses": "actions/upload-artifact@v4", | |
| "with": { | |
| "name": "bb_runner.linux_arm64", | |
| "path": "bb_runner" | |
| } | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "linux_arm64: copy bb_scheduler", | |
| "run": "rm -f bb_scheduler && bazel run --run_under cp --platforms=@rules_go//go/toolchain:linux_arm64 //cmd/bb_scheduler $(pwd)/bb_scheduler" | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "linux_arm64: upload bb_scheduler", | |
| "uses": "actions/upload-artifact@v4", | |
| "with": { | |
| "name": "bb_scheduler.linux_arm64", | |
| "path": "bb_scheduler" | |
| } | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "linux_arm64: copy bb_virtual_tmp", | |
| "run": "rm -f bb_virtual_tmp && bazel run --run_under cp --platforms=@rules_go//go/toolchain:linux_arm64 //cmd/bb_virtual_tmp $(pwd)/bb_virtual_tmp" | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "linux_arm64: upload bb_virtual_tmp", | |
| "uses": "actions/upload-artifact@v4", | |
| "with": { | |
| "name": "bb_virtual_tmp.linux_arm64", | |
| "path": "bb_virtual_tmp" | |
| } | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "linux_arm64: copy bb_worker", | |
| "run": "rm -f bb_worker && bazel run --run_under cp --platforms=@rules_go//go/toolchain:linux_arm64 //cmd/bb_worker $(pwd)/bb_worker" | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "linux_arm64: upload bb_worker", | |
| "uses": "actions/upload-artifact@v4", | |
| "with": { | |
| "name": "bb_worker.linux_arm64", | |
| "path": "bb_worker" | |
| } | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "linux_arm64: copy fake_python", | |
| "run": "rm -f fake_python && bazel run --run_under cp --platforms=@rules_go//go/toolchain:linux_arm64 //cmd/fake_python $(pwd)/fake_python" | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "linux_arm64: upload fake_python", | |
| "uses": "actions/upload-artifact@v4", | |
| "with": { | |
| "name": "fake_python.linux_arm64", | |
| "path": "fake_python" | |
| } | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "linux_arm64: copy fake_xcrun", | |
| "run": "rm -f fake_xcrun && bazel run --run_under cp --platforms=@rules_go//go/toolchain:linux_arm64 //cmd/fake_xcrun $(pwd)/fake_xcrun" | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "linux_arm64: upload fake_xcrun", | |
| "uses": "actions/upload-artifact@v4", | |
| "with": { | |
| "name": "fake_xcrun.linux_arm64", | |
| "path": "fake_xcrun" | |
| } | |
| }, | |
| { | |
| "if": "matrix.host.cross_compile || matrix.host.platform_name == 'darwin_amd64'", | |
| "name": "darwin_amd64: build${{ matrix.host.platform_name == 'darwin_amd64' && ' and test' || '' }}", | |
| "run": "bazel ${{ matrix.host.platform_name == 'darwin_amd64' && 'test --test_output=errors' || 'build --platforms=@rules_go//go/toolchain:darwin_amd64 --@bazel_tools//tools/test:incompatible_use_default_test_toolchain=False' }} //..." | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "darwin_amd64: copy bb_noop_worker", | |
| "run": "rm -f bb_noop_worker && bazel run --run_under cp --platforms=@rules_go//go/toolchain:darwin_amd64 //cmd/bb_noop_worker $(pwd)/bb_noop_worker" | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "darwin_amd64: upload bb_noop_worker", | |
| "uses": "actions/upload-artifact@v4", | |
| "with": { | |
| "name": "bb_noop_worker.darwin_amd64", | |
| "path": "bb_noop_worker" | |
| } | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "darwin_amd64: copy bb_runner", | |
| "run": "rm -f bb_runner && bazel run --run_under cp --platforms=@rules_go//go/toolchain:darwin_amd64 //cmd/bb_runner $(pwd)/bb_runner" | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "darwin_amd64: upload bb_runner", | |
| "uses": "actions/upload-artifact@v4", | |
| "with": { | |
| "name": "bb_runner.darwin_amd64", | |
| "path": "bb_runner" | |
| } | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "darwin_amd64: copy bb_scheduler", | |
| "run": "rm -f bb_scheduler && bazel run --run_under cp --platforms=@rules_go//go/toolchain:darwin_amd64 //cmd/bb_scheduler $(pwd)/bb_scheduler" | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "darwin_amd64: upload bb_scheduler", | |
| "uses": "actions/upload-artifact@v4", | |
| "with": { | |
| "name": "bb_scheduler.darwin_amd64", | |
| "path": "bb_scheduler" | |
| } | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "darwin_amd64: copy bb_virtual_tmp", | |
| "run": "rm -f bb_virtual_tmp && bazel run --run_under cp --platforms=@rules_go//go/toolchain:darwin_amd64 //cmd/bb_virtual_tmp $(pwd)/bb_virtual_tmp" | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "darwin_amd64: upload bb_virtual_tmp", | |
| "uses": "actions/upload-artifact@v4", | |
| "with": { | |
| "name": "bb_virtual_tmp.darwin_amd64", | |
| "path": "bb_virtual_tmp" | |
| } | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "darwin_amd64: copy bb_worker", | |
| "run": "rm -f bb_worker && bazel run --run_under cp --platforms=@rules_go//go/toolchain:darwin_amd64 //cmd/bb_worker $(pwd)/bb_worker" | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "darwin_amd64: upload bb_worker", | |
| "uses": "actions/upload-artifact@v4", | |
| "with": { | |
| "name": "bb_worker.darwin_amd64", | |
| "path": "bb_worker" | |
| } | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "darwin_amd64: copy fake_python", | |
| "run": "rm -f fake_python && bazel run --run_under cp --platforms=@rules_go//go/toolchain:darwin_amd64 //cmd/fake_python $(pwd)/fake_python" | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "darwin_amd64: upload fake_python", | |
| "uses": "actions/upload-artifact@v4", | |
| "with": { | |
| "name": "fake_python.darwin_amd64", | |
| "path": "fake_python" | |
| } | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "darwin_amd64: copy fake_xcrun", | |
| "run": "rm -f fake_xcrun && bazel run --run_under cp --platforms=@rules_go//go/toolchain:darwin_amd64 //cmd/fake_xcrun $(pwd)/fake_xcrun" | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "darwin_amd64: upload fake_xcrun", | |
| "uses": "actions/upload-artifact@v4", | |
| "with": { | |
| "name": "fake_xcrun.darwin_amd64", | |
| "path": "fake_xcrun" | |
| } | |
| }, | |
| { | |
| "if": "matrix.host.cross_compile || matrix.host.platform_name == 'darwin_arm64'", | |
| "name": "darwin_arm64: build${{ matrix.host.platform_name == 'darwin_arm64' && ' and test' || '' }}", | |
| "run": "bazel ${{ matrix.host.platform_name == 'darwin_arm64' && 'test --test_output=errors' || 'build --platforms=@rules_go//go/toolchain:darwin_arm64 --@bazel_tools//tools/test:incompatible_use_default_test_toolchain=False' }} //..." | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "darwin_arm64: copy bb_noop_worker", | |
| "run": "rm -f bb_noop_worker && bazel run --run_under cp --platforms=@rules_go//go/toolchain:darwin_arm64 //cmd/bb_noop_worker $(pwd)/bb_noop_worker" | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "darwin_arm64: upload bb_noop_worker", | |
| "uses": "actions/upload-artifact@v4", | |
| "with": { | |
| "name": "bb_noop_worker.darwin_arm64", | |
| "path": "bb_noop_worker" | |
| } | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "darwin_arm64: copy bb_runner", | |
| "run": "rm -f bb_runner && bazel run --run_under cp --platforms=@rules_go//go/toolchain:darwin_arm64 //cmd/bb_runner $(pwd)/bb_runner" | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "darwin_arm64: upload bb_runner", | |
| "uses": "actions/upload-artifact@v4", | |
| "with": { | |
| "name": "bb_runner.darwin_arm64", | |
| "path": "bb_runner" | |
| } | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "darwin_arm64: copy bb_scheduler", | |
| "run": "rm -f bb_scheduler && bazel run --run_under cp --platforms=@rules_go//go/toolchain:darwin_arm64 //cmd/bb_scheduler $(pwd)/bb_scheduler" | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "darwin_arm64: upload bb_scheduler", | |
| "uses": "actions/upload-artifact@v4", | |
| "with": { | |
| "name": "bb_scheduler.darwin_arm64", | |
| "path": "bb_scheduler" | |
| } | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "darwin_arm64: copy bb_virtual_tmp", | |
| "run": "rm -f bb_virtual_tmp && bazel run --run_under cp --platforms=@rules_go//go/toolchain:darwin_arm64 //cmd/bb_virtual_tmp $(pwd)/bb_virtual_tmp" | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "darwin_arm64: upload bb_virtual_tmp", | |
| "uses": "actions/upload-artifact@v4", | |
| "with": { | |
| "name": "bb_virtual_tmp.darwin_arm64", | |
| "path": "bb_virtual_tmp" | |
| } | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "darwin_arm64: copy bb_worker", | |
| "run": "rm -f bb_worker && bazel run --run_under cp --platforms=@rules_go//go/toolchain:darwin_arm64 //cmd/bb_worker $(pwd)/bb_worker" | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "darwin_arm64: upload bb_worker", | |
| "uses": "actions/upload-artifact@v4", | |
| "with": { | |
| "name": "bb_worker.darwin_arm64", | |
| "path": "bb_worker" | |
| } | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "darwin_arm64: copy fake_python", | |
| "run": "rm -f fake_python && bazel run --run_under cp --platforms=@rules_go//go/toolchain:darwin_arm64 //cmd/fake_python $(pwd)/fake_python" | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "darwin_arm64: upload fake_python", | |
| "uses": "actions/upload-artifact@v4", | |
| "with": { | |
| "name": "fake_python.darwin_arm64", | |
| "path": "fake_python" | |
| } | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "darwin_arm64: copy fake_xcrun", | |
| "run": "rm -f fake_xcrun && bazel run --run_under cp --platforms=@rules_go//go/toolchain:darwin_arm64 //cmd/fake_xcrun $(pwd)/fake_xcrun" | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "darwin_arm64: upload fake_xcrun", | |
| "uses": "actions/upload-artifact@v4", | |
| "with": { | |
| "name": "fake_xcrun.darwin_arm64", | |
| "path": "fake_xcrun" | |
| } | |
| }, | |
| { | |
| "if": "matrix.host.cross_compile || matrix.host.platform_name == 'freebsd_amd64'", | |
| "name": "freebsd_amd64: build${{ matrix.host.platform_name == 'freebsd_amd64' && ' and test' || '' }}", | |
| "run": "bazel ${{ matrix.host.platform_name == 'freebsd_amd64' && 'test --test_output=errors' || 'build --platforms=@rules_go//go/toolchain:freebsd_amd64 --@bazel_tools//tools/test:incompatible_use_default_test_toolchain=False' }} //..." | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "freebsd_amd64: copy bb_noop_worker", | |
| "run": "rm -f bb_noop_worker && bazel run --run_under cp --platforms=@rules_go//go/toolchain:freebsd_amd64 //cmd/bb_noop_worker $(pwd)/bb_noop_worker" | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "freebsd_amd64: upload bb_noop_worker", | |
| "uses": "actions/upload-artifact@v4", | |
| "with": { | |
| "name": "bb_noop_worker.freebsd_amd64", | |
| "path": "bb_noop_worker" | |
| } | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "freebsd_amd64: copy bb_runner", | |
| "run": "rm -f bb_runner && bazel run --run_under cp --platforms=@rules_go//go/toolchain:freebsd_amd64 //cmd/bb_runner $(pwd)/bb_runner" | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "freebsd_amd64: upload bb_runner", | |
| "uses": "actions/upload-artifact@v4", | |
| "with": { | |
| "name": "bb_runner.freebsd_amd64", | |
| "path": "bb_runner" | |
| } | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "freebsd_amd64: copy bb_scheduler", | |
| "run": "rm -f bb_scheduler && bazel run --run_under cp --platforms=@rules_go//go/toolchain:freebsd_amd64 //cmd/bb_scheduler $(pwd)/bb_scheduler" | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "freebsd_amd64: upload bb_scheduler", | |
| "uses": "actions/upload-artifact@v4", | |
| "with": { | |
| "name": "bb_scheduler.freebsd_amd64", | |
| "path": "bb_scheduler" | |
| } | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "freebsd_amd64: copy bb_virtual_tmp", | |
| "run": "rm -f bb_virtual_tmp && bazel run --run_under cp --platforms=@rules_go//go/toolchain:freebsd_amd64 //cmd/bb_virtual_tmp $(pwd)/bb_virtual_tmp" | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "freebsd_amd64: upload bb_virtual_tmp", | |
| "uses": "actions/upload-artifact@v4", | |
| "with": { | |
| "name": "bb_virtual_tmp.freebsd_amd64", | |
| "path": "bb_virtual_tmp" | |
| } | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "freebsd_amd64: copy bb_worker", | |
| "run": "rm -f bb_worker && bazel run --run_under cp --platforms=@rules_go//go/toolchain:freebsd_amd64 //cmd/bb_worker $(pwd)/bb_worker" | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "freebsd_amd64: upload bb_worker", | |
| "uses": "actions/upload-artifact@v4", | |
| "with": { | |
| "name": "bb_worker.freebsd_amd64", | |
| "path": "bb_worker" | |
| } | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "freebsd_amd64: copy fake_python", | |
| "run": "rm -f fake_python && bazel run --run_under cp --platforms=@rules_go//go/toolchain:freebsd_amd64 //cmd/fake_python $(pwd)/fake_python" | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "freebsd_amd64: upload fake_python", | |
| "uses": "actions/upload-artifact@v4", | |
| "with": { | |
| "name": "fake_python.freebsd_amd64", | |
| "path": "fake_python" | |
| } | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "freebsd_amd64: copy fake_xcrun", | |
| "run": "rm -f fake_xcrun && bazel run --run_under cp --platforms=@rules_go//go/toolchain:freebsd_amd64 //cmd/fake_xcrun $(pwd)/fake_xcrun" | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "freebsd_amd64: upload fake_xcrun", | |
| "uses": "actions/upload-artifact@v4", | |
| "with": { | |
| "name": "fake_xcrun.freebsd_amd64", | |
| "path": "fake_xcrun" | |
| } | |
| }, | |
| { | |
| "if": "matrix.host.cross_compile || matrix.host.platform_name == 'windows_amd64'", | |
| "name": "windows_amd64: build${{ matrix.host.platform_name == 'windows_amd64' && ' and test' || '' }}", | |
| "run": "bazel ${{ matrix.host.platform_name == 'windows_amd64' && 'test --test_output=errors' || 'build --platforms=@rules_go//go/toolchain:windows_amd64 --@bazel_tools//tools/test:incompatible_use_default_test_toolchain=False' }} //..." | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "windows_amd64: copy bb_noop_worker", | |
| "run": "rm -f bb_noop_worker.exe && bazel run --run_under cp --platforms=@rules_go//go/toolchain:windows_amd64 //cmd/bb_noop_worker $(pwd)/bb_noop_worker.exe" | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "windows_amd64: upload bb_noop_worker", | |
| "uses": "actions/upload-artifact@v4", | |
| "with": { | |
| "name": "bb_noop_worker.windows_amd64", | |
| "path": "bb_noop_worker.exe" | |
| } | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "windows_amd64: copy bb_runner", | |
| "run": "rm -f bb_runner.exe && bazel run --run_under cp --platforms=@rules_go//go/toolchain:windows_amd64 //cmd/bb_runner $(pwd)/bb_runner.exe" | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "windows_amd64: upload bb_runner", | |
| "uses": "actions/upload-artifact@v4", | |
| "with": { | |
| "name": "bb_runner.windows_amd64", | |
| "path": "bb_runner.exe" | |
| } | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "windows_amd64: copy bb_scheduler", | |
| "run": "rm -f bb_scheduler.exe && bazel run --run_under cp --platforms=@rules_go//go/toolchain:windows_amd64 //cmd/bb_scheduler $(pwd)/bb_scheduler.exe" | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "windows_amd64: upload bb_scheduler", | |
| "uses": "actions/upload-artifact@v4", | |
| "with": { | |
| "name": "bb_scheduler.windows_amd64", | |
| "path": "bb_scheduler.exe" | |
| } | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "windows_amd64: copy bb_virtual_tmp", | |
| "run": "rm -f bb_virtual_tmp.exe && bazel run --run_under cp --platforms=@rules_go//go/toolchain:windows_amd64 //cmd/bb_virtual_tmp $(pwd)/bb_virtual_tmp.exe" | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "windows_amd64: upload bb_virtual_tmp", | |
| "uses": "actions/upload-artifact@v4", | |
| "with": { | |
| "name": "bb_virtual_tmp.windows_amd64", | |
| "path": "bb_virtual_tmp.exe" | |
| } | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "windows_amd64: copy bb_worker", | |
| "run": "rm -f bb_worker.exe && bazel run --run_under cp --platforms=@rules_go//go/toolchain:windows_amd64 //cmd/bb_worker $(pwd)/bb_worker.exe" | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "windows_amd64: upload bb_worker", | |
| "uses": "actions/upload-artifact@v4", | |
| "with": { | |
| "name": "bb_worker.windows_amd64", | |
| "path": "bb_worker.exe" | |
| } | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "windows_amd64: copy fake_python", | |
| "run": "rm -f fake_python.exe && bazel run --run_under cp --platforms=@rules_go//go/toolchain:windows_amd64 //cmd/fake_python $(pwd)/fake_python.exe" | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "windows_amd64: upload fake_python", | |
| "uses": "actions/upload-artifact@v4", | |
| "with": { | |
| "name": "fake_python.windows_amd64", | |
| "path": "fake_python.exe" | |
| } | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "windows_amd64: copy fake_xcrun", | |
| "run": "rm -f fake_xcrun.exe && bazel run --run_under cp --platforms=@rules_go//go/toolchain:windows_amd64 //cmd/fake_xcrun $(pwd)/fake_xcrun.exe" | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "windows_amd64: upload fake_xcrun", | |
| "uses": "actions/upload-artifact@v4", | |
| "with": { | |
| "name": "fake_xcrun.windows_amd64", | |
| "path": "fake_xcrun.exe" | |
| } | |
| }, | |
| { | |
| "if": "matrix.host.platform_name == 'windows_amd64'", | |
| "name": "Install WinFSP", | |
| "run": "choco install winfsp" | |
| }, | |
| { | |
| "if": "matrix.host.platform_name == 'windows_amd64'", | |
| "name": "Execute WinFSP Integration Tests", | |
| "run": "bazel test //pkg/filesystem/virtual/winfsp:file_system_integration_test" | |
| }, | |
| { | |
| "env": { | |
| "GITHUB_TOKEN": "${{ secrets.GITHUB_TOKEN }}" | |
| }, | |
| "if": "matrix.host.upload", | |
| "name": "Install Docker credentials", | |
| "run": "echo \"${GITHUB_TOKEN}\" | docker login ghcr.io -u $ --password-stdin" | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "Push container bb_noop_worker:bb_noop_worker", | |
| "run": "bazel run --stamp //cmd/bb_noop_worker:bb_noop_worker_container_push" | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "Push container bb_runner:bb_runner_bare", | |
| "run": "bazel run --stamp //cmd/bb_runner:bb_runner_bare_container_push" | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "Push container bb_runner:bb_runner_installer", | |
| "run": "bazel run --stamp //cmd/bb_runner:bb_runner_installer_container_push" | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "Push container bb_scheduler:bb_scheduler", | |
| "run": "bazel run --stamp //cmd/bb_scheduler:bb_scheduler_container_push" | |
| }, | |
| { | |
| "if": "matrix.host.upload", | |
| "name": "Push container bb_worker:bb_worker", | |
| "run": "bazel run --stamp //cmd/bb_worker:bb_worker_container_push" | |
| } | |
| ], | |
| "strategy": { | |
| "matrix": { | |
| "host": [ | |
| { | |
| "bazel_os": "linux", | |
| "cross_compile": true, | |
| "os": "ubuntu-latest", | |
| "platform_name": "linux_amd64", | |
| "upload": true | |
| }, | |
| { | |
| "bazel_os": "windows", | |
| "cross_compile": false, | |
| "os": "windows-latest", | |
| "platform_name": "windows_amd64", | |
| "upload": false | |
| } | |
| ] | |
| } | |
| } | |
| }, | |
| "lint": { | |
| "name": "lint", | |
| "runs-on": "ubuntu-latest", | |
| "steps": [ | |
| { | |
| "name": "Check out source code", | |
| "uses": "actions/checkout@v1" | |
| }, | |
| { | |
| "name": "Installing Bazel", | |
| "run": "v=$(cat .bazelversion) && curl -L https://github.com/bazelbuild/bazel/releases/download/${v}/bazel-${v}-linux-x86_64 > ~/bazel && chmod +x ~/bazel && echo ~ >> ${GITHUB_PATH}", | |
| "shell": "bash" | |
| }, | |
| { | |
| "name": "Reformat", | |
| "run": "bazel run @com_github_buildbarn_bb_storage//tools:reformat" | |
| }, | |
| { | |
| "name": "Test style conformance", | |
| "run": "git add . && git diff --exit-code HEAD --" | |
| }, | |
| { | |
| "name": "Golint", | |
| "run": "bazel run @org_golang_x_lint//golint -- -set_exit_status $(pwd)/..." | |
| } | |
| ] | |
| } | |
| }, | |
| "name": "main", | |
| "on": { | |
| "push": { | |
| "branches": [ | |
| "main" | |
| ] | |
| } | |
| } | |
| } |