aws s3 のファイルを圧縮しながらストリーミングでgcsに置く
背景
早い話が、gsutil の -z
オプションの挙動(静的ホスティングじゃないとき)がよくわからなかったから。
cp - Copy files and objects | Cloud Storage Documentation | Google Cloud
コマンド
aws s3 cp s3://your-s3-bucket/your-file.txt - | gzip -c | gsutil cp - gs://your-gs-bucket/your-file.txt.gz
ちなみにこういう場合、通信料金的には s3 が置いてあるリージョンのEC2の(マイクロ)インスタンスがおおすすめ。
注意
aws のプロファイルが一つじゃなく、.boto ファイルとかを頑張れ、-z
オプションの挙動に納得しているなら gsutil
だけでいけそう。
もっというと、複数同時に走らせたりとかも可能みたいなので、できる方はそちらで。