Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
23 commits
Select commit Hold shift + click to select a range
0715dc7
feat(toolchain): add generic linux-aarch64 toolchain
FScholPer Oct 21, 2026
799f419
feat(images): add shared offline overlay tooling for ext4 injection
FScholPer Oct 21, 2026
fba8a3d
fix(ci): address PR review comments
FScholPer Oct 26, 2026
6a55ee9
refactor(overlay): use rules_imagefs for ext4 overlay injection
FScholPer Oct 26, 2026
0797559
feat(tck): add Phase 1 SBOM compatibility check implementation
FScholPer Oct 28, 2026
fe93fa0
feat(tck): add Rust-based TCK runner with SBOM check
FScholPer Oct 28, 2026
c82962f
feat(tck): add bundling step to create distributable tarball
FScholPer Oct 28, 2026
9b4dfac
chore(tck): remove old Python prototype files
FScholPer Oct 28, 2026
2beaef8
feat(tck): add requirements policy and refactor SBOM checker
FScholPer Oct 28, 2026
bfa697e
feat(tck): add version and runtime compatibility checks
FScholPer Oct 28, 2026
3e4e12b
feat(tck): add test definitions referencing existing integration tests
FScholPer Oct 28, 2026
e8c3366
docs(tck): add README with quick start and architecture overview
FScholPer Oct 28, 2026
9c1b5f2
test(tck): add unit tests for version, config, and report modules
FScholPer Oct 28, 2026
7d34121
Merge main into feat/tck-phase1-sbom-check
FScholPer Oct 28, 2026
c74481d
fix(tck): address Copilot review comments
FScholPer Oct 28, 2026
968d286
fix(tck): address remaining review findings
Copilot Oct 28, 2026
e60eb22
ci: restrict TCK workflow token permissions
Copilot Oct 28, 2026
c883f96
Merge branch 'main' into feat/tck-phase1-sbom-check
FScholPer Oct 29, 2026
d74366e
Fix TCK formatting and copyright headers
Copilot Oct 29, 2026
57ae6f0
Format TCK Rust sources with pinned S-CORE policy
Copilot Oct 29, 2026
b0fdc7d
update lock
FScholPer Oct 29, 2026
5210e0a
fix(tck): add score_lifecycle to SBOM and relax license policy check
FScholPer Oct 29, 2026
0ce99a2
Merge branch 'main' into feat/tck-phase1-sbom-check
FScholPer Oct 29, 2026
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
6 changes: 6 additions & 0 deletions .bazelrc
Original file line number Diff line number Diff line change
Expand Up @@ -68,6 +68,12 @@ build:qnx-aarch64 --extra_toolchains=@score_qnx_aarch64_ifs_toolchain//:ifs-aarc
build:linux-x86_64 --config=_common
build:linux-x86_64 --config=unified

build:linux-aarch64 --config=_common
build:linux-aarch64 --extra_toolchains=@score_gcc_aarch64_toolchain//:aarch64-linux-gcc_12.2.0
build:linux-aarch64 --extra_toolchains=@ferrocene_aarch64_ebclfsa//:rust_ferrocene_toolchain
build:linux-aarch64 --platforms=@score_bazel_platforms//:aarch64-linux-gcc_12.2.0-posix
build:linux-aarch64 --action_env=BINDGEN_EXTRA_CLANG_ARGS_aarch64_unknown_linux_gnu=--sysroot=external/score_bazel_cpp_toolchains++gcc+score_gcc_aarch64_toolchain_pkg/aarch64-unknown-linux-gnu/sysroot

