学習帳

WerckerでGAEにデプロイする手順

最終更新:


App Engineの設定ページへ移動

プロジェクト新規作成を行う。
ここで指定したID(プロジェクトID)はURLに使われる。

また、アプリケーションを新規作成する。
(リージョンの選択が必要)

モジュールのデプロイに先駆けてここまでの準備をしておく。

Google Could Platformに移動

APIの設定

API ManagerのページでApp Engine Admin APIを有効化する。

認証情報を設定

認証情報のページでサービスアカウントキーを発行する。
サービスアカウントのプルダウンで“App Engine――”を選択。
キーのタイプは「P12形式」で保存。

また、作成したサービスアカウントの名前を調べておく。
*****@appspot.gserviceaccount.comという部分。
これはあとでwercker.ymlに設定するのでメモしておく。

2018.1.18追記

現在はサービスアカウントの名前が任意に決められるようで、その場合は「XXXXXXXXXXX@YYYYYYYYYYYYYYYY.iam.gserviceaccount.com」のようになる。
XXXXXXXXXXXは任意で入力、YYYYYYYYYYYYYYYYはプロジェクトIDによって固定。
ただし、以下の説明は「*****@appspot.gserviceaccount.com」の場合で記載している。

Werckerに移動

アプリケーションを新規作成する。
リポジトリの直下に配したwercker.ymlに、以下のようなデプロイ情報を記入。

box: google/cloud-sdk
build:
    steps:
        - script:
            name: deploy to gae
            code: |-
                gcloud auth activate-service-account *****@appspot.gserviceaccount.com --key-file *****.p12 --project *****
                gcloud preview app deploy ./app.yaml --version 1

コード中の「サービスアカウント名」「p12キーファイル名」「プロジェクトID」は適宜変更すること。

以上で完了。
その後はWerkcerのCIジョブが動く毎に自動デプロイされる。

2018.1.18追記

現在はp12ファイルでは無くjson形式が推奨されている模様。
「gcloud preview app deploy」のコマンドは「gcloud app deploy」に改訂されている。
また、versionオプションは必須ではないことが分かった。
(ただしversionオプションを付けない場合15バージョンまでの制約に引っかかる?)

下記のように変更して、現時点で正しく動くことを確認済み。

box: google/cloud-sdk
build:
    steps:
        - script:
            name: deploy to gae
            code: |-
                gcloud auth activate-service-account *****@appspot.gserviceaccount.com --key-file *****.json --project *****
                gcloud app deploy ./app.yaml

デプロイ後の確認

http://*****.appspot.com/
にアクセスするとページを確認できる。



新着記事

  1. Excelで別ブックからの数式コピー時にセル名だけペースト
  2. 楽天カードとYahooカードのどちらをメインにするか検討中
  3. coincheckの本人確認用IDセルフィーを一人で撮るコツ

スポンサーリンク