-
Story
-
Resolution: Done
-
Major
-
None
-
None
-
None
-
None
-
False
-
None
-
False
-
SECFLOWOTL-24 - Openshift Builds (Shipwright) : GA v1.0
-
-
-
Pipeline Integrations #3245
Story (Required)
<Describes high level purpose and goal for this story. Answers the questions: Who is impacted, what is it and why do we need it? How does it improve the customer’s experience?>
As a cluster admin trying to install Shipwright Builds I want the operator to deploy and manage its conversion webhook so that I can use the v1beta1 API.
Background (Required)
<Describes the context or background related to this story>
When BUILD-648 is complete, Shipwright Builds will deploy a conversion webhook that requires a certificate authority to communicate with the Kubernetes apiserver. Builds is not opinionated about how that CA is generated.
The upstream operator should be enhanced to deploy the conversion webhook and give the admin options as to how the CA is generated/managed. For MVP, the operator should provide the following options
- Self-managed: Admins must provide the TLS certificate authority and keypair in a pre-defined location
- OpenShift: use OpenShift's mechanisms for injecting service certificate authorities.
Out of scope
<Defines what is not included in this story>
- Support for cert-manager - this should be a follow-up enhancement taken up by the community.
Approach (Required)
<Description of the general technical path on how to achieve the goal of the story. Include details like json schema, class definitions>
OPEN QUESTION: Does OLM handle CAs for webhooks if we are on OpenShift?
- Update operator's release.yaml to a nightly build that includes the conversion webhook
- Extend the `ShipwrightBuild` operator's API to let the webhook CA be configurable, using a Strategy pattern
- Implement the following CA strategies:
- Self - self managed
- OpenShift - use OpenShift ca injection labels
Dependencies
<Describes what this story depends on. Dependent Stories and EPICs should be linked to the story.>
Acceptance Criteria (Mandatory)
<Describe edge cases to consider when implementing the story and defining tests>
<Provides a required and minimum list of acceptance tests for this story. More is expected as the engineer implements this story>
- "Self" - operator deploys webhook with self-managed certificate authorities
- "OpenShift" - operator deploys webhook with OpenShift managed certificate authorities
- The operator reports the "Available: True" status condition if the build controller and conversion webhook have been deployed with valid configurations
- The operator reports the "Available: False" status condition if either the build controller or the webhook are not deployed with valid configurations.
INVEST Checklist
Dependencies identified
Blockers noted and expected delivery timelines set
Design is implementable
Acceptance criteria agreed upon
Story estimated
Legend
Unknown
Verified
Unsatisfied
Done Checklist
- Code is completed, reviewed, documented and checked in
- Unit and integration test automation have been delivered and running cleanly in continuous integration/staging/canary environment
- Continuous Delivery pipeline(s) is able to proceed with new code included
- Customer facing documentation, API docs etc. are produced/updated, reviewed and published
- Acceptance criteria are met
- depends on
-
BUILD-647 Phase II - Conversion Webhook for v1alpha1/v1beta1 API
- Closed
-
BUILD-648 Phase I - Conversion Webhook for v1alpha1/v1beta1 API
- Closed
-
BUILD-705 Operator: Update Release Manifest to pre-webhook nightly release
- Closed
- is depended on by
-
BUILD-653 Set Up CPaaS Pipeline for Shipwright Conversion webhook
- Closed
- links to