SlideShare a Scribd company logo
How to synchronize ArcGIS
Portal Items with FME
FME
User
Conference
20
22
Jan Middel
Software Engineer
- Joined con terra GmbH (Germany) in 2019
- FME Certified Professional (Desktop, Server)
20
22
FME
User
Conference
The FME Plattform is a
strong addition to
ArcGIS Plattform.
20
22
FME
User
Conference
Agenda
● Background Info & Main Objective
● Technical Solution Workflow
● Challenges & key takeaways
20
22
FME
User
Conference
Background Information
● Project: provide publicly accessible Web
Application Maps via ArcGIS Portal
● DEV & PROD Environment
● Disaster Recovery Scenario
20
22
FME
User
Conference
System Architecture
DEV
PROD
LIVE STAND BY / DISASTER RECOVERY
DEV LIVE
PROD LIVE
DEV
STANDBY
PROD
STANDBY
Source of graphic source:
https://www.esri.com/en-us/arcgis/products/index
∙ Live cluster and stand by
cluster
∙ Each cluster with DEV and
PROV environment
🡪 four ArcGIS Portals
20
22
FME
User
Conference
Migration of ArcGIS Portal Items
Complex Architectures / Scenarios demand
migration mechanisms
● Release new item versions from DEV to
PROD within release cycles
● Manage to support Backup and Disaster
Recovery Scenarios by synchronizing items
between LIVE and STAND BY within
acceptable time ranges
20
22
FME
User
Conference
Main Objective
∙ Migration of Web Mapping Applications and
all related items (Maps and Services)
∙ No manuell creation of ArcGIS Portal Items in
each environment
∙ Create the Web App once and migrate all to
other environments / Cluster
∙ Develop a mechanism that supports
automatic migration
20
22
FME
User
Conference
Solution Workflow
∙ Create Services in ArcGIS Pro and export
them as Service Definition (*.sd) File
∙ Publishing of Services Definition File to ArcGIS
Portal
∙ In ArcGIS Portal:
∙ Create Web Map
∙ Create Web Mapping Application
∙ Migration of all components that are part of
the Web Mapping App from source to
(several) target ArcGIS Portal
∙ Adjust parameters depending on local environment
∙ Replace item Ids
🡪 FME Server is the central component
regarding publishing services and migration of
ArcGIS Portal Items!
.sd
Source of graphic source:
https://www.esri.com/en-us/arcgis/products/index
https://www.safe.com/
20
22
FME
User
Conference
Technical Solution
∙ FME Server Apps and Automations to trigger Migration steps
∙ FME Server Apps: migration from DEV to PROD
∙ FME Server Autoamtion: synchronization between LIVE and STAND BY
∙ Interaction with ArcGIS Portal / ArcGIS Server via ArcGIS REST API and Python
API for ArcGIS
∙ Create token
∙ Get item meta data and configs
∙ Create and copy items
∙ Start Uploading and caching Jobs
∙ Share items
∙ Manage Item IDs in SQLite Database
20
22
FME
User
Conference
Technical Solution
∙ Two big main Workspaces + smaller “helper” Workspaces
∙ Publish Services (SD-Files)
∙ Migrate Web Maps and Web Mapping Applications
20
22
FME
User
Conference
Publishing of Service Definitions
Generate token for
target (and source)
portal
Get infos
from SD File
Publish Web Map
and Image Services
Publish Feature
Service and
Vector Tile Layer
Package
Update item ID
mapping table
Share published
Services with
Groups and
Organization
Create result
report in HTML
Cache service data
20
22
FME
User
Conference
Publishing of Service Definitions
∙ Selection of used REST API Endpoints (<HOST>/<WEBADAPTOR>…)
∙ Generate Token
∙ POST /sharing/rest/generateToken
∙ Publish Services (Map / Image Service)
∙ POST admin/uploads/upload
∙ GET admin/uploads/upload/<ITEM_ID>/serviceconfiguration.json
∙ POST sharing/rest/services/System/PublishingTools/GPServer/Publish%20Service%20Definition/submitJob
∙ Publish Feature Service
∙ POST /sharing/rest/content/users/<USER>/addItem
∙ POST /sharing/rest/content/users/<USER>/publish
∙ Manage Services
∙ POST /admin/services/@Value(sd_serviceName).@Value(sd_type)/start
∙ POST /rest/services/System/CachingTools/GPServer/Manage%20Map%20Cache%20Tiles/submitJob
∙ GET /rest/services/System/CachingTools/GPServer/Manage%20Map%20Cache%20Tiles/jobs/<JOB_ID>
∙ GET /rest/services/System/PublishingTools/GPServer/Publish%20Service%20Definition/jobs/<JOB_ID>)
∙ Manage items and groups
∙ POST /sharing/rest/search
∙ POST /sharing/rest/content/users/<USER>/items/<ITEM_ID>/delete
∙ POST admin/services/<SERVICE>/delete
∙ POST /sharing/rest/content/users/<USER>/shareItems
∙ POST /sharing/rest/community/groups
∙ ….
20
22
FME
User
Conference
Publishing of Service Definitions
∙ Selection of used Python API Endpoints
∙ portal = GIS(url, token=, referer, …) # connect to source portal via token….
∙ added_item = portal.content.add(item_properties, data) # add item to portal, e.g. SD / VTPK file
∙ published_added_item = added_item .publish(file_type, overwrite, item_id) # publish added item
20
22
FME
User
Conference
Migration of Web Maps and Web Mapping Apps
Generate token for
target (and source)
portal
Share migrated
items with Groups
and Organization
Check for existence
of target item and
referenced Services
and Web Maps
Update item ID
mapping table
Invoke migration
of Web Map
Create new Item in
target Portal and
modify configuration
20
22
FME
User
Conference
Migration of Web Maps and Web Mapping Apps
∙ Selection of used REST API Endpoints (<HOST>/<WEBADAPTOR>…)
∙ Manage items
∙ GET /sharing/rest/content/items/<ITEM_ID>
∙ GET /sharing/rest/content/items/<ITEM_ID>data
∙ POST /sharing/rest/content/users/<USER>/addItem
∙ GET /sharing/rest/content/users/<USER>/items/<ITEM_ID>
∙ POST /sharing/rest/content/users/<USER>)/items/<ITEM_ID>/update
∙ POST /sharing/rest/content/users/<USER>/shareItems
∙ POST /sharing/rest/community/groups/<GROUP_ID>
∙ ….
20
22
FME
User
Conference
Key transformers
∙ HTTPCaller in combination with
JSONFlattener / JSONFragmenter
∙ PythonCaller
∙ SQLExecutor / SQLite Reader and Writer
∙ FeatureMerger
20
22
FME
User
Conference
Synchronization Workflow between LIVE and
STAND BY cluster
∙ FME Server Automation triggers scheduled synchronization cycle
∙ Migration of Web Mapping Application and Web Maps that are shared with a
certain ArcGIS Portal group
∙ Get Services that are embedded within Web Maps
∙ Compare last updated timestamp off all selected Items in mapping table
∙ Publish and migrate all updated items (overwrite) / remove all removed items
20
22
FME
User
Conference
Key takeaways
∙ FME complements ArcGIS Portal regarding migration and release of certain
Portal Items between separate Portals
∙ No full backup of ArcGIS Portal is needed to restore only certain items
∙ FME Server Apps and Automations are useful functionalities to trigger manual
or automated migration / release workflows
20
22
FME
User
Conference
Challenges
∙ Design and creation of Workspaces independent of environment
∙ Interaction with ArcGIS REST API
∙ Figure out the right workflow order and API endpoints
∙ Documentation
∙ Manage item IDs in ArcGIS Portal (keep the same item id)
∙ User, Role and Ownership Management in ArcGIS Portal
20
22
FME
User
Conference
Useful “by the way” developments
∙ Maintaining FME Server Synchronization by schedule and event based
∙ Backup and Restore
∙ Custom Transformer
∙ Error handling + Reporting
20
22
FME
User
Conference
FME proves again to be a
valuable tool in
complementing the
ArcGIS Platform in order
to migrate and
synchronize Portal Items
20
22
FME
User
Conference
Resources
ArcGIS Developer
∙ REST API:
https://developers.arcgis.com/rest/users-groups-and-items/working-with-users-groups-
and-items.htm
∙ Python: https://developers.arcgis.com/python/api-reference/arcgis.gis.toc.html
Thank You!
j.middel@conterra.de
fme@conterra.de

