FlexDeploy offers deploy-time integration with ServiceNow for tying change tickets to deployment requests, and/or creating incidents upon deployment failure. In the future FlexDeploy may support other Change Management Systems, but as of the current release the support is limited to ServiceNow.
The ServiceNow Change Management System offers three levels of integration:
- Require that a Change Ticket must be provided for a deployment request
- Auto-create a Change Ticket whenever a deployment request is submitted
- Auto-create an Incident whenever a deployment execution fails
There are four levels in which Change Management System integration can be configured. The lowest level takes precedence.
- Global - All deployment requests across any folder, application, or project.
- Folder - All deployment requests for applications or projects in the folder (or its sub-folders).
- Application - All deployment requests for the application, or any of its projects.
- Project - All deployment requests for the project.
- Release - All deployment requests for the release.
All levels also allow configuration by environment (e.g. require a change ticket only for Production).
To configure the integration at the Global level, select the Administration->Change Management Systems menu item.
...
The Default tab provides configuration for the Global scope, meaning it applies to all deployment system-wide. One or more of these options may be selected.
- Require Change Ticket for Deployment - When submitting deployment requests, a user is required to specify a valid ServiceNow Change Ticket number.
- Create Change Ticket on Deployment - When a deployment request is submitted, a Change Ticket is automatically created within ServiceNow.
- Create Incident on Deployment Failure - Whenever a deployment request fails, an Incident will automatically be created within ServiceNow.
When choosing Create Change Ticket on Deployment you have the option of providing a Groovy expressions which calculate specific fields to set on the generated Change Ticket.
...
When choosing Create Incident on Deployment Failure you have the option of providing a Groovy expressions which calculate specific fields to set on the generated Change Ticket.
...
All Groovy script fields have access to the following variables, and can be selected using the drop-down on the right side of the field:
...
Example Groovy expressions
- "Deployment request to " + EnvironmentName + " for project " + ProjectName + " by " + WorkflowRequestor
- "Deployment for " + ProjectName + " failed in " + EnvironmentName
- "Simple String"
The Environment Configuration tab allows configuration by environment. Click the Add button to add a new configuration, and select an environment. This overrides any configuration on the Default tab for the selected environment.
The remaining configuration options are exactly as defined for the Default configuration. Optionally, click the Add button again to add configuration for other environments.
The Properties tab lists the metadata which is required for this Change Management System. Values for these properties will be provided when you create a Change Management Instance in the topology. See Creating/Editing a Change Management Instance,
FlexDeploy provides integration with various Service Management tools for both Change Management and Incident Management
- Change Management - Create new change tickets or link to existing change tickets, and bind them to an automated approval for adhoc execution or within a pipeline
- Incident Management - Automatically create incidents whenever a deployment or pipeline stage fails
Features and Use Cases
The next generations of Change Management System integration was introduced in FlexDeploy 5.6.0.0, which provides rich features and enables a number of powerful use cases to further integrate and automate the DevOps lifecycle.
- Out of the box integrations with a few popular change management systems
- Associate existing CMS tickets with deployment requests or pipeline stage executions
- Automatically create change tickets (whether for adhoc deployment requests or as part of a pipeline)
- Define the ticket fields and map their values to provide context
- Bind deployment request approvals or pipeline approvals to the status of the linked ticket(s). Automatic approval in FlexDeploy when the linked ticket in the CMS is approved.
- Use one ticket per release, one ticket snapshot, or even one ticket per project/package in the snapshot.
- Propagate the ticket numbers across pipeline stages to avoid duplication data entry by users.
- Utilize Outgoing Webhooks to automatically create Service Management Incidents when deployments or pipeline stage executions fail.
- Deployment report data is tied back to the CMS ticket number for auditing
- Framework to include to enable all these features or other CMS Systems via custom integrations.
Global Configuration
The global configuration for change and incident management systems can be accessed using the Administration -> Integrations -> Change Management Systems menu. This page allows management of integrations into third-party service management systems. FlexDeploy currently provides out of box deploy-time integration with ServiceNow, BMC Remedyforce, Freshworks Freshservice, and Jira ITSM. You can also define custom integrations implemented using either Java or Groovy.
Here are the out of box change management systems. To configure, select a name link or select a row and click the Edit button. Change Management System screen allows you to view the details on our out of box providers. FlexDeploy comes up with Java Implementation to integrate with out of box providers. For these, you are not allowed to change implementation class and change or add new properties. You can create additional Change Management System as necessary using the Create button.
Terminology
FlexDeploy Term | Description |
---|---|
Change Management System | Defines the system used to ensure that changes are managed in a cohesive way, ensuring frequent checks and balances around user impact, corporate policies, regulatory compliance, security, etc. and to establish and support the implemented enterprise operational model. ServiceNow, BMC Remedyforce, Freshworks Freshservice, and Jira ITSM are available out of box, but you can add a custom integration using a Java or Groovy implementation. |
Change Management System Instance | Instance represent the physical connection details of the Change Management System. |
Property | Properties are used to define the inputs necessary to connect to the system, |
Topics
- If you want to configure ServiceNow, BMC Remedyforce, Freshworks Freshservice, or Jira ITSM, use the Configure Change Management Systems to make any changes to properties or other configurations
- For adding a custom change management system, follow the steps described in Custom Change Management System
- Once the Change Management System properties are configured, create an instance to integrate with FlexDeploy. Configure Change Management System Instance shows how to set up the instance by providing the server and credential information
- The next steps after creating and testing the instance is to Configure Change Management. Here you can choose out of box ServiceNow, BMC Remedyforce, Freshworks Freshservice, Jira ITSM, or any other custom system configured
- Change Requests are verified/created when a project is deployed. Associate Change with Deploy describes how FlexDeploy handles the Change
- Follow the necessary steps to configure Freshservice, BMC Helix Remedyforce, ServiceNow, or Jira ITSM.