build:eb-aarch64 --config=_common
build:eb-aarch64 --extra_toolchains=@score_ebclfsa_toolchain//:aarch64-linux-sdk_2.0.0-beta2-ebclfsa
build:eb-aarch64 --extra_toolchains=@ferrocene_aarch64_ebclfsa//:rust_ferrocene_toolchain
Expand Down
126 changes: 126 additions & 0 deletions .github/workflows/build_tck.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,126 @@
# *******************************************************************************
# 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: Build TCK Binary
on:
workflow_dispatch:
pull_request:
paths:
- 'tck/**'
push:
branches:
- main
paths:
- 'tck/**'
release:
types: [created]
permissions:
contents: read
jobs:
build:
name: Build score-tck binary
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- name: Checkout repository
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Setup Bazel
uses: bazel-contrib/setup-bazel@0.18.0
with:
bazelisk-cache: true
disk-cache: tck-build
repository-cache: true
cache-save: ${{ github.event_name == 'push' && github.ref_name == 'main' }}
- name: Build product SBOM (golden reference)
run: |
bazel build --lockfile_mode=error //:sbom
- name: Build TCK binary
run: |
bazel build --lockfile_mode=error //tck:score-tck
# Copy to temp location to avoid conflict with bundle directory
cp bazel-bin/tck/score-tck /tmp/score-tck-bin
chmod +x /tmp/score-tck-bin
- name: Test TCK binary
run: |
/tmp/score-tck-bin version
echo ""
echo "Testing with golden SBOM..."
cat > /tmp/test-dist.toml << 'EOF'
[dist]
name = "test-dist"
version = "0.9.0"
platform_version = "0.9.0"
arch = "x86_64-linux"

[dist.paths]
sbom_file = "bazel-bin/sbom.spdx.json"
EOF
/tmp/score-tck-bin run --config /tmp/test-dist.toml --report /tmp/tck-test-report
echo ""
echo "Report summary:"
head -20 /tmp/tck-test-report/summary.md
- name: Bundle TCK package
run: |
VERSION="${{ github.event.release.tag_name || '0.1.0' }}"
# Create bundle directory structure
mkdir -p score-tck-bundle/bin
mkdir -p score-tck-bundle/reference/policy
mkdir -p score-tck-bundle/tests
mkdir -p score-tck-bundle/docs

# Copy binary
cp /tmp/score-tck-bin score-tck-bundle/bin/score-tck

# Copy golden SBOM
cp bazel-bin/sbom.spdx.json score-tck-bundle/reference/

# Copy policy
cp tck/reference/policy/requirements.toml score-tck-bundle/reference/policy/

# Copy test definitions
cp tck/tests/behavioral.toml score-tck-bundle/tests/
cp tck/tests/api_signatures.toml score-tck-bundle/tests/

# Copy config example
cp tck/tck.config.example.toml score-tck-bundle/

# Copy README
cp tck/README.md score-tck-bundle/

# Create tarball
tar -czvf score-tck-${VERSION}-linux-x86_64.tar.gz score-tck-bundle/
echo "Created bundle: score-tck-${VERSION}-linux-x86_64.tar.gz"
ls -la score-tck-*.tar.gz
- name: Upload TCK bundle artifact
uses: actions/upload-artifact@604373da6381bf24206979c74d06a550515601b9 # v4.4.1
with:
name: score-tck-bundle-linux-x86_64
path: score-tck-*.tar.gz
retention-days: 30
release:
if: github.event_name == 'release'
needs: build
runs-on: ubuntu-latest
permissions:
contents: write
steps:
- name: Download TCK bundle artifact
uses: actions/download-artifact@9000827ccba6bdab643e8b6fd33ac0654aef8333 # v8.0.2
with:
name: score-tck-bundle-linux-x86_64
- name: Attach bundle to release
uses: softprops/action-gh-release@v2.5.0
with:
files: score-tck-*.tar.gz
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
1 change: 1 addition & 0 deletions BUILD
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,7 @@ sbom(
"@score_kyron//examples:main_macro",
"@score_kyron//examples:safety_task",
"@score_kyron//examples:select",
"@score_lifecycle//examples/cpp_lifecycle_app:cpp_lifecycle_app",
"@score_logging//score/test/component/dlt_generator_app:dlt_generator",
"@score_logging//score/test/component/logging_app:logging_app",
"@score_time//examples/time/high_res_steady_time",
Expand Down
Loading
Loading