More Related Content

What's hot

Research Directions in Transitional Interfaces
Research Directions in Transitional InterfacesResearch Directions in Transitional Interfaces
Research Directions in Transitional Interfaces
Mark Billinghurst
 
Comp4010 lecture3-AR Technology
Comp4010 lecture3-AR TechnologyComp4010 lecture3-AR Technology
Comp4010 lecture3-AR Technology
Mark Billinghurst
 
Empathic Computing: Designing for the Broader Metaverse
Empathic Computing: Designing for the Broader MetaverseEmpathic Computing: Designing for the Broader Metaverse
Empathic Computing: Designing for the Broader Metaverse
Mark Billinghurst
 
2022 COMP4010 Lecture5: AR Prototyping
2022 COMP4010 Lecture5: AR Prototyping2022 COMP4010 Lecture5: AR Prototyping
2022 COMP4010 Lecture5: AR Prototyping
Mark Billinghurst
 
Comp4010 Lecture4 AR Tracking and Interaction
Comp4010 Lecture4 AR Tracking and InteractionComp4010 Lecture4 AR Tracking and Interaction
Comp4010 Lecture4 AR Tracking and Interaction
Mark Billinghurst
 
Serverless with Google Cloud Functions
Serverless with Google Cloud FunctionsServerless with Google Cloud Functions
Serverless with Google Cloud Functions
Jerry Jalava
 
Advanced Methods for User Evaluation in Enterprise AR
Advanced Methods for User Evaluation in Enterprise ARAdvanced Methods for User Evaluation in Enterprise AR
Advanced Methods for User Evaluation in Enterprise AR
Mark Billinghurst
 
Creating Custom Solutions with FME and Python
Creating Custom Solutions with FME and PythonCreating Custom Solutions with FME and Python
Creating Custom Solutions with FME and Python
Safe Software
 
Comp4010 Lecture7 Designing AR Systems
Comp4010 Lecture7 Designing AR SystemsComp4010 Lecture7 Designing AR Systems
Comp4010 Lecture7 Designing AR Systems
Mark Billinghurst
 
Decoupling your application using Symfony Messenger and events
Decoupling your application using Symfony Messenger and eventsDecoupling your application using Symfony Messenger and events
Decoupling your application using Symfony Messenger and events
hmmonteiro
 
