Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
55 changes: 0 additions & 55 deletions .github/workflows/build.yml

This file was deleted.

85 changes: 85 additions & 0 deletions .github/workflows/build_linux.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,85 @@
# *******************************************************************************
# Copyright (c) 2026 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: Bazel Build (Linux)
on:
pull_request:
types: [opened, reopened, synchronize]
push:
branches:
- main
merge_group:
types: [checks_requested]
workflow_call:
jobs:
linux-build-and-test:
name: Build and Test ${{ matrix.name }}
runs-on: ${{ vars.runner_labels_ghub24_standard_x64 && fromJSON(vars.runner_labels_ghub24_standard_x64) || vars.REPO_RUNNER_LABELS && fromJSON(vars.REPO_RUNNER_LABELS) || 'ubuntu-24.04' }}
permissions:
contents: read
strategy:
fail-fast: false
matrix:
include:
- name: score-linux-x86_64
artifact-name: x86_64-linux
bazel-config: score-linux-x86_64
working-directory: "."
bazel-flags: "--lockfile_mode=error"
bazel-build-target: "//..."
bazel-test-target: "//score/..."
- name: score-linux-aarch64
artifact-name: aarch64-linux
bazel-config: score-linux-aarch64
working-directory: "."
bazel-flags: "--lockfile_mode=error"
bazel-build-target: "//score/..."
bazel-test-target: "//score/..."
bazel-test-extra-flags: "--test_timeout=180,900,2700,10800" # QEMU emulation is slow
steps:
- name: Free up disk space
uses: eclipse-score/more-disk-space@beee38c3b4426a7c43fdfeb2495d1af812179c3e # v1.3.0
with:
level: 4
- name: Checkout repository
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
lfs: true
- name: Setup Bazel with shared caching
uses: eclipse-score/cicd-actions/setup-bazel-cache@e2a2a587a759b681632040ec1e1294015a0405f5 # setup-bazel-cache/v0.1.0
with:
disk-cache-key: ${{ github.job }}-${{ matrix.artifact-name }}
# Needs bazel on PATH: the action resolves `bazel info install_base`.
- uses: eclipse-score/cicd-actions/unblock-user-namespace-for-linux-sandbox@30740c18c728bc58f9b17c914c5592a5008f6b98 # main branch (2026-10-12)
- name: Install QEMU
if: matrix.bazel-config == 'score-linux-aarch64'
run: |
sudo apt-get update
sudo apt-get install -y qemu-user
- name: Bazel build
working-directory: ${{ matrix.working-directory }}
run: |
bazel build --config=${{ matrix.bazel-config }} ${{ matrix.bazel-flags }} -- ${{ matrix.bazel-build-target }}
- name: Bazel test
working-directory: ${{ matrix.working-directory }}
run: |
bazel test --config=${{ matrix.bazel-config }} ${{ matrix.bazel-flags }} ${{ matrix.bazel-test-extra-flags }} -- ${{ matrix.bazel-test-target }}
- name: Upload test logs
if: always()
uses: actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9 # v7.0.2
with:
name: test-report-${{ matrix.artifact-name }}-${{ github.run_attempt }}
path: |
${{ matrix.working-directory }}/bazel-testlogs/**/test.log
${{ matrix.working-directory }}/bazel-testlogs/**/test.xml
retention-days: 5
if-no-files-found: warn
64 changes: 64 additions & 0 deletions .github/workflows/build_qnx.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
# *******************************************************************************
# 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: Bazel Build (QNX)
on:
pull_request_target:
types: [opened, reopened, synchronize]
push:
branches:
- main
merge_group:
types: [checks_requested]
workflow_call:
workflow_dispatch:
jobs:
qnx-build:
name: Build and Test ${{ matrix.name }}
strategy:
fail-fast: false
matrix:
include:
- name: score-qnx-x86_64
bazel-config: score-qnx-x86_64
working-directory: "."
bazel-target: "//score/..."
bazel-disk-cache: score-qnx-x86_64
bazel-test-target: "//score/..."
extra-bazel-flags: "--lockfile_mode=error"
extra-bazel-test-flags: "--lockfile_mode=error"
- name: score-qnx-aarch64
bazel-config: score-qnx-aarch64
working-directory: "."
bazel-target: "//score/..."
bazel-disk-cache: score-qnx-aarch64
bazel-test-target: "//score/..."
extra-bazel-flags: "--lockfile_mode=error"
extra-bazel-test-flags: "--lockfile_mode=error --test_timeout=120,600,1800,7200" # QEMU emulation is slow
uses: eclipse-score/cicd-workflows/.github/workflows/qnx-build.yml@58cb0ec5a80441d593464d3af09d634ab91247e0 # v0.0.3-32-g8ab7396
permissions:
contents: read
pull-requests: read
with:
bazel-target: ${{ matrix.bazel-target }}
bazel-config: ${{ matrix.bazel-config }}
bazel-test-target: ${{ matrix.bazel-test-target }}
test-log-artifact-name: qnx-testlogs-${{ matrix.bazel-disk-cache }}-${{ github.run_attempt }}
bazel-disk-cache: ${{ matrix.bazel-disk-cache }}
working-directory: ${{ matrix.working-directory }}
extra-bazel-flags: ${{ matrix.extra-bazel-flags }}
extra-bazel-test-flags: ${{ matrix.extra-bazel-test-flags }}
secrets:
score-qnx-license: ${{ secrets.SCORE_QNX_LICENSE }}
score-qnx-user: ${{ secrets.SCORE_QNX_USER }}
score-qnx-password: ${{ secrets.SCORE_QNX_PASSWORD }}
61 changes: 61 additions & 0 deletions .github/workflows/cargo_required.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
# *******************************************************************************
# Copyright (c) 2026 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: Cargo build and Miri
on:
pull_request:
types: [opened, reopened, synchronize]
push:
branches:
- main
merge_group:
types: [checks_requested]
workflow_call:
env:
CARGO_TERM_COLOR: always
jobs:
cargo-build:
name: Cargo build
runs-on: ${{ vars.runner_labels_ghub24_standard_x64 && fromJSON(vars.runner_labels_ghub24_standard_x64) || vars.REPO_RUNNER_LABELS && fromJSON(vars.REPO_RUNNER_LABELS) || 'ubuntu-24.04' }}
permissions:
contents: read
steps:
- uses: eclipse-score/more-disk-space@beee38c3b4426a7c43fdfeb2495d1af812179c3e # v1.3.0
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
- name: Read the Rust toolchain from rust-toolchain.toml
id: rust-toolchain
run: |
channel="$(sed -n 's/^channel = "\(.*\)"$/\1/p' rust-toolchain.toml)"
test -n "${channel}"
echo "channel=${channel}" >> "${GITHUB_OUTPUT}"
- uses: dtolnay/rust-toolchain@b725eda525362e7cf34af9a7243cac1e3f01a7ec # stable branch (2026-10-16)
with:
toolchain: ${{ steps.rust-toolchain.outputs.channel }}
- name: Cargo build
run: cargo build
miri:
name: Miri (Bazel)
runs-on: ${{ vars.runner_labels_ghub24_standard_x64 && fromJSON(vars.runner_labels_ghub24_standard_x64) || vars.REPO_RUNNER_LABELS && fromJSON(vars.REPO_RUNNER_LABELS) || 'ubuntu-24.04' }}
permissions:
contents: read
steps:
- uses: eclipse-score/more-disk-space@beee38c3b4426a7c43fdfeb2495d1af812179c3e # v1.3.0
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
- name: Setup Bazel with shared caching
uses: eclipse-score/cicd-actions/setup-bazel-cache@e2a2a587a759b681632040ec1e1294015a0405f5 # setup-bazel-cache/v0.1.0
with:
disk-cache-key: ${{ github.job }}
# Needs bazel on PATH: the action resolves `bazel info install_base`.
- uses: eclipse-score/cicd-actions/unblock-user-namespace-for-linux-sandbox@30740c18c728bc58f9b17c914c5592a5008f6b98 # main branch (2026-10-12)
- name: Bazel miri tests
run: |
bazel test --lockfile_mode=error --config=score-linux-x86_64 //:miri_tests
Loading
Loading