Oracle Content Management Toolkitによるテストから本番への変更の伝播
サイト・テンプレートを開発した後、Content Toolkitのコマンドライン・インタフェース(CLI)を使用して、開発からテストにテンプレートをOracle Content Managementサーバーで伝播できます。
変更を伝播するために、Toolkitコマンドを使用してサイトを作成し、開発サーバー、テスト・サーバーおよび本番サーバーのライフ・サイクルを管理できます。 開発環境でサイトを変更し、その変更をテスト環境と本番環境に伝播できます。 このコマンド行ユーティリティのセットをスクリプト環境に組み込むと、デプロイメントを管理できます。 CLIユーティリティを使用すると、アセットやコンポーネントなどの新しいアイテムのロールアウト、および既存のコンテンツの更新を実行できます。
次のステップでは、Content Toolkit CLIを使用して、開発からテスト、本番に変更を伝播する方法を示します:
-
同じリポジトリおよびローカリゼーション・ポリシーを持つ開発サーバー、テスト・サーバーおよび本番サーバーを設定します。
開発サーバーからテスト・サーバーおよび本番サーバーに変更を伝播するには、3つのサーバーごとに同じ名前およびローカリゼーション・ポリシーを持つリポジトリを設定する必要があります。 アセット・リポジトリのデフォルト・ローカリゼーション・ポリシーはen-USですが、3つのサーバーすべてで同じ場合には別のポリシーを使用できます。
「アセット・リポジトリの設定」を参照してください。
-
開発サーバー、テスト・サーバーおよび本番サーバーをOracle Content Managementに登録します。
変更をサイトに伝播する前に、各サーバーを登録する必要があります。 Content Toolkitによって提供される
cec register-server
コマンドでサーバーを登録できます:cec register-server <name>
次のコマンド・オプションを指定します:
-
-サーバーURLの<endpoint>
-
サーバーに接続するための-u <user>および-p <password>
-
-t <type>、オプションで、サーバー・タイプを設定します。 デフォルト値は
pod_ec
です。Oracle Public CloudのOracle Content Managementテナントに接続する場合は、
pod_ec
のみを使用します。
たとえば、次のコマンドを実行すると、Oracle Publicクラウドのテナントであるサーバーが登録されます:
cec register-server DEV -e https://DEV.example.com -u user1 -p <password>
次のコマンドでは、Oracle Content Managementのスタンドアロン開発インスタンスが登録されます:
cec register-server DEV -e https://DEV.git.oraclecorp.example.com -u user1 -p <password>
Oracle Content Managementサーバーを登録すると、
cec list
Toolkitコマンドでその内容をリストできます。次のコマンドは、開発サーバーのコンテンツをリストします:
cec-compontents> cec list -s DEV - Logged in to remote server: <host:port> Channels: Name Token StarterSite <site-id> Components: Name Type Published FooterBar Component group StarterComponent Local component StarterFooter Component group StarterNavMenu Local component Localization policies: Name Required languages Optional Languages en-US en-US Repositories: Name r Sites: Theme Type Published Online Name StarterSiteTheme Enterprise Templates: Name Theme Type StarterTemplate StarterTheme Standard
-
-
開発サーバーにサイト・テンプレートをアップロードし、テンプレートからサイトを作成します。
cec create-template
コマンドを使用してサイト・テンプレートを作成し、開発サーバーにテンプレートをアップロードできます。 その後、cec create-site
コマンドを使用して、テンプレートからサイトを作成できます。 次のコマンドでは、テンプレートを作成してアップロードします:- cec create-template blog -f BlogTemplate - cec upload-template blog -s DEV
次のコマンドでは、アップロードされたテンプレートから
blog
という名前のサイトを作成します:cec-components> cec create-site blog -t blog -r r -l "en-US" -d "en-US" --server DEV - Logged in to remote server: <https:<host:<port> - establish user session - get template - get repository - get localization policy - creating enterprise site . . . name blog template blog site prefix blog repository r localization policy en-US default language en-US - submit create site site - create site in process: percentage 95 - create site in process: percentage 95 - create site in process: percentage 95 - create site in process: percentage 95 - create site in process: percentage 95 - site created
-
サイトを公開して、開発サーバー上でオンラインにします。
サイトを作成したら、
cec control-site
コマンドを使用してサイトを公開し、オンラインにできます:cec-components> cec control-site Usage: cec contrl-site <action> Perform <action> on site in CEC server. Specify the site with -s <site> Specify the server with -r <server>. publish unpublish bring-online take-offline Options: --site, -s <site> Site --server, -r <server> The registered CEC server --help, -h Show help Examples: cec control-site publish -s Site1 Publish site Site1 on the server cec control-site publish -s Site1 -r UAT Publish site Site1 on the registered server UAT cec control-site unpublish -s Site1 -r UAT Inpublish site Site1 on the registered server UAT cec control-site bring-online -s Site1 -r UAT Bring site Site1 online on the registered server UAT cec control-site take-offline -s Site1 -r UAT Take site Site1 offline on the registered server UAT Not enough non-option arguments: got 0, need at least 1 cec-components> cec control-site publish --site blog --server DEV - Logged in to the remote server: https://<host>:<port> - establish user session - get site: runtimeStatus: offline publishStatus: unpublished - submit publish site - publish in process: percentage 20 - publish in process: percentage 40 - publish in process: percentage 49 - publish in process: percentage 49 - publish in process: percentage 50 - publish in process: percentage 50
-
サイトをDEVからUATに移動するには、サイトをパッケージ化する必要があります。 サーバー間でサイトを移動するためのパッケージ化モデルは、テンプレートです。 開発サーバーで作成したサイトから新しいテンプレートを作成し、そのテンプレートをダウンロードします。
次の例の
cec create-template-from-site
コマンドでは、blog
からblog2
という名前のサイト・テンプレートを作成します。cec create-template-from-site blog2 -s blog
cec download-template
コマンドを使用して、開発サイトから作成したテンプレートをダウンロードします:cec-components: cec download-template blog2 --server DEV - Logged in to remote server: https://<host>:<port> - establish user session - export template - template download to /Users/<user-name>/devenv/git/webclient/developer/sites-toolkit/cec-components/dist/blog2.zip - the template will be at /Users/<user-name>/devenv/git/webclient/developer/sites-toolkit/cec-components/src/main/templates/blog2 - the theme for the template will be at /Users/<user-name>/devenv/git/webclient/developer/sites-toolkit/cec-components/src/main/themes/blogTheme - create link _scs_theme_root_ - create link _scs_design_name_ - override component /Users/<user-name>devenv/git/webclient/developer/sites-toolkit/cec-components/src/main/components/Starter-Blog-Author-Summary - override component /Users/<user-name>devenv/git/webclient/developer/sites-toolkit/cec-components/src/main/components/Starter-Blog-Post-Content - override component /Users/<user-name>devenv/git/webclient/developer/sites-toolkit/cec-components/src/main/components/Starter-Blog-Post-Header - override component /Users/<user-name>devenv/git/webclient/developer/sites-toolkit/cec-components/src/main/components/Starter-Blog-Post-Search-Result - override component /Users/<user-name>devenv/git/webclient/developer/sites-toolkit/cec-components/src/main/components/Starter-Blog-Post-Post-Sidebar - override component /Users/<user-name>devenv/git/webclient/developer/sites-toolkit/cec-components/src/main/components/Starter-Blog-Post-Summary - set themeName to blogTheme in siteinfo.json - unzip tmplate content file *** template is ready to test: https://localhost:8085/templates/blog2 cec upload-template blog2 --server UAT
-
テンプレートをアップロードして、コンテンツ・タイプおよびコンテンツ・レイアウト・マップを作成します。
cec upload-template blog2 --server UAT
-
テンプレートをアップロードしますが、コンテンツ・アイテム(コンテンツ・テンプレート)はテンプレートから除外します。
cec upload-template blog2 --server UAT -x
この操作を行うと、元のサイトと同じGuidを持つコンテンツを持つサイトが作成されます。 コンテンツを含むテンプレートからサイトを作成すると、新しいサイト内のすべてのコンテンツに新しいGuidが含まれます。 新規コンテンツを作成するのではなくコンテンツを更新できるようにするため、テンプレートからコンテンツを除外する必要があります。
-
テンプレートからサイトを作成します。
cec create-site blog -t blog2 -r r -l "en-US" -d "end-US" --server UAT
-
コンテンツ・テンプレートをサイト・チャネルおよびコレクションにアップロードします。 これは、ステップ7でテンプレートから除外したため、実行する必要があります。
cec upload-content blog2 -t -r r -c blog -l "blog site" --server UAT
-
サイトを公開して、テスト・サーバー上でオンラインにします。
サイトを公開してオンラインにするには、
cec control-site
コマンドを使用します:cec-components> cec control-site publish --site blog --server UAT - Logged in to the remote server: https://<host>:<port> - establish user session - get site: runtimeStatus: offline publishStatus: unpublished - submit publish site - publish in process: percentage 20 - publish in process: percentage 40 - publish in process: percentage 49 - publish in process: percentage 49 - publish in process: percentage 50 - publish in process: percentage 50 - publish blob finished
-
その後、DEVサーバー上のサイトの
blog
に変更を加えると、その変更をUATサーバー上にすでに作成したサイトに伝播できます。 -
テンプレートに変更を加えるため、サイトから別のテンプレートを作成してください。
cec create-template-from-site blog3 -s blog --server DEV
-
テンプレートをダウンロードします。
cec download-template blog3 -s DEV
-
テンプレートをアップロードし、サイトをそのテンプレートから作成して、変更をテスト環境に伝播します。
cec upload-template blog3 -s UAT
このコマンドは、変更されたコンポーネントとテーマを作成または更新しますが、内容は除外します。
-
次に、
update-site
コマンドを使用してコンテンツを取得し、ページを更新します。cec update-site blog -t blog3 - UAT
たとえば:
cec-components> cec update-site blog -t blog3 --server UAT Updating site: blog3 - Logged in to remote server: https://<host>:<port> - pages : updating file# 6 of 6 files - content : updating file# 3 of 3 files - System Files : updating file# 5 of 5 files - controller : no files in update, removing files on server - favicons : no files in update, removing files on server - misc : no files in update, removing files on server - seo : no files in update, removing files on server - system : no files in update, removing files on server - created content file /Users/<user-name>/devenv/git/webclient/developer/sites-toolkit/cec-compnents/dist/blog3_export.zip - upload content file - get CSRF token - submit import job, updating content - import job in progress. . . - import job in progress. . . - import job in progress. . . - content imported: Update Site Results: - Site Pages : completed with 0 errors. - Embedded Content : completed with 0 errors. - System Files : completed with 0 errors. - Settings Files : completed with 0 errors. - Content Update : completed with 0 errors.
-
サイトをチェックして、変更が伝播されたことを確認します。
-
サイトをDEVからUATに移動したときに、UATサーバーからPRODサーバーに移動するステップと同じステップを実行します。
-
本番サーバーにサイトを作成してオンラインにし、変更を確認します。
cec list
コマンドを使用して、本番サイトのコンテンツを表示し、開発環境で加えた変更が含まれていることを確認できます。 また、サイトをチェックして、変更がプロダクションに伝播されたことを確認することもできます。