Microsoft Web Platform Installerの廃止により、SIFを使用したSitecore XPのデプロイが失敗する


解説

Sitecore Installation Framework (SIF)を使用したSitecore Experience Platformインスタンスのデプロイが以下のエラーで失敗する可能性があります。

[------------------------------- IdentityServer_InstallWDP : WebDeploy -----------------------------------------------]
Install-SitecoreConfiguration : Cannot validate argument on parameter 'Path'. The running command stopped because the
preference variable "ErrorActionPreference" or common parameter is set to Stop: 
The term 'C:\Program Files\iis\Microsoft Web Deploy V3\msdeploy.exe' is not recognized as the name of a cmdlet, function, script file, or operable program.
Check the spelling of the name, or if a path was included, verify that the path is correct and try again.

Prerequisites.jsonをインストールする際には、Web Deploy 3.6およびURL Rewrite 2.1のインストールに、Microsoft Web Platform Installer (WebPI)が使用されます。
しかし、Microsoft Web Platform Installerのサポート終了に伴い、WebPIを使用してそれらをインストールすることができなくなります。

Sitecore Experience Platformインスタンスのインストール中に「ERROR_SMO_NEEDED_FOR_SQL_PROVIDER」エラーが発生した場合は、KB1003025の記事の内容を参照してください。

解決策

この問題を解決するには、以下の手順を実施してください。

    1. Prerequisites.jsonから、Microsoft Web Platform Installerに関連するタスクを削除します。
      "DownloadWebPlatformInstaller": {
                  "Type": "DownloadFile",
                  "Params": {
                      "SourceUri": "[parameter('WebPlatformDownload')]",
                      "DestinationPath": "[variable('WebPlatform.Download')]"
                  },
                  "Skip": "[variable('WebPlatform.Version.Compare')]"
              },
              "InstallWebPlatformInstaller": {
                  "Type": "StartProcess",
                  "Params": {
                      "FilePath": "[variable('WebPlatform.Download')]",
                      "ArgumentList": "[variable('InstallArgs')]",
                      "Wait": true
                  },
                  "Skip": "[variable('WebPlatform.Version.Compare')]"
              },
              "InstallWebDeploy3.6": {
                  "Type": "StartProcess",
                  "Params": {
                      "FilePath": "[variable('WebPlatformCmd')]",
                      "ArgumentList": "/Install /AcceptEULA /SuppressReboot /Products:WDeploy36PS",
                      "Wait": true
                  },
                  "Skip": "[variable('WebDeploy.Version.Compare')]"
              },
              "InstallURLRewrite2": {
                  "Type": "StartProcess",
                  "Params": {
                      "FilePath": "[variable('WebPlatformCmd')]",
                      "ArgumentList": "/Install /AcceptEULA /SuppressReboot /Products:UrlRewrite2",
                      "Wait": true
                  },
                  "Skip": "[variable('IIS.UrlRewrite.Version.Compare')]"
              },
    2. 必須要件をインストールします。
      Install-SitecoreConfiguration -Path .\Prerequisites.json
    3. Web Deploy 3.6およびURL Rewrite 2.1ツールをダウンロードし、Web Platform Installerを使わずに手動でインストールします。