Cloud run - Serverless Containers Done Right
Cloud run - Serverless Containers Done RightCloud run - Serverless Containers Done Right
Cloud run - Serverless Containers Done Right
mfazal
 
2022 COMP 4010 Lecture 7: Introduction to VR
2022 COMP 4010 Lecture 7: Introduction to VR2022 COMP 4010 Lecture 7: Introduction to VR
2022 COMP 4010 Lecture 7: Introduction to VR
Mark Billinghurst
 
COMP 4010 Lecture 3 VR Input and Systems
COMP 4010 Lecture 3 VR Input and SystemsCOMP 4010 Lecture 3 VR Input and Systems
COMP 4010 Lecture 3 VR Input and Systems
Mark Billinghurst
 
Google Firebase presentation - English
Google Firebase presentation - EnglishGoogle Firebase presentation - English
Google Firebase presentation - English
Alexandros Tsichouridis
 
Grand Challenges for Mixed Reality
Grand Challenges for Mixed Reality Grand Challenges for Mixed Reality
Grand Challenges for Mixed Reality
Mark Billinghurst
 
AR / VR Interaction Development with Unity
AR / VR Interaction Development with UnityAR / VR Interaction Development with Unity
AR / VR Interaction Development with Unity
Andreas Jakl
 
ISS2022 Keynote
ISS2022 KeynoteISS2022 Keynote
ISS2022 Keynote
Mark Billinghurst
 
Comp4010 2021 Lecture2-Perception
Comp4010 2021 Lecture2-PerceptionComp4010 2021 Lecture2-Perception
Comp4010 2021 Lecture2-Perception
Mark Billinghurst
 
The what, why and how of knative
The what, why and how of knativeThe what, why and how of knative
The what, why and how of knative
Mofizur Rahman
 
Headless Drupal: A modern approach to (micro)services and APIs
Headless Drupal: A modern approach to (micro)services and APIsHeadless Drupal: A modern approach to (micro)services and APIs
Headless Drupal: A modern approach to (micro)services and APIs
sparkfabrik
 

What's hot (20)

Research Directions in Transitional Interfaces
Research Directions in Transitional InterfacesResearch Directions in Transitional Interfaces
Research Directions in Transitional Interfaces
 
Comp4010 lecture3-AR Technology
Comp4010 lecture3-AR TechnologyComp4010 lecture3-AR Technology
Comp4010 lecture3-AR Technology
 
Empathic Computing: Designing for the Broader Metaverse
Empathic Computing: Designing for the Broader MetaverseEmpathic Computing: Designing for the Broader Metaverse
Empathic Computing: Designing for the Broader Metaverse
 
2022 COMP4010 Lecture5: AR Prototyping
2022 COMP4010 Lecture5: AR Prototyping2022 COMP4010 Lecture5: AR Prototyping
2022 COMP4010 Lecture5: AR Prototyping
 
Comp4010 Lecture4 AR Tracking and Interaction
Comp4010 Lecture4 AR Tracking and InteractionComp4010 Lecture4 AR Tracking and Interaction
Comp4010 Lecture4 AR Tracking and Interaction
 
Serverless with Google Cloud Functions
Serverless with Google Cloud FunctionsServerless with Google Cloud Functions
Serverless with Google Cloud Functions
 
Advanced Methods for User Evaluation in Enterprise AR
Advanced Methods for User Evaluation in Enterprise ARAdvanced Methods for User Evaluation in Enterprise AR
Advanced Methods for User Evaluation in Enterprise AR
 
Creating Custom Solutions with FME and Python
Creating Custom Solutions with FME and PythonCreating Custom Solutions with FME and Python
Creating Custom Solutions with FME and Python
 
Comp4010 Lecture7 Designing AR Systems
Comp4010 Lecture7 Designing AR SystemsComp4010 Lecture7 Designing AR Systems
Comp4010 Lecture7 Designing AR Systems
 
Decoupling your application using Symfony Messenger and events
Decoupling your application using Symfony Messenger and eventsDecoupling your application using Symfony Messenger and events
Decoupling your application using Symfony Messenger and events
 
Cloud run - Serverless Containers Done Right
Cloud run - Serverless Containers Done RightCloud run - Serverless Containers Done Right
Cloud run - Serverless Containers Done Right
 
2022 COMP 4010 Lecture 7: Introduction to VR
2022 COMP 4010 Lecture 7: Introduction to VR2022 COMP 4010 Lecture 7: Introduction to VR
2022 COMP 4010 Lecture 7: Introduction to VR
 
COMP 4010 Lecture 3 VR Input and Systems
COMP 4010 Lecture 3 VR Input and SystemsCOMP 4010 Lecture 3 VR Input and Systems
COMP 4010 Lecture 3 VR Input and Systems
 
Google Firebase presentation - English
Google Firebase presentation - EnglishGoogle Firebase presentation - English
Google Firebase presentation - English
 
Grand Challenges for Mixed Reality
Grand Challenges for Mixed Reality Grand Challenges for Mixed Reality
Grand Challenges for Mixed Reality
 
AR / VR Interaction Development with Unity
AR / VR Interaction Development with UnityAR / VR Interaction Development with Unity
AR / VR Interaction Development with Unity
 
ISS2022 Keynote
ISS2022 KeynoteISS2022 Keynote
ISS2022 Keynote
 
