We're reclaiming inactive PDIs to keep them available for active builders. Learn what's changing, who's affected, and how to protect your work. Read More

Chuck Tomasi
Tera Patron

Simplify and speed up your ServiceNow CI/CD development pipeline. Join our special guest presenter, Chris Faulkner from ServiceNow, as he shows you how you can automate your ServiceNow deployment pipeline using the Now Platform CI/CD tools in the Orlando release. Integrate with existing tools like Jenkins using the scripted REST APIs or use the IntegrationHub spoke to trigger actions on source control, Automated Test Framework, the App Repo, Health Scan, and more.

Originally aired: March 17, 2020 8:00 AM PT

Featured Experts

 

Chris Faulkner has been with ServiceNow since Jan 2012. Since then, ServiceNow has moved him around the world, from Sydney Australia during his Professional Services days, to Singapore where he traveled Southeast Asia to visit customers and prospects as a Solution Consultant (and where his met my beautiful wife). He currently resides in San Diego (with his wife, son, and dog) as a Product Manager for the Platform BU, and most recently, a Platform Architect for the Solution Innovation team.

 

 

Chuck Tomasi Chuck Tomasi is a Sr. TPMM for ServiceNow. He has over 35 years of IT experience. Chuck was a ServiceNow customer from 2008-2010 and honored to be the recipient of the first Innovation of the Year Award at Knowledge 10. Since joining ServiceNow in 2010 as a Technical Consultant, he has held several technical roles in professional services, pre-sales, and marketing. He's well known for his signature bow ties and creative solutions on the Now Platform. Chuck is the top contributor in the ServiceNow Community, has produced hundreds of ServiceNow videos, and co-authored "No-Code Apps for Dummies" to enable and excite everyone interested in building on the Now Platform.

 

Kreg Steppe is a Training and Certification Program Manager within ServiceNow developing and supporting cloud training infrastructure. He specializes in developing integration solutions, automating repeatable processes and Cloud Management in ITOM. Kreg's prior experience includes operating his own ISP, developing web applications in PHP, network integration, managing network support, Application Development on cloud based networks, DNS and email server maintenance. He is a Linux enthusiast and enjoys Photography.

 

 

Jeremy Duncan is a Platform Architect on the Innovation team at ServiceNow. Jeremy is an Enterprise Architect with over 16 years of IT and Service Management experience. His experience and certifications span across retail and manufacturing with focuses on hardware, software, and information security specialties. He has done many implementations in both the Enterprise Federal and Commercial spaces since 2011 and brings a breadth of platform knowledge that aids him in sound architectural decisions. He achieved his B.B.A. at MTSU and majored in Information Systems. He spends his free time fighting crime as a volunteer certified police officer in North Nashville since 2012 and enjoys family time, camping, with his wife and kids!

 

 


Links Mentioned



Questions and Answers

 

The slack message for commit approval is automatic or I need to implement the communication between SN and Slack? -- Amauri Chagas Junior
Chris added the action to his flow. If you want to have Slack communications, you can use the same type of Flow Designer action. Short answer - you can build what you want with the pieces we provide. -- Chuck Tomasi

 

Is this new Flow Designer in New York or just Orlando? -- Smalls Ernest
Now Platform CI/CD requires Orlando and later. -- Chuck Tomasi

 

is it required to have designated Mid Server just for this CICD? -- Dinh Tong
Not unless some/part of your process is on-premise. If you are doing this all with cloud instances (including Git, Jenkins, etc.) then you don't need a MID server. -- Chuck Tomasi

 

I just saw the message about collisions show up - but that was specific to a script include/code. What if Neha was making a change to form layout and Mudit tried to do that as well? That would be XML and not specifically code/javascript. What if Neha was making label changes in sys_dictionary and Mudit tried to do the same on the same table? How does CICD show collisions on things that are not specifically code, but are more UI-based and XML-based? -- Julie Leung
The capability naming is kind of confusing… its not really a "collision". its just a feature to help developers not mix up each other's source control commits new messages. The update sets in the background work as they always have… if two developers are making changes at the same time (script, config, or otherwise), the latest change wins. -- Chris Faulkner

 

When would the VSCode plugin be able to do git stuff like studio? -- Neji Tawo
Orlando -- Chuck Tomasi

 

Does this work on Global scoped apps? -- Neji Tawo
Yes it does.The only piece that doesn't work is source control -- Chuck Tomasi

 

can you explain a global scoped app? -- Adam Laubach
https://docs.servicenow.com/bundle/orlando-application-development/page/build/applications/concept/c_ApplicationScope.html -- Jeremy Duncan

 

what would happen when testing fails? -- Dinh Tong
It's up to you. Obviously, wouldn't want to publish to prod for a failed test. You could configure your flow to notify the dev team of the issue and they can resolve it and submit new changes. -- Chuck Tomasi

 

