You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
sbom: allow-listed generators and an sbom Maven profile - #14570
Replace sbomify/sbomify-action@master. The action is not on the ASF GitHub Actions allow-list (apache/infrastructure-actions), so the UI and marvin SBOM jobs would not be allowed to run. The SBOMs are now generated with the CycloneDX command-line tools, pinned to a version, in run: steps:
UI: @cyclonedx/cyclonedx-npm 6.0.1 from ui/package-lock.json, without dev dependencies (build tooling that is not shipped in the UI bundle). actions/setup-node is added because the tool needs Node 20.18 or later.
marvin: cyclonedx-bom 7.5.0 (cyclonedx-py environment) on the venv marvin's dependencies are installed into. This adds license data that the pip freeze list didn't have. The generator runs from its own venv so it doesn't show up in marvin's SBOM.
Put the CycloneDX Maven plugin in an sbom profile. Until now it was bound to package for every build. It now only runs with -Psbom (or -Dsbom) and is bound to validate. makeAggregateBom resolves the whole reactor from the root before any module is built, so the java-sbom job no longer needs a build: mvn -Dnoredist -Psbom validate writes target/ACS.sbom.{json,xml} in about a minute.
The tag filter [0-9]+.[0-9]+.[0-9]+* is unchanged. In GitHub's filter syntax + means one or more of the preceding character, so it matches release tags like 4.22.0.0.
Types of changes
Breaking change (fix or feature that would cause existing functionality to change)
New feature (non-breaking change which adds functionality)
Bug fix (non-breaking change which fixes an issue)
Enhancement (improves an existing feature and functionality)
Cleanup (Code refactoring and cleanup, that may add test cases)
Build/CI
Test (unit or integration test code)
How Has This Been Tested?
mvn -B -ntp -Dnoredist -Psbom validate locally: build success, 583 components (154 CloudStack modules, including the noredist ones), 569 with license data. Without -Psbom the plugin is no longer part of the build.
A two-module test reactor confirmed that the aggregate BOM, bound at the root, includes sibling modules that have not been built or installed, with the correct dependency graph.
The UI and marvin steps were not run locally. Their options were checked against the documentation of the pinned versions. To be confirmed with a manual run of the generate sboms workflow on this branch.
The reason will be displayed to describe this comment to others. Learn more.
Copilot was unable to review this pull request because the user who requested the review has insufficient remaining quota. Try requesting a review at a lower effort level.
✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 20.78%. Comparing base (d63c21b) to head (0002282). ⚠️ Report is 6 commits behind head on main.
Thanks @DaanHoogland - ASF Allowlist Check now passes. Is the Copilot comment relevant or should it be ready for review as it is now?
I don't know yet @nvazquez . It seems like a serious warning (and it is a comment on a sonar warning) , But i have no idea of an alternative yet. /me looking
The reason will be displayed to describe this comment to others. Learn more.
Copilot was unable to review this pull request because the user who requested the review has insufficient remaining quota. Try requesting a review at a lower effort level.
Thanks @DaanHoogland - ASF Allowlist Check now passes. Is the Copilot comment relevant or should it be ready for review as it is now?
I don't know yet @nvazquez . It seems like a serious warning (and it is a comment on a sonar warning) , But i have no idea of an alternative yet. /me looking
@nvazquez a [SL] Jenkins job has been kicked to build packages. It will be bundled with no SystemVM templates. I'll keep you posted as I make progress.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Follow-up to #12570.
sbomify/sbomify-action@master. The action is not on the ASF GitHub Actions allow-list (apache/infrastructure-actions), so the UI and marvin SBOM jobs would not be allowed to run. The SBOMs are now generated with the CycloneDX command-line tools, pinned to a version, inrun:steps:@cyclonedx/cyclonedx-npm6.0.1 fromui/package-lock.json, without dev dependencies (build tooling that is not shipped in the UI bundle).actions/setup-nodeis added because the tool needs Node 20.18 or later.cyclonedx-bom7.5.0 (cyclonedx-py environment) on the venv marvin's dependencies are installed into. This adds license data that thepip freezelist didn't have. The generator runs from its own venv so it doesn't show up in marvin's SBOM.sbomprofile. Until now it was bound topackagefor every build. It now only runs with-Psbom(or-Dsbom) and is bound tovalidate.makeAggregateBomresolves the whole reactor from the root before any module is built, so the java-sbom job no longer needs a build:mvn -Dnoredist -Psbom validatewritestarget/ACS.sbom.{json,xml}in about a minute.The tag filter
[0-9]+.[0-9]+.[0-9]+*is unchanged. In GitHub's filter syntax+means one or more of the preceding character, so it matches release tags like4.22.0.0.Types of changes
How Has This Been Tested?
mvn -B -ntp -Dnoredist -Psbom validatelocally: build success, 583 components (154 CloudStack modules, including the noredist ones), 569 with license data. Without-Psbomthe plugin is no longer part of the build.generate sbomsworkflow on this branch.🤖 Generated with Claude Code