Skip to content
Merged
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
23 changes: 23 additions & 0 deletions .env.oft-current
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# 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

# shellcheck disable=SC2148,SC2034

# The file patterns that specify the relevant parts of the uProtocol Specification
# that this component is supposed to implement
UP_SPEC_FILE_PATTERNS="up-spec/*.adoc up-spec/*.md up-spec/basics up-spec/up-l1/cloudevents.adoc up-spec/up-l2/api.adoc"

# The file patterns that specify this component's resources which contain specification items
# that cover the requirements
COMPONENT_FILE_PATTERNS="*.adoc *.md *.rs .github examples src tests tools"

OFT_FILE_PATTERNS="$UP_SPEC_FILE_PATTERNS $COMPONENT_FILE_PATTERNS"
OFT_TAGS=""
23 changes: 23 additions & 0 deletions .env.oft-latest
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# 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

# shellcheck disable=SC2148,SC2034

# The file patterns that specify the relevant parts of the latest uProtocol Specification
# that this component is supposed to implement
UP_SPEC_FILE_PATTERNS="up-spec/*.adoc up-spec/*.md up-spec/basics up-spec/up-l1/README.adoc up-spec/up-l1/cloudevents.adoc up-spec/up-l2/api.adoc"

# The file patterns that specify this component's resources which contain specification items
# that cover the requirements
COMPONENT_FILE_PATTERNS="*.adoc *.md *.rs .github examples src tests tools"

OFT_FILE_PATTERNS="$UP_SPEC_FILE_PATTERNS $COMPONENT_FILE_PATTERNS"
OFT_TAGS="_,LanguageLibrary"
39 changes: 0 additions & 39 deletions .github/workflows/current-up-spec-compliance.yaml

This file was deleted.

12 changes: 9 additions & 3 deletions .github/workflows/latest-up-spec-compatibility.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ env:
CARGO_TERM_COLOR: always

jobs:
up-spec-check:
requirements-tracing:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
Expand All @@ -48,14 +48,20 @@ jobs:
git status
cd "${{ github.workspace }}"

- name: "Determine OpenFastTrace file patterns from .env file"
uses: xom9ikk/dotenv@v2.3.0
with:
mode: "oft-latest"
load-mode: strict

# run OpenFastTrace first because the action will always succeed and produce
# a tracing report
- name: Run OpenFastTrace
id: run-oft
uses: eclipse-uprotocol/ci-cd/.github/actions/run-oft@main
with:
file-patterns: "up-spec/*.adoc up-spec/*.md up-spec/basics up-spec/up-l1/README.adoc up-spec/up-l1/cloudevents.adoc up-spec/up-l2/api.adoc *.adoc *.md *.rs .github examples src tests tools"
tags: "_,LanguageLibrary"
file-patterns: "${{ env.OFT_FILE_PATTERNS }}"
tags: "${{ env.OFT_TAGS_}}"

# now try to build and run the tests which may fail if incomaptible changes
# have been introduced into the uProtocol Core API
Expand Down
6 changes: 4 additions & 2 deletions .github/workflows/nightly.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -51,5 +51,7 @@ jobs:
coverage:
uses: eclipse-uprotocol/ci-cd/.github/workflows/rust-coverage.yaml@main

requirements-tracing:
uses: ./.github/workflows/current-up-spec-compliance.yaml
current-spec-compliance:
uses: eclipse-uprotocol/ci-cd/.github/workflows/requirements-tracing.yaml@main
with:
env-file-suffix: "oft-current"
16 changes: 12 additions & 4 deletions .github/workflows/release.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -34,8 +34,10 @@ jobs:
coverage:
uses: eclipse-uprotocol/ci-cd/.github/workflows/rust-coverage.yaml@main

requirements-tracing:
uses: ./.github/workflows/current-up-spec-compliance.yaml
current-spec-compliance:
uses: eclipse-uprotocol/ci-cd/.github/workflows/requirements-tracing.yaml@main
with:
env-file-suffix: "oft-current"

licenses:
# This works off the license declarations in dependent packages/crates, so if these declarations are wrong, this report will contain erroneous information
Expand All @@ -53,14 +55,20 @@ jobs:
- check
- check-msrv
- coverage
- requirements-tracing
- current-spec-compliance
- licenses
permissions: write-all
steps:
- uses: actions/checkout@v4
with:
submodules: "recursive"

- name: "Determine uProtocol Specification file patterns from .env file"
uses: xom9ikk/dotenv@v2.3.0
with:
mode: oft-current
load-mode: strict

# License report - we later need the download_url output of the upload step
- name: Download license report
uses: actions/download-artifact@v4
Expand Down Expand Up @@ -133,7 +141,7 @@ jobs:
- name: Gather uProtocol Specification documents
shell: bash
run: |
tar cvz --file up-spec.tar.gz ${{ vars.UP_SPEC_OPEN_FAST_TRACE_FILE_PATTERNS }}
tar cvz --file up-spec.tar.gz ${{ env.UP_SPEC_FILE_PATTERNS }}
- name: Upload relevant uProtocol Spec files to release
uses: svenstaro/upload-release-action@v2
id: upload_up_spec
Expand Down