Welcome to our docs site. Docs on this site are for ACP version 9.
See these links for previous versions: Version 8, Version 7

Use the Command Line to Install or Modify the Platform

To install or modify the Platform, use the Apprenda.Wizard.exe command-line interface. Apprenda.Wizard.exe is available form the Installer directly of the Platform installation package. Note that opening Apprenda.Wizard.exe will start the GUI installer workflow that you can also use to install or modify a Platform.

When executed through the command-line, you can run an “unattended” install that will automatically repair any validation issues and auto-restart the target machine(s) when necessary. Apprenda.Wizard.exe must be run from the “Installer” directory within the Platform install package if you plan to use the command-line to execute Platform operations.

Install Command

To access detailed information about the required and optional parameters that accompany the executable, run:

.\Apprenda.Wizard.exe Install ?

This will generate a list of parameters that the executable will take as inputs, with required parameters marked with a (*).  Most significantly, the “-inputFile” parameter delineates the XML file that defines the Apprenda instance you are installing to.

Input File Schema Location

Schema information for the most recent release of the Platform:

Sample Command Line Installation Input File

Sample ApprendaGridDefinitions.xml for Installation

<?xml version="1.0"?>
<ApprendaGridDefinitions xmlns:xsd="http://www.w3.org/2001/XMLSchema"
                         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                         xmlns="http://schemas.apprenda.com/ApprendaGridDefinitions"
                         xsi:schemaLocation="http://schemas.apprenda.com/ApprendaGridDefinitions http://apprenda.com/schemas/platform/9.0/ApprendaGridDefinitions.xsd">

  <ApprendaGrid licenseFilePath="C:\MyLicense.lic"
                signingCertificatePath="C:\apprenda.victor.signing.pfx"
                runtimeDriveLetter="C"
                repositoryHost="victoria01"
                enforceSslForAllPages="false"
                useApprendaHostFileExtension="false"
                requireSocAuthorization="true"
                pathBasedUrlSubdomain="apps"
                encryptInternalCommunication="true"
                generateInternalCommunicationIssuerCertificate="true"
                generateInternalCommunicationCertificates="true" />

    <!--Information for the initial Developer Team Account created with Platform installation-->
    <CompanyInfo name="Victorian Consulting"
                 alias="victorianconsulting"
                 address="3 Corporate Park Dr"
                 city="Clifton Park"
                 state="NY"
                 zip="12065"
                 country="United States of America"
                 phoneNumber=""
                 adminFirstName="Jane"
                 adminLastName="Eyre"
                 adminEmail="jane@apprenda.com" />

    <!--Apprenda's free email solution will be used if this is set to "true"-->
    <EmailConfig useFreeCloudSolution="false">

      <!--Omit the following section if you choose to use Apprenda's email solution-->
      <SMTPConfig senderName="Apprenda Confirmation Agent"
                  senderAddress="apprenda-notify@apprenda.com"
                  smtpHost="emailserver"
                  smtpPort="25"
                  requiresAuthentication="false" />
    </EmailConfig>

    <!--Include the following section if you choose to deploy your platform with Identity Federation enabled-->
    <IdentityFederationConfig federationEndpoint="https://identity.apprenda.victor03/adfs/ls/"/>    

    <!--Include the following section if you choose to deploy your platform with Platform Auditing enabled -->
    <PlatformAuditingConfig enableAuditing="true">
        <SQLInstance name="hqt-allagash04" username="saasgridadmin" password="5aa5gr1d" />
    </PlatformAuditingConfig>

    <WindowsServiceConfig>
      <AdminUserAccount>
        <UserAccount domain="MYDOMAIN" username="adminaccount" />
      </AdminUserAccount>
      <SystemUserAccount>
        <UserAccount domain="MYDOMAIN" username="systemaccount" />
      </SystemUserAccount>
    </WindowsServiceConfig>

    <!--Include the following section if your platform has at least one Linux node-->
    <!--'elevationMethod'has possible values of 'su' and 'sudo'-->
    <LinuxConfig adminUser="root" adminPassword="password" elevationMethod="su" appsRepositoryMount="/apprenda/repo/apps" systemRepositoryMount="/apprenda/repo/sys" defaultWorkloadAccount="apprenda" enableWorkloadAccountAutoCreation="true" />

    <Clouds>
      <!--if installing multiple clouds, the cloud that hosts the CoreDB instance must be listed first-->

      <Cloud name="My Private PaaS"
             description="Private cloud"
             rootUrl="http://apprenda.victoria"
             cloudType="Public"
             infrastructureProvider="My Datacenter"
             sslCertificatePath="C:\apprenda.victoria.pfx"
             generateSslCertificate="false"
             cachePorts="6379"
             cacheSize="512"
             cachePassword="password">

        <Servers>
          <Server hostName="victoria01">
            <Roles>
              <Role name="loadManager"/>
            </Roles>
          </Server>
          <Server hostName="victoria02">
            <Roles>
              <Role name="loadManager"/>
            </Roles>
          </Server>          
          <Server hostName="victoria03">
            <Roles>
              <Role name="web"/>
              <Role name="coordination"/>
              <Role name="app"/>
            </Roles>
          </Server>
          <Server hostName="victoria04">
            <Roles>
              <Role name="app"/>
              <Role name="web"/>
              <Role name="coordination"/>              
            </Roles>
          </Server>
          <Server hostName="victoria05">
            <Roles>
              <Role name="web"/>
              <Role name="coordination"/>
              <Role name="cache"/>
              <Role name="app"/>
            </Roles>
          </Server>
          <Server hostName="victoria06">
            <Roles>
              <Role name="linux"/>
            </Roles>
          </Server>
          <Server hostName="victoria07">
            <Roles>
              <Role name="linux"/>
            </Roles>
          </Server>
        </Servers>
        <DatabaseServerInstances>
          <DatabaseServerInstance name="victoriaDB"
                                  adminUser="myadmin"
                                  totalMemoryMB="12270"
                                  totalCpuMHz="27136"
                                  totalStorageMB="10240"
                                  coreServer="true"
                                  fqdn="victoriaDB.Apprenda.local" />

          <DatabaseServerInstance name="victOracle"
                                  type="Oracle"
                                  port="1521"
                                  serviceName="vicky"
                                  adminUser="myadmin"
                                  totalMemoryMB="12270"
                                  totalCpuMHz="27136"
                                  totalStorageMB="10240"
                                  coreServer="false"
                                  fqdn="victOracle.Apprenda.local" />
        </DatabaseServerInstances>

        <!--Include the section below only if your cloud includes a clustered Loadmanager with a shared IIS configuration file-->     
        <IisSharedConfig path="\\victoria03\sharediisconfig"
                         username="MYDOMAIN\username"  />   

      </Cloud>    

      <Cloud name="My Public PaaS"
             description="Public cloud"
             rootUrl="http://apprenda.victor"
             cloudType="Public"
             infrastructureProvider="Off-site Datacenter"
             sslCertificatePath="C:\apprenda.victor.pfx"
             generateSslCertificate="false"
             cachePorts="6379"
             cacheSize="512"
             cachePassword="password">           

        <Servers>
          <Server hostName="victor01">
            <Roles>
              <Role name="loadManager"/>
            </Roles>
          </Server>
          <Server hostName="victor02">
            <Roles>
              <Role name="loadManager"/>
            </Roles>
          </Server>          
          <Server hostName="victor03">
            <Roles>
              <Role name="web"/>
              <Role name="coordination"/>
              <Role name="app"/>
              <Role name="adfs"/>
            </Roles>
          </Server>
          <Server hostName="victor04">
            <Roles>
              <Role name="app"/>
              <Role name="web"/>
              <Role name="coordination"/>              
            </Roles>
          </Server>
          <Server hostName="victor05">
            <Roles>
              <Role name="web"/>
              <Role name="coordination"/>
              <Role name="app"/>
            </Roles>
          </Server>          
        </Servers>
        <DatabaseServerInstances>
          <DatabaseServerInstance name="victorDB"
                                  adminUser="myadmin"
                                  totalMemoryMB="12270"
                                  totalCpuMHz="27136"
                                  totalStorageMB="10240"
                                  coreServer="false"
                                  fqdn="victorDB.Apprenda.local" />
        </DatabaseServerInstances>  

        <!--Include the section below only if your cloud includes a clustered Loadmanager with a shared IIS configuration file-->     
        <IisSharedConfig path="\\victor03\sharediisconfig"
                         username="MYDOMAIN\username"  />   

      </Cloud>
    </Clouds>
</ApprendaGridDefinitions>

Using the Command Line to Modify an Existing Apprenda Platform Installation

All tasks that can be performed through the regular Apprenda Installer workflow can also be accomplished through the command-line interface.  For a detailed list of the different command-line workflows for Apprenda.Wizard.exe, run:

.\Apprenda.Wizard.exe ?

Command-line tasks that can be performed include adding and removing roles, nodes, database instances, and Clouds, as well as upgrading and uninstalling the Platform.  Just as with the “Install” help command shown above, detailed information about each Installer task and its parameters can be generated by running the following:

.\Apprenda.Wizard.exe [Installer task] /?

The “AddCloud” task requires an XML input file similar to the one shown above, but including only the new Cloud’s definition.

The “Upgrade” task may require a text file depending on what the Platform version the upgrade is performed from/to; upgrade file requirements based on Platform version can be found here.