powershelldelphicontinuous-integrationsilentsilent-installer

Powershell silent / unattended install of Delphi Tokyo 10.2 - for CI use in win docker container


I'm attempting to create a powershell command that silently installs Delphi Tokyo 10.2 - to be used as an automated compiler in a Windows Docker container. I've not been able to find any recent documentation on how to implement an unattended/silent installation using the proper installer commands / switches.

I was able to determine that the Tokyo and Rio installers use Inno Setup - and should be given Inno Setup installer commands/switches.

From the Tokyo installer about page:

https://photos.app.goo.gl/88jY7PF2mPAipwEA9

This is the command I've messed with thus far:

.\radstudio10_2_3_esd__93231.exe /sp- /verysilent /suppressmsgboxes /norestart/ /log="c:\somelocation\install.log"

However I am not able to get the install process to go past the first page or EULA checkbox. The failed silent install log shows:

Log opened. (Time zone: UTC-05:00)
Setup version: Inno Setup version 5.5.6 (u)
Original Setup EXE: C:\somelocation\radstudio10_2_3_esd__93231.exe
Setup command line: /SL5="$18051C,138809719,642048,C:\somelocation\radstudio10_2_3_esd__93231.exe" /sp- /verysilent /suppressmsgboxes /norestart/ /log=c:\somelocation\install.log
Windows version: 10.0.18363  (NT platform: Yes)
64-bit Windows: Yes
Processor architecture: x64
User privileges: Administrative
64-bit install mode: No
Created temporary directory: C:\Users\username\AppData\Local\Temp\is-1QQ8P.tmp
Extracting temporary file: C:\Users\username\AppData\Local\Temp\is-1QQ8P.tmp\innocallback.dll
Extracting temporary file: C:\Users\username\AppData\Local\Temp\is-1QQ8P.tmp\UnlockFirewall.dll
Extracting temporary file: C:\Users\username\AppData\Local\Temp\is-1QQ8P.tmp\mOasisRuntime.dll
Extracting temporary file: C:\Users\username\AppData\Local\Temp\is-1QQ8P.tmp\topbanner96.bmp
Failed to proceed to next wizard page; aborting.
Got EAbort exception.
Deinitializing Setup.
Log closed.

Here's a portion of the logs from a non-silent install of the same installer package:

Log opened. (Time zone: UTC-05:00)
Setup version: Inno Setup version 5.5.6 (u)
Original Setup EXE: C:\somelocation\radstudio10_2_3_esd__93231.exe
Setup command line: /SL5="$405F0,138809719,642048,C:\somelocation\radstudio10_2_3_esd__93231.exe" /log=c:\somelocation\install.log /saveinf=c:\somelocation\install.inf
Windows version: 10.0.18363  (NT platform: Yes)
64-bit Windows: Yes
Processor architecture: x64
User privileges: Administrative
264-bit install mode: No
Created temporary directory: C:\Users\username\AppData\Local\Temp\is-K4M7F.tmp
Extracting temporary file: C:\Users\username\AppData\Local\Temp\is-K4M7F.tmp\innocallback.dll
Extracting temporary file: C:\Users\username\AppData\Local\Temp\is-K4M7F.tmp\UnlockFirewall.dll
Extracting temporary file: C:\Users\username\AppData\Local\Temp\is-K4M7F.tmp\mOasisRuntime.dll
Extracting temporary file: C:\Users\username\AppData\Local\Temp\is-K4M7F.tmp\topbanner96.bmp
Message box (OK):
Inno Setup version 5.5.6 (u)
Copyright © 1997-2015 Jordan Russell
Portions Copyright © 2000-2015 Martijn Laan
All rights reserved.

Inno Setup home page:
http://www.innosetup.com/

RemObjects Pascal Script home page:
http://www.remobjects.com/ps
User chose OK.
Extracting temporary file: C:\Users\username\AppData\Local\Temp\is-K4M7F.tmp\ProductCodes.ini
Extracting temporary file: C:\Users\username\AppData\Local\Temp\is-K4M7F.tmp\ProductCodes.ini
Extracting temporary file: C:\Users\username\AppData\Local\Temp\is-K4M7F.tmp\ProductCodes.ini
Extracting temporary file: C:\Users\username\AppData\Local\Temp\is-K4M7F.tmp\ProductCodes.ini
Extracting temporary file: C:\Users\username\AppData\Local\Temp\is-K4M7F.tmp\ProductCodes.ini
Starting the installation process.
Creating directory: C:\Program Files (x86)\Embarcadero
Creating directory: C:\Program Files (x86)\Embarcadero\Studio
Creating directory: C:\Program Files (x86)\Embarcadero\Studio\19.0
Directory for uninstall files: C:\Program Files (x86)\Embarcadero\Studio\19.0\
...
...
...

So in the above successful non-silent install - notice the line in the logs that says Message box (OK) this occurs after I accept the EULA. So at present i'm not sure how to pass an installer switch to suffice the EULA page silently.

Has anyone had success with creating a silent / unattended install of Delphi Tokyo or Rio? Or has found documentation that helped them achieve something similar?

Any help is much appreciated!

Kind Regards,


Solution

  • For Delphi 2007 and Delphi XE2 we were able to do a silent installation with setup.exe /s, see https://delphisorcery.blogspot.com/2011/07/unattended-delphi-installation-how.html for reference.

    But this did not work for Delphi 10.2 Tokyo anymore. So our IT department called Embarcadero directly for more information on how to do a silent installation. But unfortunately they told us, the installation process can not be done silently!