Scan kitless Docker dependency licenses - #6972
Draft
kellyguo11 wants to merge 2 commits into
Draft
Conversation
Reuse the existing Docker license policy for both images and run the kitless scan in its existing build job. Compare the runtime image with Ubuntu so inherited packages are separated from dependencies distributed by Isaac Lab.
Treat every inventoried package without a corresponding Trivy license finding as UNKNOWN. This prevents system libraries and bundled language packages from silently escaping the Docker license policy.
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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Summary
ubuntu:24.04base with TrivyMotivation
The kitless image is a separately distributed runtime artifact, but only the Isaac Sim-based Docker image currently receives the strict dependency-license check. This is especially important as #6953 proposes adding OVPhysX, Viser, Rerun, and another runtime system library to the kitless image.
The scan runs in the existing kitless build job, so it reuses the already-built image instead of adding another large Docker build.
#6953 audit evidence
A temporary branch combining #6953 with this scanner completed the image build, runtime validation, Ubuntu scan, final-image scan, and standalone FFmpeg guard in run 31210321067.
That audit used #6953 head
e78eead0. The current headf0995a92leavesdocker/Dockerfile.kitlessand #6953's added viewer extras unchanged. Its dependency-lock delta only updates Newton, Newton USD schemas, and Warp versions from the subsequently mergeddevelop, so it does not add another #6953-specific package to the audited set.The final-image delta contained eight new Python license findings: ImageIO (BSD-2-Clause), msgspec (BSD-3-Clause), OVPhysX (NVIDIA Omniverse), PyArrow (Apache-2.0), Rerun (MIT OR Apache-2.0), Viser (MIT), websockets (BSD-3-Clause), and zstandard (BSD-3-Clause). It contained no new GPL/LGPL finding.
The audit also found two new inventory records with no Trivy license finding:
libxrender1and Viser's embedded private Node package. Viser 1.0.30 also has inconsistent top-level metadata: PyPI declares MIT while the release-tagLICENSEis Apache-2.0. Both are permissive, but the provenance and third-party notices for the bundled web client need to be reconciled. The shared policy now reports any package without scanner license metadata asUNKNOWNand requires explicit review instead of silently omitting it.Validation
uv run --frozen isaaclab -fbash -n tools/license/check_docker_licenses.shThe PR's self-hosted kitless job provides the authoritative image scan.
Type of change
Checklist
CONTRIBUTORS.md