-
Notifications
You must be signed in to change notification settings - Fork 2.2k
SRVKP-11810: Add OpenShift CI configuration for openshift-pipelines/release-tests-ginkgo #79867
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,5 @@ | ||
| approvers: | ||
| - srivickynesh | ||
| options: {} | ||
| reviewers: | ||
| - srivickynesh |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,54 @@ | ||
| base_images: | ||
| cli: | ||
| name: "4.21" | ||
| namespace: ocp | ||
| tag: cli | ||
| build_root: | ||
| image_stream_tag: | ||
| name: release | ||
| namespace: openshift | ||
| tag: rhel-9-release-golang-1.24-openshift-4.21 | ||
| images: | ||
| items: | ||
| - context_dir: . | ||
| dockerfile_path: Dockerfile.CI | ||
| to: openshift-pipelines-ginkgo-runner | ||
| releases: | ||
| latest: | ||
| release: | ||
| architecture: amd64 | ||
| channel: stable | ||
| version: "4.21" | ||
| resources: | ||
| '*': | ||
| limits: | ||
| memory: 4Gi | ||
| requests: | ||
| cpu: 100m | ||
| memory: 200Mi | ||
| tests: | ||
| - as: openshift-pipelines-e2e-osp | ||
| cron: 0 0 * * * | ||
| reporter_config: | ||
| channel: '#tektoncd-pipeline-ci' | ||
| job_states_to_report: | ||
| - success | ||
| - failure | ||
| - error | ||
| report_template: '{{if eq .Status.State "success"}} :slack-green: Job *{{.Spec.Job}}* | ||
| ended with *{{.Status.State}}*. <{{.Status.URL}}|View logs> {{else}} :failed: | ||
| Job *{{.Spec.Job}}* ended with *{{.Status.State}}*. <{{.Status.URL}}|View logs> | ||
| {{end}}' | ||
| steps: | ||
| cluster_profile: aws-osp-qe | ||
| env: | ||
| BASE_DOMAIN: psi.ospqa.com | ||
| test: | ||
| - ref: openshift-pipelines-ginkgo-install | ||
| - ref: openshift-pipelines-ginkgo-tests | ||
| workflow: ipi-aws | ||
| zz_generated_metadata: | ||
| branch: main | ||
| org: openshift-pipelines | ||
| repo: release-tests-ginkgo | ||
| variant: openshift-pipelines-ocp4.21-e2e-osp | ||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,5 @@ | ||
| approvers: | ||
| - srivickynesh | ||
| options: {} | ||
| reviewers: | ||
| - srivickynesh |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,97 @@ | ||
| periodics: | ||
| - agent: kubernetes | ||
| cluster: build07 | ||
| cron: 0 0 * * * | ||
| decorate: true | ||
| decoration_config: | ||
| sparse_checkout_files: | ||
| - Dockerfile.CI | ||
| extra_refs: | ||
| - base_ref: main | ||
| org: openshift-pipelines | ||
| repo: release-tests-ginkgo | ||
| sparse_checkout_files: | ||
| - Dockerfile.CI | ||
| labels: | ||
| ci-operator.openshift.io/cloud: aws | ||
| ci-operator.openshift.io/cloud-cluster-profile: aws-osp-qe | ||
| ci-operator.openshift.io/variant: openshift-pipelines-ocp4.21-e2e-osp | ||
| ci.openshift.io/generator: prowgen | ||
| pj-rehearse.openshift.io/can-be-rehearsed: "true" | ||
| name: periodic-ci-openshift-pipelines-release-tests-ginkgo-main-openshift-pipelines-ocp4.21-e2e-osp-openshift-pipelines-e2e-osp | ||
| reporter_config: | ||
| slack: | ||
| channel: '#tektoncd-pipeline-ci' | ||
| job_states_to_report: | ||
| - success | ||
| - failure | ||
| - error | ||
| report_template: '{{if eq .Status.State "success"}} :slack-green: Job *{{.Spec.Job}}* | ||
| ended with *{{.Status.State}}*. <{{.Status.URL}}|View logs> {{else}} :failed: | ||
| Job *{{.Spec.Job}}* ended with *{{.Status.State}}*. <{{.Status.URL}}|View | ||
| logs> {{end}}' | ||
| spec: | ||
| containers: | ||
| - args: | ||
| - --gcs-upload-secret=/secrets/gcs/service-account.json | ||
| - --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=openshift-pipelines-e2e-osp | ||
| - --variant=openshift-pipelines-ocp4.21-e2e-osp | ||
| 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: /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 | ||
| - 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 |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,60 @@ | ||
| presubmits: | ||
| openshift-pipelines/release-tests-ginkgo: | ||
| - agent: kubernetes | ||
| always_run: true | ||
| branches: | ||
| - ^main$ | ||
| - ^main- | ||
| cluster: build01 | ||
| context: ci/prow/openshift-pipelines-ocp4.21-e2e-osp-images | ||
| decorate: true | ||
| decoration_config: | ||
| sparse_checkout_files: | ||
| - Dockerfile.CI | ||
| labels: | ||
| ci-operator.openshift.io/variant: openshift-pipelines-ocp4.21-e2e-osp | ||
| ci.openshift.io/generator: prowgen | ||
| pj-rehearse.openshift.io/can-be-rehearsed: "true" | ||
| name: pull-ci-openshift-pipelines-release-tests-ginkgo-main-openshift-pipelines-ocp4.21-e2e-osp-images | ||
| rerun_command: /test openshift-pipelines-ocp4.21-e2e-osp-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] | ||
| - --variant=openshift-pipelines-ocp4.21-e2e-osp | ||
| 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( | .* )openshift-pipelines-ocp4.21-e2e-osp-images,?($|\s.*) |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,5 @@ | ||
| approvers: | ||
| - srivickynesh | ||
| options: {} | ||
| reviewers: | ||
| - srivickynesh |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,28 @@ | ||
| #!/bin/bash | ||
| set -euxo pipefail; shopt -s inherit_errexit | ||
|
|
||
| # Login to the cluster | ||
| if [ -s "${KUBECONFIG:-}" ]; then | ||
| oc whoami | ||
| else | ||
| # Login for ROSA & Hypershift platforms | ||
| (set +x; eval "$(cat "${SHARED_DIR}/api.login")") | ||
| fi | ||
|
|
||
| cd /tmp/release-tests-ginkgo | ||
|
|
||
| # Install OpenShift Pipelines operator via OLM using the Ginkgo install suite | ||
| (set +x | ||
| CONSOLE_URL="$(oc whoami --show-console)" | ||
| API_URL="$(oc whoami --show-server)" | ||
| export CONSOLE_URL API_URL | ||
| export CHANNEL="${OLM_CHANNEL:-latest}" | ||
| set -x | ||
| ginkgo run \ | ||
| --label-filter=install \ | ||
| --timeout="${INSTALL_TIMEOUT:-30m}" \ | ||
| --junit-report="${ARTIFACT_DIR}/junit-openshift-pipelines-ginkgo-install.xml" \ | ||
| --output-dir="${ARTIFACT_DIR}" \ | ||
| -v \ | ||
| ./tests/olm/ | ||
| ) |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,11 @@ | ||
| { | ||
| "path": "openshift-pipelines/ginkgo-install/openshift-pipelines-ginkgo-install-ref.yaml", | ||
| "owners": { | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. use owner file in repo to sync the reviewers
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Aligned now. Should we add a few additional members? |
||
| "approvers": [ | ||
| "srivickynesh" | ||
| ], | ||
| "reviewers": [ | ||
| "srivickynesh" | ||
| ] | ||
| } | ||
| } | ||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,21 @@ | ||
| ref: | ||
| as: openshift-pipelines-ginkgo-install | ||
| from: openshift-pipelines-ginkgo-runner | ||
| commands: openshift-pipelines-ginkgo-install-commands.sh | ||
| grace_period: 10m | ||
| resources: | ||
| requests: | ||
| cpu: '1' | ||
| memory: 500Mi | ||
| env: | ||
| - name: OLM_CHANNEL | ||
| default: latest | ||
| documentation: |- | ||
| OLM channel selected for the openshift-pipelines operator installation. | ||
| - name: INSTALL_TIMEOUT | ||
| default: "30m" | ||
| documentation: |- | ||
| Timeout for the Ginkgo install suite (e.g. 30m, 1h). | ||
| documentation: |- | ||
| Installs the OpenShift Pipelines operator via OLM using the Ginkgo-based | ||
| release-tests-ginkgo test suite (tests/olm/). |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,5 @@ | ||
| approvers: | ||
| - srivickynesh | ||
| options: {} | ||
| reviewers: | ||
| - srivickynesh |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,27 @@ | ||
| #!/bin/bash | ||
| set -euxo pipefail; shopt -s inherit_errexit | ||
|
|
||
| # Login to the cluster | ||
| if [ -s "${KUBECONFIG:-}" ]; then | ||
| oc whoami | ||
| else | ||
| # Login for ROSA & Hypershift platforms | ||
| (set +x; eval "$(cat "${SHARED_DIR}/api.login")") | ||
| fi | ||
|
|
||
| cd /tmp/release-tests-ginkgo | ||
|
|
||
| # Run OpenShift Pipelines e2e tests using Ginkgo label filter | ||
| (set +x | ||
| CONSOLE_URL="$(oc whoami --show-console)" | ||
| API_URL="$(oc whoami --show-server)" | ||
| export CONSOLE_URL API_URL | ||
| set -x | ||
| ginkgo run \ | ||
| --label-filter="${GINKGO_LABEL_FILTER:-e2e && !disconnected}" \ | ||
| --timeout="${TEST_TIMEOUT:-60m}" \ | ||
| --junit-report="${ARTIFACT_DIR}/junit-openshift-pipelines-ginkgo-tests.xml" \ | ||
| --output-dir="${ARTIFACT_DIR}" \ | ||
| -v \ | ||
| ./tests/... | ||
| ) |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,11 @@ | ||
| { | ||
| "path": "openshift-pipelines/ginkgo-tests/openshift-pipelines-ginkgo-tests-ref.yaml", | ||
| "owners": { | ||
| "approvers": [ | ||
| "srivickynesh" | ||
| ], | ||
| "reviewers": [ | ||
| "srivickynesh" | ||
| ] | ||
| } | ||
| } |
| Original file line number | Diff line number | Diff line change | ||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| @@ -0,0 +1,23 @@ | ||||||||||||||||
| ref: | ||||||||||||||||
| as: openshift-pipelines-ginkgo-tests | ||||||||||||||||
| from: openshift-pipelines-ginkgo-runner | ||||||||||||||||
| commands: openshift-pipelines-ginkgo-tests-commands.sh | ||||||||||||||||
| grace_period: 10m | ||||||||||||||||
| resources: | ||||||||||||||||
| requests: | ||||||||||||||||
| cpu: '1' | ||||||||||||||||
| memory: 500Mi | ||||||||||||||||
| env: | ||||||||||||||||
| - name: GINKGO_LABEL_FILTER | ||||||||||||||||
| default: "e2e && !disconnected" | ||||||||||||||||
| documentation: |- | ||||||||||||||||
| Ginkgo label filter expression used to select which tests to run. | ||||||||||||||||
| Defaults to all e2e tests excluding disconnected scenarios. | ||||||||||||||||
| Examples: "sanity", "smoke", "e2e", "e2e && !disconnected", "pipelines || triggers". | ||||||||||||||||
| - name: TEST_TIMEOUT | ||||||||||||||||
| default: "60m" | ||||||||||||||||
| documentation: |- | ||||||||||||||||
| Timeout passed to ginkgo for the full test run (e.g. 60m, 2h). | ||||||||||||||||
| documentation: |- | ||||||||||||||||
| Runs OpenShift Pipelines e2e tests using the Ginkgo-based | ||||||||||||||||
| release-tests-ginkgo test suite (tests/...) via scripts/run-tests.sh. | ||||||||||||||||
|
Comment on lines
+21
to
+23
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Fix the step documentation to match the actual entrypoint. This ref says the suite runs via 📝 Suggested doc fix documentation: |-
Runs OpenShift Pipelines e2e tests using the Ginkgo-based
- release-tests-ginkgo test suite (tests/...) via scripts/run-tests.sh.
+ release-tests-ginkgo test suite (tests/...) by invoking `ginkgo run`
+ from the step command script.📝 Committable suggestion
Suggested change
🤖 Prompt for AI Agents |
||||||||||||||||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,11 @@ | ||
| # DO NOT EDIT; this file is auto-generated using https://github.com/openshift/ci-tools. | ||
| # Fetched from https://github.com/openshift-pipelines/release-tests-ginkgo root OWNERS | ||
| # If the repo had OWNERS_ALIASES then the aliases were expanded | ||
| # Logins who are not members of 'openshift' organization were filtered out | ||
| # See the OWNERS docs: https://git.k8s.io/community/contributors/guide/owners.md | ||
|
|
||
| approvers: | ||
| - srivickynesh | ||
| options: {} | ||
| reviewers: | ||
| - srivickynesh |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,18 @@ | ||
| external_plugins: | ||
| openshift-pipelines/release-tests-ginkgo: | ||
| - endpoint: http://cherrypick | ||
| events: | ||
| - issue_comment | ||
| - pull_request | ||
| name: cherrypick | ||
| plugins: | ||
| openshift-pipelines/release-tests-ginkgo: | ||
| plugins: | ||
| - trigger | ||
| triggers: | ||
| - org_invite: | ||
| prominent: {} | ||
| repos: | ||
| - openshift-pipelines/release-tests-ginkgo | ||
| trusted_apps: | ||
| - openshift-merge-bot |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is a cron job. Could you confirm if the intention is for PR CI or weekly jobs?