DeployHub Pro Smart Calendars

Control deployments to Environments with Smart Calendars.

Smart Environment Calendars

DeployHub Pro uses Smart Calendars to control the scheduling of deployments to the Environment. Smart Calendars are found by navigating to the Environment Dashboard View and selecting the “Calendar” Tab. Each Environment has a unique Calendar. Smart Calenders use events that allow you to schedule deployment for ‘Auto Deploy’, schedule a Task for an on-demand deployment, or block the Calendar to prevent a deployment. Smart Calendars allow for a no-touch approval process driven by your continuous delivery pipeline. If an Environment Owner needs to block the Calendar, your CI/CD process will be blocked from executing the deployment. Once the Calendar has been re-opened, the deployments will once again be allowed brining the Application Version to the correct state. Each Environment has its own Calendar that can be used to:

  • Automatically deploy an Application or Release into the Environment on a certain date and time.
  • Reserve a date to deploy on-demand an Application or Release, preventing other Users from performing deployments into the same Environment.
  • Block a timeframe from receiving any Application or Release deployments.
  • Open a timeframe to auto-approve an Application or Release deployment.

When viewing a Calendar by Month, Week, or Day you can click on a place within a selected day and drag the mouse pointer down in order to select the time span for the event. A light blue area appears, covering the selected time. Right click on this area and select “Create New Event.” A pop-up window appears with buttons that are used to set the selected time period to one of the three types listed above.

Availability Field

The “Availability” field controls access to the Environments. You either close or open the Calendar for deployment events.

  • Available Unless Denied by Calendar – Selecting this option opens the Calendar for deployments at any time. To restrict a deployment, you would add a “Unavailable” Event for a specified period.

  • Always UnAvailable Unless Allowed by Calendar – Selecting this option closes the Calendar for deployments. To open a period for deployment, you would add an “Available” Event for a specified period.

AutoDeploy

DeployHub Pro allows for a scheduled deployment using the Environment’s Calendar, which is referred to as an “AutoDeploy.” If AutoDeploy is selected, a drop-down list allows the selection of an Application or Release to be deployed beginning at the designated Start Time. Not only does the Calendar automatically run the deployment at the designated Start Time, it also keeps any other deployments from taking place in the designated Environment during that time period.

Reserved

If Reserved is selected, only the Application or Release that is selected via the drop-down list can be deployed to the Environment between the Start Time and End Time. No other deployments can take place in the Environment during this period. After a Reserved event has been created, a Task within a Domain in the tree structure can be used to run the deployment using a Deploy Task.

Unavailable

If Unavailable is selected, no deployments can take place in the Environment between the Start Time and End Time. This can be used to block out time to perform administrative duties such as backups, restores, etc.

Calendar at Continuous Deployment Availability

You can auto-approve deployments for your continuous delivery pipeline by setting your “Availability” field to “Always Available Unless Denied by Calendar.” When your CI/CD engine pushes the deployment, DeployHub will first check the Calendar to see if it is available. If not, the deployment will fail and send a message. The next time around, if the Calendar is open, the deployment will execute, jumping versions to the correct state.

The DeployHub Calendar allows you to control deployments into each Environment. Every Environment has a private Calendar which allows Users the ability to:

  • Automatically deploy a Release or Application into that Environment on a given date and time.
  • Reserve a period of time in order to manually deploy a Release Version or Application Version, preventing other Users from deploying into the same Environment.
  • Make the Calendar unavailable for any Release Versions or Application Versions.

Scheduling a Deployment

When viewing by Month, Week, or Day, click within a selected day and drag the mouse pointer down in order to select the time span for the event. A blue area appears covering the selected time. Right click on the area and select ‘Create New Event’. This brings up a window with the following fields:

Field Description
Start Time The date and time for the beginning of the Reserved period, the beginning of the Unavailable period, or for the Application or Release to be AutoDeployed, depending on which button was selected. The Start Time and End Time are standardized to Greenwich Mean Time, so no matter where in the world the User is located, DeployHub stores the time in such a manner that the User’s browser will display the correct local time for the deployment, while synchronizing all Users to the same schedule.
End Time The date and time for the end of the Reserved period or the end of the Unavailable period, depending on which button was selected.
Reserved Blocks out the time so that only the specified Application or Release can be deployed to that environment during that time period.
Unavailable Nothing can be deployed to the Environment during a designated time period, such as when Endpoints are down for maintenance.
AutoDeploy Automatically deploy the Application or Release selected from the list above at this date and time.
Event Name A name for the event that shows up on the Calendar for organizing deployments at a glance.
Deploy Type Either Application or Release. Causes a list of one or the other to appear accordingly.
Application or Release Depending on what was chosen in the Deploy Type field, a list of all the Applications or Releases that have been assigned to this Environment. Select from this list to deploy it at the designated date and time.
Description Free form text that contains more details on the deployment.

Calendar Color Grid

Once an event has been scheduled, it will be represented by a color box on the Calendar. Below are the definitions for the different colors you will see on the Calendar.

Color Calendar Type
Black Represents a time period where the Endpoints are unavailable.
Orange Represents a scheduled deployment.
Blue Represents a reservation for a scheduled deployment.
Grey Represents a reservation or deployment that needs to be approved.

Last modified June 26, 2020: updated chapter headings (908e224)