ArcGIS Pro silent install script

4812
3
11-02-2016 07:49 AM

ArcGIS Pro silent install script

This is in good old DOS batch language. It is still working as of Pro 2.5. (Thank you, Esri install team!)

The point of putting an install script together is to make installs easier and secondly to ensure your users have a consistent deployment with options you want. For example, this script allows you to block software updates so the administrator controls when ArcGIS Pro gets updated, keeping your users all on the same version of the software to avoid compatibility problems and user confusion. This script also saves log files so if something goes wrong in the install you can look at the log file for clues as to what went wrong (mostly commonly in my experience: .NET needs updating). 

This script could be used for automated deployment to many desktops within deployment packages like SCCM.

So far, ArcGIS Pro updates don't require an uninstall, so you can just rerun it with a new version of the software to update.

References: 

Install options—ArcGIS Pro | ArcGIS Desktop (Install ArcGIS Pro silently using command line paramete... 

Enterprise Deployment Resources

Test your machines to make sure they are ready for ArcGIS Pro:  Can You Run It? 

:: Install ArcGIS Pro
::
:: Author: Curtis Price
:: Modified: 2020-07-18
::
:: History:
:: 01/30/2015 ArcGIS Pro 1.0 - Initial release
:: 11/02/2016 Update for Pro 1.3 / 1.3.1
:: 06/07/2017 Apply any .msp files in Pro .msi folder
:: 03/18/2018 Added CHECKFORUPDATESATSTARTUP to install command
:: 07/21/2018 Fix (missing variables)
:: 02/15/2020 Added license and data portal setup
:: 02/15/2020 Removed .NET check (if .NET needed, shows in fail log)
:: 07/18/2020 COPYLOCAL switch to optimize for network or local install
::----------------------------------------------------------------
@echo off
setlocal

:: Required files, this script assumes the script is in the same
:: folder as the "Esri" folder below:
::
:: install_arcgispro.bat
:: \---Esri
:: +--ArcGISPro
:: ArcGISPro.cab
:: ArcGISPro.msi
:: *.msp files (if any - for example 2.5.x update)
:: +--ArcGISProHelp (optional, to install local help)
:: ArcGISProHelp.cab
:: ArcGISProHelp.msi
::
:: For more information:
:: Enteprise Deployment Resources
:: https://community.esri.com/docs/DOC-2463-enterprise-deployment-resources
::----------------------------------------------------------------

:: Copy Local - for distributing on live network drives, set to TRUE
:: This will copy install files to local disk, and delete after install
:: Set to FALSE if the install package is installed from local drive location (incl USB)
set COPYLOCAL=FALSE

:: Do an all-users (admin install) so all users on this computer
:: can use ArcGIS Pro. Set to 2 for a single-user install.
set ALLUSERS=1

:: Set ArcGIS Online organization shortname ("myorg.maps.arcgis.com")
set AGOL=myorg

:: Check for updates at startup. Recommended, keep everyone on the same version
:: by setting this to 0. Set to 1 to allow prompting for updates
set CHECKFORUPDATESATSTARTUP=0

:: Install local Help - set to true to install local help
set LOCALHELP=FALSE

::---------------------------------------------------------------------------
:: Do not edit below this line
::---------------------------------------------------------------------------

:: This is the location of this script
set SRC=%~d0%~p0\.

:: Install setup
set MSIEXEC=%WINDIR%\system32\msiexec.exe
set SL=/qb- /passive /norestart
set AGOL=https://%AGOL%.maps.arcgis.com

:: Set log file path, prefix at install script runtime
:: Example logfile name: "ArcProInstall_20120925_1623_Desktop.txt"
:: Log file is set to user's My Documents folder
set LOG_FOLDER=%USERPROFILE%\Documents
if not exist "%LOG_FOLDER%" md "%LOG_FOLDER%"
set DATESTAMP=%DATE:~10,4%%DATE:~4,2%%DATE:~7,2%
set TIMESTAMP=%TIME:~,2%%TIME:~3,2%
set TIMESTAMP=%TIMESTAMP: =0%
set LOG_PATH=%LOG_FOLDER%\ArcInstall_%DATESTAMP%_%TIMESTAMP%


if "%COPYLOCAL%"=="TRUE" goto copylocal

set LOCAL_INSTALL=%SRC%
goto copylocal_skip

:copylocal

set LOCAL_INSTALL=%TEMP%/ProInstall
:: Copy install media
echo.
echo Copying install media files...
echo.
robocopy "%SRC%" "%LOCAL_INSTALL%" /e
if not exist "%LOCAL_INSTALL%" ^
(echo. & echo Could not copy files & goto fail)

:copylocal_skip


:: Move to media folder
pushd "%LOCAL_INSTALL%\ArcGISPro"

:: Install ArcGIS Pro
echo Installing ArcGIS Pro...
echo Logging to %LOG_PATH%_Pro.txt
@echo on
%MSIEXEC% /i ArcGISPro.msi ^
ALLUSERS=%ALLUSERS% ^
SOFTWARE_CLASS=Professional ^
AUTHORIZATION_TYPE=NAMED_USER ^
License_URL="https://%AGOL%.maps.arcgis.com" ^
CHECKFORUPDATESATSTARTUP=%CHECKFORUPDATESATSTARTUP% ^
Portal_List="https://%AGOL%.maps.arcgis.com" ^
/l+ie "%LOG_PATH%_Pro.txt" %SL% || goto fail
:: Patches (if any)
for %%m in (*.msp) do %MSIEXEC% /p %%m %SL%
@echo off
echo.

:: Return to root folder
popd


:: Install local help (optional)

if "%LOCALHELP%"=="TRUE" goto skiphelp
if not exist "%LOCAL_INSTALL%\ArcGISProHelp" goto skiphelp
pushd "%LOCAL_INSTALL%\ArcGISProHelp"
@echo on
%MSIEXEC% /i "%SRC%\Esri\ArcGISProHelp\ArcGISProHelp.msi" ^
ALLUSERS=1 ^
/l+ie "%LOG_PATH%_Help.txt" %SILENT%
@echo off
popd

:skiphelp


if "%COPYLOCAL%"=="TRUE" goto copylocal1

goto copylocal_skip1

:copylocal1

:: Clean up
echo.
echo Removing install media files...
echo rd /s/q "%LOCAL_INSTALL%"
:: move out of install folder first, then delete
cd /d "%TEMP%"
rd /s/q "%LOCAL_INSTALL%"

:copylocal_skip1

echo.
echo ArcGIS Pro install completed.
echo.

goto done

:fail
echo Install failed

:done
echo.
echo Log file: "%LOG_PATH%_Pro.txt"
echo.
@echo on
pause‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍
Comments

Thanks for sharing Curtis!  One minor thing, in the comment about the check for updates property, "set to 1 to suppress Pro prompting software updates", setting it to 0 is what blocks update checks.

Thanks, fixed!

Hi Curtis - thanks for the script.

Regarding the AGOL shortname variable: Is there a way to install ArcGIS Pro silently across our organization and have the default Portal be our Enterprise Portal, using Windows Authentication to pass the user's credentials, instead of AGOL? We use a concurrent license server for Pro, and have already setup Windows Authentication to pass our organization credentials to the log-in prompt.

Version history
Revision #:
1 of 1
Last update:
‎11-02-2016 07:49 AM
Updated by:
 
Contributors