Best Practice For Admins and Developers: How to Track and Manage Configuration Changes in ServiceNow

BillMartin
Mega Sage

Update Sets in ServiceNow: A Comprehensive Guide for Admins and Developers

ServiceNow's Update Sets are essential tools for admins and developers working on instance configuration changes, offering a structured way to track, package, and migrate changes from one environment to another. This guide dives into what update sets are, why they matter, and how they can be efficiently used to streamline and secure instance updates.

 

What Are Update Sets?

 

An Update Set in ServiceNow is a container that holds configuration changes made to an instance. When you create, modify, or delete elements like fields, forms, workflows, or business rules, these changes can be captured in an update set, enabling admins and developers to migrate configurations across environments (such as from development to production) without affecting other parts of the system.

 

Key Features of Update Sets:

 

  • Track and bundle related changes for streamlined migrations.
  • Maintain consistency across environments by capturing and transporting configurations.
  • Offer rollback options by capturing changes, providing safer deployment paths.

 

Why Use Update Sets?

 

Update Sets are beneficial for several reasons:

 

  1. Controlled Deployments: By capturing specific changes, teams can ensure that only approved configurations are transferred to production, minimizing unexpected issues.
  2. Collaboration and Tracking: Update sets allow for efficient tracking of changes and enable teams to collaborate better on development projects.
  3. Change Auditing: Using update sets, admins and developers can easily audit what modifications were made, by whom, and when.
  4. Error Minimization: By containing configurations within update sets, ServiceNow reduces the risk of human error during manual configuration migrations.

 

How to Create a ServiceNow Update Set

 

  1. Navigate to Update Sets:

    • In ServiceNow, navigate to System Update Sets > Local Update Sets.
  2. Create a New Update Set:

    • Click on New to create a new update set.
    • Provide a descriptive name and optional description that reflects the purpose of the update set.
  3. Set as Current:

    • Once the update set is created, set it as current to ensure all modifications are automatically captured in this set.
  4. Make Your Changes:

    • Any configuration change made while an update set is marked as “current” will be recorded in it.
    • Remember to save or submit forms and configurations to capture them in the update set.

 

ServiceNow Best Practices for Using Update Sets

 

  1. Naming Conventions: Use meaningful and consistent naming conventions for update sets, like "FeatureName_ReleaseVersion_Date," to quickly identify and understand their purpose.

  2. Segment Large Projects: For complex projects, create multiple update sets based on feature or module to make tracking and deployment more manageable.

  3. Regularly Check for Collisions: When multiple developers are working on the same instance, there may be collisions if two update sets modify the same object. Use the Conflict Detection feature in ServiceNow to identify and resolve conflicts early.

  4. Test in Lower Environments: Always test update sets in a lower environment (such as development or QA) before deploying to production to catch any potential issues.

  5. Document Changes: Document what each update set contains, especially if configurations require post-deployment adjustments.

 

How to Migrate Update Sets

 

Migrating update sets involves moving changes from one instance to another, usually from development to test and then to production.

 

  1. Retrieve Update Set:

    • In the target instance, go to System Update Sets > Retrieved Update Sets.
    • Click Import Update Set from XML if the update set was exported as an XML file, or Update Set Picker if it’s from another instance.
  2. Preview the Update Set:

    • Always preview the update set before committing it. This checks for any conflicts or errors.
    • If issues are detected, you’ll receive a list of warnings or errors. Resolve these before proceeding.
  3. Commit the Update Set:

    • Once the update set passes the preview stage without issues, commit it to apply the changes to the target instance.

 

Troubleshooting Common Update Set Issues

 

1. Missing Changes: Sometimes, changes may not appear in an update set. Ensure that the update set is marked as current and that all changes have been saved. If still missing, manually add the specific record to the update set.

2. Update Set Conflicts: Conflicts occur when two update sets contain changes to the same object. Resolve these conflicts by carefully reviewing both versions, using the Conflict Detection feature to compare changes.

3. Dependency Errors: Update sets may sometimes miss dependencies, such as related fields or scripts. When committing, ServiceNow typically alerts you if a dependency is missing. To avoid this, make sure all necessary elements are included or create a separate update set for dependencies.

 

