Select to view content in your preferred language

Clone python environment on shared drive for multiple users to access

701
3
01-18-2024 07:26 AM
LouEarly
New Contributor II

Is there a way to clone a python environment to a shared drive so that multiple users can access it through pro? 

We are using VDI's for a large number of editors and would like them to all be able access the same tools without having to do individual installs for each user.

Tags (1)
0 Kudos
3 Replies
jcarlson
MVP Esteemed Contributor

Seems more like a Python question than a Pro question. I've never heard of using a Python env from a shared drive, but that doesn't mean it can't work. Maybe @DanPatterson  has some insights on this?

If you have an environment you want to share, it's fairly easy to export it to a text file and use that to replicate the same environment elsewhere. Especially if you use conda / mamba for the install.

- Josh Carlson
Kendall County GIS
0 Kudos
DanPatterson
MVP Esteemed Contributor

Beyond what it says in

Clone an environment—ArcGIS Pro | Documentation

with the related link regarding what to do with network access

Package Manager—ArcGIS Pro | Documentation

I don't do the cloud/network/sharing thing.... I work on a local machine only 😉


... sort of retired...
0 Kudos
Dan_Joyce_OE
New Contributor III

ArcGIS Pro 2.9.6

I've successfully cloned the default Python instance to a network file share folder.  It took quite a while to clone, which was expected due to network latency.

Currently installing the boto3 and ReportLab modules into this environment.

Haven't yet tested if other users can select this environment.

Also haven't tested this setup to see if there is a significant impact on performance.  I'll do some benchmarking and report back.

Dan_Joyce_OE_1-1708662092166.png

*** UPDATE ***

Installing the boto3 and ReportLab modules was successful.

Adding the shared Python environment using a UNC path looked like it worked, but when running my test script, it didn't appear to do anything.  I think I read somewhere else that Python environments don't like UNC paths.

I then mapped the network location with a drive letter and re-added the shared environment.

This fixed the issue and my script ran as expected.

I measured the time taken (in seconds) for the script to:

  1. Import the arcpy module
  2. Clip a point feature class (stored in MS SQL Server)
  3. Run a search cursor over the clipped features (10,697 features in file geodatabase stored locally)

I ran this test script using the default Pro Python environment and with the shared Python environment on the network location.

 Default envShared envDelta
Initialise0.0650.093+0.028 (+43%)
Clip15.15218.270+3.118 (+21%)
Search Cursor0.1590.185+0.026 (+16%)

 

This was just a simple test, but encouraging that the performance hit using a shared network location for the Python environment wasn't that big.

I haven't tested the impact of concurrent users accessing the shared Python environment.

0 Kudos