logo

NJP

ServiceNow DevOps and Azure DevOps for Change Acceleration

Import · May 29, 2020 · video

how everyone this is Justin with cross views and today I want to go over a sure DevOps pipeline and ServiceNow change acceleration we're gonna do a demo and I'm gonna walk through a few slides here at the beginning just to set the stage for what you're gonna see what I want to address is the end and change process within ServiceNow so you see here popping things you're used to seeing like ideas and demands and that goes on to maybe waterfall or hybrid hybrid meeting of waterfall and agile what I'm gonna focus on it down here in this execution section this is what's new and what I want to show you around ServiceNow devops so what we're gonna do in this demonstration is we're connect as your DevOps to our ServiceNow instance and we're going to use agile devops as our planning tool so making work items and having information around that you could connect JIRA could use ITP I'm agile but for this demo we're gonna show as your DevOps we're also gonna get insight into the code repository within azure devops so we're gonna see stuff that's been committed and maybe stuff that's been reverted and importantly we're gonna have insight into it and we can use those insights to make decisions about whether code is approved for change or not approve or change or just Skinner general lay of the land about how a particular pipeline is performing or how a particular user of a particular committer is performing are they reverting a lot or are they making lots of commits or do they not make lots of commits and maybe their code is could be seen as a little more risky because they don't make a lot of commits all that information will now be available and you can use that for decision making the third thing with a net Connect is the actual orchestration tools so in Azure DevOps we can set up a pipeline and move something through build test and deploy and actually monitor the performance of that so we'll have a success rate for how often that pipelines been run instead successful in particular which stages and stuff like that so again insights into how these DevOps tools are actually performing so we can make good decisions accelerate the change process and provide everybody inside what's going on the last piece that will show in the demo is actually automate change so there's two ways I'm going to show this and the demo one is just the change is automatic and you know automatically gets approved and the second way is there's actually gonna be an approval or decision process and we can leverage ServiceNow we can leverage those insights I just talked about to decide whether we want to automate that chain or not you know looking at things like test success rates and stuff like that is that too risky do we not want to prove this change to go into production so I think every developer can sympathize with you know an onerous change process whether that's filling out a long form waiting for cab trying to defend and explain to people exactly what my changes even if it's something relatively minor like a hey I just you know moved something on an interface or on a web page I'm just you know making a slight change to the code why is it take so long to get approval and I could have had this done and then then finished by now so what we're hoping to show you with service now and these DevOps tools is that we can take that time to process a change down from days or weeks down to minutes so we'll actually in the pipeline will create a change via the application programming interface or API then we'll use the insights that I just spoke about now that we're connected to these tools to gather risk data about the particular code that's being deployed we'll evaluate that we'll make a decision yes no or the first case locks are just Auto to approval and then run that through an authorization policy so potentially you could have a really fast change process for these really high performing and low performing pipelines and and maybe introduce a more complex approval process to where there might be more risks so maybe we've automated the change that gets in the service now really fast but maybe we do still do some kind of you know person approval if the risk is higher so what ServiceNow is gonna bring us is these connections to all these CI continuous integration or continuous delivery tools automate the change management process again looking at that risk data because we have insight into it and then sharing that insights that people can see it in a dashboard again taking the change process down from days and weeks to just minutes with that change approval process and and then the actual chain of custody in audit trail that's gonna be left behind so I'm gonna show you like when we go look at the work notes for a particular change you're gonna see exactly the process it went through you're gonna be able to look at the commits that are related to it and see that actual code so for today's demonstration I'm gonna say strictly in Azure DevOps in ServiceNow so I'm using a deal for the planning tool the code repository and the orchestration or the pipelines so I've set up a build test deploy pipeline my building tests don't do a whole lot other than a hello world message when my deploy step actually makes a call back to ServiceNow opens that change request and we still follow that auto approval Prado policy so the steps that I'm gonna follow thing is I'm gonna create a work on them and then I'm gonna fork the master branch and relate that to the work item that I'm looking at mmm making commit those changes to that branch then I'm gonna create a pull request and merge it back to the master branch and that's gonna kick off my pipeline I'm gonna set that up the nazzer DevOps to automatically happen when I do a commit back to master so that pipeline will auto run and then automate the change process and ServiceNow so enough of these science let's get to the demo so this is the DevOps insight dashboard and this is where we're gonna have kind of a high-level view of what's going on in our DevOps so with everything we've got connected so I mentioned that I have as your DevOps connected I'm in our showcase instance so there's a lot more actually connected like JIRA and stuff like that but we're gonna focus on Azure DevOps I did want to start and actually run through to those dashboard though just to show kind of how we can have insight and obviously if it's on a dashboard I can use these insights within the workflows within my change process when I'm not evading that approval process that I talked about earlier so here we have open devops change requests the aging report we can see non DevOps change requests success rate for both of those groups here we have an 88% success rate on the DevOps changes our change request volume over and I've got some insight into different pipelines here on the bottom right I have a normal pipeline here's my cross fuse demo pipeline and trending on how that pipeline is actually running if I look at commits I'm looking at you know what's happening inside a code repository I can see how many active committers I have so we're having insight into every time someone hits commit and one of these code repository is were logging that I can see the average commits per committer or the average files added per commit how many of them been actually reverted and what's that percentage what are my top committers here broken down and how is that trending so Adela is you know trending up with 319 commits a top reverter it was like who's reverting a lot of their commits within the system and how many commits are happening per app so here I've got you know an airline reservation system and here's the demo I'm going to show you my cross fuse app demo you can see there's been a lot of commits while I was testing and then that's dropped off since I'm not been testing any longer so for as far as development I can see things like the commit frequency and how that looks over time the average branches per repository or the commits per pipeline execution the commits without a work item so how many changes are happening the code that aren't even being associated with the work item maybe it's a story or a task or an epic and then I can see those work items here over time I can look at system health and see the tax execution success rate a number of tasks as executions and the number of API calls here and then finally on the dashboard I can look at deployments how many successful deployments have there been how many failed appointment what x6x success rate can the average lead time there again all giving you some high-level visibility within ServiceNow with all the rest of your data around your change process and what's going on now you've got insight into the DevOps piece so let's hop over to Azure DevOps what I want to do is pull up the pipeline that I've created for this demo and I want to show you what are the stages and steps I have in this pipeline because I want to connect the dots back to ServiceNow so you see how these two things are connected and interacting so I've set up a really basic animal pipeline here for the demonstration notice that I've got this broken up into three stages as I mentioned earlier build stage I've got a test stage here and then down on the bottom I've got a deploy stage so that's gonna show both in my pipeline and ServiceNow and in my pipeline and as your DevOps opal you go to mirror them against each other and see where that stuff is in the pipeline I want to point out two things here that are going on in these stages one is this you know ServiceNow dev ops agent job notification I'm running this twice in each stage I've got two started and it completed and this is like a signal as to API call going to ServiceNow going hey this stage of stage is started hey this stage is completed and I can have tasks going on in between those notifications but again we're giving insight into ServiceNow and to what's going on at that pipeline for this demo I just got a hello world in my build step I've got a hello world and my test step but in my deploy step I've actually got the ServiceNow DevOps surgery Server change acceleration and this is the piece that's actually going to go out and create that change request a workflow is gonna pick that up run through the prod change workflow for DevOps and then and then talk back to add your DevOps let us know if that wasn't successful or not in the demo I'm gonna have one out of approve and I'm gonna have one where it runs through a decision process it does not approve and we'll see this step actually fails because we don't get the change approval the other thing to point out here is these tasks over here on the right so if I search for ServiceNow what I did previously as I set up a service connection and add your debits to ServiceNow or I configured the instance and the password and all that stuff and what that gave me are these tasks that I can add to my pipeline so I've already shown you the job notifications both of that applies to agent and server so I'm the deploy step when we're doing our change the process we're gonna use server notifications and a server change acceleration in my my previous steps I used the agent no job notifications but I also have these artifact registrations so if I wanted to register an artifact or a package with in Azure DevOps I could do that both at the agent and the server level getting those things registered so if I come back here to service now what I want to show you is the actual pipeline that I set up for the crossings demo so here I have my cross used app demo and I've got two pipelines associated with that we wanted to use is auto discover when I connected as your DevOps to service now the second one I created and I wanted to show you that one because that's where I mirrored the steps and my pipeline and a do in the service now so you see here I've got a build test and in it Benson and service now I called this server the this is actually corresponding to the job names in the pipeline the one I want to point out since once I've built this and kind of sync these up they auto connect based on those job names but on the server step have this change control true/false that I can check and when I check it I can set the business service I can apply a standard change template I can specify the change approval group and then I can specify which branches are actually under the management of change control so in this demo I just everything's under the management of it and what you'll see me do in this demo is use this business service to toggle whether or not that change approval processes can be followed so when I have cross views business service demo is going to auto approve my change but I change that business service back to all it's gonna enforce the approval process and apply a decision to my actual change so this is the actual pipeline that's connected and kind of syncs up and correspond with Azure DevOps but there's a lot more going on I talked about the planning tool the commits and both and the pipeline so I'll show you here if I look at this as our DevOps connection I do have different plans associated with it so I've got my demo project planned over there where I can see work items if I click through this and look at that planning tool I'll see work items I'll see versions for that plan as they get created I've got features and apps that can be imported and all of this is you know being discovered when you connect the two tools my repository I found that within a DevOps and then of course I've talked about the orchestration task I found those from my build product tests and then of course the pipeline and I've already shown you that I build my own pipeline so what I want to do is come back to Azure DevOps here and then walk through the actual process of committing something so I'm actually gonna come back here and open that pipeline that I showed you earlier so let's go back into my history here we go cross use demo pipeline now I'm gonna open up the pipeline UI so and I'm gonna go ahead and collapse this menu here so you can see I've got a burning pipeline history of how this pipelines been performing in my last demonstration I did I actually failed the change you see that here but I've got the to build the test and the prod steps here coming over from Azure DevOps so let's go ahead and dock this right now or left and then I'm gonna pull out as your DevOps and open up here on the right so we're actually gonna see both of these things together start talking interacting with each other so I've got my work items here set up in Azure DevOps I'm just gonna create a new task and we're just gonna call this task anything we'll just call this DevOps demo DevOps demo task and I will copy that down here to the description and I'm gonna save it and once I've saved it this is wrong and actually a fork my code repositories I'm gonna create a branch and that's gonna how to associate my work item with it and we'll just put a name in there so it'll call DevOps demo tasks and we're gonna copy master here and I'm going to create it and now that my branch has created many I'm gonna make some change so let's go up in this demo new code and I'm just gonna actually you know make a change to it right here so we'll put in here doing a DevOps demo and just comments no major it changes and I'm gonna copy this because I'm gonna put this in my commit notes too so I'm going to copy that and commit and we'll just put that in here paste and let's go ahead and associate that work item again so DevOps demo tasks now I was associated I'm gonna make that commit and now it's saved and that's saved to my branch but I want to bring that back to the master which is gonna kick off my pipeline so I'm gonna create a pull request and leave all that be you're not gonna set any reviewers on this one well I'm gonna create and I'm gonna that are completed myself so we can get that pipeline kicked off so go on we're gonna merge this and I'm gonna go ahead and leave the branch after I merge and that should be started so let's go ahead and open that uh my pipeline here so it is running and we see it's on my first stage here for build not quite started yet but we'll start here in a second and this is gonna update in real time and what we'll see here is this will go from 16 will have a number 17 to correspond with this pipeline the charting so we have build that's been started at completed so let's go ahead and refresh my pipeline over here so you can see that number 17 and we do we have 17 and we showing my build step is successful has been completed which corresponds over here so test process have actually kicked off now and once that updates we'll be able to see that here I'm just gonna toggle back and forth by clicking on a different pipeline okay good we see tests has started and completed within service now we should see that update here in Azure DevOps and we do let's just widen this window here so we see this process here it looks like we've had a change request created on the pipeline and we're just waiting on this deploy stuff to finish up here so I'll go ahead and refresh and then likely okay it's gotten started at least so we have our change look it's completed here in Azure DevOps if I click back down here we can see it has completed so I just refresh my pipeline one more time and I've got green all the way around so I've got a successful build test and deploy process I've got my change request that was approved automatically and now the pipeline's done and worked completed so you know in the usual world we're done here and we can move on but I want to actually show you that change request so we could talk through what's happening in there and speak to some of those audit points so you see it's created a change request automatically we flagged this as a DevOps category and we're using that on the workflow side to trigger what words are going on so if it's a DevOps change where they do take these actions and of course all that's configurable so this one's particular has been closed because it's completed so if we come down here we've got a short description and a description of course and my justification implementation risk and impact back out and test plans I've got links back to Azure DevOps so I can click on that and go see what the actual code changes are you'll even see that in a related list here on the bottom but on the scheduling tab you can see when it was planned and when it actually happened if since this is a really simple demo these are happening in seconds of course and then I got my audit trail my notes so I can see exactly when this was created who created it my DevOps integration user the DevOps system wouldn't approve the tasks automatically and it moved from scheduled to implement review and closed I think I had an authorised step in there as well if I come down here to the bottom I can see the actual the actual commits in the change so let me look at the most recent one here because it seemed to have picked up some other ones but it looked at the most recent one here so if I click this it's gonna actually open that commit record and know how to commit URL where I can actually click on this so just picture I'm an auditor or maybe I'm a manager looking at one ok what was going on I can click on this it's gonna take me to a short DevOps and not only is it taking it right to that commit it takes me to a view where I can see the difference I see that the comments were this on the left and now the comments are this on the right for this particular change so you know talk about insight into what's going on I can just click through and see everything I need to see what I want to do now is actually flip this so that I'm seeing when that change approval process does not meet the criteria for approval so let's open up that pipeline and we'll flip that that business service so I can start enforcing my change approval process now this might not be the way you do it in your system I'm using the business service and the demo to kind of illustrate the the two processes there so I've done that we'll dock it back left and we'll just follow the same process I just showed you for creating a work item and in testing that or pushing it through so we see that change approval process could apply it so we'll do devops demo change decision policy so we're using the decision tables within ServiceNow that already exists to automate this approval so we'll save that and we'll create a branch just like we did last time and change policy and I'll write got that work item associated with it so we'll create that and I'll make a small change to my code showing a change decision policy let's just copy that for my commit notice too and put that work item back on there commit that create our pull request and of course I'm just gonna auto approve that for demo purposes so you can see that it kicked off and get started here so that's doing the merge right now and we should be able to open up that pipeline it just like we did before watch all that happen so let's go over to our pipelines here looks like that has started and our build phase right now it's actually started so let's go back to my pipeline DUI and looks like maybe I clicked on that too fast let's give it a refresh we're looking for number 18 since Atari did 17 there's number 18 okay it started here this is set as completed so we're on step number two here it's like it hasn't started and I'll just flip back and forth like I did before okay good it started that second step and let's see it's already created a change request but this one is actually gonna not approve so we're gonna see this turn red and this is gonna turn yellow and then over here we're gonna see this deploy step actually fail so let's see if yeah look it's failed over here and as your dev ops come back here at ServiceNow and it stopped here on my prize step and I've got a red change request here so let's open up that change request and take a look at what happened can go look at our notes of course and what we'll see is the dev ops system rejected the tasks so that was the approval task and it did that because it applied a change policy so down here on the related list we see the dev ops change approval policies and the decision was equality was too low and what this is looking at is the number of tests that have passed successfully and for this particular product or this particular application that's zero and I did that in the demo so you could see that actually fail but what we're pulling in as inputs into this decision is the change request the pipeline execution how many total commit changes there are four this one commits without work items the count of unfinished stories the stage that we're in and the percentage of test cases passing and this is what is zero for this particular app so it hit that decision and then an audit rejected now if it had hit that in the test cases were fine and you can look at all the other conditions here it commits without work item that is equal to 0 in the count of unfinished stories is equal to 0 and the percentage of test cases passing is greater than 98 then it would have Auto approved the task now this is all configurable you could have different criteria remember I said earlier we're now connected to these tools so you have different insights and visibility into specific data we saw on the dashboard commits per user average commits how meant the reversion rate so you can kind of do a lot of stuff there the other thing to speak to here is that I the demo purposes plotter rejected its you could see it stopping the change process you could change the workflow so that it didn't auto reject maybe it did auto reject but then it created another approval for a human being maybe a change manager or a development manager or something else so those options are always there as well that concludes our demonstration thank you so much for your time and for watching our video hopefully today you've seen how you can integrate your DevOps tools and processes with ServiceNow and not only accelerate your deployments through automated change management but also have insight into all your continuous integration and continuous delivery tools as always cross use is here to help you on your journey if you'd like to talk about DevOps or anything related to a service now send us an email at let's talk at cross views calm

View original source

https://www.youtube.com/watch?v=-_UrvMaST4I