Managing pipeline gates
Gates ensure that orchestrations cannot be started in an environment until the gate rule is satisfied.
A gate is a condition that determines whether an application can run in the
environment. A pipeline can have some environments with gates and some without
gates. A gate condition is called a rule. You can define a rule type based on the
following criteria:
- Approver gate requires one or more responders to
approve an application version before it can run in an environment.
Approving a gate rule is considered passing the gate.Note: Anyone with access to the pipeline can create gates and be assigned as a responder. Scenarios detailing approval and rejection of application versions by responders are detailed below.
- If a gate has multiple responders, one approval is sufficient for the application version to pass the gate.
- If one responder rejects the application version, the application is rejected.
- If responders both approve and reject the application version, the application is rejected.
- When you add gates to an environment, all application versions in the affected environment must be approved before a deployment can be started. You can override a failed gate, that is, a rejected application version and you may want to do this when you run applications in a test environment.
- Metric gate leverages a metric-based system allowing
you to automatically stop or advance application versions from being
deployed into environments based on set conditions for the rule.Note: Using the metric rule type will provide you with visibility on the movement status of application versions and automated governance across your pipeline.
- Compliance gate enables you to control the deployment of application
versions into different environments based on the conditions of the
compliance rule.Note:
- Currently under the Compliance gate, you can only create a rule for pull request approval.
- Compliance rules are enabled only for the following type of
applications:
- Applications added by Jenkins (Legacy) plug-in.
- Applications added by Jenkins plug-in.
- Application added by external HCL Launch and external UrbanCode Deploy plug-ins and built using Jenkins. Ensure that the build details are pushed to IBM™ UrbanCode Velocity using the UCD Jenkins publisher or pipeline plug-ins.