Bitbucket is getting a new navigation

We’re rolling out these changes, so the documentation may not match your experience in the Bitbucket Cloud app. Read about the new Bitbucket navigation

Google Cloud にデプロイする

始める前に

手順

  1. Clone the Google App Engine example repository.

  2. Create a Google service account key. For more guidance see Google's guide to creating service keys.

  3. キー ファイルを取得したら、ターミナルを開き、キー ファイルの場所を参照します。

  4. ファイルを base64 形式でエンコードし、コマンドの出力をコピーします。注: MacOS の一部のバージョンでは、-w 0 は不要です。

    base64 -w 0 <your-key-file>
  5. リポジトリで [リポジトリの設定] に移動し、[パイプライン] の [リポジトリ変数] を選択してから、KEY_FILE という名前の新しい変数を作成し、エンコードされたサービス アカウントの資格情報を貼り付けます。

  6. パイプを構成し、PROJECT および KEY_FILE の変数を追加します。

変数の一覧

PROJECT (*): デプロイするアプリケーションを所有するプロジェクト。 

KEY_FILE (*): base64 encoded Key file for a Google service account.

DEPLOYABLES: gcloud に渡されるスペース区切りの yaml ファイルの一覧。既定: ""。空のままにすると、現在のディレクトリの app.yaml が使用されます。

VERSION: 作成 / 置換されるアプリのバージョン。

BUCKET: デプロイメントに関連付けられたファイルを保存する Google クラウド ストレージ バケット。

IMAGE: 特定の GCR docker イメージでデプロイします。

PROMOTE: true の場合、デプロイされたバージョンはすべてのトラフィックを受信し、false の場合はトラフィックを受信しません。

STOP_PREVIOUS_VERSION: true の場合、トラフィックを受信している以前のバージョンは停止し、false の場合は以前のバージョンは停止しません。

EXTRA_ARGS: Extra arguments to be passed to the CLI (see Google app deploy docs for more details).

DEBUG: 追加のデバッグ情報を有効化します。既定: false

(*) = 必須の変数。

エンド ツー エンドの例

image: node:10.15.1 pipelines: default: - step: name: Build and Test script: - npm install - npm test - step: name: Deploy script: - pipe: atlassian/google-app-engine-deploy:1.7.0 variables: KEY_FILE: $KEY_FILE PROJECT: 'my-project'

高度な例

複数の deployable をデプロイ

script: - pipe: atlassian/google-app-engine-deploy:1.7.0 variables: KEY_FILE: $KEY_FILE PROJECT: 'my-project' DEPLOYABLES: 'app-1.yaml app-2.yaml' VERSION: 'alpha' BUCKET: 'gs://my-bucket' IMAGE: 'gcr.io/my/image' PROMOTE: 'true' STOP_PREVIOUS_VERSION: 'true' EXTRA_ARGS: '--verbosity=debug'

Python アプリを gcloud にデプロイ

script: - pipe: atlassian/google-app-engine-deploy:1.7.0 variables: KEY_FILE: $KEY_FILE_PYTHON_APP PROJECT: 'pipes-example-python3-app' DEPLOYABLES: 'hello_world/app.yaml' VERSION: '${BITBUCKET_BUILD_NUMBER}' PROMOTE: 'true' STOP_PREVIOUS_VERSION: 'true' EXTRA_ARGS: '--verbosity=debug --quiet'

Maven で Spring Boot ベースの Java アプリ ビルドをデプロイ app.yaml gcloud にデプロイ

script: - pipe: atlassian/google-app-engine-deploy:1.7.0 variables: KEY_FILE: $KEY_FILE PROJECT: 'pipes-java-maven-spring-boot' DEPLOYABLES: 'target/appengine-staging/app.yaml' VERSION: '${BITBUCKET_BUILD_NUMBER}' EXTRA_ARGS: '--verbosity=debug'

Gradle で Spring Boot ベースの Java アプリ ビルドをデプロイ app.yaml gcloud にデプロイ

script: - pipe: atlassian/google-app-engine-deploy:1.7.0 variables: KEY_FILE: $KEY_FILE PROJECT: 'pipes-java-gradle-spring-boot' DEPLOYABLES: 'build/staged-app/app.yaml' # DEPLOYABLES: 'src/main/WEB-INF/appengine-web.xml' # or you can provide web.xml VERSION: '${BITBUCKET_BUILD_NUMBER}' EXTRA_ARGS: '--verbosity=debug'

Gradle で Spring Boot ベースの Java アプリ ビルドをデプロイ WEB-INF/appengine-web.xml gcloud にデプロイ

script: - pipe: atlassian/google-app-engine-deploy:1.7.0 variables: KEY_FILE: $KEY_FILE PROJECT: 'pipes-java-gradle-spring-boot' DEPLOYABLES: 'src/main/WEB-INF/appengine-web.xml' VERSION: '${BITBUCKET_BUILD_NUMBER}' EXTRA_ARGS: '--verbosity=debug'

Maven で標準 Java アプリ ビルドをデプロイ app.yaml gcloud にデプロイ

script: - pipe: atlassian/google-app-engine-deploy:1.7.0 variables: KEY_FILE: $KEY_FILE PROJECT: 'pipes-example-java-app-maven' DEPLOYABLES: 'target/appengine-staging/app.yaml' VERSION: '${BITBUCKET_BUILD_NUMBER}' PROMOTE: 'true' STOP_PREVIOUS_VERSION: 'true' EXTRA_ARGS: '--verbosity=debug'

Maven で標準 Java アプリ ビルドをデプロイ WEB-INF/appengine-web.xml gcloud にデプロイ

script: - pipe: atlassian/google-app-engine-deploy:1.7.0 variables: KEY_FILE: $KEY_FILE PROJECT: 'pipes-example-java-app-maven' DEPLOYABLES: 'target/appengine-staging/WEB-INF/appengine-web.xml' VERSION: '${BITBUCKET_BUILD_NUMBER}' PROMOTE: 'true' STOP_PREVIOUS_VERSION: 'true' EXTRA_ARGS: '--verbosity=debug'

Gradle で標準 Java アプリ ビルドをデプロイ WEB-INF/appengine-web.xml gcloud にデプロイ

script: - pipe: atlassian/google-app-engine-deploy:1.7.0 variables: KEY_FILE: $KEY_FILE PROJECT: 'pipes-example-java-app-gradle' DEPLOYABLES: 'build/exploded-helloworld/WEB-INF/appengine-web.xml' VERSION: '${BITBUCKET_BUILD_NUMBER}' PROMOTE: 'true' STOP_PREVIOUS_VERSION: 'true' EXTRA_ARGS: '--verbosity=debug'

Gradle で標準 Java アプリ ビルドをデプロイ app.yaml gcloud にデプロイ

script: - pipe: atlassian/google-app-engine-deploy:1.7.0 variables: KEY_FILE: $KEY_FILE PROJECT: 'pipes-example-java-app-gradle' DEPLOYABLES: 'build/staged-app/app.yaml' VERSION: '${BITBUCKET_BUILD_NUMBER}' PROMOTE: 'true' STOP_PREVIOUS_VERSION: 'true' EXTRA_ARGS: '--verbosity=debug'

 

さらにヘルプが必要ですか?

アトラシアン コミュニティをご利用ください。