---
title: "パッケージ管理サービス"
slug: "the-package-management-service"
abstract: "ローカルアップデートセンターのパッケージ管理サービスの使い方"
---
# パッケージ管理サービス

パッケージ管理サービスを使って、ユーザーがSitecoreパッケージに関する情報を取得し、[Update Center](https://doc.sitecore.com/xp/ja/developers/93/sitecore-experience-manager/the-package-management-service.html#UUID-03bec8f0-3aa5-a6e4-9e70-5a3d7b74bfec_UUID-5e8ad4b2-3bbe-a236-003a-ec89f1b140dd)を使ってこれらのパッケージをダウンロード・インストールできるWeb APIを提供します。これらのパッケージはローカルでホストされます。

パッケージ管理サービスは2つの構成グループをサポートしています:

-   管理 - このプラットフォームグループにはWCMSの設定、ファイル、DLLのみが含まれます。Sitecore Analyticsに必要な部品を含まないXMです。
-   プラットフォーム - このプラットフォームグループにはXPに必要なファイルが含まれており、完全なSitecore構成です。

パッケージ管理サービスを使って組織内で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プラットフォームおよびモジュールは、意味的なバージョン設定に基づくバージョン名を使用しています。

-   定期的な更新は以下の通りです:..、例えば9.2.2。
-   ホットフィックスは以下の通りです:.、例えば9.2.0.3。

## ファイル保存

パッケージ管理サービス用のパッケージは、ファイルシステムの特定のフォルダ構造に保存しなければなりません。この構造は、プラットフォームやモジュールの特定のバージョンに対するパッケージの可用性を定義します。

フォルダー構造は以下の要素を定義しています:

-   パッケージがアップデートかホットフィックスか。
-   プラットフォームまたはモジュールのソースバージョン。
-   プラットフォームまたはモジュールのターゲットバージョン。

更新情報は以下の方法でフォルダ構造に格納されます:

-   プラットフォームの最新情報:
    
    <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ファイル内で更新ルートフォルダを指定します。

以下はフォルダ構造の例です:

![Folder structurer](https://doc.sitecore.com/api/markdown-image/xp/ja/developers/93/sitecore-experience-manager/images/pms9111-1_jpg.png)

フォルダーの場所:

フォルダパス

概要

\\updates

アップデートパッケージのルートフォルダです。

\\updates\\9.1.0

インストールされたプラットフォームのソース(現在の)バージョンです。この例では9.1.0です。

\\updates\\9.1.0\\platform\\9.1.1 および \\updates\\9.1.0\\platform\\9.1.2

現在のバージョンからアップグレードできるプラットフォームのターゲットバージョンです。この例では、9.1.0から9.1.1または9.1.2へアップグレードできます

\\updates\\9.1.0\\management\\9.1.1 および \\updates\\9.1.0\\management\\9.1.2

現在のバージョンからアップグレードできるプラットフォーム構成「Management」のターゲットバージョンです。この例では、9.1.0 Managementから9.1.1または9.1.2 Managementへアップグレードできます。

\\updates\\9.0.0\\modules

現在インストールされているプラットフォームのバージョンと互換性のあるモジュール。

\\updates\\9.0.0\\modules\\sxa\\1.5.0

現在のSXAモジュールのバージョンです。この例では1.5.0です。

\\updates\\9.0.0\\modules\\sxa\\1.5.0\\1.6.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>

以下はフォルダ構造の例です:

![Folder structure](https://doc.sitecore.com/api/markdown-image/xp/ja/developers/93/sitecore-experience-manager/images/pms9111-2_jpg.png)

フォルダーの場所:

フォルダパス

概要

<hotfixes root>\\management\\9.1.0\\9.1.0.1

ターゲットプラットフォームManagement Groupバージョン9.0.1の最初のホットフィックスです。

<hotfixes root>\\platform\\9.1.0\\9.1.0.1

ターゲットプラットフォームバージョン9.0.1の最初のホットフィックスです。

<hotfixes root>\\sxa\\1.5.0\\1.5.0.1

SXAモジュールバージョン1.5.0の最初のホットフィックス(1.5.0.1)。

## Azure Blob storageを使おう

パッケージの保存にはファイルシステムの代わりにAzure Blobストレージを使うことができます。

パッケージ管理サービスでブログストレージAzure使用するには、web.configファイルに以下の変更を加えてください:

1.  HotfixesRootおよびUpdatesRoot設定の値を指定してください。値にはAzure Blobストレージコンテナ名と仮想ディレクトリのルートが含まれ、/で区切られます。小文字の名前のみを使用してください。
    
2.  PackageRepositoryProvider設定の値をSitecore.PackageManagementService.AzureStorageProvider.Repositories.AzureBlobRepository,  Sitecore.PackageManagementService.AzureStorageProviderに変更してください:
    
    <add key="PackageRepositoryProvider" value="Sitecore.PackageManagementService.AzureStorageProvider.Repositories.AzureBlobRepository, Sitecore.PackageManagementService.AzureStorageProvider"/>
    
3.  AzureポータルでAzure Blobストレージアカウントの接続文字列の値をAzureStorage設定の価値として指定してください。
    

## ウェブAPI 2.0

このサービスはパッケージの観察とダウンロードのための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
    
    特定のプラットフォームバージョンのホットフィックスパッケージのストリームを返します。