Documentation
¶
There is no documentation for this package.
Directories
¶
| Path | Synopsis |
|---|---|
|
Package capability recognizes what a pipeline job does from the facts the CLI already parsed (the job's image, the include that defined it, its report artifacts, its script lines) and from the wrapper scripts it calls in the checkout.
|
Package capability recognizes what a pipeline job does from the facts the CLI already parsed (the job's image, the include that defined it, its report artifacts, its script lines) and from the wrapper scripts it calls in the checkout. |
|
capdecl
Package capdecl holds the pipeline capability declaration schema: the types a user (or the CLI's own built-in list) writes a capability in, their strict decode from YAML and tolerant decode from JSON, the bounds that make a declared list safe to compile and to store, and the bounded glob matcher its patterns compile to (spec sections 4.2, 4.3 and 4.6 of the pipeline capabilities design, revised 2026-10-17, in the Plumber monorepo).
|
Package capdecl holds the pipeline capability declaration schema: the types a user (or the CLI's own built-in list) writes a capability in, their strict decode from YAML and tolerant decode from JSON, the bounds that make a declared list safe to compile and to store, and the bounded glob matcher its patterns compile to (spec sections 4.2, 4.3 and 4.6 of the pipeline capabilities design, revised 2026-10-17, in the Plumber monorepo). |
|
Package cmd is the Plumber command line: the cobra commands (analyze, config, explain, catalog, version), the provider dispatch between the GitLab and GitHub analysis paths, terminal rendering, and every output writer (results JSON, SARIF, GitLab SAST, OCSF, CSV, PBOM) plus the platform push.
|
Package cmd is the Plumber command line: the cobra commands (analyze, config, explain, catalog, version), the provider dispatch between the GitLab and GitHub analysis paths, terminal rendering, and every output writer (results JSON, SARIF, GitLab SAST, OCSF, CSV, PBOM) plus the platform push. |
|
Package configuration owns .plumber.yaml: the typed control configuration structs, loading with unknown-key validation and the v1 to v2 conversion, the overlay merge over the shipped default, the required-components expression parser, the control registry (ids, categories, providers) and the reflected config schema the platform renders forms from.
|
Package configuration owns .plumber.yaml: the typed control configuration structs, loading with unknown-key validation and the v1 to v2 conversion, the overlay merge over the shipped default, the required-components expression parser, the control registry (ids, categories, providers) and the reflected config schema the platform renders forms from. |
|
Package control runs an analysis end to end: it drives the provider data collections, projects the collected data and the user's configuration onto the Rego engine input, evaluates the policies, and turns findings into per-control statuses, the Plumber score, and the catalog of controls and issue codes that every other consumer (the terminal, the outputs, the platform) reads from.
|
Package control runs an analysis end to end: it drives the provider data collections, projects the collected data and the user's configuration onto the Rego engine input, evaluates the policies, and turns findings into per-control statuses, the Plumber score, and the catalog of controls and issue codes that every other consumer (the terminal, the outputs, the platform) reads from. |
|
Package defaultConfig embeds the CLI's shipped .plumber.yaml, the baseline every zero-config run and every `extends: plumber:default` overlay starts from.
|
Package defaultConfig embeds the CLI's shipped .plumber.yaml, the baseline every zero-config run and every `extends: plumber:default` overlay starts from. |
|
finding
|
|
|
identity
Package identity computes the stable identity of a finding: the recipe (versioned by RecipeVersion) that turns a finding's code, subject and configuration into the hash the platform tracks an issue by across runs.
|
Package identity computes the stable identity of a finding: the recipe (versioned by RecipeVersion) that turns a finding's code, subject and configuration into the hash the platform tracks an issue by across runs. |
|
Package github is the GitHub provider: the workflow parser over .github/workflows, the action metadata client that resolves `uses:` refs against the GitHub API, branch protection and ruleset reads, and the intermediate-representation builder the Rego policies evaluate.
|
Package github is the GitHub provider: the workflow parser over .github/workflows, the action metadata client that resolves `uses:` refs against the GitHub API, branch protection and ruleset reads, and the intermediate-representation builder the Rego policies evaluate. |
|
Package gitlab is the GitLab provider: the API clients (REST and GraphQL), the data collections over a project (CI configuration and its includes, images, branch protection, approvals, CI/CD variables, security policy), the intermediate-representation builder those collections feed, and the merge-request comment and badge writers.
|
Package gitlab is the GitLab provider: the API clients (REST and GraphQL), the data collections over a project (CI configuration and its includes, images, branch protection, approvals, CI/CD variables, security policy), the intermediate-representation builder those collections feed, and the merge-request comment and badge writers. |
|
internal
|
|
|
cidigest
Package cidigest computes the CI config content digest the platform and the CLI compare to decide whether a branch may reuse the platform snapshot's resolved config: a content-keyed (not branch-keyed) identity for a project's CI config, made of the root file plus every LOCAL include statically reachable from it.
|
Package cidigest computes the CI config content digest the platform and the CLI compare to decide whether a branch may reuse the platform snapshot's resolved config: a content-keyed (not branch-keyed) identity for a project's CI config, made of the root file plus every LOCAL include statically reachable from it. |
|
engine/opa
Package opa hosts the Rego engine: it compiles the embedded policies, evaluates them over the intermediate representation and the projected configuration, and returns findings with their source locations.
|
Package opa hosts the Rego engine: it compiles the embedded policies, evaluates them over the intermediate representation and the projected configuration, and returns findings with their source locations. |
|
expr
Package expr evaluates GitHub Actions style `if:` conditions under three-valued logic.
|
Package expr evaluates GitHub Actions style `if:` conditions under three-valued logic. |
|
ir
Package ir is the provider-neutral intermediate representation of a pipeline: jobs, images, includes, branches, variables and settings in the one shape every Rego policy reads, built by the gitlab and github packages.
|
Package ir is the provider-neutral intermediate representation of a pipeline: jobs, images, includes, branches, variables and settings in the one shape every Rego policy reads, built by the gitlab and github packages. |
|
platform
Package platform is the CLI side of the platform link: the /context read that a linked run starts from (policies, snapshot lanes, dismissals), the run context that records what the platform served, and the HTTP client with its OIDC token exchange.
|
Package platform is the CLI side of the platform link: the /context read that a linked run starts from (policies, snapshot lanes, dismissals), the run context that records what the platform served, and the HTTP client with its OIDC token exchange. |
|
runcache
Package runcache keeps the JSON report of the last analysis of each project in the user cache directory, so a later command can read it back without running the analysis again.
|
Package runcache keeps the JSON report of the last analysis of each project in the user cache directory, so a later command can read it back without running the analysis again. |
|
runners
This file names the command-line tools GitHub's own hosted runner images ship by default, per image: a download a workflow only reaches when that tool is absent (a `command -v X ||` guard and the like) never runs at all on a runner where X is already on PATH.
|
This file names the command-line tools GitHub's own hosted runner images ship by default, per image: a download a workflow only reaches when that tool is absent (a `command -v X ||` guard and the like) never runs at all on a runner where X is already on PATH. |
|
testsupport/pipelines
Package pipelines builds ir.NormalizedPipeline values from CI files for tests, so the controls' tests, the situation tests and the control package's corpus share one reading of the YAML instead of three copies.
|
Package pipelines builds ir.NormalizedPipeline values from CI files for tests, so the controls' tests, the situation tests and the control package's corpus share one reading of the YAML instead of three copies. |
|
Package pbom generates the Pipeline Bill of Materials: the CycloneDX and native documents that inventory a pipeline's includes, components, images and actions together with their compliance verdicts.
|
Package pbom generates the Pipeline Bill of Materials: the CycloneDX and native documents that inventory a pipeline's includes, components, images and actions together with their compliance verdicts. |
|
Package policies embeds the Rego policies, one file per control, that the engine evaluates over the intermediate representation.
|
Package policies embeds the Rego policies, one file per control, that the engine evaluates over the intermediate representation. |
|
lib
Package lib embeds the Rego library every policy module is compiled with (monorepo spec 2026-10-16 section 5: one shared provenance helper).
|
Package lib embeds the Rego library every policy module is compiled with (monorepo spec 2026-10-16 section 5: one shared provenance helper). |
|
situation
Package situation embeds the Rego module that derives per-job situation facts (triggers, privilege, impact) from the normalized pipeline.
|
Package situation embeds the Rego module that derives per-job situation facts (triggers, privilege, impact) from the normalized pipeline. |
|
Package provider is the seam between the command line and the two analysis paths: one Provider implementation per git host (GitLab, GitHub) answers how to run the analysis, compute compliance, write the PBOM and perform the post-analysis actions, so the cmd package never branches on the provider name itself.
|
Package provider is the seam between the command line and the two analysis paths: one Provider implementation per git host (GitLab, GitHub) answers how to run the analysis, compute compliance, write the PBOM and perform the post-analysis actions, so the cmd package never branches on the provider name itself. |
|
Package utils holds the small provider-neutral helpers shared across the CLI: git remote detection and parsing, bounded file reads, FNV hashing, and container image reference normalization.
|
Package utils holds the small provider-neutral helpers shared across the CLI: git remote detection and parsing, bounded file reads, FNV hashing, and container image reference normalization. |
Click to show internal directories.
Click to hide internal directories.