When running ArcGIS Pro in a multi-user virtualised desktop environment such as Amazon AppStream it is necessary to have custom per-user configuration of file paths that can point to a custom location.
By default certain settings cause ArcGIS Pro to fill up the user's profile, which then leads to files getting swapped in and out of the user's profile, resulting in loss of previously stored files, such as the list of Portals which have been configured. Other applications also get corrupted, for example FME Desktop.
The main settings found that cause the profile to be filled up are:
- StagingPath
- LocalCacheFolderPath
The above 2 settings caused my 1GB profile to fill up very quickly, storing 750MB and 200MB respectively.
So, these locations need to pointed away from the default location (user profile), and to a file-share.
The file-share needs to have folders for each user to keep their temp/transient Pro working data separate from other users, so needs to have the ability to use the current user's username as a variable.
For example, the documentation for StagingPath is here:
https://pro.arcgis.com/en/pro-app/latest/get-started/administrator-settings-list.htm#ESRI_SECTION1_63DC684EFCA44C99A8C33D9F890C9996
This shows an example setting as follows:
<StagingPath isLocked="true">C:\Users\<name>\AppData\Local\ArcGISPro\Staging\SharingProcesses /StagingPath>
However, <user> is just a placeholder for you to type your own username.
What is being asked for is something like:
<StagingPath isLocked="true">\\server\share\%USERNAME%\ArcGISPro\Staging\SharingProcesses </StagingPath>
So, this idea is to request that any values in the Pro.settingsConfig file that contain a path should have the ability to specify the current user's username using a variable.