CLIツールによる変更点のデプロイ
CLIツールを使えば、Jenkinsのビルドをトリガーしたり、Liferay Cloud Consoleを使うことなく、ローカルプロジェクトの変更を直接デプロイすることができます。 このチュートリアルでは、Liferayサービスにポータル・プロパティを追加し、CLIツールを使用して dev
にデプロイするプロセスを説明します。
始めるには、まず CLI ツール をインストールして使えるようにし、プロジェクトの Git リポジトリのローカルコピー(例: GitHub , Bitbucket , GitLab )も必要です。
CLIツールはプロジェクトへの変更を素早くデプロイする方法を提供しますが、デプロイの大部分にはCIサービスとLiferay Cloudコンソールを使用することがベストプラクティスです。 方法はLiferay Cloud Consoleを使った変更のデプロイを参照してください。
プロジェクトでバージョン 3.x.x
のサービスを使用している場合、CLI ツールで変更をデプロイする前に、まずLCP.json
ファイルを 準備する 必要があります。
そうでなければ、このステップをスキップして、デプロイメントプロセスを開始することができます。
プロジェクトバージョン3でのLCP.jsonファイルの準備
プロジェクトでバージョン 3.x.x
のサービスを使用していない場合は、このステップをスキップして、 変更を開始します .
そうでなければ、リポジトリのルートにある gradle.properties
を開き、以下のプロパティのように、各サービスのDockerイメージのバージョンに応じたプロパティを見つけます。
liferay.workspace.lcp.backup.image=liferaycloud/backup:3.2.1
liferay.workspace.lcp.database.image=liferaycloud/database:3.2.1
liferay.workspace.lcp.search.image=liferaycloud/elasticsearch:6.1.4-3.0.3
liferay.workspace.lcp.liferay.image=liferaycloud/liferay-dxp:7.2.10-ga1-3.0.10
liferay.workspace.lcp.webserver.image=liferaycloud/nginx:1.14.2-3.1.1
liferay.workspace.lcp.jenkins.image=liferaycloud/jenkins:2.176.1-3.1.1
これらのプロパティのそれぞれについて、値をコピーして、対応するサービスの LCP.json
ファイル内の image
プロパティのプレースホルダー値を置き換えるために使用します。 これにより、CLIが lcp
ディレクトリ内を検索する際に、正しいDockerイメージを使用することができます。
たとえば、この行の lcp/search/LCP.json
の新しい値として、 liferay.workspace.lcp.search.image
プロパティの値を使用します。
"image": "@[email protected]",
liferay.workspace.lcp.jenkins.image
プロパティは、ci
サービスに対応しています。
Liferayサービスへのポータル・プロパティの追加
デプロイメント ライフサイクルを開始するには、 dev
環境の Liferay サービスにポータル プロパティを追加し、変更をコミットします。
ローカルのマスターブランチが、プロジェクトのリポジトリの最新版であることを確認してください。
最新の master ブランチをベースに、新しい作業用ブランチを作成します。
git checkout -b example-cli-deployment-branch
<project>\liferay\configs\dev\
にアクセスし、portal-env.properties
ファイルに以下のプロパティを追加してください。web.server.display.node=true
noteバージョン3.x.xのサービスを使用している場合は、適切なフォルダパスは、
lcp/liferay/deploy/dev
となります。 ディレクトリ構造の違いについては Liferay Cloud プロジェクト バージョン 4 での変更点 を、サービスのバージョンの確認方法については サービススタックのバージョンについて をご参照ください。以下のコマンドで変更内容を追加し、コミットします。
git add .
git commit -m "Test - Adding Portal Property"
CLIツールで新しいビルドをデプロイする
変更をコミットしたら、以下の手順で Gradle を使って Liferay サービスのビルドを作成し、CLI ツールを使ってそれを dev
環境にデプロイします。
端末を開き、Liferayのサービスフォルダに移動します。
cd <project-folder>/liferay
importantバージョン3.x.xのサービスを使用している場合は、CLIツールを実行する前に、リポジトリの
lcp
ディレクトリに移動して、ディレクトリを走査し、サービスのLCP.json
ファイルを見つけられるようにする必要があります。lcp login
を実行 まだログインしていない場合は、ブラウザで認証を行うよう促されます。以下のコマンドを順番に実行して、LiferayサービスのGradleビルドを作成します。
./gradlew clean deploy createDockerfile
noteもし、プロジェクトでバージョン
3.x.x
のサービスを使用している場合、代わりにlcp/liferay
ディレクトリから./gradlew distLiferayCloud
を実行する必要があります。lcp deploy
コマンドを実行する前に、まずLiferayサービスのGradleビルドを作成する必要があります。 その他のサービスについては、ローカルでのビルドプロセスが不要なため、バックアップ、CI、データベース、検索、Webサーバーなどのサービスを直接導入することができます。ビルドをデプロイする前に、
LCP.json
ファイルをDockerディレクトリにコピーします。cp LCP.json build/docker
cd build/docker
サービスをデプロイする際に、サービスの
LCP.json
ファイルがあるディレクトリからlcp deploy
コマンドを実行する必要があるため、LCP.json
ファイルをDockerディレクトリにコピーする必要があります。以下のコマンドを実行して、ビルドを
dev
の環境にデプロイします。lcp deploy --project=<project-name> --environment=dev
このプロセスでは、新しいビルドがプロジェクトに追加され、
dev
環境にデプロイされます。 このとき、Liferay サービスは新しいポータル・プロパティで再起動する必要があります。
サンプルデプロイメントの検証
ビルドが正常にデプロイされ、 dev
環境のLiferayサービスが Ready になったら、以下の手順で変更内容を確認します。
プロジェクトの
dev
の環境に移動します。Web Server サービスのページにアクセスし、その URL をクリックして
dev
環境の Liferay インスタンスにアクセスします。https://webserver-<project-name>-dev.lfr.cloud/
.ホームページの下部にWebサーバーのノードが表示されていることを確認します。