The difference between my successful attempts and the failed attempts was installing the SP2013 pre-requisite EXEs but having ASPI install the hotfix patches. I was able to get around this by rolling back to my previous snapshot (without pre-requisites at all) and having ASPI complete all the prerequisite installs (much slower of course).
The script finally stalls with the following:
- Provisioning Managed Metadata Service Application
- Creating SharePoint Hosted Services Application Pool...
- Starting Managed Metadata Service:
- Starting Metadata Service Instance...
- Waiting for Metadata service...Online
- Creating Metadata Service Application...
The section of the install that deals with pre-requisites looks like this:
- Installing Prerequisite Software:
- Running Prerequisite Installer (online mode)........Done.
- Prerequisite Installer completed in 00:00:25.
- SharePoint 2013 "missing hotfix" prerequisites...
- Checking for KB2554876...Already installed.
- Checking for KB2708075...Already installed.
- Checking for KB2472264...Already installed.
- All Prerequisite Software installed successfully.
I know using ASPI for SP2013 is beta - but I thought I would raise the awareness of the behaviour.
@SPSavvy
Comments: ** Comment from web user: csyvenky **
I am literally receiving this 100% of the time. I have had three attempts in a multi-tier environment fail.
My Managed Metadata Service Application configuration is like this:
```
<ManagedMetadataServiceApp Provision="123SomeServerName456"
Name="Managed Metadata Service"
ProxyName="Managed Metadata Service Proxy">
<!-- You can specify a different DB server/instance or alias per web application and service application. The behavior is slightly different than with the farm DB server though, see below. -->
<Database>
<!-- <Name> designates the suffix portion of the database name. For example if your DBPrefix (above) was "SPFarm", and the name below was "ServiceApp", your full DB name would be "SharePoint_ServiceApp" -->
<Name>MetaData</Name>
<!-- If you are creating an alias (recommended!), <DBServer> is actually the value of the SQL alias; otherwise it's the NetBIOS name of the SQL server or instance.
If you leave <DBServer> blank, the default DBServer value for the farm is used -->
<DBServer></DBServer>
<!-- The script can create a SQL alias for you. Enter the DBInstance, and if you leave <DBPort> blank, script will assume default port value of 1433 -->
<DBAlias Create="false"
DBInstance="SERVER\INSTANCE"
DBPort="" />
</Database>
</ManagedMetadataServiceApp>
```
If I re-attempt with provisioning set to false - the install fails trying to provision the User Profile Service application, claiming that one already exists.
> New-SPProfileServiceApplication : The name you specified is already being used
by another Profile Service Application. Please provide another name.
At C:\Users\coryadmin\AppData\Local\Temp\1\AutoSPInstaller-ScriptBlock.ps1:3
char:25