Package Management Service
ローカル アップデート センターで Package Management Service を使用する方法
Package Management Service を使用して、ユーザーが Sitecore パッケージに関する情報を取得し、それらのパッケージをダウンロードしてインストールできる Web API を提供することができます。これにはアップデート センターを使用します。これらのパッケージはローカルでホストします。
Package Management Service は、次の 2 つの構成グループをサポートします。
管理 - このプラットフォーム グループには、WCMS 構成、ファイル、DLL のみが含まれます。Sitecore Analytics に必要なパーツが含まれない XM です。
プラットフォーム - このプラットフォーム グループには XP に必要なファイルが含まれています。完全な Sitecore 構成です。
Package Management Service を使用して組織内で Sitecore パッケージをホストして配布する理由は、次のとおりです。
開発者がどのようなパッケージを開発環境やテスト環境にインストールするかを制御できます。
Sitecore のインフラストラクチャ全体に首尾一貫したパッケージを配布できます。
パッケージ管理サービスは、単一の .zip アーカイブとして配布されます。アーカイブには、インストール手順の記載された Sitecore.PackageManagementService.Web.deploy-readme.txt
ファイルが含まれています。
インストール後、web.config
ファイルの appSettingsection
に次のパラメーターの値を指定してサービスを設定します。
HotfixesRoot
およびUpdatesRoot
を指定します。これらは、それぞれホットフィックスと更新を格納するファイル システム フォルダーです。次の 2 つの認証モードのいずれかを選択します。
認証を完全に無効にするには、
RequiredAuthorization
を false に設定します。カスタム トークンベース認証プロバイダー (実装が必要) を登録するには、
OAuthAuthorizationServerProvider
を指定します。カスタム プロバイダーはMicrosoft.Owin.Security.OAuth.OAuthAuthorizationServerProvider
から継承する必要があります。
パッケージは、次の 2 つのファイルを含む .zip アーカイブです。
Package.update
– 標準の Sitecore 更新ファイル。Package.json
– パッケージの説明情報。
情報 (JSON 形式) には、プロパティ、インストール前の手順、インストール後の手順の説明があります。アップデート センターはこの情報を読み取って表示します。JSON 形式のパッケージ情報の例は、次のとおりです。
{ "Properties": { "Description": "This update package will upgrade your current Sitecore Platform version to 9.0.2", "Installation instruction": "https:/dev.sitecore.net/", "Release notes": "https:/dev.sitecore.net/", "Some Property": "something", "Another Property": "something" }, "PostSteps": [{ "Name": "Name of poststep here", "Description": "Description of poststep here" }, { "Name": "Name of the next poststep here", "Description": "Description of poststep here" }], "PreSteps": [{ "Name": "Name of prestep here", "Description": "Description of prestep here" }, { "Name": "Name of the next prestep here", "Description": "Description of prestep here" }] }
Sitecore プラットフォームおよびモジュールは、意味のあるバージョン管理に基づいたバージョン名を使用します。
定期的な更新の名前は <Major>.<Minor>.<Patch> のようになります (例: 9.2.2)。
ホットフィックスの名前は <Major>.<Minor>.<Patch>.<Hotfix> のようになります (例: 9.2.0.3)。
Package Management Service のパッケージはファイル システムの特定のフォルダー構造に保存する必要があります。この構造によって、プラットフォームまたはモジュールの特定のバージョンのパッケージの可用性が定義されます。
フォルダー構造では、次の要素が定義されます。
パッケージが更新かホットフィックスか。
プラットフォームまたはモジュールのソース バージョン。
プラットフォームまたはモジュールのターゲット バージョン。
更新は、次のようにフォルダー構造に保存されます。
プラットフォームの更新の場合:
<updates root>\<source platform version>\<platform group name (Platform or Management)>\<target platform version>
モジュールの更新の場合:
<updates root>\<source platform version>\Modules\<module name>\<current module version>\<target modules version>
前に説明したように、web.config
ファイルで更新ルート フォルダーを指定します。
フォルダー構造の例は、次のとおりです。

フォルダーの場所:
フォルダー パス | 説明 |
---|---|
| 更新パッケージのルート フォルダー。 |
| インストールされているプラットフォームの (現在の) ソース バージョン。この例では 9.1.0 です。 |
| 現在のバージョンからアップグレードできるプラットフォームのターゲット バージョン。この例では、9.1.0 から 9.1.1 または 9.1.2 にアップグレードできます。 |
| 現在のバージョンからアップグレードできるプラットフォーム構成 “Management” のターゲット バージョン。この例では、9.1.0 Management から 9.1.1 または 9.1.2 Management にアップグレードできます。 |
| プラットフォームの現在インストールされているバージョンと互換性のあるモジュール。 |
| SXA モジュールの現在のバージョン。この例では 1.5.0 です。 |
| プラットフォーム 9.0.0 に SXA 1.5.0 をインストールすると、SXA 1.6.0 にアップグレードできます。 |
ホットフィックスは、次のようにフォルダー構造に保存されます。
<hotfixes root>\<package name (Platform, Management or module name like EXM)>\<source product version>\<target product version>
フォルダー構造の例は、次のとおりです。