Comp4010 2021 Lecture2-Perception
Comp4010 2021 Lecture2-PerceptionComp4010 2021 Lecture2-Perception
Comp4010 2021 Lecture2-Perception
 
The what, why and how of knative
The what, why and how of knativeThe what, why and how of knative
The what, why and how of knative
 
Headless Drupal: A modern approach to (micro)services and APIs
Headless Drupal: A modern approach to (micro)services and APIsHeadless Drupal: A modern approach to (micro)services and APIs
Headless Drupal: A modern approach to (micro)services and APIs
 

Similar to How to Synchronize ArcGIS Portal Items with FME

Creating Data Driven Web Apps with BIRT - Pierre Richer (Actuate)
Creating Data Driven Web Apps with BIRT - Pierre Richer (Actuate)Creating Data Driven Web Apps with BIRT - Pierre Richer (Actuate)
Creating Data Driven Web Apps with BIRT - Pierre Richer (Actuate)
jaxLondonConference
 
Webhooks in FME Server, Cityworks & GIS Applications
Webhooks in FME Server, Cityworks & GIS ApplicationsWebhooks in FME Server, Cityworks & GIS Applications
Webhooks in FME Server, Cityworks & GIS Applications
Safe Software
 
Add the power of the Web to your embedded devices with WPE WebKit
Add the power of the Web to your embedded devices with WPE WebKitAdd the power of the Web to your embedded devices with WPE WebKit
Add the power of the Web to your embedded devices with WPE WebKit
Igalia
 
Red Hat and kubernetes: awesome stuff coming your way
Red Hat and kubernetes:  awesome stuff coming your wayRed Hat and kubernetes:  awesome stuff coming your way
Red Hat and kubernetes: awesome stuff coming your way
Johannes Brännström
 
Xamarin microsoft graph
Xamarin microsoft graphXamarin microsoft graph
Xamarin microsoft graph
Nicolò Carandini
 
Automating Offline Mobile Map Updates - Leveraging FME to Update Offline Area...
Automating Offline Mobile Map Updates - Leveraging FME to Update Offline Area...Automating Offline Mobile Map Updates - Leveraging FME to Update Offline Area...
Automating Offline Mobile Map Updates - Leveraging FME to Update Offline Area...
Safe Software
 
Managing ArcGIS Online Using FME
Managing ArcGIS Online Using FMEManaging ArcGIS Online Using FME
Managing ArcGIS Online Using FME
Safe Software
 
The Best Come from Fresh Ingredients: Creating CAD Files from an Enterprise S...
The Best Come from Fresh Ingredients: Creating CAD Files from an Enterprise S...The Best Come from Fresh Ingredients: Creating CAD Files from an Enterprise S...
The Best Come from Fresh Ingredients: Creating CAD Files from an Enterprise S...
Safe Software
 
Modernizing Twitter for Windows as a Progressive Web App
Modernizing Twitter for Windows as a Progressive Web AppModernizing Twitter for Windows as a Progressive Web App
Modernizing Twitter for Windows as a Progressive Web App
Windows Developer
 
State of GeoServer
State of GeoServerState of GeoServer
State of GeoServer
Jody Garnett
 
FME 2020 Unleashed: Authoring
FME 2020 Unleashed: AuthoringFME 2020 Unleashed: Authoring
FME 2020 Unleashed: Authoring
Safe Software
 
Spring Cloud Function & Project riff #jsug
Spring Cloud Function & Project riff #jsugSpring Cloud Function & Project riff #jsug
Spring Cloud Function & Project riff #jsug
Toshiaki Maki
 
Create cross-platform apps that interact with Microsoft Graph and Office 365 ...
Create cross-platform apps that interact with Microsoft Graph and Office 365 ...Create cross-platform apps that interact with Microsoft Graph and Office 365 ...
Create cross-platform apps that interact with Microsoft Graph and Office 365 ...
Codemotion
 
State of GeoServer 2.10
State of GeoServer 2.10State of GeoServer 2.10
State of GeoServer 2.10
Jody Garnett
 
The App Developer's Kubernetes Toolbox
The App Developer's Kubernetes ToolboxThe App Developer's Kubernetes Toolbox
The App Developer's Kubernetes Toolbox
Nebulaworks
 
Pivotal Platform - December Release A First Look
Pivotal Platform - December Release A First LookPivotal Platform - December Release A First Look
Pivotal Platform - December Release A First Look
VMware Tanzu
 
SAPTechED 2015 UX114 -Building custom SAP Fiori Apps Using SAP Web IDE
SAPTechED 2015 UX114 -Building custom SAP Fiori Apps Using SAP Web IDESAPTechED 2015 UX114 -Building custom SAP Fiori Apps Using SAP Web IDE
SAPTechED 2015 UX114 -Building custom SAP Fiori Apps Using SAP Web IDE
Markus Van Kempen
 
Docker Enterprise Workshop - Technical
Docker Enterprise Workshop - TechnicalDocker Enterprise Workshop - Technical
Docker Enterprise Workshop - Technical
Patrick Chanezon
 
Red Hat JBoss BRMS and BPMS Workbench and Rich Client Technology
Red Hat JBoss BRMS and BPMS Workbench and Rich Client TechnologyRed Hat JBoss BRMS and BPMS Workbench and Rich Client Technology
Red Hat JBoss BRMS and BPMS Workbench and Rich Client Technology
Mark Proctor
 
