Simplifying Store Upgrades with the Batch Installer - Platform Fundamentals Academy - Aug 15, 2024
greetings everybody thank you for joining us today we have got a special guest got Adam Stout he is a uh director for platform products um and he will be presenting on how to streamline the upgrade process all right let's get started uh got a lot of stuff to talk about today as a safe harbor notice when I talk I generally talk about stuff that's going to come out so please make sure you're only making your purchasing decisions based off of what is released um and we may drop in a little bit of what's to come in future releases uh but make sure that we're making making purchasing decisions based off of what is out now if I'm talking about the future I will I will attempt to call that out welcome to the fundamentals Academy platform fundamentals Academy you heard from uh John Lind who's our host and he will be helping me with the Q&A as we go through and again my name is Adam Stout uh and I'm in the we're both in the outbound product management team for platform So today we're going to be talking about simplifying store upgrades with with a batch installer with the with the batch installer and the goal here is not about how how we do it technically we will answer some more of those questions we'll walk through how we can do this today and make it better today but we want to talk about different approaches on how to make this easy for you uh make this easy for you today how you can improve your planning process as we're going to zanado do um as we're going to Yokohama and Zurich in the future and we're using the store updates in between there how do we make it easy and reduce some of the anxiety about what we're seeing and the upgrade process in general and then we're going to talk about what you can do with the bat installer which is available today and I do want to get your feedback um in chat and maybe we can talk later as well about how we can make this process better we'll focus on making what you can do today but we want to make it better tomorrow and so we really want to get your feedback on that so today we'll be talking about how do you plan store up how does how does the store fit into my my update and upgrade process a lot of us have been around for long enough that we're used to two upgrades a year and there's two upgrades a year one and two the store has given us more tools for that and let's we're going to talk through that um next after that we're going to do a demo of a a small app that I built on top of my existing instance and this app uh I built it in Washington and I've used it in Zurich uh or sorry used in xanad do it should work Beyond uh in the past as well I think actually anything from Orlando we should be able to do it but we're going to walk through a small app um and then we'll we'll we'll do the demo and then we're going to do a walk through of how I built it and it's something you can do as well again the technical code there's a little bit more in there kind of an example of what you have we will either get out into the community or into get um so that you can see kind of some of the things that we did it was a pretty rough cut but effective and so we'll discuss that on how can you do this how can you put in more more automation into your update process and then we have some resources to go through and then we will get into Q&A so our team's objectives and we deal with upgrades it's to reduce the cost to upgrade I I want you to upgrade really frequently I want you to stand the latest and greatest um you get all the new features you you stay as secure as possible just everything we can do we spend a lot of money to develop new things and make it better for you and I want you to get them it doesn't do us a lot of good uh any of us good if we develop all this great functionality and you don't get it or it takes a year to get it or longer so we want to make sure that you're upgrading the barrier to upgrade is that it costs something costs time it costs resources uh some stress sometimes so our we're focusing it as a development team on how do we reduce the cost to upgrade and when I look at that I'm talking about the the time to upgrade the resources needed to upgrade and then if there's any downtime in this session today we're going to be talking about the time to upgrade and the resources how do we minimize the amount of time it takes uh and the resources that it you need uh to to do that okay so now we're going to talk about how do I plan a store update the the store has lots and lots of updates how do I know what I want what I what I don't want so the first place that I start is with the upgrade kit um if you can put it in the chat how many people are familiar with the upgrade kit um as it goes through I I will start through that the upgrade kit comes out generally the day of General availability so right now Washington is out xanado do is not out um but you can see this for Washington and Vancouver uh I saw this for Washington I think it's 270 slides uh or somewhere around there uh for uh it goes through every major feature that comes through the reason I start with this in the first slide generally you've seen look at the release notes I don't look at the release notes I look at the upgrade kit the upgrade kit is a is actually a PDF that you can get to for Washington and Vancouver with this link uh zadoo again should be out in a few weeks but it will it'll come out with GA it walks through all the major platform features it walks through um all of the uh the different buus features that have come through take a look at that if you're on this call this is relevant to you there's the pdf version there's also a PowerPoint version you can get so I want you to use this for your users where you can take the 270 slides look at everything cut it down to the 15 that are really impactful for your organization and you can talk about here the new features that are coming through again I recommend even if you don't have customer workflows you don't have uh uh customer service management look at those slides it's amazing to see what's coming out in every release and whether it is the store release or it is the the family release you're seeing all the new functionality it might give you some ideas of the art of the possible and if you're looking at platform or Creator and the applications you have you definitely want to see those new features because some of them you have to go get a new store app it's not just about upgrading but it's about adding new things so take a look at this uh at the upgrade kit once you see something interesting you'll see a slide with a few bullets on it then you can go look at the release notes then you can go find an academy where we talk about it but this is the entry point on how to decide what you want to upgrade and to decide what uh what new features do you want to install activate Okay uh so upgrade timeline so just as a reminder for everything in in upgrades we actually we do two family releases a year which are come out in March and September we do patches uh each quarter and then you have the hot fix patch in between then so there are new versions of the of of your family release every quarter sorry every month that come through but they're generally security security patch with your major releases to come through so that's just that's what's what's going through what I want to focus in now is more on the store releases that that come for this and how we how we true up the term we use is is true up where we package so this is a general framework on how we look at things it's not doesn't happen all the time um and some of those security releases will come in as well but a really important thing to to think about I just upgraded one of my instances toad do and had 197 Store updates 197 to look through if you see that I want I want this slide to help ease the fears about that the anxiety about how I have to go through all of those each of the releases that come through in the store get merged in to the family release later on so in this General release time frame if we're looking at at this year in 2024 we had a store release in February we had a store release in May May then we have a store release in August and we'll have another one in November the store releases in February and in May are not in the March release the March release was uh uh Washington but February and may get merged into the September release in xanadoo I hope I get all my releases right as I'm talking through this example so if I didn't take any store release updates in February if I didn't take any store release uh updates in May I will get the vast vast majority of those in September without doing anything without doing anything I'm going to get those in September they will upgrade in what come through there's an example in the documentation that walks you through how the patches work because a store release actually might have multiple versions out available in the store where you might have version one two and three it will come you'll get what you need to have in the family release again with just very very very few exceptions where you do have to go update them manually when you look at these what I get get in February and may is the option to upgrade early the option to update my app early so if I want it I can get it when it comes out in February I can get it when it comes out in May but if I don't know about it and I I'm not worried about it it's not super critical functionality to me I'm just going to wait till the family release and get everything then and again this goes through all the time you see all these arrows that come through so when I upgraded in March I was getting the November and August release what comes out what just came out in the store in August what it comes out in November I will get those in February uh in March with the uh Yokohama release so it's important to understand we get everything in here you don't have to update we'll drag you along with us so when you get to that family release in September when you go to Family release in zanadoo we will make sure that you're upgraded to the latest version to the lowest supported version we're not going to force you up as much as we can but if you need something for Z do that that you have a release an older release that's not compatible it will upgrade that patch release to bring you to the right level it'll take what version you're at and bring you just as far as you need to go to get to in September you have the option of going up early but we'll drag you up so that it doesn't break you don't have to be afraid that an app will break because you go to xanad we'll bring you along in those things there's nothing there's no apps you have to upgrade once you upgrade X do there's no store apps you have to update generally all right John are there any questions about this that we need to tackle no I think a lot of the questions are about to be answered when you show the demo so um okay um so the whole point the whole point of this as we go through is that uh again you don't have to update anything now we're gonna spend the rest of the the rest of the conversation about well how do I update when I do want to update um as we go through uh this was the the release uh that was coming that was my slide from Washington to come through that do remember that from family releases that are released twice a year generally we we support n minus two you can talk to your account team on what your entitlement is some customers are n minus one some are n minus two and then there might be some old Legacy ones uh to come through so generally as we're looking at this uh when we release xanado and September the Tokyo release will no longer be supported um if you have that that's it's very much in generalities if you have any questions please talk to your account team all right now one of the key things that I I want to talk about what do you need to update I don't want you to take a look a list I again I had 197 updates I thought I had a screenshot in here but I forgot 197 don't look at a list of updates 197 is a lot there's thousands of plugins just thousands and thousands of plugins I want you to focus in on what's important so how do I know what's important well one I'm going to go look at the update Kit that tells me about the new features that are out there and I can decide I want that and then go look in the docs and how do I get that right install the store app it comes with once you upgrade is X anad do you get it the docs will tell you what that means and often times the upgrade kit itself will tell you the next step I have down after that is I go look at my blueprints so in the admin Center there are the uh application uh Blueprints and the blueprints tell me if I want to achieve this goal if I want to achieve this goal here's what you need here are the here are the applications you probably want and then walk you through the in installation along with that installation it's telling you hey there's an update available for this so I'm looking at a blueprint for uh my goal My outcome of reducing incidents and keeping Services flowing with AI based Automation and when I look at this if you look at the bottom it's saying hey if you want to do this you want event management core you are subscribed to this you're entitled to this and you haven't installed it so I want to go install that service service operations work uh workspace I have installed I'm entitled to it I haven't installed it but there's a new update oh well I'll go grab that update great it's guiding me through what I'm trying to achieve and what applications I want to have with that uh when I drill into this it's going to tell me more about what does this do what do I how do I implement it and all this stuff a lot of great information if you haven't looked at blueprints go look at blueprints if you have impact and you have a squad ask them right they'll help you through this as well uh but this is available to all all customers blueprints are avable all your instances and Adam how do you how do you navigate to the blueprints specifically do you get there differently than you would for plugins or other applications um we'll pull that up in the demo it's great question but it's under the admin menu gotcha um I you ask that I will remind me to tell you my favorite feature in Washington I'm sad that it's my favorite feature but it is but it is my favorite feature most useful thing in Washington um so we'll go to the blueprints but uh blueprints really useful take a look at them again it guides you through that what do I want to do the blueprints get updated all the time as well so that as we're going through the feature you'll see that this needs update so even if you've gone through a blueprint and activated everything once you upgrade to zanado do once you upgrade to Yokohama go look again and see has anything changed have we have service Now updates all the time and expands and adds more functionality so to accomplish the same goal there might be improved tools that aren't just a straight upgrade but actually new functionality to incorporate into that so we've looked at the upgrade toolkit then we look at the blueprint the next thing I look at is the app itself so we started doing this a couple releases ago and it's very very useful we were talking about blueprints I went to xanado do and I went to go look at my blueprint and the blueprints said hey hey Adam there's an update available for this now it works fine this is supported the version I have is totally fine but the blueprints app is telling me hey go to the App Manager because you can get even better blueprints awesome I'm going to go do that um this is common if you work in workflow studio uh when you go to workflow Studio and there's we we're updating that a lot particularly with new geni features it'll say hey there's an update so I have 197 uh features in here we'll look at some of the ones that are in there I don't care about some of them one of them was Mobile card Builder on my instance I don't use mobile I don't I just I don't I I have other things that I'm focusing in on so I'm not using mobile there's an update for mobile okay I'll get it when I go to Yokohama it's not something I need to go get it's not something I need to spend any test resources on but once I upgrade to xanado do I'm going to again look at the upgrade toolkit about what are the new things I definitely want to get I'm going to update my gen regardless because that's that stuff changes all the time lots of great stuff happening um then I'm going to look at my Blueprints and then I'm going to look at the apps that I use in my testing and take a note hey I want to go update blueprints so let's go update blueprints uh workflow studio is probably gonna have an update I'll go grab that if you don't need it you don't need it right you'll get it eventually but Focus the things on the things that are important to you all right with that I'm going to jump over to the demo okay so I am on my new xanadoo my Z not my new xanadoo instance this instance is if you will a few years old it's gone through several different upgrades um and I am going to go to my favorite feature in Washington still here in xanadoo when I click on admin I have lots of great stuff as an admin this is actually what I'm going to quite often um I have my admin home which I'm looking it now my adoption blueprints my my adoption blueprints quick to get to straight from the admin menu the application manager that's where we're going to spend some time today um and I can also get to subscription management security Center but the core things I need to get to really quickly are under the admin menu so we're going to go uh first to the application manager and I'm using new application manager I have a thousand store apps again I'm not really looking at browsing a thousand things it's just not it's too much but if I look at the upgrade kit it's going to guide me through the things that I do care about and I can go grab those we talked about blueprints you can also search by blueprint like I want to what we were looking at a second ago reduce incidents in keeping uh Services flowing with AI based automation these are the related uh uh products and plugins and applications that are available here and I can see what has an update and what doesn't straight on the app on the uh application manager I'm going to go to updates again this is the part that if we get anything out of this session I want you to to Rel about and to be calm 197 things okay don't care I don't need Mobile card Builder um I'm not using App templates right now and I'm I'm not using the context app template so I not the biggest important thing to me now assist for CSM I'm using that there's an update available let's go grab that so I could go in here and click through here and this will bring it up and I can see that I am running uh 512 but 60 is available and it'll tell me what's in there all right there's 197 still a lot to go through so now let's talk about the uh a batch installer that you can build this is custom I built this out of here and we again we'll walk through how to how to build it but it was something it was pretty quick to assemble uh to give me a a quick way of installing a lot of things and reviewing a lot of things so I built a a new uh application called and it definitely was a new app which is store uh I call I put a new module here available Store updates and I have three levels so one of the things that happens is I have all these updates that come through and I want to review them I want to look at what has patches available my risk preference right now is that in my upgrade to zanadoo I'm going to take all the patches all the patches that are available for things that I have installed I'm going to go ahead and take them I'm not going to update HR I'm not going to update CSM I'm not going to update the big workflows but if it's a patch I'll take the patch so I am going through those 197 197 available apps and I have now identified the 35 patches that are available and the patches are are patches right patches minor releases and major releases in my patches I can see the Clone admin console I am running uh 1014 105 is here if I want to get some more information about it I just put a link into the store uh that that will quickly let me uh see what the updates are available here so 115 I can see the features and the updates that that come through so I have these I also have gone through and said well my risk tolerance is actually I'm going to take minor updates I don't want to change functionality but I want minor updates so now I can see minor updates and I've WR in this filter my preference was that if I'm willing to take the risk profile of a minor update if they patches the latest then give me the patch the logic that I have here is that if there is a patch in a minor then I want the minor and if there's only a patch then just give me the patch and so I can see that here out of 197 available apps I have 168 that have a minor the a minor version available or a patch and if I come back in here I'm GNA go back to the major update so this should actually be everything um and here uh I actually have some more updates available to come through but this is everything with a major a minor or a patch Lev and if I want to see major I actually can just filter to Major so these are all of the apps that have major updates available uh which is quite a few quite a few have major updates available you'll see a lot of platform things in here that will that will come through nice and so the distinguishing thing I think I see here is that supposed to just that big list of 197 you can tell which ones are major and minor filter them in this way yeah and I use I use some logic in here to say hey if there's two patches available which can H it's not super common but it can happen um just give me the latest patch so I am doing a very rough cut I'm not looking at everyone individually because that's not what I want to do if there's a patch give me the latest patch I'm this will show plugins and so by that also like basically store apps um everything except for like you know major major releases of the platform itself yeah so so as we go through so plugins are upgraded when you upgrade to zanadoo you're upgrading all plugins you don't have a choice you don't have a choice store you have a choice and and even in the store you don't have a choice in that way back right so effectively when I go to zanado do I'm going to get at least the version whatever the current version was in February or may according to my patch version again there's a doc in the docs and I'll get we'll get the link up that walks you through each piece of that on what would get upgraded what when there's multiple version it gets a little little confusing uh but H plugins a family release is I'm upgrading all 3,000 family plugins the store is when you have choice and we do want to do more in the store to give you more choice and if you don't want the choice you'll get it when you upgrade to the next family release right but this just lets you get stuff earlier but it does let you filter out they're not all equal right I don't want to say I want all 197 because some of them have major functionality changes some of them require organizational change what comes through and a patch probably doesn't a patch go shouldn't a patch should just fix some fix something that's broken so I've come in here now this is helpful to me just by itself s that I can see I have these patches again 197 went down to 35 much more manageable and I can look at this and go okay I I want them all I'm just going to select this and um I for some reason I don't want to change my process mining um I'm in the middle of imp implementation I don't want to update anything we're just we're going to take that out maybe this is CS and my CSM team my HR team said don't update anything just don't touch anything with HR so I'm going to unche even though it's just a patch I'm going to uncheck it and then I'm actually we're going to do a live demo so I don't want to install 30 things we're going to go back I am just G to update mobile we're going to update mobile and we're gonna update this component for cmdb nlq search these two applications I'm going to click install updates this is a UI action I created it's going to confirm I like confirmation before I install things and we're going to do install updates and what this is doing in the background is going to the batch installer it created a batch grouped those into a batch uh record and said go install them and now I'm just installing them using the cicd batch installer so this is going to run in the background this will take a little bit to run and I can monitor it it's not actually important that I confirm it's not actually important that I monitor it but I was able to monitor it so we'll leave this running in the background uh does take a little bit of time to go through but I don't have anything to do and I don't have to go back and click and click and click so whether I'm doing two or I'm doing 30 doesn't matter it'll just work through that batch to install them all right so now that I have this um this was the demo John is there anything else we needed to hit in the demo otherwise we'll go into the walkth through any any questions that we should point out while we're live uh yeah one question um is um does the App Manager tell you it's a good question actually I have the we have the luxury of of being uh entitled to every every application the does the App Manager tell you what you can install but also whether or not your license for it yeah so if I come in um yeah on this instance I'm licensed for everything it's nice um so let's take a look real quick on the available to me um so for I believe if it's a partner app you have to you have to uh purchase it you have to acquire it in the store um and for certain things that require new T's and C's you need to go in the store but things I'm not entitled to let's look for Workforce optimization it should tell me so this is a a paid app and it's telling me it's included with in my license everything I need is included in my license so it will tell you you're entitled or not we saw it in um I saw it in the blueprints let me go back to the adoption blueprint and the one for AI it's the same card that's shown in the blueprint is is showed here and in the blueprint you'll see it's included in license or not entitled uh once once this finishes finishes loading thank you thank you and a reminder everybody if you have questions please hit the Q&A button and uh we'll either answer them immediately or we'll I'll be sure that we get Adam to answer those before the before the uh session's over thank you okay so we come in to reduce see the details here okay so here we see included with subscription I believe this will be gray and say that you're not entitled to it so it is clear and it won't let you in a subr in a production it'll definitely be it will show you that and a subr I think it will show you not included but it will still let you install it generally um it just warned you okay so we looked at that I'm going to jump over to the walkthr we'll go back to the slides and walk through how did I build this oh and sorry we as we checked in here this is actually done installing or it's pretty close it's just wrapping up the last parts of this and so if you install if you install something and there's a dependency will it pick up those dependencies automatically much like the app manager does um yes so when I go to install it if it has to install the other stuff it should install everything else with it great the dependencies are are done that if you want a and you need B andc it will install B andc you should not be able to get to a state where you've installed something that doesn't work excellent yeah uh although I in in the the confirmation screen I have it's not traversing those it's just saying you want to install these it it doesn't blow everything out although that's certainly doable to do uh okay and I wanted to pull up one thing as we come through into workflow Studio and the workflow Studio again I get an update that there's a new version this works this is totally supported but if I want the latest and greatest workflow Studio then I can go to the app manager and install the workflow Studio or we can do it in the batch installer like we just saw and what I wanted to see in here was my flows and we're going to look at the execution so we're going to walk through the walkthrough but I'm just going to show you one piece in here before then and oh operations close this would have been a better way of going so batch install updates we're going to take a look at the flow but I I will show this first so in the batch install what we're ending up creating is this batch this is the secret sauce to all of this we're using an out of theok spoke uh for the cicd batch installation and what we are ending up creating is something that just says I want to install this app version let's it actually the CIS ID install it um and the request in which version of that you want I want 2124 I want 232 these were the two that I selected and then this will go install it so now we're going to jump over to some slides and we'll we'll walk through a little bit more about how this was built what the different components were so we're going to go back to here is my slides showing again uh batch install our demo is what we're seeing perfect okay good all right so let's get into the walkthrough about what we're doing so uh I did build a new app so I created a new scope that had this in there nothing we're doing requires to be in global so we can be very self-contained in this Standalone scope a few different records you see on the side there this is all driven off of two main tables so the first table is CIS app version CIS app version includes everything that your instance can see all the available versions um and we don't see it in this screenshot but one of the things that will be here is there there are multiple versions of the same app there will be multiple versions of the same app whether there's two patches and a minor release or a patch a minor release and a major it's all the different versions that that are available and you see this in the version column these are available to me once I've installed this this version it will remove the other ones uh there when you're getting this list this list uh when you press the sync button when you're in the app manager and you press sync it is updating this table all the available versions of things that you can get once you upgrade when you upgrade to xanado do you want to go press the sync table sync version so it goes and grabs all the latest available updates when the store release comes out the store we have Store updates once a month this there's a job that Updates this once a day so it's not something you have to do but if you really want the latest and latest greatest thing on your you know you go to your subpro press sync to go grab it if something's missing go press sync it Updates this table all the available versions that are there the next key table that we're looking at is CIS Store app CIS Store app contains all of the apps that I have installed all the store apps that I have installed on my instance um on on these two tables the first one had a couple thousand versions available for me which reduced down to 100 uh no the there were store apps were a little a thousand but there are a few thousand different versions that were available CIS Store app is things I have installed and then the version that is currently installed on my instance so we saw when we looked at the patches table we said you have version a and version B is available it's joining these two tables that gives me that now I say join there's a little bit more to it than just a straight database view you could do a database view uh but instead I took the approach of creating a remote table so a remote table is a table uh it doesn't it does not count as a custom table but as a table you define you define your Fields but you define a script that populates that so this can be done uh it's gener the reason it's called a remote table it's generally done for Integrations but it can be pulling data in locally as well um so I'm not uh I'm not quering anything else I'm not doing anything special but I have a script in the background that goes through and looks at all my CIS Store app records so all the apps that I have available and then it query CIS app version to give me the latest major release the latest minor release and the latest version I flatten them down so if there are two minor versions that are available I'm only getting the latest one if there's two patches I'm only getting the latest one um that is not always correct if there are if there's a a V1 minor release and a V2 minor release I'm only going to show the V2 which is actually at that point a major release so uh no sorry it's only gonna pick the minor release that's available to that's your difference it's calculating the delta right so it's looking at the dots the three dots the two dots and the three components to figure out what's a major minor and Patch release but if there are two patches you're going to go to the latest patch uh for your for the version you have installed not uh you're going to skip the in between one if you really need to be very surgical uh like support says hey you want version 1.3 but not 1.4 for what you're doing then you'd still use the app manager but again this gives me a great way of just going hey just give me all the patches let let's get the minor releases let's get the stuff updated we're going to go to zanadoo we're going to going to be all the latest minor releases and then major releases are as needed I I want to be sponsor for them so the remote table lets me build that and this is uh like a 60 line script 70 Line script too much that I couldn't put in PowerPoint but I wanted to let you know that the remote table is where all all the magic happens in this to calculate that major minor patch release okay this is what it looks like we looked at this we looked exactly at this in the demo where we said I wanted all the the minor releases um and in this case we're just seeing all the different versions that come through uh anything interesting in this one no this is just showing my ma my major and minor releases this is the result of that remote table remote tables look like tables they smell like tables they feel like tables you just can't update them because they're all just reading data but I can Now operate this and create any dashboards any reports any filtering that I'd want to do this is what was key for me because in my preference I wanted to say hey search for you know the HR ones so I can say give me all the plugins that have HR I could do some other filtering as well all right then how do we make some of this stuff work so I used a couple UI actions I did this all in core UI I will say that if I had a little bit more time I would go build this a work in a workspace um and I create all the new components I have been around for a while so I just knew it the way I did it the way that I knew how to do it so I created a UI action and the UI action was uh called install updates you saw me press the button at the top that just iterates ated over the the boxes that I had checked I iterated the over the boxes I had checked and I sent them to a custom UI page and that custom UI page took that list of CIS IDs that that were selected and showed them to me I like confirmation this is a step that's not required but is really nice and I just before it automatically installed them or C or fired off the installation it says hey you sure you want to install all of these this would be a a phase that I could update some or I could add a little bit more to to make sure I'm really doing it uh that we had the question about the dependencies this could blow out the dependencies and let let me know what's going on um it could do any more sanity checking right you asked to do this what's my process to make sure these things are right these are things you want to do okay uh so I have all that this is at the confirmation screen there's no real logic here and then once I said yes I want to do it then it took me to to uh a page that monitoring page that that it fired off off the the flow which we'll see in a second and then it started monitoring the batch installation process so the batch installation process cues an installation uh that list to go and then this is just monitoring the worker uh the worker process the progress worker to show me when is it done you don't need to do this either but it's nice because that way I will know when it is done or when it thinks it's done without having to go look at any more tables and then from here here is where the magic happens all that other stuff is just UI it's just experience on what you want to have a couple queries this is the part I want to make sure that we all are aware about because this is how you automate stuff and that is using the step number three the batch installer the batch installer is part of the cicd spoke um and see if we get in here what I did in step two let's blow that out just a little bit I created that XML uh package Json package it's Json we saw it in the demo we can PR it up again if we want to really quickly but all it is doing is putting in a find format to say this app version or sorry this this this store app app version this is the version I want I put a note in there so I could see it if I do go look in a log but you're just saying here's what I want to install very very simple format I build it here on the Fly given a list of CIS IDs and then once I have that I oh sorry here's the script there's the script I used to build it um that built that final Json package but it just said hey it's an application believe this supports plugins as well but you wouldn't upgrade a plugin because those are all updated uh it could activate it I think you can activate plugins this way um but I'm doing upgrades so only applications made sense for this upgrade process that I'm doing it just creates a Json package envelope and then I send that to the batch installer and the batch installer I have a manifest that was the word I was looking for I have my manifest I give the batch installer a manifest the batch plan I have some credentials you do need to have a user on here that has one very specific set of permissions it doesn't have to be able to log in it doesn't log in interactively it is I believe web service only it doesn't I don't think it even needs to have admin it just has to have permission to CU batch uh plugins or batch apps what this also means is this actually works if you're going to do it remotely if you created these users and you have your credentials you could actually have one system install it on other another instance with the right credentials it doesn't have to be local I'm doing local and then you tell it what instance you want work on that was the instance I was working on that's the one we were showing the demo on batch installers out of the box again if you get through if you get through this presentation one don't have any anxiety about having lots of updates to do and then number two the batch installer is there to help you the cicd spoke to configure that it's in the documentation there are plenty of other videos that walk you through how to configure that ex exactly which role you need what permissions it has um and again I think it says in here this is available from Orlando uh and onward so in the demo that I built I'm using some jelly so that's existed since the dawn of time for us and uh the the spoke this is the key secret this is the the the special ingredient is the batch installer that's available from Orlando on so everybody has access to to build what we're building nothing there's nothing new in this all right um with that let's go see if we can answer a few more questions while we have some time and then we'll go over a couple wrap-up resources ources um Eric's got a question um about optin so here his example was I just installed GRC workpace yesterday had to opt into SN Doc before I could do the install so does your uh your tool doesn't have any sort of UI so do you know what happens in those cases yeah great question U I believe it it may not show up uh until you've opt it in uh so opting in is where you're uh agreeing to the teases in the use case we have there is I guess there is a situation here that youd run into a problem where you have a dependency you have to opt into a new dependency so once you've opted in for an app you don't have to opt in again uh with again very very rare situations where that's not the case uh so if I'm doing an update it should not be a problem actually as you point that out it could be a problem because there is a new dependency that you have to opt into um and I have to test what that does actually uh I don't know if it will fail or will do it um to come through uh generally this will be fine for updates and it won't show you the the head I think it actually just won't show it to you anymore if there's a dependency that's that's not there that's what's supposed to happen because you have to go to the store to opt in first then you can activate it so that that does and then you can upgrade it yeah and and the opt in again you're you're ageing to the t's and C's that come through you don't have to do that uh for the vast vast majority of things if you wait to the release if you wait till the family release where gets chewed up that we talked about before this so again all that all that noise goes away the optin and the teas and C's have to do when you're trying to get something earlier than the family release excellent so everyone I'm going to launch a little short poll um we start that now if you can answer these questions at your leisure um I have another question uh from Richard um I guess he's asking about the true up um so since you have a lot of releases potentially a lot of store releases to sort of cut off how do I know what stuff came in the true up and what stuff you know didn't make so that is an area that we are trying to increase visibility into because it's not clear not always clear to us which patch releases get shrewed up and which ones don't and which patch gets patched into it um uh so generally the cut off for let's see sanado do was will be released in September the cut off is around may but then once you get to like Zander do patch 2 then we might take some of those patches to come through it's incredibly hard to see if you have a question you actually have to ask your account team right now they can they they can see it it's possible for us to see what we've put in there um but as you bring that up that is a point we're trying to improve because you you don't if you don't need to upgrade it because you're going to get it if I'm gonna upgrade to Z do I'm gonna get that patch then that's fine um as we go through the the the patches for the store releases you can always do them early right if it's compatible the only things you see right now are things that are compatible for you and we actually want to expand that to let give you some visibility into when I go to xanadoo I'll see this new version but uh before then if you upgrade before it's just going to make your family upgrade faster so generally I would actually want to do this upgrade before it's a little bit more work in theory I mean it depends on your preference on what you want to have you're you're in control but if I were doing this I would want to do an upgrade to my pro pro instance if I'm going to zanadoo and I say I'm going to zanadoo in October well in September I want to update my store patches I'm going to go through them because it's going to be all these minor releases that come through which is gon to when I do my xanado do update it's gonna uh minimize the changes for xanado do and then I'll come back later and then do the store releases later later to come through so I want to spread sprinkle out my upgrades especially if it's just patches to kind of do do the store ones that are available before I upgrade get that stabilized everything's good then I'll do my family release which will have some major updates in there right because it's doing all the plugins but it won't have any Store updates for me because I will have already done them I already be more current than what's available in there I'm not getting dragged I'm getting I'm able to do it on my my terms and then I'll go in to upgrade in October and then when I get to November December I'll do patches again so that I'm always ahead of what's going to come in the family release to minimize I'm going to do more frequent smaller upgrades now if you want to do just big bang I'm gonna upgrade once a year well then you can do that too right like we we just we put all our testing resources in at one time and we handle all these changes that's fine too I don't pref I don't prefer that because there's so much more release note stuff that goes through uh I like frequent small ones but you can also do uh infrequent big ones and it'll be up to you nice so um uh Anonymous attendi um asked if there was any risk um getting support if something went wrong uh there should not be any any issue with that tell them tell them I sent you we're using the batch installer right we're using a supported process for this so uh we got to fix it this our problem if you are going in and doing some wacky stuff in the background into tables then you know we're still going to support you but it's hard to support right I mean at the end of the day it doesn't matter who's whose problem it is we gota yours and ourself we want to make sure that you're happy and things are working if you're not working we got we have a problem um but we're using the batch instellar so again we did some UI stuff and figured out what I want to install but at the end of the day that batch installer I gave it a valid manifest and if I didn't it's going to reject it saying it's a bad it's an invalid manifest I tells me that a lot when I was starting out with this manifest I installed it so I used to support it spoke I did it to do something it's got to work right or or handle it gracefully and let me know what's going on now I didn't do a lot of erir catching I didn't validate my manifest um so I might get an error somewhere my flow we pulled it up before in the execution the UI I have doesn't surface a flow error maybe it could right or check it or validate it or any of those things um there's apis in there to check the proc the the uh the process what's going on I had that progress worker where it's showing me what's going on and if there's an error it'll say there's an error and then I'll have to go dig in the logs I'm okay with that for where I was at but there are some more apis to check that particularly if I was doing it remotely then I would use these other apis in the flow to do some more work so the the what we wanted to get through here is that you can uh if you use that that batch installer there's a lot you can do to fit your process whether you want approvals in there whether you want to check what's going on I did a pretty rough cut of I just want to select all these patches and go through it is what I've been using on my local instances to just say upgrade all my patches um because I I want to I want to be more current I want to be as current as whatever is released um I want a sub prod I you know to come through but you're able to go through the stuff and look at it so provat asks uh whether or not will be providing like an update set or XML for this um how he can do this himself um so yeah we we are going to figure out how to do that whether we have a blog post out there with some of the example codes of the UI pages and things like that um and some screenshots of the flow uh or we'll get and get we will figure out something to give you an example to build from um the actual code that I walk through is not supported the UI Pages um they're just examples of of things to give you some inspiration but the key part in there is once you're you're calling the the batch instellar spoke that is supported right that's the Magic in here that's the hard part um that stuff is definitely supported but just the general UI Pages uh we can provide some examples and we'll uh check out keep an eye on the platform fundamentals Academy um page it's probably the page you get you used to get to to register for this event and we will be posting up the video for this uh next week as well as uh as any assets that support you and imp implementing this yourself yeah um and now the other question I have for you to come through I don't like it at all when I have to go here's some examples of stuff you might want to do we want to make this process better from the App Manager perspective and so um if you want to try it in the chat or if you if if you're interested in having a follow-up with us we'd love to talk to you about what is it that you're what experience are you looking for what is it that you want um our team is working on a lot of stuff in there but we just love to hear from you right you came here are you dedicated an hour uh to listening to us uh live and asking your questions and which we really appreciate and if you want to put into the chat what is it you'd expect um what do what do you like is this good or is this bad is a good direction to help help you or there other things you'd like to see with the app manager we talked about more clarity I think in am I entitled to this or not so I heard some some people R in some hesitation about some better error catching the store process about the opt-in we'd love to hear from you again either in the chat we will make sure all these comments get back to our our development teams or if you'd like to follow up some more and you would like to talk to us live um let us know in the chat just drop and go hey I'd like to talk about whatever it is that you want to talk about and then we will we will be going through that to follow up with you um with that do we have any other questions I think got stalled paper BL would you like to speak yeah yeah hi everyone good morning uh Prat from Tri networks so uh thank you so much for the presentation first of all this is really helpful uh why I asked for the XML is like we really love to build custom things but if it was offer out of the box then why you know do the hard work but uh we can definitely tweak what you have built and you know uh as I shared the example for EES uh there's a sequential requirement and you know entit entitling new products offered under family plugin so if we can work together maybe we can build it better in near future first we need to get where what you showed right now it's really really painful like from last three months we just trying to get ahead on our plug-in list and there are thousands of them and we almost need all of them I just got to know from service now that or all core plugins will be upgraded with the family version but not all so I just throw out that example and uh yeah is there a way if if you're working on a product to get involved and you know help it groom better and if you can get the XML as I said then yeah we can definitely tweak it make it custom as for the requirement I just said and back the XML in the community so that's what I wanted to say yeah the and I'll say I mean with that the U the gotas that could get in here is the Manifest in what you come through it's generally pretty good about if you need a dependency to go grab it um to come through the sequential stuff is interesting I can believe that that quential stuff and the entitling the new products so the entit new yeah so we just upgraded from one family version to the Washington DC we upgrade every family version so with this version we got new 10 or 12 more plugins under the same plugin family the expectation is they'll be entitled automatically to all the instances right but they were not they were they weren't entitled at all so we have to go to the store do the entitlement select the instances and then go back to the store then check the dependency whether the instance is intitled or not so I was just thinking if we can automate all of that into the uh into the app you have built that'll be great and yeah sequencing I was just thinking if thank thank you excuse me go ahead sorry no I said I was just want to say thank you for your feedback appreciate it yeah they definitely and and this and this quick dirty version isn't there right the the real challenge for this is how do we make all of that graceful right so there certainly there is a I can get what I want pretty quickly this what we wanted to talk about today while we're working on it there's a lot of in the background to make sure every you know all the edge cases work really smoothly um that's why this isn't in the product today um but uh great yeah again we we'll follow up on what you were looking for what your ideal state is so we can figure out how to make sure we're covering that the best way I appreciate that yeah if there's any pack group or any you know you have a first level customer you work with to groom a product then yeah please pit Us in and we'll be happy to contribute it's going to help entire Community all service non customers I guess great thank you so thank you everybody and thank you Adam appreciate it thanks everybody bye
https://www.youtube.com/watch?v=dzFGIvb18Ck