Can this support more than one test instance -- Seth Werly
Yes, we can support multiple instances. When you create your flow, you direct it where to run the ATF tests. -- Chuck Tomasi

 

Can you demonstrate how CI/CD would deal with multiple developers doing configurations on the same form or table/schema? (e.g. add a new field at table level, configuration of form layout, change of labels and other items on sys_dictionary) -- things that are usually UI-driven configuration and less script/script includes, specifically? -- Julie Leung
There's a nice message that comes up when someone makes a change and someone else tries to modify it. It's read-only until you explicitly say you want to change it. -- Chuck Tomasi

 

just to clarify, the ATF test is running in TEST not PROD right? -- Brian Good
Yes, ATF was running on his TEST/UAT instance. -- Chuck Tomasi

 

How does the rollback works in-case of failure(s)? -- Yash Kedia
It rolls back to the previous version, much like uninstalling an app. -- Chuck Tomasi

 

in Orlando this example will only work when deploying a scoped app right? Not Global -- Brian Good
Correct. Global is targeted for a future release. -- Chuck Tomasi

 

This is mind-blowingly faster than pushing update sets through a pipeline manually! -- Jeremiah Abot
I agree. I can't wait for customers to get their hands on it and save time. -- Chuck Tomasi

 

Can we deploy directly from branch and not deploy all changes from master ? -- Prashant Parekh
Yes you can. You can declare which branch in the deploy action/subflow. -- Chuck Tomasi

 

while we wait for Paris, can we use ServiceNow native APIs and call from Jenkins in NY release? -- Prashant Parekh
The APIs are available in Orlando and higher (not New York). Yes, you can use the APIs from Jenkins starting with Orlando. -- Chuck Tomasi

 

When is paris open for developer preview? -- Neji Tawo
We are targeting Q3 for the release of Paris. Typically the developer preview is roughly 6 weeks ahead of general availability. -- Chuck Tomasi

 

Like scheduled ATF currently, is there a need for an open browser window somewhere or is that handled on the platform somewhere -- Seth Werly
If it's a server based test, no. If there are UI tests, then currently, yes. We are looking to change this in future releases. -- Chuck Tomasi

 

Is there a plugin we need to enable in order to get the Deployment Request tables? -- Julie Leung
The deployment request table is something Chris built for this demo. He's going to make it available on the Share section of the developer portal and GitHub as an example after this webinar. -- Chuck Tomasi

 

Could this be used for scoped applications built by ServiceNow such as Customer Service Management or HR? -- Stijn Verhulst
Yes -- Chuck Tomasi

 

Can we do the flow designer for a Global scope app without github integration? -- Neji Tawo
Yes -- Chuck Tomasi

 

so instructive as usual ! Thanks a lot, and congrats to the all team ! -- Stephane RD
Thank you for joining us. -- Chuck Tomasi

 

Are these functionalities available only from Orlando release ? Is this available in NewYork Release? -- Santhamani Babu
The Now Platform CI/CD functionality is new to Orlando. -- Chuck Tomasi

 

In creating multiple Instance, will all of theses be change to the customers? -- Elvis Edinge
I'm afraid I don't understand the question. If you like, please provide context/details in the community comments. -- Chuck Tomasi

 

Is this feature available to previous NewYork release? -- Ramesh Chandra
Now Platform CI/CD is new to Orlando and higher. It is not back ported to previous releases. -- Chuck Tomasi

 

Hi! Thanks for this demo! Really exciting. Do you guys have support for MID Server now with this app? Our enterprise code cannot be put on the public GIT Hub, so wondering if we have an integration through MID Server to connect to our enterprise git repo. Also, is this paid app? -- Nithu Warrier
Hey Nithu, thanks for your question check out the bottom of this page: https://docs.servicenow.com/bundle/orlando-servicenow-platform/page/administer/integrationhub-store-spokes/concept/cicd-spoke.html#d497981e515 | Unfortunately I don't have pricing specifics at this time, but INtegration Hub does require additional licensing. -- Jeremy Duncan

 

In the Commit files screen, The upadate set column showing as "Neha (%2B1)" What does (%2B1) mean? -- Pavan Devineni
I missed that. Can you provide a time code and where you saw that on the screen in the comments? -- Chuck Tomasi

 

What module do I need to get deployment request flow in my instance -- Frank Moura
Flow Designer is available from Kingston onward. you don't need to request anything to get that. To get the Now Platform CI/CD stuff activated, you need to be on Orlando and have the IntegrationHub Starter Pack installed - that's free. If it's not activated, reach out to customer support. -- Chuck Tomasi

 

How do you correct update set errors if they arise with the new CI / CD functionality? -- Jeremiah Abot
None of this is using update sets. It's all done with the app repo to push the changes. -- Chuck Tomasi

 

