FlexDeploy change management systems integration (out of box or custom) can be configured globally for use by various Projects or Pipelines. Configurations can be overridden at the Application, Folder or Pipeline (external approval gate) levels as necessary.
To configure the integration at the Global level, select the Administration->Change Management Systems menu item.
Select a particular change management system by clicking its name, or by selecting the row and clicking on the Edit button. To create a new Change Management System click the New button.
You can update name, description and Java implementation for custom integration, whereas, only the description may be modified for out of the box integrations).
Field Name | Required | Description |
---|---|---|
Id | Yes | System generated identifier (read-only). |
Name | Yes | Name of the change management system. (read-only for out of box integrations) |
Description | No | Description of the change management system. |
Java Implementation | Yes | Java Implementation class for the change management integration. (read-only for out of box integrations) |
Ticket Fields
A change management "ticket" is the generic term for a change object, which may be referred to as a "change request" or another term by a particular provider. Every provider has different fields (or attributes) within the ticket, and many also provide decorating the object with your own custom fields. The Ticket Fields tab provides the metadata data describing the relevant fields for a the provider implementation.
To add a new ticket field, click on the Create button and enter the required Field Code, Display Name, Description, Data Type, and whether or not a value is required in order to create a new CMS Ticket.
For ServiceNow, Remedyforce, and Freshservice there a number of out of he box fields which are made available for you. These out of the ox fields cannot be removed.
The Field Code must match the JSON element returned form the providers REST API
ServiceNow Ticket Fields
Field Code | Display Name | Description | Data Type | Required |
---|---|---|---|---|
short_description | Short Description | A short description for the change ticket | String | No |
description | Description | A description for the change ticket | String | No |
state | State | String | No | |
sys_class_name | Sys Class Name | String | No | |
approval | Approval | String | No | |
start_date | Planned Start Date | String | No | |
end_date | Planned End Date | String | No | |
closed_by | Closed By | String | No | |
impact | Impact | String | No | |
priority | Priority | String | No | |
risk | Risk | String | No | |
requested_by | Requested By | String | No | |
assignment_group | Assignment Group | String | No | |
assigned_to | Assigned To | String | No | |
category | Category | String | No | |
cmdb_ci | CI | String | No | |
type | Type | String | No |
BMC Remedyforce Ticket Fields
Field Code | Display Name | Description | Data Type | Required |
---|---|---|---|---|
BMCServiceDesk__Change_Description__c | Change Description | A description for the change ticket | String | No |
BMCServiceDesk__Reason_for_Change_Details__c | Change Details |
Freshservice FreshDesk Ticket Fields
Field Code | Display Name | Description | Data Type | Required |
---|---|---|---|---|
subject | Subject | A subject for the change ticket | String | No |
description | Description | A description for the change ticket | String | No |
change_type | Change Type | Long | Yes | |
status | Status | Long | Yes | |
priority | Priority | Long | Yes | |
impact | Impact | Long | Yes | |
requester_id | Requester Id | Long | Yes | |
risk | Risk | Long | Yes | |
planned_start_date | Start Date | String | Yes | |
planned_end_date | End Date | String | Yes |
Default Configuration
The Default Configuration tab allows global configuration for the CMS integration, which defines whether a ticket is required for deployment requests or whether tickets should be automatically created. When creating tickets automatically as part of a deployment request, default values can be provided for one or more of the ticket fields.
The Default Configuration 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 Change Management Ticket number.
- Create Change Ticket on Deployment - When a deployment request is submitted, a Change Ticket is automatically created within Change Management System.
When choosing Create Change Ticket on Deployment you have the option of providing a Groovy expression which calculates values for specific fields using a number of context variables.
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:
Field | Description |
---|---|
EnvironmentName | The name of the target environment. |
PackageName | The package name requested for deployment. Same as ProjectVersion for full deployments. |
ProjectName | The name of the project requested for deployment. |
ProjectVersion | The project version which was requested for deployment. |
StreamName | The stream from which the project version was built from. |
WorkflowRequestor | The FlexDeploy username which requested the deployment. |
Example Groovy expressions
- "Deployment request to " + EnvironmentName + " for project " + ProjectName + " by " + WorkflowRequestor
- "Deployment for " + ProjectName + " failed in " + EnvironmentName
- "Simple String"
If you will be creating CMS Tickets per project/package in a pipeline external approval gate EnvironmentName is the only Groovy variable that is applicable since the context is not related to a particular workflow request. The other variables will resolve to an empty String in that case.
Environment Configuration
Likewise, the Environment Configuration tab allows overriding these settings globally and by environment (e.g require a change ticket for Production deployments only).
Environment Configuration
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.
Properties
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, Properties are read-only for out of box integrations.