Skip to content

build: add OCI version labels to service images (PR-3, Theme A) - #41

Merged
jmservera merged 3 commits into
mainfrom
release-packaging/pr-3-oci-image-labels
Jul 27, 2026
Merged

build: add OCI version labels to service images (PR-3, Theme A)#41
jmservera merged 3 commits into
mainfrom
release-packaging/pr-3-oci-image-labels

Conversation

@jmservera

Copy link
Copy Markdown
Owner

Part of the PRD 004 Release, Packaging & Distribution epic (Wave 1, PR-3).

Summary

Adds OCI image-provenance labels to all 8 built service images so published images carry version metadata.

  • Add ARG UBEROS_VERSION=dev + org.opencontainers.image.version|title|source labels to ros, gazebo, turtlesim, editor, frontend, gzweb-client, proxy, control.
  • version defaults to dev when the build-arg is unset; the release pipeline (PR-10) will pass the real version.
  • Multi-stage frontend and gzweb-client label the final serve stage so the label ships on the runtime image.

Requirements

  • FR-A5 (image-label part).

Validation

  • Real build of the control image (no build-arg): docker inspect returns version=dev, title=uberos-control, source=....
  • docker buildx build --call=check clean on the other 7 (one pre-existing, unrelated proxy warning on ENV UBEROS_AUTH).

Generated by Copilot (RPI Agent). Draft pending review.

- add ARG UBEROS_VERSION=dev + org.opencontainers.image.* labels
- cover all 8 built services; version defaults to dev
- multi-stage frontend/gzweb-client label the final serve stage

🏷️ - Generated by Copilot
@jmservera
jmservera marked this pull request as ready for review July 27, 2026 07:31
Copilot AI review requested due to automatic review settings July 27, 2026 07:31

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR adds OCI image provenance labels across the UbeROS service images so published containers carry version metadata (FR-A5), with UBEROS_VERSION defaulting to dev for local builds and intended to be overridden by the release pipeline.

Changes:

  • Add ARG UBEROS_VERSION=dev and OCI labels (org.opencontainers.image.version, title, source) to multiple service Dockerfiles.
  • Ensure multi-stage images (frontend and gzweb client) apply labels to the final runtime stage so the shipped image is labeled.

Reviewed changes

Copilot reviewed 8 out of 8 changed files in this pull request and generated 8 comments.

Show a summary per file
File Description
services/ros/Dockerfile Adds UBEROS_VERSION build arg + OCI labels to the ros base service image.
services/gazebo/Dockerfile Adds UBEROS_VERSION build arg + OCI labels to the gazebo service image.
services/turtlesim/Dockerfile Adds UBEROS_VERSION build arg + OCI labels to the turtlesim service image.
services/editor/Dockerfile Adds UBEROS_VERSION build arg + OCI labels to the editor service image.
services/frontend/Dockerfile Adds OCI labels to the final nginx runtime stage of the frontend image.
services/gazebo/client/Dockerfile Adds OCI labels to the final nginx runtime stage of the gzweb-client image.
services/proxy/Dockerfile Adds UBEROS_VERSION build arg + OCI labels to the proxy service image.
services/control/Dockerfile Adds UBEROS_VERSION build arg + OCI labels to the control service image.

Comment thread services/turtlesim/Dockerfile
Comment thread services/ros/Dockerfile
Comment thread services/proxy/Dockerfile
Comment thread services/gazebo/Dockerfile
Comment thread services/gazebo/client/Dockerfile
Comment thread services/frontend/Dockerfile
Comment thread services/editor/Dockerfile
Comment thread services/control/Dockerfile
Copilot AI review requested due to automatic review settings July 27, 2026 07:42

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 8 out of 8 changed files in this pull request and generated no new comments.

Comments suppressed due to low confidence (1)

services/ros/Dockerfile:15

  • The comment references docs/VERSIONING.md for FR-A5 / OCI label behavior, but that doc doesn’t mention FR-A5, UBEROS_VERSION, or OCI labels. The FR-A5 definition (including org.opencontainers.image.version) is in docs/prds/004-uberos-release-packaging.md. Consider updating this reference (and the identical block in the other Dockerfiles touched by this PR) so readers land on the correct requirement spec.
# OCI provenance labels. UBEROS_VERSION defaults to `dev` for local builds and
# is overridden at release time (FR-A5). See docs/VERSIONING.md.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 8 out of 8 changed files in this pull request and generated no new comments.

@jmservera
jmservera merged commit 27751ba into main Jul 27, 2026
6 checks passed
@jmservera
jmservera deleted the release-packaging/pr-3-oci-image-labels branch July 27, 2026 07:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants