UGA Boxxx

つぶやきの延長のつもりで、知ったこと思ったこと書いてます

【Cloud Build】ローカルで実行して中間アーティファクトの中を確認する

以前、Cloud Buildを使ってzipファイルダウンロードして解凍のちGCSにアップロードすることを行った

uga-box.hatenablog.com

ただ、とあるzipファイルがunzip処理中に失敗してしまう

原因はダウンロードしたファイルにありそうなので、それを確かめるべくローカルでCloud Buildを実行してみることにした

やりかた

やりかたは公式ドキュメントにあるのでそちらを参考にする

cloud.google.com

前提

Docker の環境が必要

ローカル ビルダーをインストールする

gcloudコマンドのローカル ビルダーをインストールする

$ gcloud components install cloud-build-local

cloud-build.ymlを指定して実行する

$ cloud-build-local --config=cloud-build.yml --dryrun=false --no-source --write-workspace=./

このときのオプションとして

  • --dryrun=false
    いわゆるdryrunのオプションでdryrun= true で実行するとファイルチェックはされるがビルドコマンドは実行されない
    デフォルトtrueなので明示的にfalseにしてあげる

  • --no-source
    ビルドするソースコードがないので

  • --write-workspace=./ 今回の肝のオプションで、中間アーティファクトを保存する場合に指定する
    Cloud Buildはビルド中に、中間アーティファクトを workspace というディレクトリに配置するが、デフォルトではビルドの最後にワークスペースとその内容が削除されてしまうのでこのオプションで保存場所を指定しておく

まとめ

結果的にダウンロードには一度ログインが必要なサイトだった
Cloud Buildの中でどうやってログインさせるかは後日調査する