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.
This PR adds configuration so an SBOM is created in
pass-core-main
. The SBOMs is created as part of the maven build lifecycle. The SBOM is saved inpass-core-main/target/classes/META-INF/sbom/application.cdx.json
.I confirmed that all the jar files in the pass-core-main uber jar are listed in the SBOM.
Note that the SBOM file will also publish to maven central/snapshots with associated artifacts.
I used the sbom-utility to validate each SBOM. There are two dependencies that have sbom validation failures because their pom:scm:url is invalid (json-schema-validator and itu). I opened an issue with json-schema-validator to see what they say.
I will probably just exclude these two until they fix it.There is no way to exclude third-party deps from the SBOM report that I can see, we will have to wait for their fix in order for SBOM to be valid.Other note about
<includeTools>false</includeTools>
in the repackage plugin. I noticed a spring-boot-jarmode-tools jar file being included in the uber jar, and I didn't know what it was. After research, I don't think we need it, so I excluded it with the change. https://docs.spring.io/spring-boot/maven-plugin/packaging.html#packaging.examples.layered-archive-toolsThis PR is dependent on the main PR: eclipse-pass/main#1086. To test this PR, first checkout that PR and mvn clean install, then you can run mvn clean install on this PR.