This guide explains how to automate the installation of ArcGIS Pro using PowerShell Desired State Configuration (DSC) and a JSON configuration file. --- ## Step 1: Install the ArcGIS PowerShell Module Open **PowerShell** and run the following [command](https://www.powershellgallery.com/packages/ArcGIS/): ```powershell Install-Module -Name ArcGIS ``` **Notes:** - When prompted, type `Y` and press `Enter` to confirm. - If asked for permission to install from an untrusted repository, type `A` (Yes to All) and press `Enter`. --- ## Step 2: Download the ArcGIS Pro Installer 1. Go to [https://my.esri.com/](https://my.esri.com/) 2. Sign in with your Esri account 3. Download the ArcGIS Pro `.exe` installer (e.g., `ArcGISPro_34_192912.exe`) and save it to a known location such as your `Downloads` folder. --- ## Step 3: Create the Configuration JSON File Create a file named `Pro-SingleUse.json` on your Desktop (or another convenient location). Update the following: - `"NodeName"` with your machine name (run `hostname` in PowerShell to get it) - `"Path"` with the full path to the ArcGIS Pro installer you downloaded ```json { "AllNodes": [ { "NodeName": "YOUR-COMPUTER-NAME", "Role": [ "Pro" ] } ], "ConfigData": { "ProVersion": "3.4", "Pro": { "AuthorizationType": "SINGLE_USE", "BlockAddIns": 1, "SoftwareClass": "Professional", "AllUsers": 1, "EnableEUEI": false, "CheckForUpdatesAtStartup": false, "Installer": { "Path": "C:\\Users\\YourUsername\\Downloads\\ArcGISPro_34_192912.exe", "DotnetDesktopRuntimeDownloadUrl": "https://builds.dotnet.microsoft.com/...", "EdgeWebView2RuntimeDownloadUrl": "https://msedge.sf.dl.delivery.mp.microsoft.com/...", "IsSelfExtracting": true, "InstallDir": "C:\\Program Files\\ArcGIS\\Pro" } } } } ``` Make sure all paths are correct and properly escaped (use double backslashes `\\` in JSON). See other configurations from wiki page and other Sample files included in the repo https://github.com/Esri/arcgis-powershell-dsc/wiki --- ## Step 4: Apply the DSC Configuration Use the following command to apply the configuration using the JSON file: ```powershell Invoke-ArcGISConfiguration -ConfigurationParametersFile "$env:USERPROFILE\Desktop\Pro-SingleUse.json" -Mode Install ``` > Adjust the file path if your JSON is saved in a different location. --- ## Installation Complete PowerShell DSC will now: - Install required dependencies such as **Edge WebView2 Runtime** and **.NET Desktop Runtime** - Extract and install **ArcGIS Pro** - Apply your configuration settings (e.g., license type, install location, update behavior) --- ## Additional Notes - Ensure your system has internet access to download the required runtime dependencies. - If you encounter issues during installation, make sure you're running PowerShell as **Administrator**. - You can check DSC logs or inspect Event Viewer for troubleshooting: - `C:\ProgramData\Microsoft\Windows\PowerShell\Configuration\` - If you've installed the ArcGIS module via GitHub, you might need to unblock the DSC files: ```powershell Get-ChildItem -Path "C:\Program Files\WindowsPowerShell\Modules\ArcGIS" -Recurse | Unblock-File ``` - Don't store your passwords as a plain text in JSON file instead [Use System Environment Variables to store Passwords](https://github.com/Esri/arcgis-powershell-dsc/wiki/Use-System-Environment-Variables-to-store-Passwords)