フォルダーの場所:
フォルダー パス | 説明 |
---|---|
| ターゲット プラットフォーム Management グループ バージョン 9.0.1 の最初のホットフィックス。 |
| ターゲット プラットフォーム バージョン 9.0.1 の最初のホットフィックス。 |
| SXA モジュール バージョン 1.5.0 の最初のホットフィックス (1.5.0.1)。 |
パッケージの保存には、ファイル システムの代わりに Azure Blob ストレージを使用できます。
Package Management Service に Azure Blob storage を使用するには、web.config
ファイルに次の変更を行います。
HotfixesRoot
設定およびUpdatesRoot
設定に値を指定します。値には、/
で区切られたAzure Blob ストレージ コンテナー名と仮想ディレクトリ ルートが含まれている必要があります。名前には小文字のみを使用してください。次のように、
PackageRepositoryProvider
設定の値をSitecore.PackageManagementService.AzureStorageProvider.Repositories.AzureBlobRepository, Sitecore.PackageManagementService.AzureStorageProvider
に変更します。<add key="PackageRepositoryProvider" value="Sitecore.PackageManagementService.AzureStorageProvider.Repositories.AzureBlobRepository, Sitecore.PackageManagementService.AzureStorageProvider"/>
Azure ポータルの Azure Blob ストレージ アカウントからの接続文字列値を
AzureStorage
設定の値として指定します。
このサービスは、パッケージを監視およびダウンロードするための Web API を提供します。
?api-version=<number of api version>
を、API の特定のバージョンを使用するクエリ文字列に追加します。
Sitecore プラットフォームの更新
API には、Sitecore プラットフォームの更新をクエリしてダウンロードする次のメソッドがあります。
/api/updates/<sitecoreVersion>/<platform group name (Platform or Management)>?api-version=2.0
特定のプラットフォーム バージョンおよびプラットフォーム グループのパッケージの説明のリストを返します。
/api/updates/<sitecoreVersion>/<platform group name (Platform or Management)>/latest?api-version=2.0
特定のプラットフォーム バージョンおよびプラットフォーム グループの最新のパッケージの説明のリストを返します。
/api/updates/<sitecoreVersion>/<platform group name (Platform or Management)>/<packageVersion>?api-version=2.0
特定のプラットフォーム、プラットフォーム グループ、パッケージ バージョンのパッケージの説明のリストを返します。
/api/download/updates/<sitecoreVersion>/platforms/<platform group name (Platform or Management)>?api-version=2.0
パッケージ名とバージョンごとに、特定のプラットフォーム バージョンのパッケージ ストリームを返します。
モジュールの更新
API には、モジュールの更新をクエリしてダウンロードする次のメソッドがあります。
/api/updates/<sitecoreVersion>/modules/<moduleName>/<moduleVersion>?api-version=2.0
特定のモジュール バージョンのパッケージの説明のリストを返します。
/api/updates/<sitecoreVersion>/modules/<moduleName>/<moduleVersion>/latest?api-version=2.0
特定のモジュール バージョンの最新のパッケージの説明を返します。
/api/updates/<sitecoreVersion>/modules/<moduleName>/<moduleVersion>/<packageVersion>?api-version=2.0
モジュール名、パッケージ バージョン、およびプラットフォーム バージョンごとに、特定のモジュール バージョンのパッケージの説明を返します。
/api/download/updates/<sitecoreVersion>/modules/<moduleName>/<moduleVersion>/<packageVersion>?api-version=2.0
パッケージ名とバージョンごとに、特定のプラットフォーム バージョンのパッケージ ストリームを返します。
Sitecore プラットフォームおよびモジュールのホットフィックス
API には、プラットフォームおよびモジュールのホットフィックスをクエリしてダウンロードする次のメソッドがあります。
/api/hotfixes/<packageName(Platform, Management or module name like EXM)>/<packageVersion>/latest?api-version=2.0
特定のプラットフォーム バージョンで使用可能なホットフィックスの説明のリストを返します。
/api/hotfixes/<packageName(Platform, Management or module name like EXM)>/<packageVersion>?api-version=2.0
特定のプラットフォーム グループ バージョンまたはモジュール バージョンで使用可能なホットフィックスの説明のリストを返します。
/api/hotfixes/<packageName(Platform, Management or module name like EXM)>/<sitecoreVersion>/<packageVersion>?api-version=2.0
特定のプラットフォーム バージョンの特定のホットフィックス パッケージの説明を返します。
/api/download/hotfixes/<packageName(Platform, Management or module name like EXM)>/<sitecoreVersion>/<packageVersion>?api-version=2.0
特定のプラットフォーム バージョンのホットフィックス パッケージ ストリームを返します。