Skip to content

Add oven: a local build, test, validate, and scan environment #726

Description

@bschwedler

A contributor cannot build, test, validate, and scan a product image on a local computer today. Each task needs its own tool, and each tool exists only as a step inside GitHub Actions:

  • goss and dgoss
  • hadolint
  • wizcli
  • trivy
  • oras
  • Docker Buildx

There is no single, repeatable way to install all of these tools on one computer.

The proposed container holds all of these tools. Its name is "the oven".

The oven uses Docker-outside-of-Docker. With this method, the oven sends commands to the host's own Docker daemon. The oven does not run a second daemon inside itself.

A just oven command builds the oven if it is not current, then starts it. This command mounts each sibling product repository at the same path inside the oven and on the host. As a result, bakery build and dgoss run work the same way inside the oven as they do on the host.

Metadata

Metadata

Assignees

No one assigned

    Labels

    dockerRelated to container images we producedocker/toolsRelated to container build/test toolsenhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions