2

I am new to Servicenow and investigating the capabilities of ServiceNow. I am trying to understand how we can implement standard development best practices in ServiceNow.

  • Versioning
  • CI/CD
  • Source code integration with code review

So far I found some information from SNOW documentation.

So far it seems Team Development is the best pick when multiple developers work. But it seems cost is higher as it needs separate standalone instances.

I already went through development using Update Sets and I need to know how code reviewing can be done when using Update Sets?

Further, From my experience, It seems that Update Sets are not isolated development methods. So it seems Update Sets not works as how branching in GIT works.

Could you please advise me which SNOW practices is well suited for my requirements.

Thanks.

Jeevan
  • 518
  • 3
  • 8

1 Answers1

2

An update set is similar to a commit in Git. You package everything for a change in to one update set and your commit message is the description of the update set.

For a review process often we will pull in any update sets from a development instance in to a testing instance and go over the update set prior to committing it to the testing instance. You can then commit the update set to the test instance to confirm it's working as intended before pushing this to production.

The process is essentially

  • Make your change in development in an update set
  • Pull the update set in to testing to review and test the change
  • Pull from testing to production once the test is complete and working

You are also able to bundle update sets together by setting one update est as the parent for another.

enter image description here

This will allow you to have multiple update sets work together and potentially have multiple developers working on one group of changes.

As for source control integration, that only works with the ServiceNow Studio and is generally only used for custom applications. In this case each individual XML files are stored in the git repository and changes to the files are tracked via commits.

Kirk
  • 16,182
  • 20
  • 80
  • 112
  • 1
    Thanks, Kirk for the valuable inputs. I got an understanding of how we can do the code review when using Update Set. In the meantime Still, I have the concern regarding isolated development when using update sets. From my experience, I have observed that Update Sets are not isolated dev methods. And I am bit curious to know CI/CD setup in SNOW. – Jeevan Nov 07 '19 at 03:00
  • 1
    When you do an update set, one update set can override things inside of the other. It does tell you there is a conflict and asks you how you'd like to resolve it but it's not as robust as git. Any method to do CI/CD would need to be made custom, I'm not aware of any OOTB way to do that. One component of that could be Automated Testing Framework to handle testing but not to apply changes between instances automatically. – Kirk Nov 07 '19 at 19:54
  • 1
    With considering @Kirk's inputs and doing more research, came to an agreement that Team Development is the Best for my requirements. Found that Servicenow does not have OOTB Automated CI/CD feature. there is some workaround to get this done. When we are going to work in Update Sets in one instance with many devs, we are going to create some conventions and standards to avoid conflicts. Thanks for the inputs. – Jeevan Nov 08 '19 at 04:44
  • 1
    Please find more information here for creating a custom CI/CD pipeline.https://community.servicenow.com/community?id=community_article&sys_id=0396d32cdb8d33000be6a345ca96190e – Jeevan Nov 08 '19 at 04:45