In this demo, Bill shows how to automate a workflow to move curated and authoritative content from development to staging to production.
This is a very important workflow to many organizations as they conduct quality assurance (QA) checks on one or more tiers before ultimately promoting to their production environments. Bill demonstrates how newly introduced automation tools in ArcGIS Enterprise and ArcGIS API for Python can be used to migrate content via groups.

For this scenario, Bill introduces a Web AppBuilder application that’s already in production and is used to monitor water distribution information. The web app consists of a set of tools and feature services that represent distribution mains and pump stations. Let’s see how he does it.
In his web app, he’s added a new data field, updated the banner, tools layout and basemap, feature symbology, and popups. He’s conducted QA in his development environment and is ready to promote the content to staging where he’ll conduct additional QA.
To automate promotion of his content, he’s using a Notebook with ArcGIS API for Python to call the group migration manager tool to export the content as a package and then import into the staging tier.
As an administrator, here are his workflow steps:
- Makes a connection to the development environment (via his organization’s URL)
- Accesses the group containing the web app and supported items.
- Creates an exported package of the group to contain supported items.
- Connects to his staging environment.
- Adds the exported package as a new item in the staging environment.
- Shares the exported package item to the staging group.
- Before importing the package as items, he inspects the contents.
- Finally, he imports the package into the sharing group.

After the imported items are available on staging, he verifies that the web app’s item ID has been preserved and all the items in his app are represented as they were in the development tier.
Following QA review in staging, he can promote the content again to the production environment using the same method.
An administrator may conduct these steps manually or automate the workflow using a notebook task. Learn about this workflow as well as other content migration strategies in the documentation.
Learn more:
Hi Sara,
Thank you for a great article.
Our organization is looking for a good way to version and deploy changes in our ArcGIS Enterprise Environment. This article discuss files, hosted layers, webmaps and web apps on the portal.
But what about non-hosted featureservices? You know, the good old featureservice published from ArcGIS Server, with a database connection? Is there any best practices/methods to version control and deploy changes on these?
Hello, Lars!
This is a great question and one I’ll need to research further. Once I have more information, I’ll contact you directly.
Thanks for reaching out.
Sara
Hello Sara and Lars!
I have indeed the same question. We’ve been trying to automate the workflows from deploying and migrating full applications consisting of Referenced Feature Services, Web Maps, WebAppBuilder Apps, Story Maps and Web Experiences (DEV, STAG, PROD).
However, it would be highly interesting if there is a method to deploy changes on these non-hosted but referenced feature services (published to Portal or ArcGIS Server) and I would be glad to join.
Julian
You probably looking for something like Gaiabuilder (see gaiabuilder dot com)? GaiaBuilder automates publishing and sharing of Services and Content to ArcGIS Enterprise.