diff --git a/ci-operator/config/openshift/grafana-tempo-operator/openshift-grafana-tempo-operator-main__tempo-product-ocp-4.12-stage.yaml b/ci-operator/config/openshift/grafana-tempo-operator/openshift-grafana-tempo-operator-main__tempo-product-ocp-4.12-stage.yaml index 75ed4b1a69975..0e09514ecde31 100644 --- a/ci-operator/config/openshift/grafana-tempo-operator/openshift-grafana-tempo-operator-main__tempo-product-ocp-4.12-stage.yaml +++ b/ci-operator/config/openshift/grafana-tempo-operator/openshift-grafana-tempo-operator-main__tempo-product-ocp-4.12-stage.yaml @@ -42,8 +42,9 @@ tests: Job *{{.Spec.Job}}* ended with *{{.Status.State}}*. <{{.Status.URL}}|View logs> {{end}}' steps: - cluster_profile: gcp-observability + cluster_profile: aws-observability env: + BASE_DOMAIN: devobscluster.devcluster.openshift.com MULTISTAGE_PARAM_OVERRIDE_TEMPO_INDEX_IMAGE: brew.registry.redhat.io/rh-osbs/iib:1157117 MULTISTAGE_PARAM_OVERRIDE_TEMPO_TESTS_BRANCH: rhosdt-3.10 OPERATORS: | @@ -59,7 +60,7 @@ tests: - ref: distributed-tracing-install-tempo-konflux-catalogsource - ref: install-operators - ref: distributed-tracing-tests-tempo-stage - workflow: cucushift-installer-rehearse-gcp-ipi + workflow: cucushift-installer-rehearse-aws-ipi zz_generated_metadata: branch: main org: openshift diff --git a/ci-operator/config/openshift/grafana-tempo-operator/openshift-grafana-tempo-operator-main__tempo-product-ocp-4.20-downstream.yaml b/ci-operator/config/openshift/grafana-tempo-operator/openshift-grafana-tempo-operator-main__tempo-product-ocp-4.20-downstream.yaml index 872a4285272c1..7cd88f62b874c 100644 --- a/ci-operator/config/openshift/grafana-tempo-operator/openshift-grafana-tempo-operator-main__tempo-product-ocp-4.20-downstream.yaml +++ b/ci-operator/config/openshift/grafana-tempo-operator/openshift-grafana-tempo-operator-main__tempo-product-ocp-4.20-downstream.yaml @@ -3,6 +3,10 @@ base_images: name: "4.20" namespace: ocp tag: cli + upi-installer: + name: "4.20" + namespace: ocp + tag: upi-installer build_root: image_stream_tag: name: builder @@ -27,15 +31,6 @@ resources: memory: 200Mi tests: - as: tempo-downstream-tests - cluster_claim: - architecture: amd64 - cloud: aws - labels: - region: us-east-2 - owner: obs - product: ocp - timeout: 1h0m0s - version: "4.20" cron: 30 3 * * 1 reporter_config: channel: '#distributed-tracing-qe' @@ -48,7 +43,11 @@ tests: Job *{{.Spec.Job}}* ended with *{{.Status.State}}*. <{{.Status.URL}}|View logs> {{end}}' steps: + cluster_profile: azure-observability env: + BASE_DOMAIN: observability.azure.devcluster.openshift.com + COMPUTE_NODE_TYPE: Standard_D4s_v3 + CONTROL_PLANE_INSTANCE_TYPE: Standard_D8s_v3 OPERATORS: | [ {"name": "tempo-product", "source": "redhat-operators", "channel": "stable", "install_namespace": "openshift-tempo-operator","target_namespace": "", "operator_group": "openshift-tempo-operator"}, @@ -62,7 +61,7 @@ tests: - ref: install-operators - ref: distributed-tracing-tests-tempo-downstream - ref: distributed-tracing-tests-tracing-ui-integration - workflow: generic-claim + workflow: cucushift-installer-rehearse-azure-ipi zz_generated_metadata: branch: main org: openshift diff --git a/ci-operator/config/openshift/grafana-tempo-operator/openshift-grafana-tempo-operator-main__tempo-product-ocp-4.19-downstream.yaml b/ci-operator/config/openshift/grafana-tempo-operator/openshift-grafana-tempo-operator-main__tempo-product-ocp-4.22-downstream.yaml similarity index 86% rename from ci-operator/config/openshift/grafana-tempo-operator/openshift-grafana-tempo-operator-main__tempo-product-ocp-4.19-downstream.yaml rename to ci-operator/config/openshift/grafana-tempo-operator/openshift-grafana-tempo-operator-main__tempo-product-ocp-4.22-downstream.yaml index 772ded3667106..8c290b09cf191 100644 --- a/ci-operator/config/openshift/grafana-tempo-operator/openshift-grafana-tempo-operator-main__tempo-product-ocp-4.19-downstream.yaml +++ b/ci-operator/config/openshift/grafana-tempo-operator/openshift-grafana-tempo-operator-main__tempo-product-ocp-4.22-downstream.yaml @@ -1,10 +1,10 @@ base_images: cli: - name: "4.19" + name: "4.22" namespace: ocp tag: cli upi-installer: - name: "4.19" + name: "4.21" namespace: ocp tag: upi-installer build_root: @@ -23,7 +23,7 @@ releases: candidate: product: ocp stream: nightly - version: "4.19" + version: "4.22" resources: '*': requests: @@ -43,11 +43,9 @@ tests: Job *{{.Spec.Job}}* ended with *{{.Status.State}}*. <{{.Status.URL}}|View logs> {{end}}' steps: - cluster_profile: azure-observability + cluster_profile: aws-observability env: - BASE_DOMAIN: observability.azure.devcluster.openshift.com - COMPUTE_NODE_TYPE: Standard_D4s_v3 - CONTROL_PLANE_INSTANCE_TYPE: Standard_D8s_v3 + BASE_DOMAIN: devobscluster.devcluster.openshift.com OPERATORS: | [ {"name": "tempo-product", "source": "redhat-operators", "channel": "stable", "install_namespace": "openshift-tempo-operator","target_namespace": "", "operator_group": "openshift-tempo-operator"}, @@ -61,9 +59,9 @@ tests: - ref: install-operators - ref: distributed-tracing-tests-tempo-downstream - ref: distributed-tracing-tests-tracing-ui-integration - workflow: cucushift-installer-rehearse-azure-ipi + workflow: cucushift-installer-rehearse-aws-ipi zz_generated_metadata: branch: main org: openshift repo: grafana-tempo-operator - variant: tempo-product-ocp-4.19-downstream + variant: tempo-product-ocp-4.22-downstream diff --git a/ci-operator/config/openshift/grafana-tempo-operator/openshift-grafana-tempo-operator-main__upstream-ocp-4.22-amd64.yaml b/ci-operator/config/openshift/grafana-tempo-operator/openshift-grafana-tempo-operator-main__upstream-ocp-4.22-amd64.yaml index 2ff8e0145e7d8..8ff3275ad82ad 100644 --- a/ci-operator/config/openshift/grafana-tempo-operator/openshift-grafana-tempo-operator-main__upstream-ocp-4.22-amd64.yaml +++ b/ci-operator/config/openshift/grafana-tempo-operator/openshift-grafana-tempo-operator-main__upstream-ocp-4.22-amd64.yaml @@ -43,10 +43,13 @@ resources: memory: 200Mi tests: - as: tempo-upstream-tests + capabilities: + - intranet steps: - cluster_profile: gcp-observability + cluster_profile: equinix-ocp-metal-qe env: AGENT_SKILL: TEMPO + AUX_HOST: openshift-qe-metal-ci.arm.eng.rdu2.redhat.com OPERATORS: | [ {"name": "opentelemetry-product", "source": "redhat-operators", "channel": "stable", "install_namespace": "openshift-opentelemetry-operator", "target_namespaces": "", "operator_group": "openshift-opentelemetry-operator"}, @@ -56,11 +59,16 @@ tests: {"name": "lightspeed-operator", "source": "redhat-operators", "channel": "stable", "install_namespace": "openshift-lightspeed", "target_namespaces": "openshift-lightspeed", "operator_group": "openshift-lightspeed"}, {"name": "serverless-operator", "source": "redhat-operators", "channel": "stable", "install_namespace": "openshift-serverless", "target_namespaces": "", "operator_group": "openshift-serverless"} ] + RESERVE_BOOTSTRAP: "false" SKIP_TESTS: tests/e2e-openshift-object-stores/* + architecture: amd64 + masters: "3" + workers: "2" post: - ref: openshift-observability-qe-agent - - chain: cucushift-installer-rehearse-gcp-ipi-deprovision + - chain: baremetal-lab-post test: + - ref: ipi-install-rbac - as: install cli: latest commands: | @@ -77,7 +85,7 @@ tests: memory: 400Mi - ref: install-operators - ref: distributed-tracing-tests-tempo-upstream - workflow: cucushift-installer-rehearse-gcp-ipi + workflow: baremetal-lab-ipi zz_generated_metadata: branch: main org: openshift diff --git a/ci-operator/config/openshift/open-telemetry-opentelemetry-operator/openshift-open-telemetry-opentelemetry-operator-main__opentelemetry-product-ocp-4.12-stage.yaml b/ci-operator/config/openshift/open-telemetry-opentelemetry-operator/openshift-open-telemetry-opentelemetry-operator-main__opentelemetry-product-ocp-4.12-stage.yaml index f04ab5cb8c7b8..216f431565de3 100644 --- a/ci-operator/config/openshift/open-telemetry-opentelemetry-operator/openshift-open-telemetry-opentelemetry-operator-main__opentelemetry-product-ocp-4.12-stage.yaml +++ b/ci-operator/config/openshift/open-telemetry-opentelemetry-operator/openshift-open-telemetry-opentelemetry-operator-main__opentelemetry-product-ocp-4.12-stage.yaml @@ -42,8 +42,9 @@ tests: Job *{{.Spec.Job}}* ended with *{{.Status.State}}*. <{{.Status.URL}}|View logs> {{end}}' steps: - cluster_profile: gcp-observability + cluster_profile: aws-observability env: + BASE_DOMAIN: devobscluster.devcluster.openshift.com MULTISTAGE_PARAM_OVERRIDE_OTEL_INDEX_IMAGE: brew.registry.redhat.io/rh-osbs/iib:1155563 MULTISTAGE_PARAM_OVERRIDE_OTEL_TESTS_BRANCH: rhosdt-3.10 OPERATORS: | @@ -59,7 +60,7 @@ tests: - ref: distributed-tracing-install-otel-konflux-catalogsource - ref: install-operators - ref: distributed-tracing-tests-opentelemetry-stage - workflow: cucushift-installer-rehearse-gcp-ipi + workflow: cucushift-installer-rehearse-aws-ipi zz_generated_metadata: branch: main org: openshift diff --git a/ci-operator/config/openshift/open-telemetry-opentelemetry-operator/openshift-open-telemetry-opentelemetry-operator-main__opentelemetry-product-ocp-4.20-downstream.yaml b/ci-operator/config/openshift/open-telemetry-opentelemetry-operator/openshift-open-telemetry-opentelemetry-operator-main__opentelemetry-product-ocp-4.20-downstream.yaml index 795968d6cc668..6d5ee87a7e5bf 100644 --- a/ci-operator/config/openshift/open-telemetry-opentelemetry-operator/openshift-open-telemetry-opentelemetry-operator-main__opentelemetry-product-ocp-4.20-downstream.yaml +++ b/ci-operator/config/openshift/open-telemetry-opentelemetry-operator/openshift-open-telemetry-opentelemetry-operator-main__opentelemetry-product-ocp-4.20-downstream.yaml @@ -3,6 +3,10 @@ base_images: name: "4.20" namespace: ocp tag: cli + upi-installer: + name: "4.20" + namespace: ocp + tag: upi-installer build_root: image_stream_tag: name: builder @@ -26,15 +30,6 @@ resources: memory: 200Mi tests: - as: opentelemetry-downstream-tests - cluster_claim: - architecture: amd64 - cloud: aws - labels: - region: us-east-2 - owner: obs - product: ocp - timeout: 1h0m0s - version: "4.20" cron: 30 3 * * 2 reporter_config: channel: '#distributed-tracing-qe' @@ -47,7 +42,11 @@ tests: Job *{{.Spec.Job}}* ended with *{{.Status.State}}*. <{{.Status.URL}}|View logs> {{end}}' steps: + cluster_profile: azure-observability env: + BASE_DOMAIN: observability.azure.devcluster.openshift.com + COMPUTE_NODE_TYPE: Standard_D4s_v3 + CONTROL_PLANE_INSTANCE_TYPE: Standard_D8s_v3 OPERATORS: | [ {"name": "tempo-product", "source": "redhat-operators", "channel": "stable", "install_namespace": "openshift-tempo-operator", "target_namespaces": "", "operator_group": "openshift-tempo-operator"}, @@ -58,10 +57,11 @@ tests: {"name": "cluster-logging", "source": "redhat-operators", "channel": "stable-6.3", "install_namespace": "openshift-logging","target_namespaces": "", "operator_group": "openshift-logging"} ] SKIP_TESTS: tests/e2e/smoke-ip-families tests/e2e-otel/*aws* tests/e2e-otel/google* + tests/e2e-instrumentation/instrumentation-go test: - ref: install-operators - ref: distributed-tracing-tests-opentelemetry-downstream - workflow: generic-claim + workflow: cucushift-installer-rehearse-azure-ipi zz_generated_metadata: branch: main org: openshift diff --git a/ci-operator/config/openshift/open-telemetry-opentelemetry-operator/openshift-open-telemetry-opentelemetry-operator-main__opentelemetry-product-ocp-4.21-downstream.yaml b/ci-operator/config/openshift/open-telemetry-opentelemetry-operator/openshift-open-telemetry-opentelemetry-operator-main__opentelemetry-product-ocp-4.21-downstream.yaml index acf1a41361975..8b57148f2d482 100644 --- a/ci-operator/config/openshift/open-telemetry-opentelemetry-operator/openshift-open-telemetry-opentelemetry-operator-main__opentelemetry-product-ocp-4.21-downstream.yaml +++ b/ci-operator/config/openshift/open-telemetry-opentelemetry-operator/openshift-open-telemetry-opentelemetry-operator-main__opentelemetry-product-ocp-4.21-downstream.yaml @@ -50,6 +50,7 @@ tests: {"name": "loki-operator", "source": "redhat-operators", "channel": "stable-6.4", "install_namespace": "openshift-operators-redhat","target_namespaces": "", "operator_group": "openshift-operators-redhat"} ] SKIP_TESTS: tests/e2e/smoke-ip-families tests/e2e-otel/*aws* tests/e2e-otel/google* + tests/e2e-instrumentation/instrumentation-go test: - ref: install-operators - ref: distributed-tracing-tests-opentelemetry-downstream diff --git a/ci-operator/config/openshift/open-telemetry-opentelemetry-operator/openshift-open-telemetry-opentelemetry-operator-main__opentelemetry-product-ocp-4.19-downstream.yaml b/ci-operator/config/openshift/open-telemetry-opentelemetry-operator/openshift-open-telemetry-opentelemetry-operator-main__opentelemetry-product-ocp-4.22-downstream.yaml similarity index 73% rename from ci-operator/config/openshift/open-telemetry-opentelemetry-operator/openshift-open-telemetry-opentelemetry-operator-main__opentelemetry-product-ocp-4.19-downstream.yaml rename to ci-operator/config/openshift/open-telemetry-opentelemetry-operator/openshift-open-telemetry-opentelemetry-operator-main__opentelemetry-product-ocp-4.22-downstream.yaml index 185debd6b5959..7d44c2913de55 100644 --- a/ci-operator/config/openshift/open-telemetry-opentelemetry-operator/openshift-open-telemetry-opentelemetry-operator-main__opentelemetry-product-ocp-4.19-downstream.yaml +++ b/ci-operator/config/openshift/open-telemetry-opentelemetry-operator/openshift-open-telemetry-opentelemetry-operator-main__opentelemetry-product-ocp-4.22-downstream.yaml @@ -1,10 +1,10 @@ base_images: cli: - name: "4.19" + name: "4.22" namespace: ocp tag: cli upi-installer: - name: "4.19" + name: "4.21" namespace: ocp tag: upi-installer build_root: @@ -20,9 +20,10 @@ images: to: obs-tests-runner releases: latest: - release: - channel: stable - version: "4.19" + candidate: + product: ocp + stream: nightly + version: "4.22" resources: '*': requests: @@ -42,27 +43,26 @@ tests: Job *{{.Spec.Job}}* ended with *{{.Status.State}}*. <{{.Status.URL}}|View logs> {{end}}' steps: - cluster_profile: azure-observability + cluster_profile: aws-observability env: - BASE_DOMAIN: observability.azure.devcluster.openshift.com - COMPUTE_NODE_TYPE: Standard_D4s_v3 - CONTROL_PLANE_INSTANCE_TYPE: Standard_D8s_v3 + BASE_DOMAIN: devobscluster.devcluster.openshift.com OPERATORS: | [ - {"name": "tempo-product", "source": "redhat-operators", "channel": "stable", "install_namespace": "openshift-tempo-operator", "target_namespaces": "", "operator_group": "openshift-tempo-operator"}, - {"name": "opentelemetry-product", "source": "redhat-operators", "channel": "stable", "install_namespace": "openshift-opentelemetry-operator", "target_namespaces": "", "operator_group": "openshift-opentelemetry-operator"}, - {"name": "amq-streams", "source": "redhat-operators", "channel": "stable", "install_namespace": "openshift-operators", "target_namespaces": ""}, + {"name": "tempo-product", "source": "redhat-operators", "channel": "stable", "install_namespace": "openshift-tempo-operator", "target_namespace": "", "operator_group": "openshift-tempo-operator"}, + {"name": "opentelemetry-product", "source": "redhat-operators", "channel": "stable", "install_namespace": "openshift-opentelemetry-operator", "target_namespace": "", "operator_group": "openshift-opentelemetry-operator"}, + {"name": "amq-streams", "source": "redhat-operators", "channel": "stable", "install_namespace": "openshift-operators", "target_namespace": ""}, {"name": "cluster-observability-operator", "source": "redhat-operators", "channel": "stable", "install_namespace": "openshift-operators", "target_namespaces": ""}, - {"name": "loki-operator", "source": "redhat-operators", "channel": "stable-6.2", "install_namespace": "openshift-operators-redhat","target_namespaces": "", "operator_group": "openshift-operators-redhat"}, - {"name": "cluster-logging", "source": "redhat-operators", "channel": "stable-6.2", "install_namespace": "openshift-logging","target_namespaces": "", "operator_group": "openshift-logging"} + {"name": "cluster-logging", "source": "redhat-operators", "channel": "stable-6.4", "install_namespace": "openshift-logging","target_namespaces": "", "operator_group": "openshift-logging"}, + {"name": "loki-operator", "source": "redhat-operators", "channel": "stable-6.4", "install_namespace": "openshift-operators-redhat","target_namespaces": "", "operator_group": "openshift-operators-redhat"} ] SKIP_TESTS: tests/e2e/smoke-ip-families tests/e2e-otel/*aws* tests/e2e-otel/google* + tests/e2e-instrumentation/instrumentation-go test: - ref: install-operators - ref: distributed-tracing-tests-opentelemetry-downstream - workflow: cucushift-installer-rehearse-azure-ipi + workflow: cucushift-installer-rehearse-aws-ipi zz_generated_metadata: branch: main org: openshift repo: open-telemetry-opentelemetry-operator - variant: opentelemetry-product-ocp-4.19-downstream + variant: opentelemetry-product-ocp-4.22-downstream diff --git a/ci-operator/config/openshift/open-telemetry-opentelemetry-operator/openshift-open-telemetry-opentelemetry-operator-main__upstream-ocp-4.22-amd64.yaml b/ci-operator/config/openshift/open-telemetry-opentelemetry-operator/openshift-open-telemetry-opentelemetry-operator-main__upstream-ocp-4.22-amd64.yaml index ab5bb652c7284..99b3e7fdd02b8 100644 --- a/ci-operator/config/openshift/open-telemetry-opentelemetry-operator/openshift-open-telemetry-opentelemetry-operator-main__upstream-ocp-4.22-amd64.yaml +++ b/ci-operator/config/openshift/open-telemetry-opentelemetry-operator/openshift-open-telemetry-opentelemetry-operator-main__upstream-ocp-4.22-amd64.yaml @@ -101,22 +101,30 @@ resources: memory: 200Mi tests: - as: opentelemetry-upstream-tests + capabilities: + - intranet steps: - cluster_profile: gcp-observability + cluster_profile: equinix-ocp-metal-qe env: AGENT_SKILL: OTEL + AUX_HOST: openshift-qe-metal-ci.arm.eng.rdu2.redhat.com OPERATORS: | [ {"name": "tempo-product", "source": "redhat-operators", "channel": "stable", "install_namespace": "openshift-tempo-operator", "target_namespaces": "", "operator_group": "openshift-tempo-operator"}, {"name": "amq-streams", "source": "redhat-operators", "channel": "stable", "install_namespace": "openshift-operators", "target_namespaces": ""}, {"name": "cluster-observability-operator", "source": "redhat-operators", "channel": "stable", "install_namespace": "openshift-operators", "target_namespaces": ""} ] + RESERVE_BOOTSTRAP: "false" SKIP_TESTS: tests/e2e/smoke-ip-families tests/e2e-otel/*aws* tests/e2e-otel/google* tests/e2e-openshift/export-to-cluster-logging-lokistack tests/e2e-instrumentation/instrumentation-go + architecture: amd64 + masters: "3" + workers: "2" post: - ref: openshift-observability-qe-agent - - chain: cucushift-installer-rehearse-gcp-ipi-deprovision + - chain: baremetal-lab-post test: + - ref: ipi-install-rbac - as: install cli: latest commands: | @@ -134,7 +142,7 @@ tests: memory: 400Mi - ref: install-operators - ref: distributed-tracing-tests-opentelemetry-upstream - workflow: cucushift-installer-rehearse-gcp-ipi + workflow: baremetal-lab-ipi zz_generated_metadata: branch: main org: openshift diff --git a/ci-operator/jobs/openshift/grafana-tempo-operator/openshift-grafana-tempo-operator-main-periodics.yaml b/ci-operator/jobs/openshift/grafana-tempo-operator/openshift-grafana-tempo-operator-main-periodics.yaml index 061831d40cc0e..32753d744fdd7 100644 --- a/ci-operator/jobs/openshift/grafana-tempo-operator/openshift-grafana-tempo-operator-main-periodics.yaml +++ b/ci-operator/jobs/openshift/grafana-tempo-operator/openshift-grafana-tempo-operator-main-periodics.yaml @@ -87,8 +87,8 @@ periodics: sparse_checkout_files: - tests/Dockerfile labels: - ci-operator.openshift.io/cloud: gcp - ci-operator.openshift.io/cloud-cluster-profile: gcp-observability + ci-operator.openshift.io/cloud: aws + ci-operator.openshift.io/cloud-cluster-profile: aws-observability ci-operator.openshift.io/variant: tempo-product-ocp-4.12-stage ci.openshift.io/generator: prowgen pj-rehearse.openshift.io/can-be-rehearsed: "true" @@ -555,7 +555,7 @@ periodics: secretName: result-aggregator - agent: kubernetes cluster: build08 - cron: 30 3 * * 1 + cron: 0 0 30 2 * decorate: true decoration_config: sparse_checkout_files: @@ -568,13 +568,10 @@ periodics: sparse_checkout_files: - tests/Dockerfile labels: - ci-operator.openshift.io/cloud: azure4 - ci-operator.openshift.io/cloud-cluster-profile: azure-observability - ci-operator.openshift.io/variant: tempo-product-ocp-4.19-downstream + ci-operator.openshift.io/variant: tempo-product-ocp-4.19-stage ci.openshift.io/generator: prowgen - job-release: "4.19" pj-rehearse.openshift.io/can-be-rehearsed: "true" - name: periodic-ci-openshift-grafana-tempo-operator-main-tempo-product-ocp-4.19-downstream-tempo-downstream-tests + name: periodic-ci-openshift-grafana-tempo-operator-main-tempo-product-ocp-4.19-stage-tempo-stage-tests reporter_config: slack: channel: '#distributed-tracing-qe' @@ -590,12 +587,13 @@ periodics: containers: - args: - --gcs-upload-secret=/secrets/gcs/service-account.json + - --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=tempo-downstream-tests - - --variant=tempo-product-ocp-4.19-downstream + - --target=tempo-stage-tests + - --variant=tempo-product-ocp-4.19-stage command: - ci-operator env: @@ -622,6 +620,9 @@ periodics: - mountPath: /secrets/gcs name: gcs-credentials readOnly: true + - mountPath: /secrets/hive-hive-credentials + name: hive-hive-credentials + readOnly: true - mountPath: /secrets/manifest-tool name: manifest-tool-local-pusher readOnly: true @@ -642,6 +643,9 @@ periodics: - name: ci-pull-credentials secret: secretName: ci-pull-credentials + - name: hive-hive-credentials + secret: + secretName: hive-hive-credentials - name: manifest-tool-local-pusher secret: secretName: manifest-tool-local-pusher @@ -653,7 +657,7 @@ periodics: secretName: result-aggregator - agent: kubernetes cluster: build08 - cron: 0 0 30 2 * + cron: 30 3 * * 1 decorate: true decoration_config: sparse_checkout_files: @@ -666,10 +670,13 @@ periodics: sparse_checkout_files: - tests/Dockerfile labels: - ci-operator.openshift.io/variant: tempo-product-ocp-4.19-stage + ci-operator.openshift.io/cloud: azure4 + ci-operator.openshift.io/cloud-cluster-profile: azure-observability + ci-operator.openshift.io/variant: tempo-product-ocp-4.20-downstream ci.openshift.io/generator: prowgen + job-release: "4.20" pj-rehearse.openshift.io/can-be-rehearsed: "true" - name: periodic-ci-openshift-grafana-tempo-operator-main-tempo-product-ocp-4.19-stage-tempo-stage-tests + name: periodic-ci-openshift-grafana-tempo-operator-main-tempo-product-ocp-4.20-downstream-tempo-downstream-tests reporter_config: slack: channel: '#distributed-tracing-qe' @@ -685,13 +692,12 @@ periodics: containers: - args: - --gcs-upload-secret=/secrets/gcs/service-account.json - - --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=tempo-stage-tests - - --variant=tempo-product-ocp-4.19-stage + - --target=tempo-downstream-tests + - --variant=tempo-product-ocp-4.20-downstream command: - ci-operator env: @@ -718,9 +724,6 @@ periodics: - mountPath: /secrets/gcs name: gcs-credentials readOnly: true - - mountPath: /secrets/hive-hive-credentials - name: hive-hive-credentials - readOnly: true - mountPath: /secrets/manifest-tool name: manifest-tool-local-pusher readOnly: true @@ -741,9 +744,6 @@ periodics: - name: ci-pull-credentials secret: secretName: ci-pull-credentials - - name: hive-hive-credentials - secret: - secretName: hive-hive-credentials - name: manifest-tool-local-pusher secret: secretName: manifest-tool-local-pusher @@ -755,7 +755,7 @@ periodics: secretName: result-aggregator - agent: kubernetes cluster: build08 - cron: 30 3 * * 1 + cron: 0 0 30 2 * decorate: true decoration_config: sparse_checkout_files: @@ -768,11 +768,12 @@ periodics: sparse_checkout_files: - tests/Dockerfile labels: - ci-operator.openshift.io/variant: tempo-product-ocp-4.20-downstream + ci-operator.openshift.io/cloud: gcp + ci-operator.openshift.io/cloud-cluster-profile: gcp-observability + ci-operator.openshift.io/variant: tempo-product-ocp-4.20-stage ci.openshift.io/generator: prowgen - job-release: "4.20" pj-rehearse.openshift.io/can-be-rehearsed: "true" - name: periodic-ci-openshift-grafana-tempo-operator-main-tempo-product-ocp-4.20-downstream-tempo-downstream-tests + name: periodic-ci-openshift-grafana-tempo-operator-main-tempo-product-ocp-4.20-stage-tempo-stage-tests reporter_config: slack: channel: '#distributed-tracing-qe' @@ -788,13 +789,12 @@ periodics: containers: - args: - --gcs-upload-secret=/secrets/gcs/service-account.json - - --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=tempo-downstream-tests - - --variant=tempo-product-ocp-4.20-downstream + - --target=tempo-stage-tests + - --variant=tempo-product-ocp-4.20-stage command: - ci-operator env: @@ -821,9 +821,6 @@ periodics: - mountPath: /secrets/gcs name: gcs-credentials readOnly: true - - mountPath: /secrets/hive-hive-credentials - name: hive-hive-credentials - readOnly: true - mountPath: /secrets/manifest-tool name: manifest-tool-local-pusher readOnly: true @@ -844,9 +841,6 @@ periodics: - name: ci-pull-credentials secret: secretName: ci-pull-credentials - - name: hive-hive-credentials - secret: - secretName: hive-hive-credentials - name: manifest-tool-local-pusher secret: secretName: manifest-tool-local-pusher @@ -858,7 +852,7 @@ periodics: secretName: result-aggregator - agent: kubernetes cluster: build08 - cron: 0 0 30 2 * + cron: 30 3 * * 1 decorate: true decoration_config: sparse_checkout_files: @@ -873,10 +867,11 @@ periodics: labels: ci-operator.openshift.io/cloud: gcp ci-operator.openshift.io/cloud-cluster-profile: gcp-observability - ci-operator.openshift.io/variant: tempo-product-ocp-4.20-stage + ci-operator.openshift.io/variant: tempo-product-ocp-4.21-downstream ci.openshift.io/generator: prowgen + job-release: "4.21" pj-rehearse.openshift.io/can-be-rehearsed: "true" - name: periodic-ci-openshift-grafana-tempo-operator-main-tempo-product-ocp-4.20-stage-tempo-stage-tests + name: periodic-ci-openshift-grafana-tempo-operator-main-tempo-product-ocp-4.21-downstream-tempo-downstream-tests reporter_config: slack: channel: '#distributed-tracing-qe' @@ -896,8 +891,8 @@ periodics: - --lease-server-credentials-file=/etc/boskos/credentials - --report-credentials-file=/etc/report/credentials - --secret-dir=/secrets/ci-pull-credentials - - --target=tempo-stage-tests - - --variant=tempo-product-ocp-4.20-stage + - --target=tempo-downstream-tests + - --variant=tempo-product-ocp-4.21-downstream command: - ci-operator env: @@ -955,7 +950,7 @@ periodics: secretName: result-aggregator - agent: kubernetes cluster: build08 - cron: 30 3 * * 1 + cron: 0 0 30 2 * decorate: true decoration_config: sparse_checkout_files: @@ -970,11 +965,10 @@ periodics: labels: ci-operator.openshift.io/cloud: gcp ci-operator.openshift.io/cloud-cluster-profile: gcp-observability - ci-operator.openshift.io/variant: tempo-product-ocp-4.21-downstream + ci-operator.openshift.io/variant: tempo-product-ocp-4.21-stage ci.openshift.io/generator: prowgen - job-release: "4.21" pj-rehearse.openshift.io/can-be-rehearsed: "true" - name: periodic-ci-openshift-grafana-tempo-operator-main-tempo-product-ocp-4.21-downstream-tempo-downstream-tests + name: periodic-ci-openshift-grafana-tempo-operator-main-tempo-product-ocp-4.21-stage-tempo-stage-tests reporter_config: slack: channel: '#distributed-tracing-qe' @@ -994,8 +988,8 @@ periodics: - --lease-server-credentials-file=/etc/boskos/credentials - --report-credentials-file=/etc/report/credentials - --secret-dir=/secrets/ci-pull-credentials - - --target=tempo-downstream-tests - - --variant=tempo-product-ocp-4.21-downstream + - --target=tempo-stage-tests + - --variant=tempo-product-ocp-4.21-stage command: - ci-operator env: @@ -1053,7 +1047,7 @@ periodics: secretName: result-aggregator - agent: kubernetes cluster: build08 - cron: 0 0 30 2 * + cron: 30 3 * * 1 decorate: true decoration_config: sparse_checkout_files: @@ -1066,12 +1060,13 @@ periodics: sparse_checkout_files: - tests/Dockerfile labels: - ci-operator.openshift.io/cloud: gcp - ci-operator.openshift.io/cloud-cluster-profile: gcp-observability - ci-operator.openshift.io/variant: tempo-product-ocp-4.21-stage + ci-operator.openshift.io/cloud: aws + ci-operator.openshift.io/cloud-cluster-profile: aws-observability + ci-operator.openshift.io/variant: tempo-product-ocp-4.22-downstream ci.openshift.io/generator: prowgen + job-release: "4.22" pj-rehearse.openshift.io/can-be-rehearsed: "true" - name: periodic-ci-openshift-grafana-tempo-operator-main-tempo-product-ocp-4.21-stage-tempo-stage-tests + name: periodic-ci-openshift-grafana-tempo-operator-main-tempo-product-ocp-4.22-downstream-tempo-downstream-tests reporter_config: slack: channel: '#distributed-tracing-qe' @@ -1091,8 +1086,8 @@ periodics: - --lease-server-credentials-file=/etc/boskos/credentials - --report-credentials-file=/etc/report/credentials - --secret-dir=/secrets/ci-pull-credentials - - --target=tempo-stage-tests - - --variant=tempo-product-ocp-4.21-stage + - --target=tempo-downstream-tests + - --variant=tempo-product-ocp-4.22-downstream command: - ci-operator env: diff --git a/ci-operator/jobs/openshift/grafana-tempo-operator/openshift-grafana-tempo-operator-main-presubmits.yaml b/ci-operator/jobs/openshift/grafana-tempo-operator/openshift-grafana-tempo-operator-main-presubmits.yaml index 7e77723065546..a795457837cfa 100644 --- a/ci-operator/jobs/openshift/grafana-tempo-operator/openshift-grafana-tempo-operator-main-presubmits.yaml +++ b/ci-operator/jobs/openshift/grafana-tempo-operator/openshift-grafana-tempo-operator-main-presubmits.yaml @@ -301,19 +301,18 @@ presubmits: - ^main$ - ^main- cluster: build13 - context: ci/prow/tempo-product-ocp-4.19-downstream-images + context: ci/prow/tempo-product-ocp-4.19-stage-images decorate: true decoration_config: sparse_checkout_files: - tests/Dockerfile labels: - ci-operator.openshift.io/variant: tempo-product-ocp-4.19-downstream + ci-operator.openshift.io/variant: tempo-product-ocp-4.19-stage ci.openshift.io/generator: prowgen - job-release: "4.19" pj-rehearse.openshift.io/can-be-rehearsed: "true" - name: pull-ci-openshift-grafana-tempo-operator-main-tempo-product-ocp-4.19-downstream-images + name: pull-ci-openshift-grafana-tempo-operator-main-tempo-product-ocp-4.19-stage-images path_alias: github.com/grafana/tempo-operator - rerun_command: /test tempo-product-ocp-4.19-downstream-images + rerun_command: /test tempo-product-ocp-4.19-stage-images spec: containers: - args: @@ -321,7 +320,7 @@ presubmits: - --image-import-pull-secret=/etc/pull-secret/.dockerconfigjson - --report-credentials-file=/etc/report/credentials - --target=[images] - - --variant=tempo-product-ocp-4.19-downstream + - --variant=tempo-product-ocp-4.19-stage command: - ci-operator image: quay-proxy.ci.openshift.org/openshift/ci:ci_ci-operator_latest @@ -354,25 +353,26 @@ presubmits: - name: result-aggregator secret: secretName: result-aggregator - trigger: (?m)^/test( | .* )tempo-product-ocp-4.19-downstream-images,?($|\s.*) + trigger: (?m)^/test( | .* )tempo-product-ocp-4.19-stage-images,?($|\s.*) - agent: kubernetes always_run: true branches: - ^main$ - ^main- cluster: build13 - context: ci/prow/tempo-product-ocp-4.19-stage-images + context: ci/prow/tempo-product-ocp-4.20-downstream-images decorate: true decoration_config: sparse_checkout_files: - tests/Dockerfile labels: - ci-operator.openshift.io/variant: tempo-product-ocp-4.19-stage + ci-operator.openshift.io/variant: tempo-product-ocp-4.20-downstream ci.openshift.io/generator: prowgen + job-release: "4.20" pj-rehearse.openshift.io/can-be-rehearsed: "true" - name: pull-ci-openshift-grafana-tempo-operator-main-tempo-product-ocp-4.19-stage-images + name: pull-ci-openshift-grafana-tempo-operator-main-tempo-product-ocp-4.20-downstream-images path_alias: github.com/grafana/tempo-operator - rerun_command: /test tempo-product-ocp-4.19-stage-images + rerun_command: /test tempo-product-ocp-4.20-downstream-images spec: containers: - args: @@ -380,7 +380,7 @@ presubmits: - --image-import-pull-secret=/etc/pull-secret/.dockerconfigjson - --report-credentials-file=/etc/report/credentials - --target=[images] - - --variant=tempo-product-ocp-4.19-stage + - --variant=tempo-product-ocp-4.20-downstream command: - ci-operator image: quay-proxy.ci.openshift.org/openshift/ci:ci_ci-operator_latest @@ -413,26 +413,25 @@ presubmits: - name: result-aggregator secret: secretName: result-aggregator - trigger: (?m)^/test( | .* )tempo-product-ocp-4.19-stage-images,?($|\s.*) + trigger: (?m)^/test( | .* )tempo-product-ocp-4.20-downstream-images,?($|\s.*) - agent: kubernetes always_run: true branches: - ^main$ - ^main- cluster: build13 - context: ci/prow/tempo-product-ocp-4.20-downstream-images + context: ci/prow/tempo-product-ocp-4.20-stage-images decorate: true decoration_config: sparse_checkout_files: - tests/Dockerfile labels: - ci-operator.openshift.io/variant: tempo-product-ocp-4.20-downstream + ci-operator.openshift.io/variant: tempo-product-ocp-4.20-stage ci.openshift.io/generator: prowgen - job-release: "4.20" pj-rehearse.openshift.io/can-be-rehearsed: "true" - name: pull-ci-openshift-grafana-tempo-operator-main-tempo-product-ocp-4.20-downstream-images + name: pull-ci-openshift-grafana-tempo-operator-main-tempo-product-ocp-4.20-stage-images path_alias: github.com/grafana/tempo-operator - rerun_command: /test tempo-product-ocp-4.20-downstream-images + rerun_command: /test tempo-product-ocp-4.20-stage-images spec: containers: - args: @@ -440,7 +439,7 @@ presubmits: - --image-import-pull-secret=/etc/pull-secret/.dockerconfigjson - --report-credentials-file=/etc/report/credentials - --target=[images] - - --variant=tempo-product-ocp-4.20-downstream + - --variant=tempo-product-ocp-4.20-stage command: - ci-operator image: quay-proxy.ci.openshift.org/openshift/ci:ci_ci-operator_latest @@ -473,25 +472,26 @@ presubmits: - name: result-aggregator secret: secretName: result-aggregator - trigger: (?m)^/test( | .* )tempo-product-ocp-4.20-downstream-images,?($|\s.*) + trigger: (?m)^/test( | .* )tempo-product-ocp-4.20-stage-images,?($|\s.*) - agent: kubernetes always_run: true branches: - ^main$ - ^main- cluster: build13 - context: ci/prow/tempo-product-ocp-4.20-stage-images + context: ci/prow/tempo-product-ocp-4.21-downstream-images decorate: true decoration_config: sparse_checkout_files: - tests/Dockerfile labels: - ci-operator.openshift.io/variant: tempo-product-ocp-4.20-stage + ci-operator.openshift.io/variant: tempo-product-ocp-4.21-downstream ci.openshift.io/generator: prowgen + job-release: "4.21" pj-rehearse.openshift.io/can-be-rehearsed: "true" - name: pull-ci-openshift-grafana-tempo-operator-main-tempo-product-ocp-4.20-stage-images + name: pull-ci-openshift-grafana-tempo-operator-main-tempo-product-ocp-4.21-downstream-images path_alias: github.com/grafana/tempo-operator - rerun_command: /test tempo-product-ocp-4.20-stage-images + rerun_command: /test tempo-product-ocp-4.21-downstream-images spec: containers: - args: @@ -499,7 +499,7 @@ presubmits: - --image-import-pull-secret=/etc/pull-secret/.dockerconfigjson - --report-credentials-file=/etc/report/credentials - --target=[images] - - --variant=tempo-product-ocp-4.20-stage + - --variant=tempo-product-ocp-4.21-downstream command: - ci-operator image: quay-proxy.ci.openshift.org/openshift/ci:ci_ci-operator_latest @@ -532,26 +532,25 @@ presubmits: - name: result-aggregator secret: secretName: result-aggregator - trigger: (?m)^/test( | .* )tempo-product-ocp-4.20-stage-images,?($|\s.*) + trigger: (?m)^/test( | .* )tempo-product-ocp-4.21-downstream-images,?($|\s.*) - agent: kubernetes always_run: true branches: - ^main$ - ^main- cluster: build13 - context: ci/prow/tempo-product-ocp-4.21-downstream-images + context: ci/prow/tempo-product-ocp-4.21-stage-images decorate: true decoration_config: sparse_checkout_files: - tests/Dockerfile labels: - ci-operator.openshift.io/variant: tempo-product-ocp-4.21-downstream + ci-operator.openshift.io/variant: tempo-product-ocp-4.21-stage ci.openshift.io/generator: prowgen - job-release: "4.21" pj-rehearse.openshift.io/can-be-rehearsed: "true" - name: pull-ci-openshift-grafana-tempo-operator-main-tempo-product-ocp-4.21-downstream-images + name: pull-ci-openshift-grafana-tempo-operator-main-tempo-product-ocp-4.21-stage-images path_alias: github.com/grafana/tempo-operator - rerun_command: /test tempo-product-ocp-4.21-downstream-images + rerun_command: /test tempo-product-ocp-4.21-stage-images spec: containers: - args: @@ -559,7 +558,7 @@ presubmits: - --image-import-pull-secret=/etc/pull-secret/.dockerconfigjson - --report-credentials-file=/etc/report/credentials - --target=[images] - - --variant=tempo-product-ocp-4.21-downstream + - --variant=tempo-product-ocp-4.21-stage command: - ci-operator image: quay-proxy.ci.openshift.org/openshift/ci:ci_ci-operator_latest @@ -592,25 +591,26 @@ presubmits: - name: result-aggregator secret: secretName: result-aggregator - trigger: (?m)^/test( | .* )tempo-product-ocp-4.21-downstream-images,?($|\s.*) + trigger: (?m)^/test( | .* )tempo-product-ocp-4.21-stage-images,?($|\s.*) - agent: kubernetes always_run: true branches: - ^main$ - ^main- cluster: build13 - context: ci/prow/tempo-product-ocp-4.21-stage-images + context: ci/prow/tempo-product-ocp-4.22-downstream-images decorate: true decoration_config: sparse_checkout_files: - tests/Dockerfile labels: - ci-operator.openshift.io/variant: tempo-product-ocp-4.21-stage + ci-operator.openshift.io/variant: tempo-product-ocp-4.22-downstream ci.openshift.io/generator: prowgen + job-release: "4.22" pj-rehearse.openshift.io/can-be-rehearsed: "true" - name: pull-ci-openshift-grafana-tempo-operator-main-tempo-product-ocp-4.21-stage-images + name: pull-ci-openshift-grafana-tempo-operator-main-tempo-product-ocp-4.22-downstream-images path_alias: github.com/grafana/tempo-operator - rerun_command: /test tempo-product-ocp-4.21-stage-images + rerun_command: /test tempo-product-ocp-4.22-downstream-images spec: containers: - args: @@ -618,7 +618,7 @@ presubmits: - --image-import-pull-secret=/etc/pull-secret/.dockerconfigjson - --report-credentials-file=/etc/report/credentials - --target=[images] - - --variant=tempo-product-ocp-4.21-stage + - --variant=tempo-product-ocp-4.22-downstream command: - ci-operator image: quay-proxy.ci.openshift.org/openshift/ci:ci_ci-operator_latest @@ -651,7 +651,7 @@ presubmits: - name: result-aggregator secret: secretName: result-aggregator - trigger: (?m)^/test( | .* )tempo-product-ocp-4.21-stage-images,?($|\s.*) + trigger: (?m)^/test( | .* )tempo-product-ocp-4.22-downstream-images,?($|\s.*) - agent: kubernetes always_run: true branches: @@ -1204,8 +1204,9 @@ presubmits: - Dockerfile - tests/Dockerfile labels: - ci-operator.openshift.io/cloud: gcp - ci-operator.openshift.io/cloud-cluster-profile: gcp-observability + capability/intranet: intranet + ci-operator.openshift.io/cloud: equinix-ocp-metal + ci-operator.openshift.io/cloud-cluster-profile: equinix-ocp-metal-qe ci-operator.openshift.io/variant: upstream-ocp-4.22-amd64 ci.openshift.io/generator: prowgen job-release: "4.22" diff --git a/ci-operator/jobs/openshift/open-telemetry-opentelemetry-operator/openshift-open-telemetry-opentelemetry-operator-main-periodics.yaml b/ci-operator/jobs/openshift/open-telemetry-opentelemetry-operator/openshift-open-telemetry-opentelemetry-operator-main-periodics.yaml index dc618ff1eec07..d6b8808990c2b 100644 --- a/ci-operator/jobs/openshift/open-telemetry-opentelemetry-operator/openshift-open-telemetry-opentelemetry-operator-main-periodics.yaml +++ b/ci-operator/jobs/openshift/open-telemetry-opentelemetry-operator/openshift-open-telemetry-opentelemetry-operator-main-periodics.yaml @@ -14,8 +14,8 @@ periodics: sparse_checkout_files: - tests/e2e-openshift/Dockerfile labels: - ci-operator.openshift.io/cloud: gcp - ci-operator.openshift.io/cloud-cluster-profile: gcp-observability + ci-operator.openshift.io/cloud: aws + ci-operator.openshift.io/cloud-cluster-profile: aws-observability ci-operator.openshift.io/variant: opentelemetry-product-ocp-4.12-stage ci.openshift.io/generator: prowgen pj-rehearse.openshift.io/can-be-rehearsed: "true" @@ -482,7 +482,7 @@ periodics: secretName: result-aggregator - agent: kubernetes cluster: build04 - cron: 30 3 * * 2 + cron: 0 0 30 2 * decorate: true decoration_config: sparse_checkout_files: @@ -497,10 +497,10 @@ periodics: labels: ci-operator.openshift.io/cloud: azure4 ci-operator.openshift.io/cloud-cluster-profile: azure-observability - ci-operator.openshift.io/variant: opentelemetry-product-ocp-4.19-downstream + ci-operator.openshift.io/variant: opentelemetry-product-ocp-4.19-stage ci.openshift.io/generator: prowgen pj-rehearse.openshift.io/can-be-rehearsed: "true" - name: periodic-ci-openshift-open-telemetry-opentelemetry-operator-main-opentelemetry-product-ocp-4.19-downstream-opentelemetry-downstream-tests + name: periodic-ci-openshift-open-telemetry-opentelemetry-operator-main-opentelemetry-product-ocp-4.19-stage-opentelemetry-stage-tests reporter_config: slack: channel: '#distributed-tracing-qe' @@ -520,8 +520,8 @@ periodics: - --lease-server-credentials-file=/etc/boskos/credentials - --report-credentials-file=/etc/report/credentials - --secret-dir=/secrets/ci-pull-credentials - - --target=opentelemetry-downstream-tests - - --variant=opentelemetry-product-ocp-4.19-downstream + - --target=opentelemetry-stage-tests + - --variant=opentelemetry-product-ocp-4.19-stage command: - ci-operator env: @@ -579,7 +579,7 @@ periodics: secretName: result-aggregator - agent: kubernetes cluster: build04 - cron: 0 0 30 2 * + cron: 30 3 * * 2 decorate: true decoration_config: sparse_checkout_files: @@ -594,10 +594,10 @@ periodics: labels: ci-operator.openshift.io/cloud: azure4 ci-operator.openshift.io/cloud-cluster-profile: azure-observability - ci-operator.openshift.io/variant: opentelemetry-product-ocp-4.19-stage + ci-operator.openshift.io/variant: opentelemetry-product-ocp-4.20-downstream ci.openshift.io/generator: prowgen pj-rehearse.openshift.io/can-be-rehearsed: "true" - name: periodic-ci-openshift-open-telemetry-opentelemetry-operator-main-opentelemetry-product-ocp-4.19-stage-opentelemetry-stage-tests + name: periodic-ci-openshift-open-telemetry-opentelemetry-operator-main-opentelemetry-product-ocp-4.20-downstream-opentelemetry-downstream-tests reporter_config: slack: channel: '#distributed-tracing-qe' @@ -617,8 +617,8 @@ periodics: - --lease-server-credentials-file=/etc/boskos/credentials - --report-credentials-file=/etc/report/credentials - --secret-dir=/secrets/ci-pull-credentials - - --target=opentelemetry-stage-tests - - --variant=opentelemetry-product-ocp-4.19-stage + - --target=opentelemetry-downstream-tests + - --variant=opentelemetry-product-ocp-4.20-downstream command: - ci-operator env: @@ -676,7 +676,7 @@ periodics: secretName: result-aggregator - agent: kubernetes cluster: build04 - cron: 30 3 * * 2 + cron: 0 0 30 2 * decorate: true decoration_config: sparse_checkout_files: @@ -689,10 +689,10 @@ periodics: sparse_checkout_files: - tests/e2e-openshift/Dockerfile labels: - ci-operator.openshift.io/variant: opentelemetry-product-ocp-4.20-downstream + ci-operator.openshift.io/variant: opentelemetry-product-ocp-4.20-stage ci.openshift.io/generator: prowgen pj-rehearse.openshift.io/can-be-rehearsed: "true" - name: periodic-ci-openshift-open-telemetry-opentelemetry-operator-main-opentelemetry-product-ocp-4.20-downstream-opentelemetry-downstream-tests + name: periodic-ci-openshift-open-telemetry-opentelemetry-operator-main-opentelemetry-product-ocp-4.20-stage-opentelemetry-stage-tests reporter_config: slack: channel: '#distributed-tracing-qe' @@ -713,8 +713,8 @@ periodics: - --lease-server-credentials-file=/etc/boskos/credentials - --report-credentials-file=/etc/report/credentials - --secret-dir=/secrets/ci-pull-credentials - - --target=opentelemetry-downstream-tests - - --variant=opentelemetry-product-ocp-4.20-downstream + - --target=opentelemetry-stage-tests + - --variant=opentelemetry-product-ocp-4.20-stage command: - ci-operator env: @@ -777,8 +777,8 @@ periodics: secret: secretName: result-aggregator - agent: kubernetes - cluster: build04 - cron: 0 0 30 2 * + cluster: build08 + cron: 30 3 * * 2 decorate: true decoration_config: sparse_checkout_files: @@ -791,10 +791,12 @@ periodics: sparse_checkout_files: - tests/e2e-openshift/Dockerfile labels: - ci-operator.openshift.io/variant: opentelemetry-product-ocp-4.20-stage + ci-operator.openshift.io/cloud: gcp + ci-operator.openshift.io/cloud-cluster-profile: gcp-observability + ci-operator.openshift.io/variant: opentelemetry-product-ocp-4.21-downstream ci.openshift.io/generator: prowgen pj-rehearse.openshift.io/can-be-rehearsed: "true" - name: periodic-ci-openshift-open-telemetry-opentelemetry-operator-main-opentelemetry-product-ocp-4.20-stage-opentelemetry-stage-tests + name: periodic-ci-openshift-open-telemetry-opentelemetry-operator-main-opentelemetry-product-ocp-4.21-downstream-opentelemetry-downstream-tests reporter_config: slack: channel: '#distributed-tracing-qe' @@ -810,13 +812,12 @@ periodics: containers: - args: - --gcs-upload-secret=/secrets/gcs/service-account.json - - --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=opentelemetry-stage-tests - - --variant=opentelemetry-product-ocp-4.20-stage + - --target=opentelemetry-downstream-tests + - --variant=opentelemetry-product-ocp-4.21-downstream command: - ci-operator env: @@ -843,9 +844,6 @@ periodics: - mountPath: /secrets/gcs name: gcs-credentials readOnly: true - - mountPath: /secrets/hive-hive-credentials - name: hive-hive-credentials - readOnly: true - mountPath: /secrets/manifest-tool name: manifest-tool-local-pusher readOnly: true @@ -866,9 +864,6 @@ periodics: - name: ci-pull-credentials secret: secretName: ci-pull-credentials - - name: hive-hive-credentials - secret: - secretName: hive-hive-credentials - name: manifest-tool-local-pusher secret: secretName: manifest-tool-local-pusher @@ -880,7 +875,7 @@ periodics: secretName: result-aggregator - agent: kubernetes cluster: build08 - cron: 30 3 * * 2 + cron: 0 0 30 2 * decorate: true decoration_config: sparse_checkout_files: @@ -895,10 +890,10 @@ periodics: labels: ci-operator.openshift.io/cloud: gcp ci-operator.openshift.io/cloud-cluster-profile: gcp-observability - ci-operator.openshift.io/variant: opentelemetry-product-ocp-4.21-downstream + ci-operator.openshift.io/variant: opentelemetry-product-ocp-4.21-stage ci.openshift.io/generator: prowgen pj-rehearse.openshift.io/can-be-rehearsed: "true" - name: periodic-ci-openshift-open-telemetry-opentelemetry-operator-main-opentelemetry-product-ocp-4.21-downstream-opentelemetry-downstream-tests + name: periodic-ci-openshift-open-telemetry-opentelemetry-operator-main-opentelemetry-product-ocp-4.21-stage-opentelemetry-stage-tests reporter_config: slack: channel: '#distributed-tracing-qe' @@ -918,8 +913,8 @@ periodics: - --lease-server-credentials-file=/etc/boskos/credentials - --report-credentials-file=/etc/report/credentials - --secret-dir=/secrets/ci-pull-credentials - - --target=opentelemetry-downstream-tests - - --variant=opentelemetry-product-ocp-4.21-downstream + - --target=opentelemetry-stage-tests + - --variant=opentelemetry-product-ocp-4.21-stage command: - ci-operator env: @@ -976,8 +971,8 @@ periodics: secret: secretName: result-aggregator - agent: kubernetes - cluster: build08 - cron: 0 0 30 2 * + cluster: build06 + cron: 30 3 * * 2 decorate: true decoration_config: sparse_checkout_files: @@ -990,12 +985,13 @@ periodics: sparse_checkout_files: - tests/e2e-openshift/Dockerfile labels: - ci-operator.openshift.io/cloud: gcp - ci-operator.openshift.io/cloud-cluster-profile: gcp-observability - ci-operator.openshift.io/variant: opentelemetry-product-ocp-4.21-stage + ci-operator.openshift.io/cloud: aws + ci-operator.openshift.io/cloud-cluster-profile: aws-observability + ci-operator.openshift.io/variant: opentelemetry-product-ocp-4.22-downstream ci.openshift.io/generator: prowgen + job-release: "4.22" pj-rehearse.openshift.io/can-be-rehearsed: "true" - name: periodic-ci-openshift-open-telemetry-opentelemetry-operator-main-opentelemetry-product-ocp-4.21-stage-opentelemetry-stage-tests + name: periodic-ci-openshift-open-telemetry-opentelemetry-operator-main-opentelemetry-product-ocp-4.22-downstream-opentelemetry-downstream-tests reporter_config: slack: channel: '#distributed-tracing-qe' @@ -1015,8 +1011,8 @@ periodics: - --lease-server-credentials-file=/etc/boskos/credentials - --report-credentials-file=/etc/report/credentials - --secret-dir=/secrets/ci-pull-credentials - - --target=opentelemetry-stage-tests - - --variant=opentelemetry-product-ocp-4.21-stage + - --target=opentelemetry-downstream-tests + - --variant=opentelemetry-product-ocp-4.22-downstream command: - ci-operator env: diff --git a/ci-operator/jobs/openshift/open-telemetry-opentelemetry-operator/openshift-open-telemetry-opentelemetry-operator-main-presubmits.yaml b/ci-operator/jobs/openshift/open-telemetry-opentelemetry-operator/openshift-open-telemetry-opentelemetry-operator-main-presubmits.yaml index b14e37a1a8752..e839584226566 100644 --- a/ci-operator/jobs/openshift/open-telemetry-opentelemetry-operator/openshift-open-telemetry-opentelemetry-operator-main-presubmits.yaml +++ b/ci-operator/jobs/openshift/open-telemetry-opentelemetry-operator/openshift-open-telemetry-opentelemetry-operator-main-presubmits.yaml @@ -301,18 +301,18 @@ presubmits: - ^main$ - ^main- cluster: build06 - context: ci/prow/opentelemetry-product-ocp-4.19-downstream-images + context: ci/prow/opentelemetry-product-ocp-4.19-stage-images decorate: true decoration_config: sparse_checkout_files: - tests/e2e-openshift/Dockerfile labels: - ci-operator.openshift.io/variant: opentelemetry-product-ocp-4.19-downstream + ci-operator.openshift.io/variant: opentelemetry-product-ocp-4.19-stage ci.openshift.io/generator: prowgen pj-rehearse.openshift.io/can-be-rehearsed: "true" - name: pull-ci-openshift-open-telemetry-opentelemetry-operator-main-opentelemetry-product-ocp-4.19-downstream-images + name: pull-ci-openshift-open-telemetry-opentelemetry-operator-main-opentelemetry-product-ocp-4.19-stage-images path_alias: github.com/open-telemetry/opentelemetry-operator - rerun_command: /test opentelemetry-product-ocp-4.19-downstream-images + rerun_command: /test opentelemetry-product-ocp-4.19-stage-images spec: containers: - args: @@ -320,7 +320,7 @@ presubmits: - --image-import-pull-secret=/etc/pull-secret/.dockerconfigjson - --report-credentials-file=/etc/report/credentials - --target=[images] - - --variant=opentelemetry-product-ocp-4.19-downstream + - --variant=opentelemetry-product-ocp-4.19-stage command: - ci-operator image: quay-proxy.ci.openshift.org/openshift/ci:ci_ci-operator_latest @@ -353,25 +353,25 @@ presubmits: - name: result-aggregator secret: secretName: result-aggregator - trigger: (?m)^/test( | .* )opentelemetry-product-ocp-4.19-downstream-images,?($|\s.*) + trigger: (?m)^/test( | .* )opentelemetry-product-ocp-4.19-stage-images,?($|\s.*) - agent: kubernetes always_run: true branches: - ^main$ - ^main- cluster: build06 - context: ci/prow/opentelemetry-product-ocp-4.19-stage-images + context: ci/prow/opentelemetry-product-ocp-4.20-downstream-images decorate: true decoration_config: sparse_checkout_files: - tests/e2e-openshift/Dockerfile labels: - ci-operator.openshift.io/variant: opentelemetry-product-ocp-4.19-stage + ci-operator.openshift.io/variant: opentelemetry-product-ocp-4.20-downstream ci.openshift.io/generator: prowgen pj-rehearse.openshift.io/can-be-rehearsed: "true" - name: pull-ci-openshift-open-telemetry-opentelemetry-operator-main-opentelemetry-product-ocp-4.19-stage-images + name: pull-ci-openshift-open-telemetry-opentelemetry-operator-main-opentelemetry-product-ocp-4.20-downstream-images path_alias: github.com/open-telemetry/opentelemetry-operator - rerun_command: /test opentelemetry-product-ocp-4.19-stage-images + rerun_command: /test opentelemetry-product-ocp-4.20-downstream-images spec: containers: - args: @@ -379,7 +379,7 @@ presubmits: - --image-import-pull-secret=/etc/pull-secret/.dockerconfigjson - --report-credentials-file=/etc/report/credentials - --target=[images] - - --variant=opentelemetry-product-ocp-4.19-stage + - --variant=opentelemetry-product-ocp-4.20-downstream command: - ci-operator image: quay-proxy.ci.openshift.org/openshift/ci:ci_ci-operator_latest @@ -412,25 +412,25 @@ presubmits: - name: result-aggregator secret: secretName: result-aggregator - trigger: (?m)^/test( | .* )opentelemetry-product-ocp-4.19-stage-images,?($|\s.*) + trigger: (?m)^/test( | .* )opentelemetry-product-ocp-4.20-downstream-images,?($|\s.*) - agent: kubernetes always_run: true branches: - ^main$ - ^main- cluster: build06 - context: ci/prow/opentelemetry-product-ocp-4.20-downstream-images + context: ci/prow/opentelemetry-product-ocp-4.20-stage-images decorate: true decoration_config: sparse_checkout_files: - tests/e2e-openshift/Dockerfile labels: - ci-operator.openshift.io/variant: opentelemetry-product-ocp-4.20-downstream + ci-operator.openshift.io/variant: opentelemetry-product-ocp-4.20-stage ci.openshift.io/generator: prowgen pj-rehearse.openshift.io/can-be-rehearsed: "true" - name: pull-ci-openshift-open-telemetry-opentelemetry-operator-main-opentelemetry-product-ocp-4.20-downstream-images + name: pull-ci-openshift-open-telemetry-opentelemetry-operator-main-opentelemetry-product-ocp-4.20-stage-images path_alias: github.com/open-telemetry/opentelemetry-operator - rerun_command: /test opentelemetry-product-ocp-4.20-downstream-images + rerun_command: /test opentelemetry-product-ocp-4.20-stage-images spec: containers: - args: @@ -438,7 +438,7 @@ presubmits: - --image-import-pull-secret=/etc/pull-secret/.dockerconfigjson - --report-credentials-file=/etc/report/credentials - --target=[images] - - --variant=opentelemetry-product-ocp-4.20-downstream + - --variant=opentelemetry-product-ocp-4.20-stage command: - ci-operator image: quay-proxy.ci.openshift.org/openshift/ci:ci_ci-operator_latest @@ -471,25 +471,25 @@ presubmits: - name: result-aggregator secret: secretName: result-aggregator - trigger: (?m)^/test( | .* )opentelemetry-product-ocp-4.20-downstream-images,?($|\s.*) + trigger: (?m)^/test( | .* )opentelemetry-product-ocp-4.20-stage-images,?($|\s.*) - agent: kubernetes always_run: true branches: - ^main$ - ^main- cluster: build06 - context: ci/prow/opentelemetry-product-ocp-4.20-stage-images + context: ci/prow/opentelemetry-product-ocp-4.21-downstream-images decorate: true decoration_config: sparse_checkout_files: - tests/e2e-openshift/Dockerfile labels: - ci-operator.openshift.io/variant: opentelemetry-product-ocp-4.20-stage + ci-operator.openshift.io/variant: opentelemetry-product-ocp-4.21-downstream ci.openshift.io/generator: prowgen pj-rehearse.openshift.io/can-be-rehearsed: "true" - name: pull-ci-openshift-open-telemetry-opentelemetry-operator-main-opentelemetry-product-ocp-4.20-stage-images + name: pull-ci-openshift-open-telemetry-opentelemetry-operator-main-opentelemetry-product-ocp-4.21-downstream-images path_alias: github.com/open-telemetry/opentelemetry-operator - rerun_command: /test opentelemetry-product-ocp-4.20-stage-images + rerun_command: /test opentelemetry-product-ocp-4.21-downstream-images spec: containers: - args: @@ -497,7 +497,7 @@ presubmits: - --image-import-pull-secret=/etc/pull-secret/.dockerconfigjson - --report-credentials-file=/etc/report/credentials - --target=[images] - - --variant=opentelemetry-product-ocp-4.20-stage + - --variant=opentelemetry-product-ocp-4.21-downstream command: - ci-operator image: quay-proxy.ci.openshift.org/openshift/ci:ci_ci-operator_latest @@ -530,25 +530,25 @@ presubmits: - name: result-aggregator secret: secretName: result-aggregator - trigger: (?m)^/test( | .* )opentelemetry-product-ocp-4.20-stage-images,?($|\s.*) + trigger: (?m)^/test( | .* )opentelemetry-product-ocp-4.21-downstream-images,?($|\s.*) - agent: kubernetes always_run: true branches: - ^main$ - ^main- cluster: build06 - context: ci/prow/opentelemetry-product-ocp-4.21-downstream-images + context: ci/prow/opentelemetry-product-ocp-4.21-stage-images decorate: true decoration_config: sparse_checkout_files: - tests/e2e-openshift/Dockerfile labels: - ci-operator.openshift.io/variant: opentelemetry-product-ocp-4.21-downstream + ci-operator.openshift.io/variant: opentelemetry-product-ocp-4.21-stage ci.openshift.io/generator: prowgen pj-rehearse.openshift.io/can-be-rehearsed: "true" - name: pull-ci-openshift-open-telemetry-opentelemetry-operator-main-opentelemetry-product-ocp-4.21-downstream-images + name: pull-ci-openshift-open-telemetry-opentelemetry-operator-main-opentelemetry-product-ocp-4.21-stage-images path_alias: github.com/open-telemetry/opentelemetry-operator - rerun_command: /test opentelemetry-product-ocp-4.21-downstream-images + rerun_command: /test opentelemetry-product-ocp-4.21-stage-images spec: containers: - args: @@ -556,7 +556,7 @@ presubmits: - --image-import-pull-secret=/etc/pull-secret/.dockerconfigjson - --report-credentials-file=/etc/report/credentials - --target=[images] - - --variant=opentelemetry-product-ocp-4.21-downstream + - --variant=opentelemetry-product-ocp-4.21-stage command: - ci-operator image: quay-proxy.ci.openshift.org/openshift/ci:ci_ci-operator_latest @@ -589,25 +589,26 @@ presubmits: - name: result-aggregator secret: secretName: result-aggregator - trigger: (?m)^/test( | .* )opentelemetry-product-ocp-4.21-downstream-images,?($|\s.*) + trigger: (?m)^/test( | .* )opentelemetry-product-ocp-4.21-stage-images,?($|\s.*) - agent: kubernetes always_run: true branches: - ^main$ - ^main- cluster: build06 - context: ci/prow/opentelemetry-product-ocp-4.21-stage-images + context: ci/prow/opentelemetry-product-ocp-4.22-downstream-images decorate: true decoration_config: sparse_checkout_files: - tests/e2e-openshift/Dockerfile labels: - ci-operator.openshift.io/variant: opentelemetry-product-ocp-4.21-stage + ci-operator.openshift.io/variant: opentelemetry-product-ocp-4.22-downstream ci.openshift.io/generator: prowgen + job-release: "4.22" pj-rehearse.openshift.io/can-be-rehearsed: "true" - name: pull-ci-openshift-open-telemetry-opentelemetry-operator-main-opentelemetry-product-ocp-4.21-stage-images + name: pull-ci-openshift-open-telemetry-opentelemetry-operator-main-opentelemetry-product-ocp-4.22-downstream-images path_alias: github.com/open-telemetry/opentelemetry-operator - rerun_command: /test opentelemetry-product-ocp-4.21-stage-images + rerun_command: /test opentelemetry-product-ocp-4.22-downstream-images spec: containers: - args: @@ -615,7 +616,7 @@ presubmits: - --image-import-pull-secret=/etc/pull-secret/.dockerconfigjson - --report-credentials-file=/etc/report/credentials - --target=[images] - - --variant=opentelemetry-product-ocp-4.21-stage + - --variant=opentelemetry-product-ocp-4.22-downstream command: - ci-operator image: quay-proxy.ci.openshift.org/openshift/ci:ci_ci-operator_latest @@ -648,7 +649,7 @@ presubmits: - name: result-aggregator secret: secretName: result-aggregator - trigger: (?m)^/test( | .* )opentelemetry-product-ocp-4.21-stage-images,?($|\s.*) + trigger: (?m)^/test( | .* )opentelemetry-product-ocp-4.22-downstream-images,?($|\s.*) - agent: kubernetes always_run: true branches: @@ -1273,8 +1274,9 @@ presubmits: - tests/e2e-openshift/Dockerfile - tests/test-e2e-apps/bridge-server/Dockerfile labels: - ci-operator.openshift.io/cloud: gcp - ci-operator.openshift.io/cloud-cluster-profile: gcp-observability + capability/intranet: intranet + ci-operator.openshift.io/cloud: equinix-ocp-metal + ci-operator.openshift.io/cloud-cluster-profile: equinix-ocp-metal-qe ci-operator.openshift.io/variant: upstream-ocp-4.22-amd64 ci.openshift.io/generator: prowgen job-release: "4.22" diff --git a/ci-operator/step-registry/distributed-tracing/tests/opentelemetry/downstream/distributed-tracing-tests-opentelemetry-downstream-commands.sh b/ci-operator/step-registry/distributed-tracing/tests/opentelemetry/downstream/distributed-tracing-tests-opentelemetry-downstream-commands.sh index 7c61aa8087519..ccd1797ddf75d 100644 --- a/ci-operator/step-registry/distributed-tracing/tests/opentelemetry/downstream/distributed-tracing-tests-opentelemetry-downstream-commands.sh +++ b/ci-operator/step-registry/distributed-tracing/tests/opentelemetry/downstream/distributed-tracing-tests-opentelemetry-downstream-commands.sh @@ -20,22 +20,23 @@ function notify_qe_agent() { { "step_script_ref": "distributed-tracing/tests/opentelemetry/downstream/distributed-tracing-tests-opentelemetry-downstream-commands.sh", "has_test_failures": ${has_failures}, - "env": {} + "env": { + "MULTISTAGE_PARAM_OVERRIDE_OTEL_TESTS_BRANCH": "${MULTISTAGE_PARAM_OVERRIDE_OTEL_TESTS_BRANCH:-}" + } } EOF echo "QE agent context and ${i} JUnit XML(s) written to SHARED_DIR (has_test_failures=${has_failures})" } trap notify_qe_agent EXIT -if test -f "${SHARED_DIR}/api.login"; then - eval "$(cat "${SHARED_DIR}/api.login")" -else - echo "No ${SHARED_DIR}/api.login present. This is not an HCP or ROSA cluster. Continue using \$KUBECONFIG env path." +if [[ -z "${MULTISTAGE_PARAM_OVERRIDE_OTEL_TESTS_BRANCH:-}" ]]; then + echo "ERROR: MULTISTAGE_PARAM_OVERRIDE_OTEL_TESTS_BRANCH is not set. Provide it via steps.env in the job config or via Gangway API pod_spec_options." + exit 1 fi -git clone https://github.com/IshwarKanse/opentelemetry-operator.git /tmp/otel-tests -cd /tmp/otel-tests -git checkout rhosdt-3.9 +git clone https://github.com/os-observability/opentelemetry-operator.git /tmp/otel-tests +cd /tmp/otel-tests +git checkout "${MULTISTAGE_PARAM_OVERRIDE_OTEL_TESTS_BRANCH}" #Enable user workload monitoring oc apply -f tests/e2e-openshift/otlp-metrics-traces/01-workload-monitoring.yaml @@ -106,13 +107,13 @@ tests/e2e-prometheuscr \ tests/e2e-sidecar || any_errors=true # Set the operator environment variables for metadata filters tests. -OTEL_CSV_NAME=$(oc get csv -n openshift-opentelemetry-operator | grep "opentelemetry-operator" | awk '{print $1}') -oc -n openshift-opentelemetry-operator patch csv $OTEL_CSV_NAME --type=json -p '[ +OTEL_CSV_NAME=$(oc get csv -n opentelemetry-operator-system | grep "opentelemetry-operator" | awk '{print $1}') +oc -n opentelemetry-operator-system patch csv $OTEL_CSV_NAME --type=json -p '[ {"op":"add","path":"/spec/install/spec/deployments/0/spec/template/spec/containers/0/env/-","value":{"name":"ANNOTATIONS_FILTER","value":".*filter.out,config.*.gke.io.*"}}, {"op":"add","path":"/spec/install/spec/deployments/0/spec/template/spec/containers/0/env/-","value":{"name":"LABELS_FILTER","value":".*filter.out"}} ]' sleep 60 -if oc -n openshift-opentelemetry-operator get deployment opentelemetry-operator-controller-manager -o jsonpath='{.status.conditions[?(@.type=="Available")].status}' | grep -q "True"; then +if oc -n opentelemetry-operator-system get deployment opentelemetry-operator-controller-manager -o jsonpath='{.status.conditions[?(@.type=="Available")].status}' | grep -q "True"; then echo "Operator deployment updated successfully for metadata filters, continuing script execution..." else echo "Operator deployment update for metadata filters failed, exiting with error." @@ -128,6 +129,15 @@ chainsaw test \ --test-dir \ tests/e2e-metadata-filters || any_errors=true +# Execute TLS profile tests +chainsaw test \ +--quiet \ +--report-name "junit_otel_e2e_tls_profile" \ +--report-path "$ARTIFACT_DIR" \ +--report-format "XML" \ +--test-dir \ +tests/e2e-openshift-tls-profile || any_errors=true + # Check if any errors occurred if $any_errors; then echo "Tests failed, check the logs for more details." diff --git a/ci-operator/step-registry/distributed-tracing/tests/opentelemetry/downstream/distributed-tracing-tests-opentelemetry-downstream-ref.yaml b/ci-operator/step-registry/distributed-tracing/tests/opentelemetry/downstream/distributed-tracing-tests-opentelemetry-downstream-ref.yaml index 449822b752ad0..485d392e0bf1f 100644 --- a/ci-operator/step-registry/distributed-tracing/tests/opentelemetry/downstream/distributed-tracing-tests-opentelemetry-downstream-ref.yaml +++ b/ci-operator/step-registry/distributed-tracing/tests/opentelemetry/downstream/distributed-tracing-tests-opentelemetry-downstream-ref.yaml @@ -12,5 +12,11 @@ ref: - name: SKIP_TESTS default: "" documentation: "Space seperated test cases to skip from the test run. Example tests/e2e/smoke-targetallocator tests/e2e/prometheus-config-validation" + - name: MULTISTAGE_PARAM_OVERRIDE_OTEL_TESTS_BRANCH + default: "rhosdt-3.10" + documentation: |- + The branch to checkout from os-observability/opentelemetry-operator for running downstream tests. + This parameter must be set either in the job config steps.env or via Gangway API pod_spec_options. + The job will fail if left empty. documentation: |- The distributed-tracing-tests-opentelemetry-downstream step executes the OpenTelemetry Operator Downstream tests. diff --git a/ci-operator/step-registry/distributed-tracing/tests/tempo/downstream/distributed-tracing-tests-tempo-downstream-commands.sh b/ci-operator/step-registry/distributed-tracing/tests/tempo/downstream/distributed-tracing-tests-tempo-downstream-commands.sh index 64cef7436c8ff..bd3ad5a843490 100644 --- a/ci-operator/step-registry/distributed-tracing/tests/tempo/downstream/distributed-tracing-tests-tempo-downstream-commands.sh +++ b/ci-operator/step-registry/distributed-tracing/tests/tempo/downstream/distributed-tracing-tests-tempo-downstream-commands.sh @@ -20,19 +20,15 @@ function notify_qe_agent() { { "step_script_ref": "distributed-tracing/tests/tempo/downstream/distributed-tracing-tests-tempo-downstream-commands.sh", "has_test_failures": ${has_failures}, - "env": {} + "env": { + "MULTISTAGE_PARAM_OVERRIDE_TEMPO_TESTS_BRANCH": "${MULTISTAGE_PARAM_OVERRIDE_TEMPO_TESTS_BRANCH:-}" + } } EOF echo "QE agent context and ${i} JUnit XML(s) written to SHARED_DIR (has_test_failures=${has_failures})" } trap notify_qe_agent EXIT -if test -f "${SHARED_DIR}/api.login"; then - eval "$(cat "${SHARED_DIR}/api.login")" -else - echo "No ${SHARED_DIR}/api.login present. This is not an HCP or ROSA cluster. Continue using \$KUBECONFIG env path." -fi - # Used for downstream testing. # Set the Go path and Go cache environment variables export GOPATH=/tmp/go @@ -43,9 +39,14 @@ export GOCACHE=/tmp/.cache/go-build mkdir -p /tmp/go/bin $GOCACHE \ && chmod -R 777 /tmp/go/bin $GOPATH $GOCACHE -git clone https://github.com/IshwarKanse/tempo-operator.git /tmp/tempo-tests +if [[ -z "${MULTISTAGE_PARAM_OVERRIDE_TEMPO_TESTS_BRANCH:-}" ]]; then + echo "ERROR: MULTISTAGE_PARAM_OVERRIDE_TEMPO_TESTS_BRANCH is not set. Provide it via steps.env in the job config or via Gangway API pod_spec_options." + exit 1 +fi + +git clone https://github.com/os-observability/tempo-operator.git /tmp/tempo-tests cd /tmp/tempo-tests -git checkout rhosdt-3.9 +git checkout "${MULTISTAGE_PARAM_OVERRIDE_TEMPO_TESTS_BRANCH}" make build #Enable user workload monitoring. @@ -74,6 +75,9 @@ fi # Unset environment variable which conflicts with Chainsaw unset NAMESPACE +# Initialize a variable to keep track of errors +any_errors=false + # Execute Tempo e2e tests chainsaw test \ --quiet \ @@ -86,6 +90,26 @@ tests/e2e \ tests/e2e-openshift \ tests/e2e-openshift-serverless \ tests/e2e-openshift-ossm \ -tests/e2e-long-running \ tests/e2e-openshift-object-stores \ -tests/operator-metrics +tests/e2e-long-running \ +tests/e2e-openshift-tshirt-sizes \ +tests/operator-metrics || any_errors=true + +# Execute TLS profile tests last: they patch the cluster-wide APIServer resource, +# triggering node-level TLS reconciliation that would disrupt concurrently running tests. +chainsaw test \ +--quiet \ +--config .chainsaw-openshift.yaml \ +--report-name "junit_tempo_e2e_tls_profile" \ +--report-path "$ARTIFACT_DIR" \ +--report-format "XML" \ +--test-dir \ +tests/e2e-openshift-tls-profile || any_errors=true + +# Check if any errors occurred +if $any_errors; then + echo "Tests failed, check the logs for more details." + exit 1 +else + echo "All the tests passed." +fi diff --git a/ci-operator/step-registry/distributed-tracing/tests/tempo/downstream/distributed-tracing-tests-tempo-downstream-ref.yaml b/ci-operator/step-registry/distributed-tracing/tests/tempo/downstream/distributed-tracing-tests-tempo-downstream-ref.yaml index 33a9a5c4428bc..0f7b40c656254 100644 --- a/ci-operator/step-registry/distributed-tracing/tests/tempo/downstream/distributed-tracing-tests-tempo-downstream-ref.yaml +++ b/ci-operator/step-registry/distributed-tracing/tests/tempo/downstream/distributed-tracing-tests-tempo-downstream-ref.yaml @@ -12,5 +12,11 @@ ref: - name: SKIP_TESTS default: "" documentation: "Space seperated test cases to skip from the test run. Example tests/e2e/reconcile tests/e2e/gateway" + - name: MULTISTAGE_PARAM_OVERRIDE_TEMPO_TESTS_BRANCH + default: "rhosdt-3.10" + documentation: |- + The branch to checkout from os-observability/tempo-operator for running downstream tests. + This parameter must be set either in the job config steps.env or via Gangway API pod_spec_options. + The job will fail if left empty. documentation: |- The distributed-tracing-tests-tempo-downstream step executes the Tempo Operator Downstream tests. diff --git a/ci-operator/step-registry/openshift-observability/qe-agent/README.md b/ci-operator/step-registry/openshift-observability/qe-agent/README.md index dd9da4936ec9c..7f6a6d5a839a1 100644 --- a/ci-operator/step-registry/openshift-observability/qe-agent/README.md +++ b/ci-operator/step-registry/openshift-observability/qe-agent/README.md @@ -130,17 +130,20 @@ Add `openshift-observability-qe-agent` to the `post:` phase of your test and set tests: - as: my-upstream-tests steps: - cluster_profile: + cluster_profile: env: - AGENT_SKILL: TEMPO + AGENT_SKILL: MY_TEAM # ... other env vars post: - ref: openshift-observability-qe-agent - chain: test: - ref: + workflow: ``` +> **Important**: Do not use cloud-provisioned clusters (GCP, AWS, Azure) with this step. See [Blast Radius and Risk Profile](#blast-radius-and-risk-profile) for details. + --- ## Agent Skill @@ -162,11 +165,31 @@ Each skill is fetched at runtime from `https://raw.githubusercontent.com/openshi 1. Create `ci-operator/step-registry/openshift-observability/qe-agent/skills/.md` 2. Add your team identifier to the `OWNERS` file in `skills/` -3. Open a PR to `openshift/release` — the step OWNERS review and approve it -4. Set `AGENT_SKILL: ` in your CI config +3. Validate the skill before submitting (see [Skill validation](#skill-validation)) +4. Open a PR to `openshift/release` — the step OWNERS review and approve it +5. Set `AGENT_SKILL: ` in your CI config Skill names must be alphanumeric (hyphens and underscores allowed). The step rejects any value that does not match `^[A-Za-z0-9_-]+$` to prevent path traversal. +### Skill validation + +Before submitting a new or modified skill, validate it with the following tools: + +**[Skillsaw](https://github.com/stbenjam/skillsaw)** — Linter for AI agent instruction files. Checks for security issues (embedded secrets, dangerous patterns), content quality (weak language, contradictions, attention dead zones), and structural correctness (frontmatter, instruction budget). Run it against your skill file before opening a PR: + +```bash +pip install skillsaw +skillsaw lint ci-operator/step-registry/openshift-observability/qe-agent/skills/ +``` + +**[Agent Eval Harness](https://github.com/opendatahub-io/agent-eval-harness)** — Evaluation framework for testing AI agent skill effectiveness. Use it to measure how well your skill performs against known test failure scenarios before deploying to CI: + +```bash +pip install agent-eval-harness +``` + +Both tools help catch issues early — Skillsaw identifies security risks and content quality problems in the skill definition, while Agent Eval Harness validates that the skill produces correct and useful results when executed. + ### AGENT_SKILL | Property | Value | @@ -182,6 +205,12 @@ Skill names must be alphanumeric (hyphens and underscores allowed). The step rej This step grants Claude Code CLI unrestricted Bash access inside a CI pod that holds live cluster credentials. Before adopting it, understand what Claude can and cannot do. +### Cluster requirement: non-cloud provisioned clusters only + +This step **must not be used with cloud-provisioned test clusters** (GCP, AWS, Azure, etc.). Cloud-provisioned clusters store cloud provider credentials in `kube-system` and `openshift-*` namespaces. Because the agent runs with cluster-admin privileges, it could read those credentials. Kubernetes RBAC is purely additive (no deny rules), so there is no way to grant cluster-admin while blocking secret reads in specific namespaces. + +Use non-cloud provisioned clusters (e.g., bare metal) where no cloud provider credentials are stored in the cluster, eliminating this risk entirely. + ### What Claude can do | Capability | Scope | @@ -194,6 +223,7 @@ This step grants Claude Code CLI unrestricted Bash access inside a CI pod that h ### What Claude cannot do +- **No cloud credential access** — non-cloud provisioned clusters have no cloud provider credentials stored in the cluster. There are no GCP service account keys, AWS IAM credentials, or Azure service principal secrets for Claude to read. - **No outbound HTTP** — `WebFetch` is not in `allowedTools`; Claude cannot call arbitrary external URLs. - **No git push** — no git credentials are mounted; file changes are confined to the pod. - **No cross-tenant cluster access** — RBAC bounds apply; Claude cannot reach other teams' clusters or namespaces. @@ -220,9 +250,9 @@ After every run, two files are written to `ARTIFACT_DIR` for post-incident revie The full stream-json session output (which includes cluster logs, API responses, and `--verbose` traces) is captured to a temporary file in the pod and deleted on exit — it never reaches the CI build-log or GCS. Only these two derived files, which contain no cluster data, are written to `ARTIFACT_DIR`. -### Required: private Prow deck only +### Required: non-cloud provisioned clusters -This step **must only be used with jobs backed by a private Prow deck** (login required to view artifacts). Claude reads cluster diagnostics — pod logs, events, resource specs — that may contain internal IP addresses, service URLs, error messages, and configuration details that must not be world-readable. Do not attach this step to any job whose artifacts are publicly accessible without authentication. +This step **must not be used with cloud-provisioned clusters** (GCP, AWS, Azure, etc.) — the agent runs with cluster-admin privileges and could read cloud provider credentials stored in `kube-system`. Use non-cloud provisioned clusters where no cloud credentials are present. --- @@ -249,7 +279,7 @@ env: AGENT_SKILL: TEMPO post: - ref: openshift-observability-qe-agent -- chain: cucushift-installer-rehearse-azure-ipi-deprovision +- chain: ``` **Test step trap** (in `distributed-tracing-tests-tempo-upstream-commands.sh`): diff --git a/ci-operator/step-registry/openshift-observability/qe-agent/skills/README.md b/ci-operator/step-registry/openshift-observability/qe-agent/skills/README.md new file mode 100644 index 0000000000000..99a23d305150b --- /dev/null +++ b/ci-operator/step-registry/openshift-observability/qe-agent/skills/README.md @@ -0,0 +1,178 @@ +# QE Agent Skills + +Skills are Markdown files that define how Claude Code CLI triages and debugs failing tests for a specific operator or component. Each skill is loaded at runtime as Claude's system prompt and drives an autonomous test failure analysis loop. + +This document describes the required structure and conventions that every skill must follow. Review the existing skills (`TEMPO.md`, `OTEL.md`, `TRACING_UI.md`, `DISCONNECTED.md`) as reference implementations. + +--- + +## File format + +Every skill file must start with YAML frontmatter: + +```yaml +--- +name: +description: +--- +``` + +The `name` field is a unique identifier. The `description` field should mention: +- The operator or component name +- The JUnit XML prefix (e.g., `junit_tempo_*`) +- The test framework (chainsaw, Cypress, Ginkgo, etc.) +- The trigger condition (`$SHARED_DIR/qe-agent-context.json` with `has_test_failures=true`) + +--- + +## Required sections + +Every skill must include the following sections in order. The step numbering and titles must be preserved exactly — the agent's command script references this structure. + +### Test Infrastructure Overview + +A table mapping JUnit prefixes to suites, frameworks, and source repos: + +```markdown +| JUnit prefix | Suite | Framework | Repo | +|---|---|---|---| +| `junit__*` | | | `https://github.com//` | +``` + +### Step 0 — Read Setup Context and Fetch the Step Script + +Instructions to read `${SHARED_DIR}/qe-agent-context.json`, construct the raw GitHub URL for the step script, and fetch it. Include a sample JSON showing the expected `step_script_ref` and `env` fields for your component. + +### Step 0a — Verify Cluster Stability + +MachineConfigPool readiness check with a 60-second poll loop and 20-minute timeout. This section is identical across all skills — copy it verbatim from an existing skill. + +### Step 0b — Re-establish the Test Environment + +Instructions to replay the setup section of the fetched step script. Include an adaptation table mapping script patterns to required changes: + +| Script pattern | Adaptation | +|---|---| +| `cp -R /tmp/` (image mount) | Replace with `git clone` | +| `kubectl create -f ` | Use `kubectl apply -f` | +| `oc patch csv ...` | Skip if already patched | +| `$SKIP_TESTS` block | Skip entirely | + +Add any framework-specific adaptations (e.g., `unset NAMESPACE` for chainsaw, `GOPATH` re-export, `npm install` for Cypress). + +### Step 1 — Parse JUnit XMLs and Identify Failures + +Instructions to read `${SHARED_DIR}/qe-agent-junit-*.xml`, extract failed test cases, and group by suite. Must include the **high-failure triage** rule: when more than 5 tests fail, look for a common root cause pattern before processing individually. Cap individual processing at 3 tests. + +### Step 2 — Locate Test Source Files + +Instructions to map JUnit test case names to source directories. Specify the test directory structure for your component (e.g., `tests/e2e-openshift//` for Tempo, `tests/cypress/e2e/.cy.js` for Cypress). Use `find -path` not `find -name`. + +### Step 3 — Rerun the Failing Tests + +Must include: +1. **Cleanup procedure** before each rerun — framework-specific (chainsaw namespace + clusterrole cleanup, or Cypress prerequisite verification) +2. **First rerun command** with `--report-name` writing to `${ARTIFACT_DIR}` and `--report-format XML` +3. **Flakiness confirmation loop** — if the first rerun passes, run 3 more times (4 total) with unique report names and cleanup between each run. Record the pass/fail pattern. + +For chainsaw-based skills, always include `--skip-delete` and `unset NAMESPACE`. For Cypress-based skills, include `--browser chrome --headless`. + +### Step 4 — Diagnose: Product Bug vs Test Issue + +Must include: +1. **Operator diagnostics** — pod status, logs (current + previous), CR status across all namespaces, events, CSV/subscription status +2. **CRD and API availability check** +3. **Product Bug indicators** — list of conditions that indicate an operator/operand defect +4. **Test Issue indicators** — list of conditions that indicate a broken or stale test +5. **Cluster Instability indicators** — reconciliation loop detection via debug logging, with the four-condition rule for classification. `CLUSTER_INSTABILITY` takes precedence over `FLAKY` when all four hold. + +### Step 5a — If TEST_ISSUE: Fix and Export + +Minimal test fix, copy changed files to `${ARTIFACT_DIR}/test-fixes/` preserving repo-relative paths, write `CHANGES.md` with the required template (Failing test, Root cause, Fix applied, Files changed, Verification). + +### Step 5b — If PRODUCT_BUG: Write Bug Report + +Write `${ARTIFACT_DIR}/bug-report.md` with the required template (Summary, Affected component, Reproduction, Observed/Expected behavior, Evidence with operator logs + cluster events + JUnit failure, Suggested severity). + +### Step 5c — If FLAKY: Fix and Export + +Fix the race condition or timing issue. Include framework-specific examples (chainsaw `wait` steps, Cypress `cy.intercept`/`cy.wait`). Copy changed files and write `CHANGES.md` with the pass/fail pattern as evidence. + +### Step 5d — If CLUSTER_INSTABILITY: Write Incident Note + +Write `${ARTIFACT_DIR}/cluster-instability-report.md` with summary, affected tests table, root cause, evidence, and rerun recommendation. + +### Step 6 — Write Analysis Summary + +Write `${ARTIFACT_DIR}/qe-agent-analysis.md` with these required sections: +- **Failed Tests** — table with Suite, Test Case, JUnit File +- **Rerun Result** — one line +- **Diagnosis** — bold classification + 2-3 sentences citing evidence +- **Rerun Summary** — table with Original CI run + Reruns 1-4 +- **Outcome** — per classification +- **Skill Improvement Recommendations** — deviations from skill steps, or `None.` + +### Notes for CI context + +Must state: +- The cluster is already provisioned and the operator is already installed +- The test repo is set up by Step 0b from the fetched step script +- `$KUBECONFIG` is set; list available CLI tools (oc, kubectl, chainsaw/npx/etc.) +- All output goes to `$ARTIFACT_DIR` or `$SHARED_DIR` +- The step runs `best_effort: true` — always exit 0 + +--- + +## Adding a new skill + +1. Create `skills/.md` following this structure +2. Add your team identifier to the `OWNERS` file in `skills/` +3. Validate the skill before submitting (see [Skill validation](#skill-validation)) +4. Open a PR to `openshift/release` +5. Set `AGENT_SKILL: ` in your CI config + +Skill names must match `^[A-Za-z0-9_-]+$`. The step rejects any value with other characters. + +--- + +## Skill validation + +Before submitting a new or modified skill, run these tools to catch security and quality issues early: + +### Skillsaw + +[Skillsaw](https://github.com/stbenjam/skillsaw) is a linter for AI agent instruction files. It checks for: +- **Security** — embedded secrets, API keys, tokens, or passwords in skill content +- **Content quality** — weak/vague language, contradictions, tautological instructions, attention dead zones (critical instructions buried in the middle of long files) +- **Structure** — valid frontmatter, instruction budget limits, placeholder text, broken internal references + +```bash +pip install skillsaw +skillsaw lint skills/ +``` + +Fix violations before submitting: + +```bash +skillsaw fix skills/ # Apply deterministic fixes +skillsaw fix --llm skills/ # Apply LLM-powered content improvements +``` + +### Agent Eval Harness + +[Agent Eval Harness](https://github.com/opendatahub-io/agent-eval-harness) is an evaluation framework for testing AI agent skill effectiveness. Use it to measure how well your skill performs against known test failure scenarios — verifying that the agent produces correct diagnoses, useful fixes, and structured output before the skill is deployed to CI. + +```bash +pip install agent-eval-harness +``` + +--- + +## Conventions + +- **Copy the MCP stability check (Step 0a) verbatim** — it is identical across all skills and must not be modified. +- **Operator diagnostics (Step 4) must be specific to your component** — use the correct namespace, deployment name, CR kinds, and CRD patterns for your operator. +- **Chainsaw skills must include `unset NAMESPACE`** before every `chainsaw test` call. +- **Each bash invocation starts a fresh shell** — re-declare variables (`TEST_DIR`, `GOPATH`, etc.) at the top of every bash block. +- **Use `--skip-delete` for chainsaw reruns** so resources remain on-cluster for inspection, but always clean up before the next rerun. +- **Cap analysis at 3 individual tests** when no common pattern is found in high-failure triage.