ServiceNow DevOps change request state in Jenkins pipeline logs
Summarize
Summary of ServiceNow DevOps Change Request State in Jenkins Pipeline Logs
This feature allows developers to view the status of change requests directly in the Jenkins pipeline logs. By configuring the Jenkins Snippet Generator, users can determine when and how change states and related policy conditions are displayed in the logs, facilitating better tracking and management of change requests during the DevOps process.
Show less
Key Features
- Jenkins Snippet Generator: Utilize this tool to generate a step snippet by selecting the SnDevOpsChange step and configuring change state variables.
- Polling Interval: Set the frequency at which Jenkins polls ServiceNow for change status updates, ensuring logs reflect the latest information when key fields are updated.
- Change Creation Timeout: Define a timeout for change requests; if a change is not created within this timeframe, the pipeline can be set to resume or abort based on user preferences.
- Change Step Timeout: Similar to creation timeout, this setting controls how the pipeline behaves if a change step is still in progress after a specified period.
- Policy Condition Evaluation: The logs will show the evaluation results of policy conditions, such as auto-approval or rejection, depending on the active change request policies.
Key Outcomes
By implementing these configurations, ServiceNow customers can:
- Monitor the state of change requests in real-time through Jenkins logs, enhancing visibility and control over the change management process.
- Receive detailed logs that include change request details and policy evaluations, allowing for informed decision-making during DevOps workflows.
- Quickly identify and understand any issues related to change request creation or updates, streamlining troubleshooting and resolution efforts.
You can use the Jenkins Snippet Generator utility to configure how and when the change state and the corresponding policy conditions must be displayed in the Jenkins pipeline job logs. This enables developers to view the status of the change in the console logs of the pipeline itself.
- Polling Interval: Specifies the frequency (in seconds) at which Jenkins polls ServiceNow for the change status and updates the console logs with the status. The change status is updated in the console logs
only when the Change state transitions, Assignment Group updates, Approval updates, Planned Start/End date, or Change
Details (if any) fields are updated.Note:If no value is entered in the field, polling interval check won’t be run to update the change status in the console logs.
- Change Creation Timeout: Specifies the change creation timeout value in seconds. On timeout, Jenkins checks the change creation status in ServiceNow. If the change did not get created, the pipeline is
resumed or aborted based on the Abort on change creation failure flag. By default, the pipeline is aborted when timeout is specified and the Abort on change creation failure flag is
selected.Note:If no value is entered in the field, change creation timeout check won’t be run to update the pipeline.
- Abort on change creation failure: Abort or resume the pipeline if change is not created till the change creation timeout.
- Selected: Abort
- Cleared: Resume
- Change Step Timeout: Specifies the change step timeout value in seconds. On timeout, Jenkins checks the change step status in ServiceNow. If the change step is still in progress, the pipeline is resumed or
aborted based on the Abort on change step timeout flag. By default, the pipeline aborted when timeout is specified, and the Abort on change step timeout flag is selected.Note:If no value is entered in the field, change step timeout check won’t be run to update the pipeline.
- Abort on change step timeout: Abort or resume the pipeline if the change step is still in progress on change step timeout.
- Selected: Abort
- Cleared: Resume
You can navigate to the console logs in your pipeline to view the state of a change request when a change request is created or when the state of the change request is updated. The policy conditions associated with the change request state will also be evaluated and displayed in the logs. For example, if the DevOps Change Request Advanced Automation policy is activated, the policy conditions will be evaluated and the corresponding decision made (auto-approve/auto-reject/manual-approval) will be displayed in the logs.
- number
- details
- status
- sys_id
- type
- risk
- priority
- changeState
- plannedStartDate
- plannedEndDate
- changeRequestURL
- DevOps Model Change Policy: Only logs will be displayed on change creation and when the change state is updated.
- DevOps Change Request Minimal Automation Policy: Logs along with change decision and policy conditions corresponding to the change decision will be displayed.
- DevOps Change Request Advanced Automation Policy: Logs along with change decision and policy conditions corresponding to the change decision will be displayed.
- Fields
- code_coverage
- commits_without_work_item
- integration_tests_failed
- load_tests_failed
- regression_tests_failed
- num_of_outages_in_last_7_days
- num_of_current_outages
- num_of_open_incidents
- total_num_of_commits
- tests_passing_percent
- risk
- code_security
- commits
- Operators
- <=
- >=
- !=
- =
- <
- >
- ISNOTEMPTY
- ISEMPTY
- BETWEEN
- ANYTHING
- NSAMEAS
- SAMEAS
- GT_FIELD
- LT_FIELD
If a change request does not get created due to any issue, then the reason for the failure and the state is also logged in the console.