Igalia and WebKit: Status update and plans
Igalia and WebKit: Status update and plansIgalia and WebKit: Status update and plans
Igalia and WebKit: Status update and plans
Igalia
 

Similar to How to Synchronize ArcGIS Portal Items with FME (20)

Creating Data Driven Web Apps with BIRT - Pierre Richer (Actuate)
Creating Data Driven Web Apps with BIRT - Pierre Richer (Actuate)Creating Data Driven Web Apps with BIRT - Pierre Richer (Actuate)
Creating Data Driven Web Apps with BIRT - Pierre Richer (Actuate)
 
Webhooks in FME Server, Cityworks & GIS Applications
Webhooks in FME Server, Cityworks & GIS ApplicationsWebhooks in FME Server, Cityworks & GIS Applications
Webhooks in FME Server, Cityworks & GIS Applications
 
Add the power of the Web to your embedded devices with WPE WebKit
Add the power of the Web to your embedded devices with WPE WebKitAdd the power of the Web to your embedded devices with WPE WebKit
Add the power of the Web to your embedded devices with WPE WebKit
 
Red Hat and kubernetes: awesome stuff coming your way
Red Hat and kubernetes:  awesome stuff coming your wayRed Hat and kubernetes:  awesome stuff coming your way
Red Hat and kubernetes: awesome stuff coming your way
 
Xamarin microsoft graph
Xamarin microsoft graphXamarin microsoft graph
Xamarin microsoft graph
 
Automating Offline Mobile Map Updates - Leveraging FME to Update Offline Area...
Automating Offline Mobile Map Updates - Leveraging FME to Update Offline Area...Automating Offline Mobile Map Updates - Leveraging FME to Update Offline Area...
Automating Offline Mobile Map Updates - Leveraging FME to Update Offline Area...
 
Managing ArcGIS Online Using FME
Managing ArcGIS Online Using FMEManaging ArcGIS Online Using FME
Managing ArcGIS Online Using FME
 
The Best Come from Fresh Ingredients: Creating CAD Files from an Enterprise S...
The Best Come from Fresh Ingredients: Creating CAD Files from an Enterprise S...The Best Come from Fresh Ingredients: Creating CAD Files from an Enterprise S...
The Best Come from Fresh Ingredients: Creating CAD Files from an Enterprise S...
 
Modernizing Twitter for Windows as a Progressive Web App
Modernizing Twitter for Windows as a Progressive Web AppModernizing Twitter for Windows as a Progressive Web App
Modernizing Twitter for Windows as a Progressive Web App
 
State of GeoServer
State of GeoServerState of GeoServer
State of GeoServer
 
FME 2020 Unleashed: Authoring
FME 2020 Unleashed: AuthoringFME 2020 Unleashed: Authoring
FME 2020 Unleashed: Authoring
 
Spring Cloud Function & Project riff #jsug
Spring Cloud Function & Project riff #jsugSpring Cloud Function & Project riff #jsug
Spring Cloud Function & Project riff #jsug
 
Create cross-platform apps that interact with Microsoft Graph and Office 365 ...
Create cross-platform apps that interact with Microsoft Graph and Office 365 ...Create cross-platform apps that interact with Microsoft Graph and Office 365 ...
Create cross-platform apps that interact with Microsoft Graph and Office 365 ...
 
State of GeoServer 2.10
State of GeoServer 2.10State of GeoServer 2.10
State of GeoServer 2.10
 
The App Developer's Kubernetes Toolbox
The App Developer's Kubernetes ToolboxThe App Developer's Kubernetes Toolbox
The App Developer's Kubernetes Toolbox
 
Pivotal Platform - December Release A First Look
Pivotal Platform - December Release A First LookPivotal Platform - December Release A First Look
Pivotal Platform - December Release A First Look
 
SAPTechED 2015 UX114 -Building custom SAP Fiori Apps Using SAP Web IDE
SAPTechED 2015 UX114 -Building custom SAP Fiori Apps Using SAP Web IDESAPTechED 2015 UX114 -Building custom SAP Fiori Apps Using SAP Web IDE
SAPTechED 2015 UX114 -Building custom SAP Fiori Apps Using SAP Web IDE
 
Docker Enterprise Workshop - Technical
Docker Enterprise Workshop - TechnicalDocker Enterprise Workshop - Technical
Docker Enterprise Workshop - Technical
 
Red Hat JBoss BRMS and BPMS Workbench and Rich Client Technology
Red Hat JBoss BRMS and BPMS Workbench and Rich Client TechnologyRed Hat JBoss BRMS and BPMS Workbench and Rich Client Technology
Red Hat JBoss BRMS and BPMS Workbench and Rich Client Technology
 
Igalia and WebKit: Status update and plans
Igalia and WebKit: Status update and plansIgalia and WebKit: Status update and plans
Igalia and WebKit: Status update and plans
 

More from Safe Software

Driving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success StoryDriving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Safe Software
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
Safe Software
 
The Zero-ETL Approach: Enhancing Data Agility and Insight
The Zero-ETL Approach: Enhancing Data Agility and InsightThe Zero-ETL Approach: Enhancing Data Agility and Insight
The Zero-ETL Approach: Enhancing Data Agility and Insight
Safe Software
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
Safe Software
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action:  Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action:  Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
Safe Software
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Safe Software
 
Powering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsPowering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data Streams
Safe Software
 
