Skip to content

[RFC #0095] Exporter should export bom files for launch layers #735

@buildpack-bot

Description

@buildpack-bot

This issue have been automatically created from pull request buildpacks/rfcs#166.

Given for example the following file structure:

/layers
  /config
    /sbom
      /launch
        bom.cdx.json
        /buildpack.id
          bom.cdx.json
          /cache-true-launch-true
            bom.cdx.json
          /cache-false-launch-true
            bom.cdx.json
        /other.buildpack.id
          bom.cdx.json
          /cache-true-launch-true
            bom.cdx.json
          /cache-false-launch-true
            bom.cdx.json

The exporter should create two layers - one for layers/config/sbom/launch/buildpack.id, the other for layers/config/sbom/launch/other.buildpack.id, and add them to the app image.

The io.buildpacks.lifecycle.metadata label contains a list of buildpacks and their layers. The data for each buildpack should contain a SHA referencing the digest of the layer containing the boms for that buildpack.

Additionally the exporter should create a third layer containing only the merged layers/config/sbom/launch/bom.cdx.json (this is not captured in #741). We'll likely need to extend our LayerFactory interface to be able to create a layer containing a single arbitrary file (this action is most similar what we do with LauncherLayer).

Metadata

Metadata

Labels

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions