UGA Boxxx

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

【Cloud Build】zipファイル取得してGCSにアップロードする

定期的に業務提携先のサイトからzip圧縮されたcsvファイルをローカルにダウンロードし、解凍した上でそれをGCSにアップロードしている

ダウンロードしたzipファイルは150MBほどあり、解凍後のアップロードもつらいのでCloud Buildでこれを行うようにする

手順

  1. Cloud Build でzipファイルを取得
  2. zip ファイルを解凍
  3. 解凍したcsvファイルをGCSにアップロードする
steps:
  - name: 'appropriate/curl'
    args:
      - 'http://example.com/path/to/datafile.zip'
      - '-o'
      - 'datafile.zip'
    id: 'step_1'
    waitFor: ['-']

  - name: 'garthk/unzip'
    args:
      - 'datafile.zip'
    id: 'step_2'
    waitFor: ['step_1']

artifacts:
  objects:
    location: 'gs://$_BUCKET'
    paths: [
      'datafile.csv',
      ]