From 92c5968c2682b513dfa94e8ed9ad2a7cf28fced1 Mon Sep 17 00:00:00 2001 From: Jeff Cantrill Date: Mon, 26 Oct 2026 16:18:46 -0400 Subject: [PATCH] openshift-logging: Add build for CLO 6.7 branch Create the release-6.7 CI configuration for cluster-logging-operator from the 6.6 configuration (promotion to the 6.7 imagestream, e2e using LOKI_OPERATOR_CHANNEL=stable-6.7) and bump the master promotion/mirroring from 6.7 to 6.8. Co-Authored-By: Claude Code --- ...shift-cluster-logging-operator-master.yaml | 2 +- ...-cluster-logging-operator-release-6.7.yaml | 164 ++++++ ...ging-operator-release-6.7-postsubmits.yaml | 65 +++ ...gging-operator-release-6.7-presubmits.yaml | 465 ++++++++++++++++++ 4 files changed, 695 insertions(+), 1 deletion(-) create mode 100644 ci-operator/config/openshift/cluster-logging-operator/openshift-cluster-logging-operator-release-6.7.yaml create mode 100644 ci-operator/jobs/openshift/cluster-logging-operator/openshift-cluster-logging-operator-release-6.7-postsubmits.yaml create mode 100644 ci-operator/jobs/openshift/cluster-logging-operator/openshift-cluster-logging-operator-release-6.7-presubmits.yaml diff --git a/ci-operator/config/openshift/cluster-logging-operator/openshift-cluster-logging-operator-master.yaml b/ci-operator/config/openshift/cluster-logging-operator/openshift-cluster-logging-operator-master.yaml index 8afbcc055d83..c5cb127d398d 100644 --- a/ci-operator/config/openshift/cluster-logging-operator/openshift-cluster-logging-operator-master.yaml +++ b/ci-operator/config/openshift/cluster-logging-operator/openshift-cluster-logging-operator-master.yaml @@ -77,7 +77,7 @@ promotion: namespace: logging - additional_images: cluster-logging-operator-bundle: cluster-logging-operator-bundle - name: "6.7" + name: "6.8" namespace: logging releases: latest: diff --git a/ci-operator/config/openshift/cluster-logging-operator/openshift-cluster-logging-operator-release-6.7.yaml b/ci-operator/config/openshift/cluster-logging-operator/openshift-cluster-logging-operator-release-6.7.yaml new file mode 100644 index 000000000000..847e62b40adf --- /dev/null +++ b/ci-operator/config/openshift/cluster-logging-operator/openshift-cluster-logging-operator-release-6.7.yaml @@ -0,0 +1,164 @@ +base_images: + log-file-metric-exporter: + name: 6.y + namespace: logging + tag: log-file-metric-exporter + logging-eventrouter: + name: 6.y + namespace: logging + tag: logging-eventrouter + logging-vector: + name: vector + namespace: logging + tag: v0.54.0 + loki-operator: + name: 5.y + namespace: logging + tag: loki-operator + loki-operator-src: + name: 5.y + namespace: logging + tag: loki-operator-src + ubi9-minimal: + name: ubi-minimal + namespace: ocp + tag: "9" +build_root: + image_stream_tag: + name: builder + namespace: ocp + tag: rhel-9-golang-1.26-openshift-4.23 +images: + items: + - dockerfile_path: Dockerfile + to: cluster-logging-operator + - dockerfile_path: olm_deploy/operatorregistry/Dockerfile + from: ubi9-minimal + to: cluster-logging-operator-registry + - dockerfile_literal: | + FROM src + COPY --from=loki-operator-src /go/src/github.com/openshift/loki/operator /go/src/github.com/openshift/loki/operator + RUN dnf install gettext -y + RUN curl -LO "https://dl.k8s.io/release/v1.35.0/bin/linux/amd64/kubectl" \ + && chmod 755 kubectl && mv kubectl /go/bin + RUN mkdir -p /go/src/github.com/openshift/cluster-logging-operator/bin/ + RUN go mod download + RUN make tools + RUN chmod -R 777 /go + RUN make bin/functional-benchmarker + from: src + inputs: + loki-operator-src: + as: + - loki-operator-src + to: cluster-logging-operator-e2e +operator: + bundles: + - as: cluster-logging-operator-bundle + dockerfile_path: bundle.Dockerfile + substitutions: + - pullspec: quay.io/openshift-logging/cluster-logging-operator.* + with: pipeline:cluster-logging-operator + - pullspec: quay.io/openshift-logging/vector.* + with: pipeline:logging-vector + - pullspec: quay.io/openshift-logging/log-file-metric-exporter.* + with: pipeline:log-file-metric-exporter +promotion: + to: + - additional_images: + cluster-logging-operator-bundle: cluster-logging-operator-bundle + name: "6.7" + namespace: logging +releases: + latest: + release: + channel: stable + version: "4.22" +resources: + '*': + requests: + cpu: 200m + memory: 200Mi +tests: +- as: lint + commands: make lint + container: + from: src +- as: unit + commands: ARTIFACTS_DIR=${ARTIFACT_DIR} make coverage + container: + from: src +- as: e2e-target + cluster_claim: + architecture: amd64 + cloud: aws + labels: + region: us-east-2 + owner: obs-logging + product: ocp + timeout: 1h0m0s + version: "4.22" + skip_if_only_changed: ^docs/|^config/docs|\.adoc$|\.md$|^(?:.*/)?(?:\.gitignore|OWNERS|PROJECT|LICENSE) + steps: + test: + - as: test + cli: latest + commands: export GOFLAGS=-mod=mod ; export PATH=/go/bin:$PATH ; FAKE_HOME_DIR=/tmp/home + LOG_DIR=${ARTIFACT_DIR}/logging-logs ARTIFACT_DIR=${ARTIFACT_DIR}/logging-artifacts + LOKI_OPERATOR_CHANNEL=stable-6.6 make test-e2e IMAGE_TLS_SCANNER=quay-proxy.ci.openshift.org/openshift/ci:tls-scanner_tls-scanner_tls-scanner-tool + dependencies: + - env: IMAGE_CLUSTER_LOGGING_OPERATOR_REGISTRY + name: pipeline:cluster-logging-operator-registry + - env: IMAGE_CLUSTER_LOGGING_OPERATOR + name: pipeline:cluster-logging-operator + - env: IMAGE_LOGGING_VECTOR + name: pipeline:logging-vector + - env: IMAGE_LOGGING_EVENTROUTER + name: pipeline:logging-eventrouter + - env: IMAGE_LOG_FILE_METRIC_EXPORTER + name: pipeline:log-file-metric-exporter + - env: IMAGE_LOKI_OPERATOR + name: pipeline:loki-operator + from: pipeline:cluster-logging-operator-e2e + resources: + requests: + cpu: 100m + timeout: 3h0m0s + workflow: generic-claim +- as: functional-target + cluster_claim: + architecture: amd64 + cloud: aws + labels: + region: us-east-2 + owner: obs-logging + product: ocp + timeout: 1h0m0s + version: "4.22" + skip_if_only_changed: ^docs/|^config/docs|\.adoc$|\.md$|^(?:.*/)?(?:\.gitignore|OWNERS|PROJECT|LICENSE) + steps: + test: + - as: test + cli: latest + commands: FAKE_HOME_DIR=/tmp/home LOG_DIR=${ARTIFACT_DIR}/logging-logs make + test-functional ARTIFACT_DIR=${ARTIFACT_DIR} + dependencies: + - env: IMAGE_CLUSTER_LOGGING_OPERATOR_REGISTRY + name: pipeline:cluster-logging-operator-registry + - env: IMAGE_CLUSTER_LOGGING_OPERATOR + name: pipeline:cluster-logging-operator + - env: IMAGE_LOGGING_VECTOR + name: pipeline:logging-vector + - env: IMAGE_LOGGING_EVENTROUTER + name: pipeline:logging-eventrouter + - env: IMAGE_LOG_FILE_METRIC_EXPORTER + name: pipeline:log-file-metric-exporter + from: pipeline:cluster-logging-operator-e2e + resources: + requests: + cpu: 100m + workflow: generic-claim +zz_generated_metadata: + branch: release-6.7 + org: openshift + repo: cluster-logging-operator diff --git a/ci-operator/jobs/openshift/cluster-logging-operator/openshift-cluster-logging-operator-release-6.7-postsubmits.yaml b/ci-operator/jobs/openshift/cluster-logging-operator/openshift-cluster-logging-operator-release-6.7-postsubmits.yaml new file mode 100644 index 000000000000..3cb4f4bf683e --- /dev/null +++ b/ci-operator/jobs/openshift/cluster-logging-operator/openshift-cluster-logging-operator-release-6.7-postsubmits.yaml @@ -0,0 +1,65 @@ +postsubmits: + openshift/cluster-logging-operator: + - agent: kubernetes + always_run: true + branches: + - ^release-6\.7$ + cluster: build01 + decorate: true + decoration_config: + sparse_checkout_files: + - Dockerfile + - olm_deploy/operatorregistry/Dockerfile + labels: + ci-operator.openshift.io/is-promotion: "true" + ci.openshift.io/generator: prowgen + max_concurrency: 1 + name: branch-ci-openshift-cluster-logging-operator-release-6.7-images + spec: + containers: + - args: + - --gcs-upload-secret=/secrets/gcs/service-account.json + - --image-import-pull-secret=/etc/pull-secret/.dockerconfigjson + - --image-mirror-push-secret=/etc/push-secret/.dockerconfigjson + - --promote + - --report-credentials-file=/etc/report/credentials + - --target=[images] + - --target=cluster-logging-operator-bundle + command: + - ci-operator + image: quay-proxy.ci.openshift.org/openshift/ci:ci_ci-operator_latest + imagePullPolicy: Always + name: "" + resources: + requests: + cpu: 10m + volumeMounts: + - mountPath: /secrets/gcs + name: gcs-credentials + readOnly: true + - mountPath: /secrets/manifest-tool + name: manifest-tool-local-pusher + readOnly: true + - mountPath: /etc/pull-secret + name: pull-secret + readOnly: true + - mountPath: /etc/push-secret + name: push-secret + readOnly: true + - mountPath: /etc/report + name: result-aggregator + readOnly: true + serviceAccountName: ci-operator + volumes: + - name: manifest-tool-local-pusher + secret: + secretName: manifest-tool-local-pusher + - name: pull-secret + secret: + secretName: registry-pull-credentials + - name: push-secret + secret: + secretName: registry-push-credentials-ci-central + - name: result-aggregator + secret: + secretName: result-aggregator diff --git a/ci-operator/jobs/openshift/cluster-logging-operator/openshift-cluster-logging-operator-release-6.7-presubmits.yaml b/ci-operator/jobs/openshift/cluster-logging-operator/openshift-cluster-logging-operator-release-6.7-presubmits.yaml new file mode 100644 index 000000000000..6286cc736aa4 --- /dev/null +++ b/ci-operator/jobs/openshift/cluster-logging-operator/openshift-cluster-logging-operator-release-6.7-presubmits.yaml @@ -0,0 +1,465 @@ +presubmits: + openshift/cluster-logging-operator: + - agent: kubernetes + always_run: true + branches: + - ^release-6\.7$ + - ^release-6\.7- + cluster: build01 + context: ci/prow/ci-index-cluster-logging-operator-bundle + decorate: true + decoration_config: + sparse_checkout_files: + - Dockerfile + - olm_deploy/operatorregistry/Dockerfile + labels: + ci.openshift.io/generator: prowgen + pj-rehearse.openshift.io/can-be-rehearsed: "true" + name: pull-ci-openshift-cluster-logging-operator-release-6.7-ci-index-cluster-logging-operator-bundle + rerun_command: /test ci-index-cluster-logging-operator-bundle + spec: + containers: + - args: + - --gcs-upload-secret=/secrets/gcs/service-account.json + - --image-import-pull-secret=/etc/pull-secret/.dockerconfigjson + - --report-credentials-file=/etc/report/credentials + - --target=ci-index-cluster-logging-operator-bundle + command: + - ci-operator + image: quay-proxy.ci.openshift.org/openshift/ci:ci_ci-operator_latest + imagePullPolicy: Always + name: "" + resources: + requests: + cpu: 10m + volumeMounts: + - mountPath: /secrets/gcs + name: gcs-credentials + readOnly: true + - mountPath: /secrets/manifest-tool + name: manifest-tool-local-pusher + readOnly: true + - mountPath: /etc/pull-secret + name: pull-secret + readOnly: true + - mountPath: /etc/report + name: result-aggregator + readOnly: true + serviceAccountName: ci-operator + volumes: + - name: manifest-tool-local-pusher + secret: + secretName: manifest-tool-local-pusher + - name: pull-secret + secret: + secretName: registry-pull-credentials + - name: result-aggregator + secret: + secretName: result-aggregator + trigger: (?m)^/test( | .* )ci-index-cluster-logging-operator-bundle,?($|\s.*) + - agent: kubernetes + always_run: false + branches: + - ^release-6\.7$ + - ^release-6\.7- + cluster: build01 + context: ci/prow/e2e-target + decorate: true + decoration_config: + sparse_checkout_files: + - Dockerfile + - olm_deploy/operatorregistry/Dockerfile + labels: + ci.openshift.io/generator: prowgen + pj-rehearse.openshift.io/can-be-rehearsed: "true" + name: pull-ci-openshift-cluster-logging-operator-release-6.7-e2e-target + rerun_command: /test e2e-target + skip_if_only_changed: ^docs/|^config/docs|\.adoc$|\.md$|^(?:.*/)?(?:\.gitignore|OWNERS|PROJECT|LICENSE) + spec: + containers: + - args: + - --enable-secrets-store-csi-driver=true + - --gcs-upload-secret=/secrets/gcs/service-account.json + - --gsm-config=/etc/gsm-config/gsm-config.yaml + - --gsm-credentials-file=/etc/gsm-credentials/key.json + - --gsm-project-config=/etc/gsm-config/gsm-project-config.yaml + - --hive-kubeconfig=/secrets/hive-hive-credentials/kubeconfig + - --image-import-pull-secret=/etc/pull-secret/.dockerconfigjson + - --lease-server-credentials-file=/etc/boskos/credentials + - --report-credentials-file=/etc/report/credentials + - --secret-dir=/secrets/ci-pull-credentials + - --target=e2e-target + command: + - ci-operator + env: + - name: HTTP_SERVER_IP + valueFrom: + fieldRef: + fieldPath: status.podIP + image: quay-proxy.ci.openshift.org/openshift/ci:ci_ci-operator_latest + imagePullPolicy: Always + name: "" + ports: + - containerPort: 8080 + name: http + resources: + requests: + cpu: 10m + volumeMounts: + - mountPath: /etc/boskos + name: boskos + readOnly: true + - mountPath: /secrets/ci-pull-credentials + name: ci-pull-credentials + readOnly: true + - mountPath: /secrets/gcs + name: gcs-credentials + readOnly: true + - mountPath: /etc/gsm-config + name: gsm-config + readOnly: true + - mountPath: /etc/gsm-credentials + name: gsm-sa-key + readOnly: true + - mountPath: /secrets/hive-hive-credentials + name: hive-hive-credentials + readOnly: true + - mountPath: /secrets/manifest-tool + name: manifest-tool-local-pusher + readOnly: true + - mountPath: /etc/pull-secret + name: pull-secret + readOnly: true + - mountPath: /etc/report + name: result-aggregator + readOnly: true + serviceAccountName: ci-operator + volumes: + - name: boskos + secret: + items: + - key: credentials + path: credentials + secretName: boskos-credentials + - name: ci-pull-credentials + secret: + secretName: ci-pull-credentials + - configMap: + name: gsm-config + name: gsm-config + - csi: + driver: secrets-store.csi.k8s.io + readOnly: true + volumeAttributes: + secretProviderClass: ci-operator-sa-key-spc + name: gsm-sa-key + - name: hive-hive-credentials + secret: + secretName: hive-hive-credentials + - name: manifest-tool-local-pusher + secret: + secretName: manifest-tool-local-pusher + - name: pull-secret + secret: + secretName: registry-pull-credentials + - name: result-aggregator + secret: + secretName: result-aggregator + trigger: (?m)^/test( | .* )e2e-target,?($|\s.*) + - agent: kubernetes + always_run: false + branches: + - ^release-6\.7$ + - ^release-6\.7- + cluster: build01 + context: ci/prow/functional-target + decorate: true + decoration_config: + sparse_checkout_files: + - Dockerfile + - olm_deploy/operatorregistry/Dockerfile + labels: + ci.openshift.io/generator: prowgen + pj-rehearse.openshift.io/can-be-rehearsed: "true" + name: pull-ci-openshift-cluster-logging-operator-release-6.7-functional-target + rerun_command: /test functional-target + skip_if_only_changed: ^docs/|^config/docs|\.adoc$|\.md$|^(?:.*/)?(?:\.gitignore|OWNERS|PROJECT|LICENSE) + spec: + containers: + - args: + - --enable-secrets-store-csi-driver=true + - --gcs-upload-secret=/secrets/gcs/service-account.json + - --gsm-config=/etc/gsm-config/gsm-config.yaml + - --gsm-credentials-file=/etc/gsm-credentials/key.json + - --gsm-project-config=/etc/gsm-config/gsm-project-config.yaml + - --hive-kubeconfig=/secrets/hive-hive-credentials/kubeconfig + - --image-import-pull-secret=/etc/pull-secret/.dockerconfigjson + - --lease-server-credentials-file=/etc/boskos/credentials + - --report-credentials-file=/etc/report/credentials + - --secret-dir=/secrets/ci-pull-credentials + - --target=functional-target + command: + - ci-operator + env: + - name: HTTP_SERVER_IP + valueFrom: + fieldRef: + fieldPath: status.podIP + image: quay-proxy.ci.openshift.org/openshift/ci:ci_ci-operator_latest + imagePullPolicy: Always + name: "" + ports: + - containerPort: 8080 + name: http + resources: + requests: + cpu: 10m + volumeMounts: + - mountPath: /etc/boskos + name: boskos + readOnly: true + - mountPath: /secrets/ci-pull-credentials + name: ci-pull-credentials + readOnly: true + - mountPath: /secrets/gcs + name: gcs-credentials + readOnly: true + - mountPath: /etc/gsm-config + name: gsm-config + readOnly: true + - mountPath: /etc/gsm-credentials + name: gsm-sa-key + readOnly: true + - mountPath: /secrets/hive-hive-credentials + name: hive-hive-credentials + readOnly: true + - mountPath: /secrets/manifest-tool + name: manifest-tool-local-pusher + readOnly: true + - mountPath: /etc/pull-secret + name: pull-secret + readOnly: true + - mountPath: /etc/report + name: result-aggregator + readOnly: true + serviceAccountName: ci-operator + volumes: + - name: boskos + secret: + items: + - key: credentials + path: credentials + secretName: boskos-credentials + - name: ci-pull-credentials + secret: + secretName: ci-pull-credentials + - configMap: + name: gsm-config + name: gsm-config + - csi: + driver: secrets-store.csi.k8s.io + readOnly: true + volumeAttributes: + secretProviderClass: ci-operator-sa-key-spc + name: gsm-sa-key + - name: hive-hive-credentials + secret: + secretName: hive-hive-credentials + - name: manifest-tool-local-pusher + secret: + secretName: manifest-tool-local-pusher + - name: pull-secret + secret: + secretName: registry-pull-credentials + - name: result-aggregator + secret: + secretName: result-aggregator + trigger: (?m)^/test( | .* )functional-target,?($|\s.*) + - agent: kubernetes + always_run: true + branches: + - ^release-6\.7$ + - ^release-6\.7- + cluster: build01 + context: ci/prow/images + decorate: true + decoration_config: + sparse_checkout_files: + - Dockerfile + - olm_deploy/operatorregistry/Dockerfile + labels: + ci.openshift.io/generator: prowgen + pj-rehearse.openshift.io/can-be-rehearsed: "true" + name: pull-ci-openshift-cluster-logging-operator-release-6.7-images + rerun_command: /test images + spec: + containers: + - args: + - --gcs-upload-secret=/secrets/gcs/service-account.json + - --image-import-pull-secret=/etc/pull-secret/.dockerconfigjson + - --report-credentials-file=/etc/report/credentials + - --target=[images] + - --target=cluster-logging-operator-bundle + command: + - ci-operator + image: quay-proxy.ci.openshift.org/openshift/ci:ci_ci-operator_latest + imagePullPolicy: Always + name: "" + resources: + requests: + cpu: 10m + volumeMounts: + - mountPath: /secrets/gcs + name: gcs-credentials + readOnly: true + - mountPath: /secrets/manifest-tool + name: manifest-tool-local-pusher + readOnly: true + - mountPath: /etc/pull-secret + name: pull-secret + readOnly: true + - mountPath: /etc/report + name: result-aggregator + readOnly: true + serviceAccountName: ci-operator + volumes: + - name: manifest-tool-local-pusher + secret: + secretName: manifest-tool-local-pusher + - name: pull-secret + secret: + secretName: registry-pull-credentials + - name: result-aggregator + secret: + secretName: result-aggregator + trigger: (?m)^/test( | .* )images,?($|\s.*) + - agent: kubernetes + always_run: true + branches: + - ^release-6\.7$ + - ^release-6\.7- + cluster: build01 + context: ci/prow/lint + decorate: true + decoration_config: + sparse_checkout_files: + - Dockerfile + - olm_deploy/operatorregistry/Dockerfile + labels: + ci.openshift.io/generator: prowgen + pj-rehearse.openshift.io/can-be-rehearsed: "true" + name: pull-ci-openshift-cluster-logging-operator-release-6.7-lint + rerun_command: /test lint + spec: + containers: + - args: + - --gcs-upload-secret=/secrets/gcs/service-account.json + - --image-import-pull-secret=/etc/pull-secret/.dockerconfigjson + - --report-credentials-file=/etc/report/credentials + - --target=lint + command: + - ci-operator + env: + - name: HTTP_SERVER_IP + valueFrom: + fieldRef: + fieldPath: status.podIP + image: quay-proxy.ci.openshift.org/openshift/ci:ci_ci-operator_latest + imagePullPolicy: Always + name: "" + ports: + - containerPort: 8080 + name: http + resources: + requests: + cpu: 10m + volumeMounts: + - mountPath: /secrets/gcs + name: gcs-credentials + readOnly: true + - mountPath: /secrets/manifest-tool + name: manifest-tool-local-pusher + readOnly: true + - mountPath: /etc/pull-secret + name: pull-secret + readOnly: true + - mountPath: /etc/report + name: result-aggregator + readOnly: true + serviceAccountName: ci-operator + volumes: + - name: manifest-tool-local-pusher + secret: + secretName: manifest-tool-local-pusher + - name: pull-secret + secret: + secretName: registry-pull-credentials + - name: result-aggregator + secret: + secretName: result-aggregator + trigger: (?m)^/test( | .* )lint,?($|\s.*) + - agent: kubernetes + always_run: true + branches: + - ^release-6\.7$ + - ^release-6\.7- + cluster: build01 + context: ci/prow/unit + decorate: true + decoration_config: + sparse_checkout_files: + - Dockerfile + - olm_deploy/operatorregistry/Dockerfile + labels: + ci.openshift.io/generator: prowgen + pj-rehearse.openshift.io/can-be-rehearsed: "true" + name: pull-ci-openshift-cluster-logging-operator-release-6.7-unit + rerun_command: /test unit + spec: + containers: + - args: + - --gcs-upload-secret=/secrets/gcs/service-account.json + - --image-import-pull-secret=/etc/pull-secret/.dockerconfigjson + - --report-credentials-file=/etc/report/credentials + - --target=unit + command: + - ci-operator + env: + - name: HTTP_SERVER_IP + valueFrom: + fieldRef: + fieldPath: status.podIP + image: quay-proxy.ci.openshift.org/openshift/ci:ci_ci-operator_latest + imagePullPolicy: Always + name: "" + ports: + - containerPort: 8080 + name: http + resources: + requests: + cpu: 10m + volumeMounts: + - mountPath: /secrets/gcs + name: gcs-credentials + readOnly: true + - mountPath: /secrets/manifest-tool + name: manifest-tool-local-pusher + readOnly: true + - mountPath: /etc/pull-secret + name: pull-secret + readOnly: true + - mountPath: /etc/report + name: result-aggregator + readOnly: true + serviceAccountName: ci-operator + volumes: + - name: manifest-tool-local-pusher + secret: + secretName: manifest-tool-local-pusher + - name: pull-secret + secret: + secretName: registry-pull-credentials + - name: result-aggregator + secret: + secretName: result-aggregator + trigger: (?m)^/test( | .* )unit,?($|\s.*)