Does the tool support backwards compatibility of extensions with SN product upgrades? -- Gail Bickerstaffe
If I understand the question, yes. You can take existing SN applications like HR, CSM, etc and extend them, then deploy your changes using the new Now Platform CI/CD products. -- Chuck Tomasi

 

Does Flow Designer and Jenkins do the same things? What scenarios warrant using solutions like Jenkins instead of Flow Designer -- Jeppu Sharath K
They are both using the same underlying APIs. Jenkins might be handy for organizations that already have their CI/CD pipeline working with that tool or they want to trigger off something like a GitHub webhook (not currently available, but we're looking at adding Web API triggers to Flow.) -- Chuck Tomasi

 

Can we leverage the source control and CI/CD flow for the script(s), components and packages created in global? -- Yash Kedia
Currently you can use these features (save source control) with a global scoped app, but not a native global app. See the docs if you're interested in setting a global scoped app. -- Chuck Tomasi

 

What is the licensing\cost modal for this? -- Anand Cherukuri
Now Platform CI/CD is currently included with the IntegrationHub Starter Pack which is free. -- Chuck Tomasi

 

Maybe I missed the answer but I would like to know if this flow comes with the application or if it was created only for the demo? -- Ricardo Souza
This flow he is showing was built for this demo and will be available on the share page of the developer portal and GitHub. We'll provide links in the YouTube description and community post in a couple days. -- Chuck Tomasi

 

Does this work with Microsoft Teams? -- Neji Tawo
Yes. We do have an MS-Teams spoke (collection of actions) available for IntegrationHub that works with Flow Designer. Check with your account team on pricing. -- Chuck Tomasi

36 Comments
Ananda Selvan
Tera Contributor

Hi Team,

You have done a great job and very impressive. I am trying to replicate in my dev instance. But i have a issue while opening the flow designer which you have created saying  (Action Type Definition with Id of 41ca0f433be0030057a4a2e334efc474 is missing (order: 1)). 

 

 

Please find the attachment below

find_real_file.png

 

Kindly help me in resolving this issue. Thanks in advance !!

Ramya30
Tera Contributor

Hi, 

 

Can you please share how the IF condition for 'ATF Test Suite passed' step in this demo flow was configured? I am unable to find a way to find the Test Suite Results from the flow, wonder how it was done in the flow used for this demo. 

 

Thanks

chris_faulkner
ServiceNow Employee

Are you using the "Scheduled Client Test Runner" or the "Client Test Runner"?  Asking because you need to use the Scheduled Client Test Runner, otherwise you might have issues getting ATF  to run successfully.

 

Ramya30
Tera Contributor

Hi Chris, 

Thanks much for your quick response. Yes, I have used the "Scheduled Client Test Runner" and even got the ATF executed through the Flow action. After ATF execution is complete, which data pill is supposed to be used in the IF condition to check if the ATF was successful or not? The available data pills check whether or not the Action was complete, or the HTTP connection to the remote instance where the ATF execution happened was successful, while we should be checking ATF Execution Test Result to drive our flow further. Even if I decide to have a custom action created to fetch this data, how do I grab the result associated with the Tests run during a particular flow execution.  

 

Truly appreciate your help on this.

 

Thanks

Ramya Ramadasan

suyogd
Tera Contributor

Hello Team,

It was a great demo but i have question like is it possible to push changes from DEV to Test to PROD without using Git repository ?

 

Thank you,

Suyog

Ramya30
Tera Contributor

Hi Suyog, 

It is possible by using your organization's App Repo. I am working on a model where Git is used just for keeping a copy of the code externally, while the code movement is done using App Repo for which spokes are available in Flow Designer under Continuous Integration and Continuous Deployment subflow. 

Thanks

Ramya30
Tera Contributor

Hi Chris, 

 

I used ATF Action in the flow, instead of sub-flow, so I could not access the ATF Execution Test Result as output. Replacing Action with Sub-flow solved my problem. 

 

Thanks

Ramya

Daniel Draes
ServiceNow Employee

Which release did you try this on? Sounds like the CI/CD actions are not available yet. Maybe also the plugin needs to be activated?

Daniel Draes
ServiceNow Employee

Yes... with Paris release you can actually deploy the code via Git / VCS only. Using the action 'Apply changes from VCS' you can ask an instance to pull a given branch from the git repo. The App Repo is not mandatory.

However, I would think about your pipeline more holistically and verify which method works best. Using the VCS only will result in modifyable artifacts on your prod system, it will also (at this point at least) not check for dependencies across aps and such.

 

Daniel Draes
ServiceNow Employee

Saw this question / answer above:

>> Does this work on Global scoped apps? -- Neji Tawo
>> Yes it does.The only piece that doesn't work is source control -- Chuck Tomasi

 

With Paris this is outdated. We do now support source control on global scoped apps.