fake-s3にlist objectsをする際の注意点



Page content


fake-s3にlist objectsしてもデータを取得できない

fake-s3にlist objectsをかけたところ、中身が空で取得してしまう事態が発生。しかしResponseMetadataを見ると、StatusCodeは200で成功しているように見える。

一つずつget itemすると登録は出来ていそうなので不思議に思っていたところ、以下のIssueを発見。

clientと異なるhostのfake-s3に対してlist objectsをかけると、うまく動作しないらしい。


解決策

hostをclientと合わせてやればよい。

自分はGitLab-CI環境だったため、aliasを切ってlocakhostを指定。

my_s3_test:
  services:
    - name: lphoward/fake-s3:14.04
      alias: localhost
  variables:
    S3_ENDPOINT: http:localhost:4569
  script:
    - aws s3 mb --endpoint-url $S3_ENDPOINT s3://my-bucket
    - cd s3 && pytest test ...

これで無事成功しました。



CodeCampGATE
CodeCampGATE