ArcGIS Enterprise: DevOps - Recent...

Post on 28-Jul-2018

228 views 0 download

transcript

ArcGIS Enterprise: DevOpsPhilip Heede

What is DevOps

• DevOps (a portmanteau of "development" and "operations") is a software development method that stresses

communication, collaboration (information sharing and web service usage), integration,

automation and measurement cooperation between software developers and other information-

technology (IT) professionals. DevOps acknowledges the interdependence of

software development and IT operations.

-Wikipedia

Agenda

• Deployment automation

• Scripting administrative workflows

• Scripting GIS workflows

Agenda

• Deployment automation

- Chef

• Scripting administrative workflows

- ArcGIS API for Python

• Scripting GIS workflows

- ArcGIS API for Python

Agenda

• Deployment automation

- Chef

• Scripting administrative workflows

- ArcGIS API for Python

• Scripting GIS workflows

- ArcGIS API for Python

Who I imagine you are

• ArcGIS Enterprise (ArcGIS Server and Portal for ArcGIS) administrators with a

programming interest or background

• Maybe you do Python scripting already because of a GIS analyst background

• Maybe you’ve done .NET development with C# in the past

• Maybe you’re already automating things using Scala, Ruby, …

Deployment automation

Deployment automation - Why

Desktop Web Device

Server Online Content

and Services

Portal

Chef

• One of the fast growing IT automation platforms

• Supported on Windows and Linux

• Open source

Chef

• Recipes

• Cookbook

• Attributes, resources, providers……

• Chef-server, client, solo

• Test Kitchen

Chef – Where to get it

Deployment automation - Why

Desktop Web Device

Server Online Content

and Services

Portal

Deployment automation – lots of options depending on environment

• On-premises (physical or virtual machines)

- Chef

• Public cloud

- AWS: use CloudFormation templates

- Azure: use Cloud Builder for Microsoft Azure

• Other cloud environments

- Chef

• Coming soon: ArcGIS Enterprise Builder

- Planned for ArcGIS 10.5.1 release later this year

Scripting administrative workflows

ArcGIS API for Python

• Python API for your Web GIS

- ArcGIS Enterprise and ArcGIS Online

• Powerful, modern, and easy to use

- Pythonic!

• Built on top of ArcGIS REST APIs

Spatial Analysis & Geoprocessing

Big Data GeoAnalytics

Interactive Exploration

GIS Analysis

ContentPublishing

Desktop Apps

Org administration

Automate management

• Populate portal with users, groups

• Clone portals

• Re-assign user content

• Perform comprehensive content search

• Determine item relationship

• Create reports of users, their items

Automate content creation

• Automate content publishing during off peak hours

• Update tiles and features from a known database

• Replicate development environment content to production

• Inspect and update items with broken service links

ArcGIS API for Python

ArcGIS API for Python – How to install it

Distributed via CondaSimplifies installs & updatesInstalls dependenciesAvoids conflicts

Install steps:Download Anaconda

conda install –c esri arcgis

orInstall from ArcGIS Pro

ArcGIS API for Python

Demos!

Please Take Our Survey on the Esri Events App!

Select the session

you attended

Scroll down to find

the survey

Complete Answers

and Select “Submit”

Download the Esri Events

app and find your event