3.2.3. System Update Sets
š” First Principle: Packaging configuration changes into portable containers ensures consistent, auditable, and controlled migration of development work between ServiceNow instances, streamlining deployment and minimizing manual errors.
Scenario: You've developed a new Incident form layout, a UI Policy, and a Business Rule in your development instance. Now, you need to move these changes to the test instance for user acceptance testing.
System Update Sets are the primary mechanism for moving configuration changes (not data) between ServiceNow instances, typically from development to test to production environments. The fundamental 'why' of Update Sets is to enable a structured, reliable, and auditable deployment process for new features, bug fixes, and administrative configurations. This prevents manual re-creation of changes in each environment, reduces the risk of human error, and ensures consistency across your instance landscape. It's crucial for managing the lifecycle of your platform changes.
Key concepts of System Update Sets:
- Purpose: To capture and transfer configuration changes. An Update Set records changes made to tables, fields, UI Policies, Business Rules, workflows, scripts, forms, lists, and many other configuration items.
- What's Captured: Changes to records that end in
_update
(e.g.,sys_ui_policy_update
) are automatically captured. This includes things like:- Form Layout changes
- New/Modified UI Policies and Business Rules
- New/Modified Script Includes, Client Scripts
- New/Modified Catalog Items and Workflows/Flows
- New/Modified Tables and Fields
- What's NOT Captured (Typically):
- Data: Update Sets do not capture transactional data (e.g., Incident records, User records, CMDB data). Data is imported via Import Sets (3.1.3).
- System Properties: Often not captured by default, or require manual addition.
- Homepages/Dashboards: Unless specifically saved to an update set.
- Users/Groups/Roles: While related, these are usually considered data or managed separately.
- Update Set Lifecycle:
- Create/Select: Create a new Update Set or select an existing one to make changes. All configuration changes you make while an Update Set is current will be recorded in it.
- Make Changes: Perform your configurations (e.g., create a new UI Policy, modify a form).
- Complete: Mark the Update Set as "Complete" when all related changes are done.
- Retrieve: On the target instance (e.g., Test), "Retrieve" the completed Update Set.
- Preview: Essential step! Preview the Update Set to identify any potential collisions (changes made on the target instance that conflict with the incoming Update Set).
- Commit: Apply the changes to the target instance.
- Collision Handling: If a collision is detected during preview, the administrator must decide whether to accept the remote change (from the Update Set) or keep the local change. This requires careful analysis.
- Parent/Child Update Sets: Allows for breaking down large projects into smaller, manageable units.
- Best Practices:
- Single User, Single Update Set: Typically, one administrator works on one Update Set at a time to avoid conflicts.
- Meaningful Naming: Give Update Sets clear names that reflect their purpose (e.g., "INC-1234_Add_Priority_Matrix").
- Keep it Focused: Avoid bundling unrelated changes into a single Update Set.
- Test Thoroughly: Always test Update Sets in a non-production environment first.
Mastering Update Sets is a core administrative skill for maintaining consistency and managing the deployment pipeline of your ServiceNow configurations. It ensures a controlled and auditable path for all changes.
š” Tip: The Preview step is critical. Don't skip it! It's your chance to identify and resolve potential conflicts before they impact your instance. Pay close attention to "skipped" records and understand why they were skipped.
ā ļø Common Pitfall: Not previewing an Update Set before committing it, leading to unexpected overwrites or conflicts in the target instance. Also, trying to move data (e.g., user records) with an Update Set.
Key Trade-Offs:
- Speed of Deployment vs. Control/Safety: Manual changes are faster for small fixes but lack control. Update Sets are slower but provide a controlled, auditable, and safer deployment process.
Reflection Question: How do System Update Sets ensure consistency and reduce the risk of errors when deploying configuration changes across different ServiceNow environments?