Getting Started
ご覧のページは、お客様の利便性のために一部機械翻訳されています。また、ドキュメントは頻繁に更新が加えられており、翻訳は未完成の部分が含まれることをご了承ください。最新情報は都度公開されておりますため、必ず英語版をご参照ください。翻訳に問題がある場合は、 こちら までご連絡ください。

GitHubリポジトリの設定

Liferay Cloud のオンボーディングメールには、 dxpcloud 組織でホストされている GitHub リポジトリへのリンクが含まれています。 このリポジトリは、チームのプライベート Liferay Cloud 開発リポジトリのテンプレートであり、通常は 10 営業日後に削除されます。 ユーザーは

  1. プロビジョニングされたリポジトリを独自のプライベートリポジトリに転送します。
  2. Webhook を使用して、プライベート リポジトリを Liferay Cloud の Jenkins (CI) サービスと統合します。

プロビジョニングされたリポジトリは GitHub 上にありますが、Jenkins サービスのバージョン 3.2.0 以降では GitLab リポジトリに転送できます。 これは、GitLab リポジトリへの管理者アクセス権を使用して実行する必要があります。

リポジトリの管理者 は、Cloud コンソールのプロジェクトの管理者と必ずしも同じ とは限りません。

Jenkinsサービスの準備

Jenkinsfile をカスタマイズした場合は、このガイドに従って デフォルトの Jenkinsfile を拡張してください。

GitLabリポジトリの作成

まず、新しいGitLabリポジトリを作成します:

  1. GitLabに移動します。

  2. 新しいプロジェクトをクリックします。

    [新しいプロジェクト]をクリックして、新しいGitLabリポジトリの作成を開始します。

  3. プロジェクトのスラッグ(URL内のリポジトリ名)を提供します。

    新しいリポジトリの詳細を入力します。

  4. 表示レベルをプライベートに設定します(無料ユーザーは無制限のプライベートリポジトリを使用できます)。

  5. Initialize repository with a README がチェックされていないことを確認します。

  6. プロジェクトの作成をクリックします。

GitHubからGitLabへの転送

以下の手順に従って、プロビジョニング済みの GitHub リポジトリを自分の GitLab リポジトリに転送します:

  1. プロビジョニング済みのGitHubリポジトリをローカルでクローンします:

    git clone git@github.com:dxpcloud/example.git
    

    別のプロバイダーで作業するためにリポジトリをすでにクローンしている場合は、この手順をスキップして、同じクローン内で作業できます。

  2. 新しいGitリモートを追加し、GitLabをポイントします:

    git remote add gitlab git@gitlab.com:USERNAME/REPOSITORYNAME.git
    
  3. クローンされたリポジトリを新しいリモートリポジトリにプッシュします:

    git push gitlab master
    

リポジトリの作成、クローン作成、プッシュに関するヘルプが必要な場合は、 GitLabのドキュメントを参照してください。

GitLabのアクセストークンの生成

次に、Webhook が Jenkins ビルドをトリガーするために使用するアクセス トークンを作成します。

  1. 個人アクセス トークン ページに移動します。

    GitLab の個人アクセス トークンを作成します。このトークンには後で再度アクセスすることはできません。

  2. このアクセストークンの名前と有効期限を指定します。

  3. 次のアクセス許可を持つようにアクセストークンを設定します:

    • api
    • read_repository
    • write_repository
  4. [ Create personal access token]をクリックします。

  5. アクセストークンをコピーし、どこかに保存してください(二度と表示されません)。

GitLabをJenkinsサービスに接続する

最後に、Jenkins サービスの環境変数を新しいリポジトリを指すように設定します。

  1. Liferay Cloud Console にログインし、 インフラ 環境の Jenkins サービスに移動します。

  2. [環境変数] タブに移動します。

  3. 以下の環境変数を設定します:

名前
LCP_CI_SCM_PROVIDERgitlab
LCP_CI_SCM_REPOSITORY_OWNER[repo owner]
LCP_CI_SCM_REPOSITORY_NAME[repo name]
LCP_CI_SCM_TOKEN[アクセストークン]
重要

セキュリティを強化するために、 LCP_SI_SCM_TOKEN の値を 秘密変数に保存します。

これらの環境変数を更新した後、Jenkinsサービスは再起動します。 これで、新しいリポジトリでプッシュされたブランチとプルリクエストがビルドをトリガーします。

プライベートGitLabサーバーへの接続

プライベートGitLabサーバーを使用するには、Jenkinsサービスで追加の環境変数を設定する必要があります:

名前
LCP_CI_SCM_SERVER_HOST[private host URL]

LCP_CI_SCM_SERVER_HOST 変数に、プライベートGitLabサーバーのベースURLを設定します(例えば、 http://private.gitlab.server.com/)。 これは、ビルドを生成し、リポジトリのブランチにリンクするときに CI がコード ベースを取得するために使用するサーバー URL を設定します。 デフォルトでは、CIはGitLabのベースURLとして https://gitlab.com/ を使用しています。

追加のGitLab Webhook設定

Liferay Cloudの Jenkins サービスは、選択した Git SCM プロバイダー用の Webhook を作成します。ただし、作成されるのはデフォルトのものだけです。 GitLabのデフォルトの Webhook では、GitHub および BitBucketの Webhook の機能と一致させるために追加の構成が必要です。

  1. GitLabリポジトリに移動します。

  2. 設定 に移動し、 Webhooksを選択します。

  3. プロジェクトフックの下で、作成された Webhook が表示されていることを確認します。

  4. CI webhookの[ Edit ]ボタンをクリックします。

    リポジトリ用に自動的に作成された Webhook を編集します。

  5. プッシュイベントをチェックします。

  6. タグ プッシュ イベントコメントのチェックを外します。

  7. SSL検証を有効にするをチェックします。

  8. 変更を保存をクリックします。

ビルドの確認

プッシュされたブランチとマージリクエスト(GitLabのプルリクエストに相当)は、Liferay Cloud Console の ビルド タブから確認またはデプロイできるビルドをトリガーします。 Jenkins サービスとの統合を設定したら、次のステップとして、インテグレーションが成功したかどうかを確認するためにビルドを検証します。

プッシュされたブランチからのビルドの確認

新しいGitプッシュがJenkinsビルドをトリガーすることを確認します:

  1. リポジトリに変更を加え(ファイルの追加など)、ブランチにコミットします:

    git commit -m "Add file to test builds"
    
  2. ブランチをGitLabにプッシュします:

    git push gitlab branch-name
    
  3. Liferay Cloud Console の ビルド ページに移動します。

  4. Builds ページで、プッシュされたブランチのビルドが表示されることを確認します。

マージリクエストからのビルドの確認

新しいマージリクエストがJenkinsビルドをトリガーすることを確認します:

  1. 任意のブランチから develop ブランチへのマージリクエストを作成します。

  2. マージリクエストに対して新しいビルドが作成されていることを確認します。

  3. Liferay Cloud Console の「ビルド」ページに移動します。

  4. ブランチのリンクをクリックして、適切なビルドでコミットします。

    Buildsページで、ブランチのリンクを確認し、ビルドをコミットします。

  5. リンクが正しいGitLabページにリダイレクトすることを確認します。