-
Story
-
Resolution: Unresolved
-
Undefined
-
None
-
None
-
8
-
False
-
None
-
False
-
-
Story (Required)
At present, there exist no E2E tests that verify the functionality of rollouts-plugin-trafficrouter-openshift
In order to verify that this functionality works, we should contribute those.
Ideally these E2E tests should run on:
- Every PR as part of rollouts-plugin-trafficrouter-openshift
- Every PR as part of argo-rollouts-manager
Also ideally, the E2E tests would look similar/same to the other Argo Rollouts E2E tests that exist (https://github.com/argoproj/argo-rollouts/blob/31fe59bc0848e68d1a64b912449c3f6a8f85af50/test/e2e/canary_test.go#L33)
The main problem for us is that we need to run these on OpenShift, and we can't run OpenShift on the any 'argoproj-labs' repos.
So our options are:
- A) Make the E2E tests work with generic Kubernetes, probably by 'kubectl apply-ing' Routes on a non-openshift clusterr
- Will this work? Maybe. Is it a hack, absolutely.
- B) OR, contribute the tests as part of gitops-operator repo.
- However, I really don't like B), because this means the E2E tests will only run weeks or months after the original change was made in rollouts-plugin-trafficrouter-openshift or rollouts-manage repos.
- C) OR, perhaps, a job that will automatically open a PR (or update an existing PR) against the gitops-operator repository whenever a commit is merged to rollouts-manager repo
- Update go.mod, and any other constants that point to argo rollouts
Acceptance Criteria:
- Brainstorm any other better options besides A and B.
- Take a look at the feasibility of incorporating the openshift routes plugin into upstream Argo Rollouts
- For example, are there OTHER vendors plugins that are incorporated?
- From refinement discussion, it sounds like no, that plugins are intended to live outside of upstream Rollouts distribution
- We could likewise investigate, or consider, whether we want to add a reference to our OpenShift Routes plugin to upstream doc page: https://argo-rollouts.readthedocs.io/en/stable/analysis/plugins/
- Check out this previous PR conversation re non-plugin integration: https://github.com/argoproj/argo-rollouts/pull/1301
- Investigate whether it is possible to 'kubectl apply' the OpenShift Route CR to generic Kubernetes (k3s).
- If it is possible, investigate how to create E2E tests using this
- For example, are there OTHER vendors plugins that are incorporated?
- Present results of investigation to team in the venue/medium of your choice