-
Story
-
Resolution: Done
-
Normal
-
None
Story (Required)
Openshift api objects are used in ArgoCD CRD to define some openshift resources like routes, deployment configs, etc. The Openshift API schema used is very old. Upgrade the github.com/openshift/api dep to use latest Openshift API schema.
Background and Approach (Required)
Older route api supported `Disable` as value for `.spec.tls.insecureEdgeTerminationPolicy`, however, in latest route api, lowest version tested is OCP 4.12, it is renamed to `None`. Since the API schema is not up to date in operator source, setting this field in ArgoCD CR results into failure as the Operator is not able to create the route object on the cluster. Additionally, the new field `.spec.tls.externalCertificate` field in latest route api is required for the parent epic.
More details: https://github.com/redhat-developer/gitops-operator/pull/780#discussion_r1827199290
Acceptance Criteria (Mandatory)
- github.com/openshift/api is updated in go.mod (ref: https://github.com/argoproj-labs/argocd-operator/pull/1547#discussion_r1778313288 )
- breaking changes are identified and documented
Definition of Done
- Code Complete:
- All code has been written, reviewed, and approved.
- Tested:
- Unit tests have been written and passed.
- Ensure code coverage is not reduced with the changes.
- Integration tests have been automated.
- System tests have been conducted, and all critical bugs have been fixed.
- Tested and merged on OpenShift either upstream or downstream on a local build.
- Documentation:
- User documentation or release notes have been written (if applicable).
- Build:
- Code has been successfully built and integrated into the main repository / project.
- Midstream changes (if applicable) are done, reviewed, approved and merged.
- Review:
- Code has been peer-reviewed and meets coding standards.
- All acceptance criteria defined in the user story have been met.
- Tested by reviewer on OpenShift.
- Deployment:
- The feature has been deployed on OpenShift cluster for testing.