gsutil で GCSから S3 にコピーしようとしたらハマった話

gsutilでハマった話。

gsutilはGCSのみならずS3も扱えると聞いていたので、GCSからS3へのコピーに使おうと。 しかしデフォルトではうまくいきませんでした。
ハマりました。

ハマりポイント

バケット名にドット(ピリオド)を含む場合
ズバリこれですね。

回避方法

いきなりですが回避方法です。(原因は気が向いたら書きます。)

gsutil config で作成される^/.botoファイルに下記を書きましょう。
s3_host は 下記を見て指定しましょう
ちなみに東京リージョンは「s3.ap-northeast-1.amazonaws.com」です

[Credentials]
aws_access_key_id = <Your Access Key Id>
aws_secret_access_key = <Your Secret Access Key>
s3_host = <Your S3 Hostname>

[s3]
calling_format = boto.s3.connection.OrdinaryCallingFormat

[s3] セクションはデフォルトでは記載がないのですが、ちゃんと使ってくれるみたいです。
複数のs3 ホストを使用する場合は都度.botoを切り替えるか、おとなしくaws cli を使用しましょう。

コメント

このブログの人気の投稿

gzipの--rsyncableについて調べた