Command line installation - XML configuration
This page provides a reference and specification for the XML files used as a configuration source by the command line installation.
You can create the XML file from scratch or during the installation procedure using the Save XML configuration link.
Attribute values
When entering the values of boolean attributes, always use “true” or “false”. Other types of values are not supported.
You can use macros in the following XML attributes to get the respective values dynamically:
- SilentInstall -> LogFile
- Setup -> SetupFolder
- IIS -> TargetFolder
- SQL -> Database
Macro expression |
Description |
Sample resolved value |
{%productversion%} |
Kentico version number according to Semantic Versioning. |
9.0.0-alpha |
{%fileversion%} |
Full version number of the installed Kentico version. |
9.0.5191.17572 |
{%programfiles%} |
Path to the Program Files folder on your local drive. |
c:\Program Files (x86)\ |
{%machine%} |
Name of the current machine. |
PC01 |
{%username%} |
User name of the currently used account. |
Andy |
{%date%} |
Current date in format yyyy-mm-dd. |
2015-01-21 |
{%time%} |
Current time in format hh-mm-ss. |
14-53-23 |
Note that these macros are completely unrelated to the standard Kentico macros that can be used in the system’s administration interface.
XML elements
SilentInstall
The root element of the XML file is SilentInstall. Using the attributes of this element, you can configure general options of the installation:
Attribute name |
Description |
Accepted values |
Required? |
ShowProgress |
Determines if the Silent Install tool displays the progress of the installation or not.
|
No | CommandPrompt |
Yes |
Log |
Enables logging of import progress to a file. |
true | false |
Yes |
OnError |
Determines the action the tool performs when an error occurs during the installation. |
Stop | Continue |
Yes |
LogFile |
File where the log is saved. The default value is <installation path>\setup.log. |
full path to a file |
Yes |
CheckRequirements |
Indicates, if the tool checks whether the correct .NET version is installed on the target machine before executing the installation. If the installed .NET version is not matching, the installation is aborted. |
true | false |
No |
Setup
The first sub-element under SilentInstall is Setup. This element allows you to configure the general options by means of attributes:
Attribute name |
Description |
Accepted values |
Required? |
NET |
Sets the .NET version of the installed project. |
4.5 | 4.6 |
Yes |
SetupFolder |
Folder where the tool installs the Kentico setup files (not the web project). |
full path to a folder |
Yes |
Location |
Determines where will the tool install the web files:
See Installing Kentico (Q&A) for more details. |
Local | VisualStudio | Remote | Modify |
Yes |
WebProject |
Determines if the project is installed as an ASP.NET web site, ASP.NET web application, or as a Microsoft Azure project. |
WebSite | WebApplication | WindowsAzure |
No |
OpenAfterInstall |
Determines if the tool opens the newly installed website in a new browser window when the installation finishes. |
true | false |
No |
RegisterCounters |
Determines if the installation registers performance counters for Health Monitoring. |
true | false |
No |
InstallWinServices |
Determines if the tool installs Kentico Windows services in Windows. |
true | false |
No |
RegisterApplicationToEventLog |
Determines if the tool registers the Kentico application in the Windows Event Log. |
true | false |
No |
DeleteExisting |
Determines if the the tool deletes the existing setup files in a folder with the same name as set in the SetupFolder attribute. |
true | false |
No |
KillRunningProcesses |
If the tool deletes existing setup files, this parameter indicates if it can also kill already running processes related to these files. |
true | false |
No |
InstallOnlyProgramFiles |
Determines if only the program files are installed. This option ignores all other settings. |
true | false |
No |
DoNotOverwriteInstallation |
If set to false, then the files of the existing installation will be overwritten. The default value is true (do not overwrite). |
true | false |
No |
EnableModuleUsageTracking |
Determines whether the installed instance has the Kentico improvement program enabled (sending of data about the system’s usage to Kentico). You can stop the sending of data at any time for installed instances in the administration interface through the Settings -> System -> Send anonymous usage records to Kentico setting. |
true | false |
No |
IIS
The IIS sub-element is also located directly under SilentInstall. Its attributes allow you to adjust IIS-related settings of the installation:
Attribute name |
Description |
Accepted values |
Required? |
WebSite |
The name of the web site in IIS. The web site must exist in IIS before running the installation. |
string value |
Yes |
TargetFolder |
Path to the folder where the web project is created and mapped in IIS. For example: C:\inetpub\wwwroot\Kentico_{%productversion%} |
full path to a folder |
Yes |
DeleteExisting |
Determines if the tool deletes an existing IIS web site and project folder before the installation (as specified by the WebSite and TargetFolder attributes). If you set the GetUnique value, the tool does not delete existing sites, but instead creates a new folder and web site with a similar name. |
true | false | GetUnique |
No |
KillRunningProcesses |
If the tool deletes existing websites, this parameter indicates, if it can also kill already running processes related to these files. |
true | false |
No |
SQL
The SQL sub-element of the SilentInstall element allows you to configure database-related settings of the installation. This element is not required and if you do not include it in your XML file, the database will not be installed.
Attribute name |
Description |
Accepted values |
Required? |
InstallDatabase |
Indicates, if the tool will install the database. If you do not install the database, you will not be able to install sample sites (WebSites element). |
true | false |
No |
Database |
Name of the target database. |
string value |
No |
SqlName |
User name of the account used for access to the SQL server. |
string value |
No |
SqlPswd |
Password for the SQL server account. |
string value |
No |
Server |
Name of the target SQL server. |
string value |
No |
Operation |
Determines whether the tool creates a new database or modifies an existing one. The default value is New. |
New | Modify |
No |
Authentication |
Type of the authentication used to access the SQL server. |
SQL | Windows |
No |
DeleteExisting |
Indicates if the tool deletes an existing database with the same name as set in the Database attribute. If you set the GetUnique value, the tool does not delete existing database, but instead creates a new database with a similar name. |
true | false | GetUnique |
No |
Schema |
The default database schema is dbo. If you have a different schema on your SQL server (e.g., db_owner), specify it here, so that the installation tool can make adjustments to the database. |
string value |
No |
Collation |
Sets the collation used by the installed database. We recommend leaving the default collation (Latin1_General_CI_AS), except for Azure SQL databases, which only support the SQL_Latin1_General_CP1_CI_AS collation. |
string value |
No |
Notification
The Notification sub-element allows you to configure the automatic notification e-mail messages. The system sends them to the specified e-mail address when an error occurs during the installation.
Attribute name |
Description |
Accepted values |
Required? |
Enabled |
Indicates, if the tool sends notification e-mails when an error occurs during the installation. |
true | false |
Yes |
From |
E-mail address of the sender of the notification e-mail. This value is required in the Notification element. |
e-mail address |
Yes |
To |
E-mail address of the recipient of the notification e-mail. This value is required in the Notification element. |
e-mail address (or multiple addresses separated by a semicolon (;)) |
Yes |
Server |
Name of the SMTP server used to send out the notification e-mail. |
string value |
Yes |
Subject |
Subject of the notification e-mail message. |
string value |
Yes |
UserName |
User name of the SMTP server account used to send out the notification e-mail. |
string value |
No |
Password |
Password for the SMTP server account used to send out the notification e-mail. |
string value |
No |
SSL |
Indicates, if SSL is used when sending the notification e-mail. |
true | false |
No |
AttachLogFile |
Indicates, if the tool includes a compressed installation log file as an attachment. |
true | false |
No |
WebTemplates, UICultures, Modules and Dictionaries
The WebTemplates, UICultures, Modules and Dictionaries elements allow you to configure which web templates, UI cultures, modules and dictionaries will be installed by the tool. If you chose to modify an existing Kentico installation (by specifying the Modify value for the Location attribute), you can also use these elements to add new components to the existing installation or to remove unwanted components.
Each of these elements only has a single attribute:
Attribute name |
Description |
Accepted values |
Required? |
type |
|
Mix | InstallAll | RemoveAll |
Yes |
Each of the WebTemplates, UICultures, Modules and Dictionaries elements can have any number of sub-elements named WebTemplate, UICulture, Module or Dictionary. These sub-elements represent particular web templates, UI cultures, modules or dictionaries and have the following attributes:
Attribute name |
Description |
Accepted values |
Required? |
name |
Name of the web template, UI culture, module or dictionary. |
string value |
Yes |
operation |
The operation that should be performed with the component:
|
Add | Remove | No |
Yes |
WebSites
The WebSites element lets you configure which websites will be installed based on available web templates. It has no attributes itself – it only contains WebSite sub-elements representing particular websites to be installed. Each WebSite sub-element has the following attributes:
Attribute name |
Description |
Accepted values |
Required? |
domain |
Domain used by the website. |
string value |
Yes |
displayname |
Name of the website used in Kentico user interface. |
string value |
Yes |
webtemplatename |
Code name of the chosen web template. |
available web template code name |
Yes |
runsite |
Indicates, if the tool should run the website after it is imported to the system. |
true | false |
No |
rebuildsearchindexes |
Indicates, if the search indexes should be rebuilt after installing the website. |
true | false |
No |
Licenses
You can add any number of License sub-elements under the Licenses element. These sub-elements represent particular licenses for separate domains. You should state the domain in the domain attribute and add the actual key as a sub-element wrapped in a CDATA enclosure.
Example
Here you can find an example of the configuration file. The file configures installation of Kentico with the sample Corporate site website and all the available web templates, UI cultures, modules and dictionaries.
<SilentInstall ShowProgress="CommandPrompt" Log="true" OnError="Stop" LogFile="{%programfiles%}\Kentico\9.0\setup.log" CheckRequirements="False" >
<Setup NET="4.5" SetupFolder="{%programfiles%}\Kentico\9.0" Location="Local" InstallOnlyProgramFiles="False" OpenAfterInstall="true" DeleteExisting="False" DoNotOverwriteInstallation="True" RegisterCounters="False" InstallWinServices="False" RegisterApplicationToEventLog="False" WebProject="WebSite" KillRunningProcesses="False" EnableModuleUsageTracking = "true" />
<IIS Website="Default Web Site" TargetFolder="C:\inetpub\wwwroot\Kentico9_{%fileversion%}" DeleteExisting="GetUnique" KillRunningProcesses="False" />
<Sql InstallDatabase="true" Server="Artemis" Authentication="SQL" SqlName="login" SqlPswd="password" Database="Kentico9_{%fileversion%}" Operation="New" DeleteExisting="false" />
<Modules type="InstallAll" />
<WebTemplates type="InstallAll" />
<UICultures type="InstallAll" />
<Dictionaries type="InstallAll" />
<WebSites>
<WebSite domain="localhost" displayname="Dancing Goat" webtemplatename="DancingGoat" />
</WebSites>
<Licenses>
<License domain="localhost"><![CDATA[DOMAIN:localhost
PRODUCT:CX09
EXPIRATION:00000000
PACKAGES:
SERVERS:1
ODWrIUyRdEv3Ko+7kLCN2WD4jEsOl3l0+au1AJ3zU0Jw5b3Q1h1eBlWh1fNAWAe2NbSb6gm1qUhJHdUTI4rBPANDgmYvEBFZRqpYbDYVCYsXEeQy4H2ipwXfASGFMI5UuKvHRTJ5KBo9OE4k4ZJmPVratLjOcSvFVERhGubZl7MZghwCBSHQNNvN3RWN3mwi1+vgou+N/Z1XDWXtfprzDEwFFJHyl/4NOoKbNzvGhuV1Jmq1XbGiT8Od0Y2vufeqzcM4VdFRRAOlIoQHFwwfyEah2kSw1z9zUbqWj3nZqZUD6jXi8FokOWKWzZeybg9NQgZ1+vtd7jg1B1+bz/Te+w==]]></License>
</Licenses>
</SilentInstall>