Select to view content in your preferred language

How do you manage updating services, maps and apps (development/release workflow)

935
5
08-02-2023 04:27 AM
AdamPigg
Occasional Contributor

How do people manage the lifecycle of updating applications, as it seems to be an area where Portal is lacking.

Example, we create an application in Experience Builder, which uses a Map, which uses some services that have been published using Pro.

Say we want to add a layer to a service, but we dont want it rolled out to users until the application has been tested, there seems to be no easy way to do this.

Its does not seem possible to "duplicate" an entire application, to make all the changes, test it, and then replace the live application.

You can sort-of handle it if you are -just- changing the EB application, as that has a separate publish step, but it does not seem possible to do if you need to change a Map and a Service, as well as a Web App Builder application.

Any tips for how others work in such scenarios would be appreciated.  In a software development environment, it would be straightforward to build test releases from source control etc, but working within the confines of Enterprise seems to make this difficult.

0 Kudos
5 Replies
GoranGobac
Occasional Contributor

Hi @AdamPigg there is no short answer and there are consultant firms that are actively advising users.
This is an example Continuous Delivery Pipeline: The 5 Stages Explained (codefresh.io)
If you are working with Enterprise Solution than you will need stages 2 or 3 or 5 or 10 it dopendes on  your demand and use case.
There is an active contributor that does this professional @Scott_Tansley 
Nevertheless Enterprise Solution lacks a out of the box deployment tool between stages.
And if you go that way with staging I would highly recommend Tool GaiaBuilder.
Home - GaiaBuilder

PatriceLabbé
Frequent Contributor

Hi @AdamPigg,

Did your try export group content / import group content : Moving content across tiered ArcGIS Enterprise environments (esri.com)?

AdamPigg
Occasional Contributor

Thanks for that @PatriceLabbé  .. it may provide part of the solution, with the exception that non-hosted services are not supported as part of the export/import (understandably) but we mainly use those type of services.  Probably for services, we should create a new service with the requested additions, and then replace their use in the copied map.  A little long winded but could work.

 

I also like the look of what the GaiaBuilder (thx @GoranGobac ) tools are doing, from what I can tell, they are mostly converting mapx exports for storage in Git as JSON, allowing you to manage them in a code repository, plus some tools to add into Pro to make things easier.

0 Kudos
PatriceLabbé
Frequent Contributor

For non-hosted services, we use Azure DevOps to migrate from dev to staging to prod using .sd files (see this Idea for overwriting services : Add "Save As SD" to overwrite an existing service ... - Esri Community). You could then modify the map item file in the content directory to replace urls.

ShariF
by
Regular Contributor

Hi Adam.

You can copy existing maps and apps with the ArcGIS Assistant Beta between and within AGOL and Portal. This beta version allows the copying of new products such as experience builder. This is one way to "duplicate" an entire application; however, when you do copy it the app will have a new URL. 

https://assistant.esri-ps.com/signin

For more information on this tool check out this link. 

Hope that helps.