CLIツールによる変更点のデプロイ

CLIツールによる変更点のデプロイ

CLIツールを使えば、Jenkinsのビルドをトリガーしたり、Liferay Cloud Consoleを使うことなく、ローカルプロジェクトの変更を直接デプロイすることができます。 このチュートリアルでは、Liferayサービスにポータル・プロパティを追加し、CLIツールを使用して dev にデプロイするプロセスを説明します。

始めるには、まず CLI ツール をインストールして使えるようにし、プロジェクトの Git リポジトリのローカルコピー(例: GitHub , Bitbucket , GitLab )も必要です。

note

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]",
note

liferay.workspace.lcp.jenkins.imageプロパティは、ciサービスに対応しています。

Liferayサービスへのポータル・プロパティの追加

デプロイメント ライフサイクルを開始するには、 dev 環境の Liferay サービスにポータル プロパティを追加し、変更をコミットします。

  1. ローカルのマスターブランチが、プロジェクトのリポジトリの最新版であることを確認してください。

  2. 最新の master ブランチをベースに、新しい作業用ブランチを作成します。

    git checkout -b example-cli-deployment-branch
    
  3. <project>\liferay\configs\dev\にアクセスし、portal-env.properties ファイルに以下のプロパティを追加してください。

    web.server.display.node=true
    
    note

    バージョン3.x.xのサービスを使用している場合は、適切なフォルダパスは、lcp/liferay/deploy/devとなります。 ディレクトリ構造の違いについては Liferay Cloud プロジェクト バージョン 4 での変更点 を、サービスのバージョンの確認方法については サービススタックのバージョンについて をご参照ください。

  4. 以下のコマンドで変更内容を追加し、コミットします。

    git add .
    
    git commit -m "Test - Adding Portal Property"
    

CLIツールで新しいビルドをデプロイする

変更をコミットしたら、以下の手順で Gradle を使って Liferay サービスのビルドを作成し、CLI ツールを使ってそれを dev 環境にデプロイします。

  1. 端末を開き、Liferayのサービスフォルダに移動します。

    cd <project-folder>/liferay
    
    important

    バージョン3.x.xのサービスを使用している場合は、CLIツールを実行する前に、リポジトリのlcpディレクトリに移動して、ディレクトリを走査し、サービスのLCP.jsonファイルを見つけられるようにする必要があります。

  2. lcp loginを実行 まだログインしていない場合は、ブラウザで認証を行うよう促されます。

  3. 以下のコマンドを順番に実行して、LiferayサービスのGradleビルドを作成します。

    ./gradlew clean deploy createDockerfile
    
    note

    もし、プロジェクトでバージョン 3.x.x のサービスを使用している場合、代わりに lcp/liferay ディレクトリから ./gradlew distLiferayCloud を実行する必要があります。

    lcp deploy コマンドを実行する前に、まずLiferayサービスのGradleビルドを作成する必要があります。 その他のサービスについては、ローカルでのビルドプロセスが不要なため、バックアップ、CI、データベース、検索、Webサーバーなどのサービスを直接導入することができます。

  4. ビルドをデプロイする前に、LCP.jsonファイルをDockerディレクトリにコピーします。

    cp LCP.json build/docker
    
    cd build/docker
    

    サービスをデプロイする際に、サービスのLCP.jsonファイルがあるディレクトリからlcp deployコマンドを実行する必要があるため、LCP.jsonファイルをDockerディレクトリにコピーする必要があります。

  5. 以下のコマンドを実行して、ビルドを dev の環境にデプロイします。

    lcp deploy --project=<project-name> --environment=dev
    

    デプロイメントの進捗状況はターミナルで確認できます。

    このプロセスでは、新しいビルドがプロジェクトに追加され、 dev 環境にデプロイされます。 このとき、Liferay サービスは新しいポータル・プロパティで再起動する必要があります。

サンプルデプロイメントの検証

ビルドが正常にデプロイされ、 dev 環境のLiferayサービスが Ready になったら、以下の手順で変更内容を確認します。

  1. プロジェクトの dev の環境に移動します。

  2. Web Server サービスのページにアクセスし、その URL をクリックして dev 環境の Liferay インスタンスにアクセスします。 https://webserver-<project-name>-dev.lfr.cloud/.

    Web Server URL をクリックし、開発環境の Liferay インスタンスにアクセスします。

  3. ホームページの下部にWebサーバーのノードが表示されていることを確認します。

    ホームページの下部にウェブサーバノードが表示されていることを確認します。

追加情報