diff --git a/.bazelrc b/.bazelrc index 7796054..3850a2d 100644 --- a/.bazelrc +++ b/.bazelrc @@ -34,13 +34,30 @@ build --experimental_retain_test_configuration_across_testonly #https://github.c common --registry=https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/ common --registry=https://bcr.bazel.build -common --credential_helper=*.qnx.com=%workspace%/scripts/internal/qnx_creds.py + +# Base QNX config (shared flags) +common:qnx --host_platform=@score_bazel_platforms//:x86_64-linux +common:qnx --credential_helper=*.qnx.com=%workspace%/scripts/internal/qnx_creds.py +common:qnx --sandbox_writable_path=/var/tmp build:build_qnx8 --platforms=@score_bazel_platforms//:arm64-qnx8_0 build:build_qnx8 --extra_toolchains=@toolchains_qnx_qcc//:qcc_aarch64 -build:build_qnx8 --extra_toolchains=@score_toolchains_rust//toolchains/aarch64-unknown-qnx8_0:toolchain_aarch64_qnx8_0 -build:build_qnx8 --extra_toolchains=@toolchains_qnx_ifs//:ifs_x86_64 build:build_qnx8 --extra_toolchains=@toolchains_qnx_ifs//:ifs_aarch64 +build:build_qnx8 --extra_toolchains=@score_toolchains_rust//toolchains/aarch64-unknown-qnx8_0:toolchain_aarch64_qnx8_0 + +common:qnx_x86_64 --config=qnx +common:qnx_x86_64 --platforms=@score_bazel_platforms//:x86_64-qnx8_0 +common:qnx_x86_64 --extra_toolchains=@toolchains_qnx_ifs//:ifs_x86_64 +common:qnx_x86_64 --extra_toolchains=@toolchains_qnx_qcc//:qcc_x86_64 + +common:qnx_arm64 --config=qnx +common:qnx_arm64 --platforms=@score_bazel_platforms//:arm64-qnx8_0 +common:qnx_arm64 --extra_toolchains=@toolchains_qnx_ifs//:ifs_aarch64 +common:qnx_arm64 --extra_toolchains=@toolchains_qnx_qcc//:qcc_aarch64 +common:qnx_arm64 --extra_toolchains=@score_toolchains_rust//toolchains/aarch64-unknown-qnx8_0:toolchain_aarch64_qnx8_0 + +common:x86_64-qnx --config=qnx_x86_64 +common:arm64-qnx --config=qnx_arm64 common --extra_toolchains=@gcc_toolchain//:host_gcc_12 common --extra_toolchains=@score_toolchains_rust//toolchains/x86_64-unknown-linux-gnu:toolchain_x86_64_linux diff --git a/.github/workflows/build_and_test_qnx.yml b/.github/workflows/build_and_test_qnx.yml new file mode 100644 index 0000000..77653ae --- /dev/null +++ b/.github/workflows/build_and_test_qnx.yml @@ -0,0 +1,49 @@ +# ******************************************************************************* +# Copyright (c) 2025 Contributors to the Eclipse Foundation +# +# See the NOTICE file(s) distributed with this work for additional +# information regarding copyright ownership. +# +# This program and the accompanying materials are made available under the +# terms of the Apache License Version 2.0 which is available at +# https://www.apache.org/licenses/LICENSE-2.0 +# +# SPDX-License-Identifier: Apache-2.0 +# ******************************************************************************* + +name: QNX Build (gated) + +on: + pull_request_target: + types: [opened, reopened, synchronize] + +jobs: + qnx-build-x86_64: + uses: eclipse-score/cicd-workflows/.github/workflows/qnx-build.yml@main + permissions: + contents: read + pull-requests: read + with: + bazel-target: "//..." + bazel-config: "x86_64-qnx" + credential-helper: "scripts/internal/qnx_creds.py" + environment-name: "workflow-approval" + secrets: + score-qnx-license: ${{ secrets.SCORE_QNX_LICENSE }} + score-qnx-user: ${{ secrets.SCORE_QNX_USER }} + score-qnx-password: ${{ secrets.SCORE_QNX_PASSWORD }} + + qnx-build-arm64: + uses: eclipse-score/cicd-workflows/.github/workflows/qnx-build.yml@main + permissions: + contents: read + pull-requests: read + with: + bazel-target: "//..." + bazel-config: "arm64-qnx" + credential-helper: "scripts/internal/qnx_creds.py" + environment-name: "workflow-approval" + secrets: + score-qnx-license: ${{ secrets.SCORE_QNX_LICENSE }} + score-qnx-user: ${{ secrets.SCORE_QNX_USER }} + score-qnx-password: ${{ secrets.SCORE_QNX_PASSWORD }} diff --git a/scripts/internal/qnx_creds.py b/scripts/internal/qnx_creds.py old mode 100644 new mode 100755