The Critical Role of Spatial Data in Today's Data Ecosystem
The Critical Role of Spatial Data in Today's Data EcosystemThe Critical Role of Spatial Data in Today's Data Ecosystem
The Critical Role of Spatial Data in Today's Data Ecosystem
Safe Software
 
Cloud Revolution: Exploring the New Wave of Serverless Spatial Data
Cloud Revolution: Exploring the New Wave of Serverless Spatial DataCloud Revolution: Exploring the New Wave of Serverless Spatial Data
Cloud Revolution: Exploring the New Wave of Serverless Spatial Data
Safe Software
 
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration WorkflowsIgniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Safe Software
 
The Zero-ETL Approach: Enhancing Data Agility and Insight
The Zero-ETL Approach: Enhancing Data Agility and InsightThe Zero-ETL Approach: Enhancing Data Agility and Insight
The Zero-ETL Approach: Enhancing Data Agility and Insight
Safe Software
 
Mastering MicroStation DGN: How to Integrate CAD and GIS
Mastering MicroStation DGN: How to Integrate CAD and GISMastering MicroStation DGN: How to Integrate CAD and GIS
Mastering MicroStation DGN: How to Integrate CAD and GIS
Safe Software
 
Geospatial Synergy: Amplifying Efficiency with FME & Esri
Geospatial Synergy: Amplifying Efficiency with FME & EsriGeospatial Synergy: Amplifying Efficiency with FME & Esri
Geospatial Synergy: Amplifying Efficiency with FME & Esri
Safe Software
 
Introducing the New FME Community Webinar - Feb 21, 2024 (2).pdf
Introducing the New FME Community Webinar - Feb 21, 2024 (2).pdfIntroducing the New FME Community Webinar - Feb 21, 2024 (2).pdf
Introducing the New FME Community Webinar - Feb 21, 2024 (2).pdf
Safe Software
 
Breaking Barriers & Leveraging the Latest Developments in AI Technology
Breaking Barriers & Leveraging the Latest Developments in AI TechnologyBreaking Barriers & Leveraging the Latest Developments in AI Technology
Breaking Barriers & Leveraging the Latest Developments in AI Technology
Safe Software
 
Best Practices to Navigating Data and Application Integration for the Enterpr...
Best Practices to Navigating Data and Application Integration for the Enterpr...Best Practices to Navigating Data and Application Integration for the Enterpr...
Best Practices to Navigating Data and Application Integration for the Enterpr...
Safe Software
 

More from Safe Software (20)

Driving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success StoryDriving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success Story
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
 
The Zero-ETL Approach: Enhancing Data Agility and Insight
The Zero-ETL Approach: Enhancing Data Agility and InsightThe Zero-ETL Approach: Enhancing Data Agility and Insight
The Zero-ETL Approach: Enhancing Data Agility and Insight
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action:  Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action:  Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
Powering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsPowering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data Streams
 
The Critical Role of Spatial Data in Today's Data Ecosystem
The Critical Role of Spatial Data in Today's Data EcosystemThe Critical Role of Spatial Data in Today's Data Ecosystem
The Critical Role of Spatial Data in Today's Data Ecosystem
 
Cloud Revolution: Exploring the New Wave of Serverless Spatial Data
Cloud Revolution: Exploring the New Wave of Serverless Spatial DataCloud Revolution: Exploring the New Wave of Serverless Spatial Data
Cloud Revolution: Exploring the New Wave of Serverless Spatial Data
 
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration WorkflowsIgniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
 
The Zero-ETL Approach: Enhancing Data Agility and Insight
The Zero-ETL Approach: Enhancing Data Agility and InsightThe Zero-ETL Approach: Enhancing Data Agility and Insight
The Zero-ETL Approach: Enhancing Data Agility and Insight
 
Mastering MicroStation DGN: How to Integrate CAD and GIS
Mastering MicroStation DGN: How to Integrate CAD and GISMastering MicroStation DGN: How to Integrate CAD and GIS
Mastering MicroStation DGN: How to Integrate CAD and GIS
 
Geospatial Synergy: Amplifying Efficiency with FME & Esri
Geospatial Synergy: Amplifying Efficiency with FME & EsriGeospatial Synergy: Amplifying Efficiency with FME & Esri
Geospatial Synergy: Amplifying Efficiency with FME & Esri
 
Introducing the New FME Community Webinar - Feb 21, 2024 (2).pdf
Introducing the New FME Community Webinar - Feb 21, 2024 (2).pdfIntroducing the New FME Community Webinar - Feb 21, 2024 (2).pdf
Introducing the New FME Community Webinar - Feb 21, 2024 (2).pdf
 
Breaking Barriers & Leveraging the Latest Developments in AI Technology
Breaking Barriers & Leveraging the Latest Developments in AI TechnologyBreaking Barriers & Leveraging the Latest Developments in AI Technology
Breaking Barriers & Leveraging the Latest Developments in AI Technology
 
Best Practices to Navigating Data and Application Integration for the Enterpr...
Best Practices to Navigating Data and Application Integration for the Enterpr...Best Practices to Navigating Data and Application Integration for the Enterpr...
Best Practices to Navigating Data and Application Integration for the Enterpr...
 

Recently uploaded

“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
Edge AI and Vision Alliance
 
WeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation TechniquesWeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation Techniques
Postman
 
