Deployment Freeze is a Harness Governance feature that stops all Harness deployments. A deployment freeze helps ensure stability during periods of low engineering and support activity, such as holidays, trade shows, or company events.
In this topic:
- Before You Begin
- Deployment Freeze Overview
- Add a Freeze Window
- Enable Deployment Freeze
- Edit a Freeze Window
- Delete a Freeze Window
- Verify Deployment Freeze
- Disable Deployment Freeze
- Upgrade from a Harness Trial
- Next Steps
Before You Begin
Deployment Freeze Overview
Typically, the more automated a deployment is, the safer it becomes. Automated deployments remove the errors that cause risk because they are a continual process.
Yet, there are times when even the few personnel needed for Harness deployments are occupied with other events, such as holidays. In these cases, freezing deployments helps prevent deployments from introducing new issues.
Freezing Harness deployments does not mean that changes aren't happening in the deployment environment. User and system events are always taking place, and your microservice dependencies remain active.
When a deployment freeze window is enabled:
- Deployments cannot be started manually or using a Trigger.
- Active deployments are allowed to complete.
- During execution if a Pipeline hits a stage with an Environment that has a deployment freeze enabled, then the Pipeline gets rejected. You can resume the rejected Pipelines from the previous state once the deployment freeze window is over. See Resume Pipeline Deployments.
- If a Pipeline or a Workflow hits a stage with an Environment that has a deployment freeze enabled before the execution starts, then you need to Trigger the deployment again. You can Trigger the deployment once the deployment freeze window is over. See Trigger Workflows and Pipelines.
Add a Freeze Window
Perform the following steps to add a Freeze Window:
- In the Deployment Governance page, click Add freeze window.
- In Deployment Freeze Window, in Name, enter a name for your freeze window.
- In Freeze Window, select Applications and Environment Type to restrict the Deployment Freeze Window to one or multiple Harness Applications.
- In Application, select the application. You can select multiple Applications.
- In Environment Type, select the environment type.
- In Environment, select the Environment. Environment(s) option is enabled only if you select a Harness Application and Specific Environment(s) in the Environment Type.
- Click Add Row to add more Applications, Environment Type, and Environment.
- Select Time Zone from the drop-down list.
- Use the date picker to set a start and end date and time. The freeze window should be of minimum 30 minutes.
The Specific Date Range that you set is implemented as midnight to midnight, UTC.
- In User Groups select the user group to notify the deployment freeze window. For information on setting up the notification channels for a User Group, see User Notifications and Alert Settings.
The added user group is notified of the activation and deactivation of the deployment freeze window.
The Deployment Governance page now displays the Deployment Freeze Window that you've set.
Enable Deployment Freeze
Perform the following steps to freeze both manual and Trigger-based deployments:
- In Harness Manager, in Security, select Governance. The Deployment Governance settings appear.
- Slide the Disable all deployments slider to ON to enable the deployment freeze.If the Deployment Freeze is set to ON, then all the deployments are frozen and the scheduled Deployment Freeze Windows are not used. The scheduled deployment freeze window gets overridden.
- In Deployment Governance, in Deployment Freeze Windows, slide the slider to ON for the deployment freeze window for which you want to enable the deployment freeze.
- You can also view Last Updated By and all the scheduled Deployment Freeze Windows details.
Edit a Freeze Window
To Edit a scheduled Deployment Freeze Window:
- In Deployment Governance page, in the scheduled freeze window, click the More Options ⋮
- Click Edit.
- Follow the steps in Add a Freeze Window to edit the settings.
Delete a Freeze Window
To Delete a scheduled Deployment Freeze Window:
- In Deployment Governance page, in the scheduled freeze window, click the More Options :
- Click Delete.
- Click Confirm.
Verify Deployment Freeze
When the Deployment Freeze setting is enabled, the Start New Deployment button is disabled in Continuous Deployments.
The following other Harness Manager elements are also disabled:
- Rerun deployment button in Deployments.
- Deploy button in Workflow.
- Deploy button in Pipeline.
If the Deployment Freeze setting is not enabled, but a Deployment Freeze Window is in effect, the Start New Deployment button is not disabled but an error message appears when it is clicked.
Disable Deployment Freeze
To disable Deployment Freeze (including any scheduled Freeze Windows), just move the Disable all deployment page's slider back to OFF, and then click Confirm when prompted.
Upgrade from a Harness Trial
If you enable Deployment Freeze while you are using Harness Community Edition, and then upgrade to Harness Essentials or Professional, your Deployment Freeze settings are retained but not applied at runtime in the Professional Edition. You must re-enable the Deployment Freeze in Harness Professional.
Review the following Harness features that help you monitor and control deployments: