A customer recently contracted SSP Innovations to implement ArcGIS Enterprise 10.7.1 in a brand-new environment. The customer previously-stored GIS content in different places, including ArcGIS Online and a legacy ArcGIS Enterprise 10.6.1 environment. A core part of this customer’s requirements was to move content from the legacy environment and ArcGIS Online to the new 10.7.1 environment. The challenge posed was that the organization did not have a GeoJobe License configured for ArcGIS Online. We used GeoJobe’s AdminTools to migrate content accessible from the company’s network from 10.6.1 to 10.7.1. The content that moved from AGOL included feature service layers, service definitions, MXDs, images, shapefiles, Web Maps, and Web Mapping Applications.
The following steps outline how we moved content from AGOL to the new ArcGIS Enterprise implementation.
- The first step was to download and publish services to the new 10.7.1 hosting server. For Web Maps and Web Mapping Applications, we used ArcGIS Online Assistant to copy content from AGOL to the new Enterprise environment within the organization’s network.
- Once the web maps and applications were moved, we used AGO-Assistant to access the JSON objects to update web map and service URL references.
- In order to move services, service definitions, MXDs, images, and code we used the ArcGIS API for Python to download the content locally.
- Once the content was downloaded locally, we were able to copy and paste directories into the appropriate environment and run another set of Python scripts from batch machines to upload and publish content to the new enterprise environment.
Using the content property of the gis instance, we were able to use the identified itemIDs of feature layers provided by the customer to search for the content. Additionally, we used the export property for each item in a loop to export each feature layer to a file geodatabase and download it locally. This process took less than 10 minutes for around 40 MB of zipped file geodatabases. Once the file geodatabases were downloaded locally, we isolated them manually based on ArcGIS Enterprise groups.
To upload and publish the file geodatabases and feature layers to ArcGIS Enterprise, we used the content property to add the file geodatabases to Portal. Next, the publish property was used to publish the content of the file geodatabases to Portal. The resultant output is both a file geodatabase and feature layer for each zipped folder. In the example attached, we used different folders and functions in Python to share the services to groups identified by the customer in Portal. The use of functions allows for modularity and efficiency in the code if another user group or folder should be added. In many organizations, users will have to overwrite data. It is important to note that when overwriting hosting layers in ArcGIS Online or ArcGIS Enterprise, the source data source must be available. In this case, the source file geodatabase would have to be available to successfully overwrite the previous data source and service.
Using AGO-Assistant, GeoJobe, and ArcGIS API for Python, SSP Innovations completed content migration in 4 environments for this customer in development, test, pre-production, and production. The use of all three of these tools allows for repeatable and automated processes which can be replicated in other Enterprise GIS environments. In our work with these tools, we identified the flexibility and scalability to work with a large amount of content efficiently and easy to use.
Automating these tasks is estimated to have saved the customer close to 10 hours in administrative tasks.
The scripts attached below provide a baseline and conceptual framework in accessing data in an ArcGIS Online or Enterprise organization. They can be modified to accomplish many other admirative tasks to result in tailored workflows. SSP Innovations is happy to help your organization identify workflows and solutions to migrate content between environments successfully.