Project Management Semester Long Project - Acuity
Project Management Semester Long Project - AcuityProject Management Semester Long Project - Acuity
Project Management Semester Long Project - Acuity
jpupo2018
 
UI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentationUI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentation
Wouter Lemaire
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
Pixlogix Infotech
 
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdfHow to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
Chart Kalyan
 
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development ProvidersYour One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
akankshawande
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
panagenda
 
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Speck&Tech
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
Matthew Sinclair
 
Serial Arm Control in Real Time Presentation
Serial Arm Control in Real Time PresentationSerial Arm Control in Real Time Presentation
Serial Arm Control in Real Time Presentation
tolgahangng
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
Octavian Nadolu
 
Fueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte WebinarFueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte Webinar
Zilliz
 
Recommendation System using RAG Architecture
Recommendation System using RAG ArchitectureRecommendation System using RAG Architecture
Recommendation System using RAG Architecture
fredae14
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
innovationoecd
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc
 
How to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For FlutterHow to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For Flutter
Daiki Mogmet Ito
 
Webinar: Designing a schema for a Data Warehouse
Webinar: Designing a schema for a Data WarehouseWebinar: Designing a schema for a Data Warehouse
Webinar: Designing a schema for a Data Warehouse
Federico Razzoli
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
Zilliz
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
DianaGray10
 

Recently uploaded (20)

“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
 
WeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation TechniquesWeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation Techniques
 
Project Management Semester Long Project - Acuity
Project Management Semester Long Project - AcuityProject Management Semester Long Project - Acuity
Project Management Semester Long Project - Acuity
 
UI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentationUI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentation
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
 
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdfHow to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
 
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development ProvidersYour One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
 
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
 
Serial Arm Control in Real Time Presentation
Serial Arm Control in Real Time PresentationSerial Arm Control in Real Time Presentation
Serial Arm Control in Real Time Presentation
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
 
Fueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte WebinarFueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte Webinar
 
Recommendation System using RAG Architecture
Recommendation System using RAG ArchitectureRecommendation System using RAG Architecture
Recommendation System using RAG Architecture
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
 
How to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For FlutterHow to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For Flutter
 
Webinar: Designing a schema for a Data Warehouse
Webinar: Designing a schema for a Data WarehouseWebinar: Designing a schema for a Data Warehouse
Webinar: Designing a schema for a Data Warehouse
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
 

