Advanced Installation
WSP solution builder configuration (Advanced users only)
Please note that this section is not a mandatory reading, it only applies where special replacements in files are required.
The wsp solution builder configuration should be configured for the Colygon.MatchPoint.Snow.Publishing.wsp solution in the file wspBuilderConfig.xml. It consists of three sections: build replacements section, file replacements section and online file replacements section.
BuildReplacements
The <BuildReplacements> contains variables that are replaced during build with values specified in the server config xml file.
FileReplacements (Not recomended)
In the file replacements section, there are preconfigured regular expressions which will scan configuration files in the wsp solution and replace matches with values from the tokens. This section is for advanced users only and should generally not be changed before an installation. The file replacements are being done by running manually
FileReplacements is not recomended for the only reason that cause the wsp solution to be regenerated.
ATTENTION! If FileReplacements is used, it is strongly recommended to place the drop folder as close as possible to the root of the hard drive (e.g. C:\drop). Failing to do so can result in errors when running the script.
Use the file with the name “wspBuilderConfig.xml” and adapt it for the target environment. Run the following Powershell cmdlet, which will recreate the Colygon.MatchPoint.Snow.Publishing.wsp solution:
<root>\<drop>\wspBuilder.ps1 –inputWSPFile “Colygon.MatchPoint.Snow.Publishing.wsp”
OnlineFileReplacements
In the online file replacements section, there are preconfigured regular expressions which will scan MatchPoint configuration files in the <mpadmin> site collection and replace matches with values from the tokens. This section is for advanced users only and should generally not be changed before an installation. The file replacements run after the solution is installed or updated.
How it works:
<BuildReplacements> <AppListName>$(AppListName)</AppListName> </BuildReplacements> <OnlineFileReplacements> <ConfigurationModifications Path="CompositeConfiguration"> <Modification Replacement="/Lists/[AppListName]" Filter="MPSnow.Apps.Overview" PSConditionExpression="([AppListName] -ne '')">> <Match>MPSUrls.AppsListRelUrl></Match> </Modification> </ConfigurationModifications> </OnlineFileReplacements>
The <OnlineFileReplacements> contains all the ConfigurationModifications. Path is used to refine the files to a specific folder. In this case, we know that the string that needs to be replaced is part of a file located in CompositeConfiguration folder.
In the <OnlineFileReplacements> multiple Modifications can be defined. A Modification consists from a Replacement and a Match.
The Replacement represents a string that is evaluated in the build process. That means all variables between square brackets are replaced with values from BuildReplacements. E.g.: [AppListName].
(Optional) The Filter is relative to the MatchPoint Configuration Document Library in the <mpadmin> site collection and it is in the context of the Path specified in the parent <ConfigurationModifications>.
(Optional) PSConditionExpression specifies a condition. If this is evaluate to true then the replacement will be done.
Match is the string that needs to be replaced by the Replacement.
In the example above, the "MPSUrls.AppsListRelUrl" string is searched in the CompositeConfiguration folder and filtered to a specific file: MPSnow.Apps.Overview.xml. This string will be replaced with the value specified in the Replacement.
Please find below a sample of a WSP solution builder configuration. The build replacements section needs to be adapted to fit the target environment.
<Configuration>
<BuildReplacements>
<TagStoreId>$(TagStoreId)</TagStoreId>
<LicenseHolder>$(LicenseHolder)</LicenseHolder>
<LicenseKey>$(LicenseKey)</LicenseKey>
</BuildReplacements>
<FileReplacements>
</FileReplacements>
<OnlineFileReplacements>
<ConfigurationModifications Path="PublishingSnowflakeConfiguration">
<Modification Replacement="<LicenseConfiguration><LicenseHolder>[LicenseHolder]</LicenseHolder><LicenseKey>[LicenseKey]</LicenseKey></LicenseConfiguration>" PSConditionExpression="([LicenseHolder] -ne '') -and ([LicenseKey] -ne '')">
<Match><![CDATA[<LicenseConfiguration \/>]]></Match>
</Modification>
</ConfigurationModifications>
<ConfigurationModifications Path="WorkflowConfiguration">
<Modification Replacement="TagStoreId="[TagStoreId]"" Filter="MPS.Publishing.Workflows.Pages.Approval">
<Match><![CDATA[TagStoreId="hm"]]></Match>
</Modification>
</ConfigurationModifications>
</OnlineFileReplacements>
</Configuration>
Detailed description of installation operations run by the script
Please note that this section is not a mandatory reading, it only describes in detail each operation performed by the installation script.
All operations are executed automatically by the installation script.
- Creates the Publishing Snowflake site collection and its required explicit managed path at the url <MPSnowWebApplication>/publishing, further referred in this document as <PublishingSnowflake>
- Deploys the SharePoint solution packages required for the Publishing Snowflake:
- Colygon.MatchPoint.Snow.Publishing.wsp
- Colygon.MatchPoint.Snow.SnowflakeComponents.wsp
- Colygon.MatchPoint.Snow.Publishing.Core.Services.wsp
- Publishing.Core.Services.wsp ensures that Colygon.MatchPoint.Snow.Publishing.dll and Colygon.MatchPoint.Snow.SnowflakeComponents.dll are deployed on the ApplicationServer - required for multi-roles server farms
Enables the features required by the Publishing Snowflake in the following locations: <mpadmin>, <mpsnow>, <PublishingSnowflake>.
The following features are activated in <mpadmin>:
- Colygon.MatchPoint.Snow.Publishing.Configurations
Colygon.MatchPoint.Snow.SnowflakeComponents.Configurations
The following features are activated in <mpsnow>:
- Colygon.MatchPoint.Snow.Publishing.SnowSite
- Colygon.MatchPoint.Snow.Publishing.ThemableDesign
Colygon.MatchPoint.Snow.SnowflakeComponents.SnowSite
The following features are activated in the <PublishingSnowflake>:
Colygon.MatchPoint.Snow.Publishing
The following features are activated in the web application:
Colygon.MatchPoint.Snow.SnowflakeComponents.Rest
The following features are activated in the farm:
- Colygon.MatchPoint.Snow.Publishing.SearchConnector
Creates the search managed properties required by the Publishing Snowflake
- Reschedules MatchPoint timer jobs, by running the Powershell cmdlet Reschedule–MPTimerJobs
- Runs the timer jobs required by the Publishing Snowflake:
- MPSnow.Tags.System.xml
- MPS.Publishing.Tags.Static.xml
- MPS.Publishing.Tags.System.xml
- Provisions the <PublishingSnowflake> with the site structure required by the Publishing Snowflake
- Reactivates Features