Tailwind Logo

ローカルで作成したコンポーネントを XM Cloud の Staging に反映させる

XM CloudCLI

公開日: 2023-12-10

前回は Types という全部の項目を利用するコンポーネントを作成しました。今回はこのコンポーネントを利用して、CLI を利用して Staging のサーバーに追加していきます。

コンポーネントのシリアライズ

作成をしたコンポーネントをシリアライズして、リポジトリに反映させます。シリアライズの設定に関しては、手元の環境では src\SitecoreDemo.module.json というファイルを用意して、内容は以下のように設定しています。

JSON
{
  "namespace": "SitecoreDemo",
  "references": ["InitItems"],
  "items": {
    "includes": [
      {
        "name": "placeholders",
        "path": "/sitecore/layout/Placeholder Settings/Project/sitecoredemo-jp"
      },
      {
        "name": "demo-renderings",
        "path": "/sitecore/layout/Renderings/Feature/Demo"
      },
      {
        "name": "demo-settings",
        "path": "/sitecore/system/Settings/Feature/Demo"
      },
      {
        "name": "demo-branches",
        "path": "/sitecore/templates/Branches/Feature/Demo"
      },
      {
        "name": "demo-template",
        "path": "/sitecore/templates/Feature/Demo"
      },
      {
        "name": "renderings",
        "path": "/sitecore/layout/Renderings/Project/sitecoredemo-jp"
      },
      {
        "name": "templates",
        "path": "/sitecore/templates/Project/sitecoredemo-jp"
      },
      {
        "name": "languages",
        "path": "/sitecore/system/Languages"
      }
    ]
  }
}

上記にテンプレートやレンダリングなど、追加をした項目に関してはシリアライズをする形になっています。コンテンツに関しては別の Json ファイルにしているため、これに絞ればコンテンツツリー以外はすべてシリアライズが可能です。

Sitecore CLI を利用することで、関連するファイルをシリアライズすることができます。

PowerShell
dotnet sitecore ser pull -n default -i SitecoreDemo

実際にいくつかのデータがシリアライズされて、以下の画面のように追加、更新されています。

uploadconmponent01.png

以下のコマンドで Staging に反映させます。

PowerShell
dotnet sitecore ser push -n staging -i SitecoreDemo

この状態では、まだサイトではコンポーネントを認識していません。/sitecore/content/sitecoredemo-jp/sitecoredemo-jp/Presentation/Available Renderings/Demo の利用できるコンポーネントに対して、Types を設定します。

uploadconmponent02.png

これで準備ができたので Pages を開きます。コンポーネントが左側に追加されているのがわかります。

uploadconmponent03.png

まとめ

ローカルで作成したコンポーネントを XM Cloud 側に反映させる手続きを今回は CLI を利用して実施しました。シリアライズをする仕組みをうまく活用することで、コンポーネントを開発、関連するデータとともにクラウドに反映させることができます。

関連タグ