How to Synchronize ArcGIS Portal Items with FME

  • 1. How to synchronize ArcGIS Portal Items with FME
  • 2. FME User Conference 20 22 Jan Middel Software Engineer - Joined con terra GmbH (Germany) in 2019 - FME Certified Professional (Desktop, Server)
  • 3. 20 22 FME User Conference The FME Plattform is a strong addition to ArcGIS Plattform.
  • 4. 20 22 FME User Conference Agenda ● Background Info & Main Objective ● Technical Solution Workflow ● Challenges & key takeaways
  • 5. 20 22 FME User Conference Background Information ● Project: provide publicly accessible Web Application Maps via ArcGIS Portal ● DEV & PROD Environment ● Disaster Recovery Scenario
  • 6. 20 22 FME User Conference System Architecture DEV PROD LIVE STAND BY / DISASTER RECOVERY DEV LIVE PROD LIVE DEV STANDBY PROD STANDBY Source of graphic source: https://www.esri.com/en-us/arcgis/products/index ∙ Live cluster and stand by cluster ∙ Each cluster with DEV and PROV environment 🡪 four ArcGIS Portals
  • 7. 20 22 FME User Conference Migration of ArcGIS Portal Items Complex Architectures / Scenarios demand migration mechanisms ● Release new item versions from DEV to PROD within release cycles ● Manage to support Backup and Disaster Recovery Scenarios by synchronizing items between LIVE and STAND BY within acceptable time ranges
  • 8. 20 22 FME User Conference Main Objective ∙ Migration of Web Mapping Applications and all related items (Maps and Services) ∙ No manuell creation of ArcGIS Portal Items in each environment ∙ Create the Web App once and migrate all to other environments / Cluster ∙ Develop a mechanism that supports automatic migration
  • 9. 20 22 FME User Conference Solution Workflow ∙ Create Services in ArcGIS Pro and export them as Service Definition (*.sd) File ∙ Publishing of Services Definition File to ArcGIS Portal ∙ In ArcGIS Portal: ∙ Create Web Map ∙ Create Web Mapping Application ∙ Migration of all components that are part of the Web Mapping App from source to (several) target ArcGIS Portal ∙ Adjust parameters depending on local environment ∙ Replace item Ids 🡪 FME Server is the central component regarding publishing services and migration of ArcGIS Portal Items! .sd Source of graphic source: https://www.esri.com/en-us/arcgis/products/index https://www.safe.com/
  • 10. 20 22 FME User Conference Technical Solution ∙ FME Server Apps and Automations to trigger Migration steps ∙ FME Server Apps: migration from DEV to PROD ∙ FME Server Autoamtion: synchronization between LIVE and STAND BY ∙ Interaction with ArcGIS Portal / ArcGIS Server via ArcGIS REST API and Python API for ArcGIS ∙ Create token ∙ Get item meta data and configs ∙ Create and copy items ∙ Start Uploading and caching Jobs ∙ Share items ∙ Manage Item IDs in SQLite Database
  • 11. 20 22 FME User Conference Technical Solution ∙ Two big main Workspaces + smaller “helper” Workspaces ∙ Publish Services (SD-Files) ∙ Migrate Web Maps and Web Mapping Applications
  • 12. 20 22 FME User Conference Publishing of Service Definitions Generate token for target (and source) portal Get infos from SD File Publish Web Map and Image Services Publish Feature Service and Vector Tile Layer Package Update item ID mapping table Share published Services with Groups and Organization Create result report in HTML Cache service data
  • 13. 20 22 FME User Conference Publishing of Service Definitions ∙ Selection of used REST API Endpoints (<HOST>/<WEBADAPTOR>…) ∙ Generate Token ∙ POST /sharing/rest/generateToken ∙ Publish Services (Map / Image Service) ∙ POST admin/uploads/upload ∙ GET admin/uploads/upload/<ITEM_ID>/serviceconfiguration.json ∙ POST sharing/rest/services/System/PublishingTools/GPServer/Publish%20Service%20Definition/submitJob ∙ Publish Feature Service ∙ POST /sharing/rest/content/users/<USER>/addItem ∙ POST /sharing/rest/content/users/<USER>/publish ∙ Manage Services ∙ POST /admin/services/@Value(sd_serviceName).@Value(sd_type)/start ∙ POST /rest/services/System/CachingTools/GPServer/Manage%20Map%20Cache%20Tiles/submitJob ∙ GET /rest/services/System/CachingTools/GPServer/Manage%20Map%20Cache%20Tiles/jobs/<JOB_ID> ∙ GET /rest/services/System/PublishingTools/GPServer/Publish%20Service%20Definition/jobs/<JOB_ID>) ∙ Manage items and groups ∙ POST /sharing/rest/search ∙ POST /sharing/rest/content/users/<USER>/items/<ITEM_ID>/delete ∙ POST admin/services/<SERVICE>/delete ∙ POST /sharing/rest/content/users/<USER>/shareItems ∙ POST /sharing/rest/community/groups ∙ ….
  • 14. 20 22 FME User Conference Publishing of Service Definitions ∙ Selection of used Python API Endpoints ∙ portal = GIS(url, token=, referer, …) # connect to source portal via token…. ∙ added_item = portal.content.add(item_properties, data) # add item to portal, e.g. SD / VTPK file ∙ published_added_item = added_item .publish(file_type, overwrite, item_id) # publish added item
  • 15. 20 22 FME User Conference Migration of Web Maps and Web Mapping Apps Generate token for target (and source) portal Share migrated items with Groups and Organization Check for existence of target item and referenced Services and Web Maps Update item ID mapping table Invoke migration of Web Map Create new Item in target Portal and modify configuration
  • 16. 20 22 FME User Conference Migration of Web Maps and Web Mapping Apps ∙ Selection of used REST API Endpoints (<HOST>/<WEBADAPTOR>…) ∙ Manage items ∙ GET /sharing/rest/content/items/<ITEM_ID> ∙ GET /sharing/rest/content/items/<ITEM_ID>data ∙ POST /sharing/rest/content/users/<USER>/addItem ∙ GET /sharing/rest/content/users/<USER>/items/<ITEM_ID> ∙ POST /sharing/rest/content/users/<USER>)/items/<ITEM_ID>/update ∙ POST /sharing/rest/content/users/<USER>/shareItems ∙ POST /sharing/rest/community/groups/<GROUP_ID> ∙ ….
  • 17. 20 22 FME User Conference Key transformers ∙ HTTPCaller in combination with JSONFlattener / JSONFragmenter ∙ PythonCaller ∙ SQLExecutor / SQLite Reader and Writer ∙ FeatureMerger
  • 18. 20 22 FME User Conference Synchronization Workflow between LIVE and STAND BY cluster ∙ FME Server Automation triggers scheduled synchronization cycle ∙ Migration of Web Mapping Application and Web Maps that are shared with a certain ArcGIS Portal group ∙ Get Services that are embedded within Web Maps ∙ Compare last updated timestamp off all selected Items in mapping table ∙ Publish and migrate all updated items (overwrite) / remove all removed items
  • 19. 20 22 FME User Conference Key takeaways ∙ FME complements ArcGIS Portal regarding migration and release of certain Portal Items between separate Portals ∙ No full backup of ArcGIS Portal is needed to restore only certain items ∙ FME Server Apps and Automations are useful functionalities to trigger manual or automated migration / release workflows
  • 20. 20 22 FME User Conference Challenges ∙ Design and creation of Workspaces independent of environment ∙ Interaction with ArcGIS REST API ∙ Figure out the right workflow order and API endpoints ∙ Documentation ∙ Manage item IDs in ArcGIS Portal (keep the same item id) ∙ User, Role and Ownership Management in ArcGIS Portal
  • 21. 20 22 FME User Conference Useful “by the way” developments ∙ Maintaining FME Server Synchronization by schedule and event based ∙ Backup and Restore ∙ Custom Transformer ∙ Error handling + Reporting
  • 22. 20 22 FME User Conference FME proves again to be a valuable tool in complementing the ArcGIS Platform in order to migrate and synchronize Portal Items
  • 23. 20 22 FME User Conference Resources ArcGIS Developer ∙ REST API: https://developers.arcgis.com/rest/users-groups-and-items/working-with-users-groups- and-items.htm ∙ Python: https://developers.arcgis.com/python/api-reference/arcgis.gis.toc.html