lablup / lablup/backend.ai

Implement SBOM report command and APIs for listing all installed packages and to check their locations

Open
#3,135 2 comments 0 reactions 1 assignee Claimed by @jopemachine View on GitHub
Dominant language
Python
Stars
670
Forks
183
Avg merge
15h 13m
Merged PRs (30d)
368

Description

### Main idea

Generate report to list all installed packages and to check their locations

- CUDA runtime version(s) installed at the image filesystem
- Location(s) of Python/R/etc. runtimes found in the image filesystem\* There may be multiple runtimes. (e.g., system Python, conda, pyenv, etc.)
- The (summarized) list of installed packages for each runtime

- The (summarized) list of installed system packages
In this issue, we will only support registries with SBOM auto-generation features, such as Harbor,And the implementation of fallbacks for other registries will be addressed in a follow-up issue (#3142).

### Implementation

We can consider implementing CLI command like the following.

```Java
backend.ai mgr image sbom-report
```

We can make the above command to print information about the packages info using _tabulate_, and print raw SBOM using the `--raw` flag.

### Considerations

- Should we store the SBOM in the database?

JIRA Issue: BA-51

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.