-
Notifications
You must be signed in to change notification settings - Fork 292
ci-operator: allow users to inject the oc cli into test steps #1296
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
ci-operator: allow users to inject the oc cli into test steps #1296
Conversation
2e33c23 to
87bf920
Compare
|
/test e2e |
ae1dca4 to
0811a74
Compare
|
@stevekuznetsov: The following test failed, say
Full PR test history. Your PR dashboard. DetailsInstructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here. |
:( |
Signed-off-by: Steve Kuznetsov <[email protected]>
0811a74 to
ba5b2f5
Compare
|
This should now be ready. |
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: alvaroaleman, stevekuznetsov The full list of commands accepted by this bot can be found here. The pull request process is described here DetailsNeeds approval from an approver in each of these files:
Approvers can indicate their approval by writing |
…o multi-step Using the openshift-e2e-gcp workflow and overriding the test step per [1] to run our operator tests instead of the usual e2e suite. I've dropped "cincinnati" from the job name, because this presubmit only runs in the cincinnati-operator repository. The fact that it is operator-e2e is sufficient to distinguish from other presubmits in that repository. I've dropped "aws" from the job name, because we are platform-agnostic (see ci-operator/platform-balance). The 'cli: initial' property injects 'oc' into the step container [2,3], because we need 'oc', a Go toolchain, and our source checkout to run the CI suite. The dependencies avoid [4]: $ curl -s https://storage.googleapis.com/origin-ci-test/pr-logs/pull/openshift_release/12486/rehearse-12486-pull-ci-openshift-cincinnati-operator-master-operator-e2e/1318745953997426688/build-log.txt | grep -1 'into stable\|panic' 2020/10/21 02:51:30 Build cincinnati-graph-data-container succeeded after 1m28s 2020/10/21 02:51:30 Tagging cincinnati-graph-data-container into stable 2020/10/21 02:51:49 Build cincinnati-operator succeeded after 1m47s 2020/10/21 02:51:49 Tagging cincinnati-operator into stable 2020/10/21 02:51:50 Create release image registry.build01.ci.openshift.org/ci-op-qwfkx85i/release:latest -- I1021 03:29:37.177795 4880 utils.go:121] Waiting for full availability of cincinnati-operator deployment (0/1) panic: test timed out after 10m0s because of: $ curl -s https://gcsweb-ci.apps.ci.l2s4.p1.openshiftapps.com/gcs/origin-ci-test/pr-logs/pull/openshift_release/12486/rehearse-12486-pull-ci-openshift-cincinnati-operator-master-operator-e2e/1318745953997426688/artifacts/operator-e2e/gather-extra/pods.json | jq -r '.items[] | select(.metadata.name | startswith("cincinnati-operator-")).status.containerStatuses[].state.waiting.message' Back-off pulling image "registry.svc.ci.openshift.org/ci-op-qwfkx85i/stable:cincinnati-operator" The failure is because the operator-repo-hard-coded registry.svc.ci.openshift.org default does not match the registry.build01.ci.openshift.org where the CI operator was injecting the images. By using explicit dependency images, we drop our reliance on the unreliable operator-repo-hard-coded values. I'm also setting OPERAND_IMAGE to the most recent published image: $ skopeo inspect docker://quay.io/app-sre/cincinnati@sha256:d1d2f881bce1a1375ec8470133ee0a912164b8a7ecce19aac24d24e623aef59b | jq -r .Created 2020-10-12T17:08:41.179845937Z In a future pivot we'll pull the operand image out of CI too, instead of hard-coding. But with this change we at least move the hard-coding into the CI repository. And I'm clearing OPENSHIFT_BUILD_NAMESPACE, because hack/deploy.sh uses it to clobber both OPERATOR_IMAGE and GRAPH_DATA_IMAGE [4], and we don't want those clobbered anymore. Once we have green CI, we can update the operator repo to simplify the logic. Generated by editing ci-operator/config and then running: $ make update [1]: https://steps.ci.openshift.org/help#config [2]: openshift/ci-tools#1296 [3]: https://docs.ci.openshift.org/docs/architecture/step-registry/#injecting-the-oc-cli [4]: https://github.com/openshift/cincinnati-operator/blob/8fce9de9dfe004249b9b19a83d1cbec3c4095965/hack/deploy.sh#L11
Signed-off-by: Steve Kuznetsov [email protected]
This implements DPTP-1242