Skip to content

Commit 3dd6a3a

Browse files
authored
ROX-34386: Add image labels (#162)
1 parent 0b298ff commit 3dd6a3a

4 files changed

Lines changed: 98 additions & 1 deletion

File tree

.tekton/acs-mcp-server-pull-request.yaml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,10 @@ spec:
5454
value: '0'
5555
- name: clone-fetch-tags
5656
value: 'true'
57+
- name: extra-labels
58+
value:
59+
# X.Y in the cpe label must be adjusted for every version stream.
60+
- "cpe=cpe:/a:redhat:agentic_cluster_security_suite:0.2::el9"
5761

5862
pipelineRef:
5963
name: basic-component-pipeline

.tekton/acs-mcp-server-push.yaml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,10 @@ spec:
6868
- linux/arm64
6969
- linux/ppc64le
7070
- linux/s390x
71+
- name: extra-labels
72+
value:
73+
# X.Y in the cpe label must be adjusted for every version stream.
74+
- "cpe=cpe:/a:redhat:agentic_cluster_security_suite:0.2::el9"
7175

7276
pipelineRef:
7377
name: basic-component-pipeline

.tekton/basic-component-pipeline.yaml

Lines changed: 72 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -158,6 +158,73 @@ spec:
158158
workspaces:
159159
- name: basic-auth
160160
workspace: git-auth
161+
162+
- name: determine-version
163+
params:
164+
- name: SOURCE_ARTIFACT
165+
value: $(tasks.clone-repository.results.SOURCE_ARTIFACT)
166+
runAfter:
167+
- clone-repository
168+
taskSpec:
169+
params:
170+
- name: SOURCE_ARTIFACT
171+
type: string
172+
- name: TRUSTED_ARTIFACT_IMAGE
173+
type: string
174+
default: "quay.io/redhat-appstudio/build-trusted-artifacts:latest@sha256:9b180776a41d9a22a1c51539f1647c60defbbd55b44bbebdd4130e33512d8b0d"
175+
- name: UBI_MINIMAL_IMAGE
176+
type: string
177+
default: "registry.access.redhat.com/ubi9/ubi-minimal:latest@sha256:2e8edce823a48e51858f1fad3ff4cbf6875ce8a3f86b9eecf298bc2050c8652a"
178+
results:
179+
- name: VERSION
180+
description: Version string derived from git tags.
181+
volumes:
182+
- name: workdir
183+
emptyDir: {}
184+
stepTemplate:
185+
volumeMounts:
186+
- mountPath: /var/workdir
187+
name: workdir
188+
computeResources:
189+
requests:
190+
cpu: 100m
191+
memory: 256Mi
192+
limits:
193+
memory: 512Mi
194+
steps:
195+
- name: use-trusted-artifact
196+
image: $(params.TRUSTED_ARTIFACT_IMAGE)
197+
args:
198+
- use
199+
- $(params.SOURCE_ARTIFACT)=/var/workdir/source
200+
- name: determine-version
201+
image: $(params.UBI_MINIMAL_IMAGE)
202+
workingDir: /var/workdir/source
203+
script: |
204+
#!/usr/bin/env bash
205+
set -euo pipefail
206+
microdnf install -y git-core
207+
VERSION=$(git describe --tags --always)
208+
echo "Determined version: ${VERSION}" >&2
209+
echo -n "${VERSION}" | tee "$(results.VERSION.path)"
210+
211+
- name: generate-labels
212+
params:
213+
- name: label-templates
214+
value:
215+
- release=$ACTUAL_DATE_EPOCH
216+
runAfter:
217+
- clone-repository
218+
taskRef:
219+
params:
220+
- name: name
221+
value: generate-labels
222+
- name: bundle
223+
value: quay.io/konflux-ci/tekton-catalog/task-generate-labels:0.1@sha256:d4ae1177fc2df0c07089bc30406ce75761cb7de21f361b254bf4dce8a5537e48
224+
- name: kind
225+
value: task
226+
resolver: bundles
227+
161228
- name: prefetch-dependencies
162229
params:
163230
- name: input
@@ -211,6 +278,7 @@ spec:
211278
- name: BUILD_ARGS
212279
value:
213280
- $(params.build-args[*])
281+
- VERSION=$(tasks.determine-version.results.VERSION)
214282
- name: BUILD_ARGS_FILE
215283
value: $(params.build-args-file)
216284
- name: PRIVILEGED_NESTED
@@ -220,7 +288,9 @@ spec:
220288
- name: BUILDAH_FORMAT
221289
value: $(params.buildah-format)
222290
- name: LABELS
223-
value: ["$(params.extra-labels[*])"]
291+
value:
292+
- $(tasks.generate-labels.results.labels[*])
293+
- $(params.extra-labels[*])
224294
- name: BUILD_TIMESTAMP
225295
value: "$(tasks.clone-repository.results.commit-timestamp)"
226296
- name: IMAGE_APPEND_PLATFORM
@@ -470,6 +540,7 @@ spec:
470540
- name: BUILD_ARGS
471541
value:
472542
- $(params.build-args[*])
543+
- VERSION=$(tasks.determine-version.results.VERSION)
473544
- name: BUILD_ARGS_FILE
474545
value: $(params.build-args-file)
475546
- name: SOURCE_ARTIFACT

konflux.Dockerfile

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,24 @@ RUN dnf install -y \
5858
# Stage 4: Runtime - Minimal runtime image
5959
FROM ubi-micro-base
6060

61+
# Build arguments for labels
62+
ARG VERSION=dev
63+
64+
# Define labels
65+
LABEL \
66+
com.redhat.component="agentic-cluster-security-suite-acs-mcp-server-container" \
67+
com.redhat.license_terms="https://www.redhat.com/agreements" \
68+
description="The ACS MCP Server" \
69+
io.k8s.description="The ACS MCP Server" \
70+
io.k8s.display-name="acs-mcp-server" \
71+
io.openshift.tags="acs-mcp-server" \
72+
maintainer="Red Hat, Inc." \
73+
name="agentic-cluster-security-suite-tech-preview/acs-mcp-server-rhel9" \
74+
source-location="https://github.com/stackrox/stackrox-mcp" \
75+
summary="The ACS MCP Server" \
76+
version="${VERSION}" \
77+
release="1"
78+
6179
# Set default environment variables
6280
ENV LOG_LEVEL=INFO
6381

0 commit comments

Comments
 (0)