mbox

[yocto-autobuilder-helper,v2,00/10] Implement 'containers' jobs

Message ID cover.1780354513.git.tim.orling@konsulko.com
State New
Headers show

Pull-request

https://git.yoctoproject.org/yocto-autobuilder-helper contrib/timo/containers-upstream-v2

Message

Tim Orling June 1, 2026, 11:17 p.m. UTC
From: Tim Orling <tim.orling@konsulko.com>

This series contains the 'yocto-autobuilder-helper' patches to enable:
* building, testing and publishing of 'vcontainer-tarball'
  - the tarball is checked to see if a newer version exists and if so
    extracts the new version before testing
  - vcontainer-tests job
* building and pushing containers from:
  - meta-virtualization
* containers are pushed when the push_containers boolean is set in the
  AutoBuilder UI
  - regstries are set with CONTAINER_REGISTRIES variable
* added getconfigdict() to scripts/utils to allow container names to mapped
  from recipe name to a more commonly used upstream container name (e.g.
  app-container-python -> python)
* authentication uses local user credentials (e.g. ~/.docker/config.json
  or .../auth.json for podman)
* containers are tagged with PV_MAJOR, PV_MAJOR.PV_MINOR, DISTRO_CODENAME
  and yocto-x.y release (yocto-x.y.z for release builds).

Additional features, such as container signing and attaching SLSA provenance
attestations will come in a future series, once this initial functionality
is agreed upon an stable.

Changes in v2:
* Simplify by  merging vdkr-tests and vpdmn-tests into vcontainer-tests
* Simplify by building containers from meta-virtualization:
- Depends on resolution of: https://lists.yoctoproject.org/g/meta-virtualization/message/9826
* Workaround for recent (since Friday May 29, 2026) errors:
  Error: reading blob sha256:<hash>: file integrity checksum failed for "<file>"
  - This is probably related to either sstate changes or recent changes in vcontainer-common...


The following changes since commit b98a54a334d15179673207169cab00c1385bab2a:

  config.json: Drop qemuarm testing from meta-virtualization (2026-05-31 18:18:44 +0100)

are available in the Git repository at:

  https://git.yoctoproject.org/yocto-autobuilder-helper contrib/timo/containers-upstream-v2
  https://git.yoctoproject.org/yocto-autobuilder-helper/log/?h=contrib/timo/containers-upstream-v2

for you to fetch changes up to aff1838ffcfb3e4c2aa1fe455dc0f74f87effdf6:

  config.json: add 'containers-library' build job (2026-06-01 14:55:21 -0700)

----------------------------------------------------------------

Tim Orling (10):
  scripts/utils: fix stale extraction dir when tarball is updated
  scripts/utils: warn and force re-download for HTTPS sources without
    SHA256
  config.json: add sha256sum for BUILDTOOLS URLs
  scripts/utils: add getconfigdict() for dict-type config values
  scripts: add vcontainer-tarball setup, integration, and publishing
  config.json: add vcontainer-tarball build target
  scripts: add run-vcontainer-tests for meta-virtualization
  scripts: add container registry push, auth, tagging, runtime selection
  scripts/run-config: push_containers workaround
  config.json: add 'containers-library' build job

 config.json                  | 129 ++++++++++++++++++++++++++-
 scripts/publish-artefacts    |   5 ++
 scripts/run-config           | 150 ++++++++++++++++++++++++++++++++
 scripts/run-vcontainer-tests | 164 +++++++++++++++++++++++++++++++++++
 scripts/shared-repo-unpack   |   1 +
 scripts/utils.py             | 109 +++++++++++++++++------
 6 files changed, 527 insertions(+), 31 deletions(-)
 create mode 100755 scripts/run-vcontainer-tests