Change request creation with DevOps data retrieval errors
Summarize
Summary of Change Request Creation with DevOps Data Retrieval Errors
ServiceNow allows users to create change requests even when there are errors in retrieving DevOps data from platforms like Azure DevOps, GitHub Actions, GitLab, Jenkins, and Harness. This capability is managed through the "Enable change request creation even with errors in DevOps data retrieval" property.
Show less
Key Features
- Change requests can be created regardless of errors in DevOps data retrieval, ensuring workflow continuity.
- When errors occur, users are informed through the third-party console, and details are added to the Change Comments field and Worknotes.
- If the property is disabled, change requests will only be created when there are no errors, causing the pipeline to abort on error.
- For change requests with errors, manual approval is required, allowing for verification of the associated DevOps data.
- Callbacks during pipeline runs have a timeout setting defined by the sndevops.changerequestcallbacktimeout property, which defaults to 120 minutes.
Key Outcomes
Enabling the change request creation property aids change approvers and AppDev teams by ensuring that changes are logged even with incomplete data, thus maintaining operational flow. However, if an error occurs with specific artifact steps, the change will still be created without those artifacts, and no error notifications will be generated in Worknotes or console logs. After upgrades, the property defaults to disabled, requiring re-enabling for continued error tolerance in change request creation.
Create change requests even with errors in DevOps data retrieval.
Change request creation overview
You can create a change request with or without errors in DevOps data retrieval. This functionality can be controlled by the Enable change request creation even with errors in DevOps data retrieval property. When the Enable change request creation even with errors in DevOps data retrieval property is enabled, and an error occurs in retrieving DevOps data like work items, commits, test summaries, or security summaries, the corresponding change request is still created. The data that can be retrieved will still be associated with the change request. For the data that can’t be retrieved, the reason for the error will be notified to the user in the third-party console, and the same information will also be added in the Change Comments field in the Step Execution record and the change Worknotes.
If the Enable change request creation even with errors in DevOps data retrieval property isn’t enabled, a change request is created only when there’s no error in any step of a pipeline run. When an error occurs, the pipeline is aborted and the reason for the error is added in the inbound event's Processing details field, and the same is notified to the user in the third-party console.
For more information, see DevOps Change Velocity properties.
Approval for change requests with DevOps data retrieval errors
For change requests created with DevOps data retrieval errors, the is_change_with_partial_data policy input is set to True for all the change approval policies. Only a manual change approval decision is applied to such changes so that you can approve or reject the change after manually verifying the DevOps data in it. In the DevOps Gather Change Policy Data subflow, the Is change with partial data action determines whether a change is created with DevOps data retrieval errors or not.
Pipeline UI for change requests with DevOps data retrieval errors
When a change request gets created with DevOps data retrieval errors, the card specifying the stage where the error occurred will be displayed in the Yellow color.
Callback timeout
If an inbound event goes into the waiting state during a pipeline run, the system tries to process the change until the timeout value in the sn_devops.change _request_callback_timeout property is exceeded, after that the pipeline is aborted. The reason for the error is displayed in your third-party tool's console logs. When a pipeline is canceled because of callback timeout, the same information is added in the callback record of the corresponding step execution. You can contact your DevOps admin to increase the timeout value in the sn_devops.change_request_callback_timeout property. The default value of this property is 120 minutes, and the minimum value is 60 minutes. For more information, see DevOps Change Velocity properties.
Upgrade
After you upgrade, the property will be set to false by default. Your current change process will function as is, but the only difference you’ll see is that, when an error occurs in retrieving DevOps data the pipeline is aborted (instead of waiting indefinitely) and the reason for the error is added in the inbound event Processing details field, and the same is notified to the user in the third-party console. If you want to create change requests with errors in retrieving DevOps data and also not fail your pipeline, you can enable the Enable change request creation even with errors in DevOps data retrieval property. This provides value to your change approvers and AppDev teams by getting the changes created automatically with DevOps evidence that is gathered and appropriately notified in the change request work notes and third-party console logs with errors or data that may be missing.
Limitation
If the Enable change request creation even with errors in DevOps data retrieval property is enabled, and the ADO artifact package step in your pipeline results in error, the change will be created without ADO artifacts associated with it, but the corresponding error will not be notified in Worknotes, or Step Execution change comments, or in the ADO console log.