# The ci.bazelrc is an untracked file that can be generated by hack/dockerized or automated/test.sh scripts as part of CI
try-import ci.bazelrc
try-import .bazeldnf/sandbox.bazelrc

# Set common values for all builds (run, test and coverage inherit from build)
build --stamp --workspace_status_command=./hack/print-workspace-status.sh --host_force_python=PY3

# Bazel has a rule of precedence so we can specify / overwrite architecture specific commands if needed
build:x86_64 --platforms=@io_bazel_rules_go//go/toolchain:linux_amd64_cgo
run:x86_64 --platforms=@io_bazel_rules_go//go/toolchain:linux_amd64_cgo
test:x86_64 --platforms=@io_bazel_rules_go//go/toolchain:linux_amd64_cgo

build:aarch64 --platforms=@io_bazel_rules_go//go/toolchain:linux_arm64_cgo
run:aarch64 --platforms=@io_bazel_rules_go//go/toolchain:linux_arm64_cgo
test:aarch64 --platforms=@io_bazel_rules_go//go/toolchain:linux_arm64_cgo --host_javabase=@local_jdk//:jdk

build:s390x --platforms=@io_bazel_rules_go//go/toolchain:linux_s390x_cgo
run:s390x --platforms=@io_bazel_rules_go//go/toolchain:linux_s390x_cgo
test:s390x --platforms=@io_bazel_rules_go//go/toolchain:linux_s390x_cgo --host_javabase=@local_jdk//:jdk

build:crossbuild-aarch64 --incompatible_enable_cc_toolchain_resolution --platforms=//bazel/platforms:aarch64-none-linux-gnu --platforms=@io_bazel_rules_go//go/toolchain:linux_arm64_cgo
run:crossbuild-aarch64  --incompatible_enable_cc_toolchain_resolution --platforms=//bazel/platforms:aarch64-none-linux-gnu --platforms=@io_bazel_rules_go//go/toolchain:linux_arm64_cgo
test:crossbuild-aarch64 --platforms=@io_bazel_rules_go//go/toolchain:linux_arm64_cgo --host_javabase=@local_jdk//:jdk

build:crossbuild-s390x --incompatible_enable_cc_toolchain_resolution --platforms=//bazel/platforms:s390x-none-linux-gnu --platforms=@io_bazel_rules_go//go/toolchain:linux_s390x_cgo
run:crossbuild-s390x  --incompatible_enable_cc_toolchain_resolution --platforms=//bazel/platforms:s390x-none-linux-gnu --platforms=@io_bazel_rules_go//go/toolchain:linux_s390x_cgo
test:crossbuild-s390x --platforms=@io_bazel_rules_go//go/toolchain:linux_s390x_cgo --host_javabase=@local_jdk//:jdk

build --define gotags=selinux

# let our unit tests produce our own junit reports
test --action_env=GO_TEST_WRAP=0

test --test_tag_filters=-cov,-fuzz
test:fuzz --test_tag_filters=fuzz
coverage --test_tag_filters=-nocov,-fuzz

# Import user settings which may override the defaults
try-import user.bazelrc
