Cloud Build を使用すると、Bitbucket Server でホストされているリポジトリからビルドするトリガーを作成できます。これにより、Bitbucket Server リポジトリに関連付けられた commit プッシュや pull リクエストなどのイベントに対応してビルドを実行できます。
このページでは、インスタンスがプライベート ネットワークでホストされている場合に、Bitbucket Server インスタンスでトリガー機能を有効にする方法について説明します。
準備
-
Enable the Cloud Build, Secret Manager, Compute Engine, and Service Networking APIs.
- プライベート プールを作成していない場合は、プライベート プールの作成と管理の手順に沿ってプライベート プールを作成します。プライベート ネットワークでビルドするには、プライベート プールが必要です。
プライベート ネットワークの Bitbucket Server からリポジトリをビルドする
Bitbucket Server インスタンスがプライベート ネットワークでホストされ、公共のインターネット接続を介してアクセスできない場合は、VPC ネットワークとサービス プロデューサー ネットワークの間にプライベート接続を作成する必要があります。プライベート ネットワークでビルドするには、プライベート プールも必要です。
プライベート ネットワーク内でビルドする Bitbucket Server トリガーを作成するには:
次の手順に従って、VPC ネットワークとサービス プロデューサー ネットワークの間にプライベート接続を作成します。
ピアリングされるネットワークに、VPC ネットワークに名前付き IP 範囲を割り当てます。
Cloud Build プロデューサー ネットワークがプライベート リポジトリとの接続を管理する VM に割り当てるために使用できる内部 IP 範囲を VPC に割り振ります。
Cloud Build で VPC ネットワークを使用するには、接頭辞の長さを
/23
以下(/22
、/21
など)にする必要があります。これは、少なくともトリガーとワーカープールの両方に対応するためです。これは、各サービス接続が接頭辞長が/24
の IP 範囲の要求を試みるためです。STARTING_IP/SUBNET_PREFIX_SIZE
形式のクラスレス ドメイン間ルーティング(CIDR)ルーティング表記を使用して範囲を指定できます。たとえば、192.0.2.0/24
の接頭辞長は 24 です。IP 範囲の最初の 24 ビットがサブネット マスク(192.0.2.0
)として使用されますが、使用可能なホストアドレスの範囲は192.0.2.0
から192.0.2.255
です。VPC ネットワークと Google Cloud の間の VPC ネットワーク プライベート接続を確立します。詳細については、プライベート接続の作成をご覧ください。
Bitbucket Server インスタンスに DNS が構成されている場合は、DNS ゾーンをサービス プロバイダに手動でピアリングする必要があります。詳細については、プライベート DNS ゾーンをサービス プロデューサーと共有するをご覧ください。
(省略可)Cloud プロジェクトからプライベート接続を作成したくない場合は、共有 VPC を設定して、Cloud プロジェクトにそのネットワークを使用させることができます(プロジェクトが組織の一部である場合)。共有 VPC はネットワークとピアリングする必要があります。
プライベート プールを使用してビルドを実行します。プライベート プールを作成していない場合は、新しいプライベート プールを作成をご覧ください。
Bitbucket Server トリガーを作成して、Bitbucket Server インスタンスでホストされているリポジトリを作成します。
これで Bitbucket Server トリガーは、構成に基づいて Bitbucket Server インスタンス上でビルドを自動的に呼び出すようになりました。プライベート プールを使用してビルドを実行する方法については、プライベート プールでのビルドの実行をご覧ください。
次のステップ
- ビルドトリガーを作成および管理する方法を学習する。
- Compute Engine で Blue/Green デプロイを実行する方法を学習する。