Four Advanced Tips for ServiceNow Developers

 

  1. Scripted Update Sets: For larger and more complex updates, developers can use scripts to automate certain parts of the process, such as applying business rules or workflows after update sets are committed.

  2. Use the Update Synchronization Feature: This allows developers to work in parallel on the same object without overwriting each other’s changes. This is particularly useful for large projects with multiple developers.

  3. Apply Update Set Hierarchies: When working with dependent update sets, apply them in a specific order to avoid dependency issues.

  4. Utilize Source Control for Scoped Applications: While update sets are ideal for global applications, source control in ServiceNow can be more effective for scoped applications, allowing you to manage versions and branches directly from Git repositories.

 

Conclusion

Update sets are a powerful feature in ServiceNow, enabling admins and developers to manage and transfer configurations across instances with ease. By following best practices and leveraging advanced tools like conflict detection, preview, and dependency management, teams can ensure smooth migrations and avoid common pitfalls.

 

For ServiceNow admins and developers, mastering update sets is essential for delivering consistent and reliable updates, making them an indispensable skill in the world of ServiceNow development.

 

For more in-depth tutorials on using update sets and other ServiceNow tools, be sure to check out my YouTube channel, TechTalk with Bill, where I dive deeper into ServiceNow administration and development topics.

 

1 ACCEPTED SOLUTION

Hi @Dom_Wolfenden ,

 

Thank you for contributing to the post and expanding the topic to include Process Separated Update Sets in domain-separated environments. It’s great to see the community building on the content and sharing deeper insights.

 

Keep up the great work!

Best regards,
Bill Martin
ServiceNow Enterprise Architect | TechTalk with Bill

View solution in original post

2 REPLIES 2

Dom_Wolfenden
Tera Contributor

Hi @BillMartin,

 

Great guide but it doesn't cover Process Separated Update Sets in Domain Separated environments. I have taken your above "How to Create a ServiceNow Update Set" section and expanded it to hopefully cover this in full. I would be greatful if you would review the below for accuracy and provide feedback as I can't find a complete guide for Process Separated Update Sets out there. Thanks

 

How to Create a ServiceNow Update Set (for Process Separated configuration changes in domain separated environments)

 

[Assumption – Domain Separation is already configured on all instances (Prod, Test, Dev) – individual domains in all 3 instances have the same sys_ids in each instance e.g. the TOP domains sys_di in all 3 instances is the same – to do this export the list of domains from the Domain table as XML, and re-import them on the target instance]

 

1. Ensure that the Production instance is cloned back to the Dev and Test instances so that data is synced.

  • Post clone ensure any required configuration that you exported is re-imported and committed

2. Set the Domain Picker to the correct domain:

  • Select the domain for which the updates set will relate (only work within 1 domain per update set).

3. Ensure the correct application Scope is selected.

  • The application scope related to the application you will be working with or global if not a specific application.

4. In the Dev instance Navigate to Update Sets:

  • Navigate to System Update Sets > Local Update Sets.

5. Create a New Update Set:

  • Click on New to create a new update set.
  • Provide a descriptive name and optional description that reflects the purpose of the update set.

6. Set as Current:

  • Once the update set is created, set it as current to ensure all modifications are automatically captured in this set.

7. Make Your Changes:

  • Any configuration change made while an update set is marked as “current” will be recorded in it.
  • Remember to save or submit forms and configurations to capture them in the update set

8. Complete your Update Set and Save

  • Set the State to Complete when you have no additional content to add into the update set.
  • Right click on the menu bar and select Save to save the update set and remain on the page.

9. Export the Update Set

  • In the Related Links after the page reloads select “Export to XML” – save the XML file will a relevant name (e.g. the name you entered in the Name field) and location.

10. In the Production instance ensure global is selected in the Domain Picker

  • Update sets can only be committed in Production when the domain setting is global for compliance reasons.

11. Import, Preview and Commit the Update set:

  • Navigate to System Update Sets > Local Update Sets.
  • Right click on the context menu and select Import XML – select the Choose file button, locate the XML you exported above and then the Upload button.
  • Search in the Local Update Sets table for the record name and open it.
  • Select the Preview Button (wait for the Preview to complete).
  • If there are Errors review and fix these (not covered in these steps).
  • Select the Commit button (wait for the Commit to complete).

Hi @Dom_Wolfenden ,

 

Thank you for contributing to the post and expanding the topic to include Process Separated Update Sets in domain-separated environments. It’s great to see the community building on the content and sharing deeper insights.

 

Keep up the great work!

Best regards,
Bill Martin
ServiceNow Enterprise Architect | TechTalk with Bill