snyk-docker-plugin
Version:
Snyk CLI docker plugin
25 lines (24 loc) • 1.24 kB
TypeScript
import { ChiselPackage } from "../../analyzer/types";
import { ExtractAction, ExtractedLayers } from "../../extractor/types";
/**
* Extract action for Ubuntu Chisel manifest files.
*
* Chisel is Ubuntu's tool for creating minimal container images by installing
* only specific "slices" of Debian packages. The manifest.wall file is a
* zstd-compressed NDJSON (newline-delimited JSON) file that records all
* installed packages, slices, and files for integrity verification and SBOM generation.
*
* See: https://documentation.ubuntu.com/chisel/en/latest/reference/manifest/
*/
export declare const getChiselManifestAction: ExtractAction;
/**
* Extracts and parses Chisel package information from Docker image layers.
*
* Searches for the Chisel manifest file (/var/lib/chisel/manifest.wall), decompresses it,
* and extracts package entries. The manifest uses NDJSON format where each line is a
* separate JSON object with a "kind" field indicating the entry type.
*
* @param extractedLayers - Layers extracted from the Docker image
* @returns Array of Chisel packages found in the manifest, or empty array if not found
*/
export declare function getChiselManifestContent(extractedLayers: ExtractedLayers): ChiselPackage[];