s3_website 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (101) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +5 -0
  3. data/.travis.yml +5 -0
  4. data/Gemfile +3 -0
  5. data/Gemfile.lock +81 -0
  6. data/LICENSE +42 -0
  7. data/README.md +332 -0
  8. data/Rakefile +18 -0
  9. data/bin/s3_website +38 -0
  10. data/changelog.md +7 -0
  11. data/example-configurations.md +60 -0
  12. data/features/as-library.feature +29 -0
  13. data/features/cassettes/cucumber_tags/create-redirect.yml +384 -0
  14. data/features/cassettes/cucumber_tags/new-and-changed-files.yml +303 -0
  15. data/features/cassettes/cucumber_tags/new-files-for-sydney.yml +211 -0
  16. data/features/cassettes/cucumber_tags/new-files.yml +355 -0
  17. data/features/cassettes/cucumber_tags/no-new-or-changed-files.yml +359 -0
  18. data/features/cassettes/cucumber_tags/one-file-to-delete.yml +390 -0
  19. data/features/cassettes/cucumber_tags/only-changed-files.yml +411 -0
  20. data/features/cassettes/cucumber_tags/s3-and-cloudfront-when-updating-a-file.yml +435 -0
  21. data/features/cassettes/cucumber_tags/s3-and-cloudfront.yml +290 -0
  22. data/features/cloudfront.feature +35 -0
  23. data/features/delete.feature +18 -0
  24. data/features/instructions-for-new-user.feature +94 -0
  25. data/features/redirects.feature +16 -0
  26. data/features/step_definitions/steps.rb +67 -0
  27. data/features/support/env.rb +26 -0
  28. data/features/support/test_site_dirs/cdn-powered.blog.fi/_site/css/styles.css +3 -0
  29. data/features/support/test_site_dirs/cdn-powered.blog.fi/_site/index.html +5 -0
  30. data/features/support/test_site_dirs/cdn-powered.blog.fi/s3_website.yml +4 -0
  31. data/features/support/test_site_dirs/cdn-powered.with-one-change.blog.fi/_site/css/styles.css +3 -0
  32. data/features/support/test_site_dirs/cdn-powered.with-one-change.blog.fi/_site/index.html +10 -0
  33. data/features/support/test_site_dirs/cdn-powered.with-one-change.blog.fi/s3_website.yml +4 -0
  34. data/features/support/test_site_dirs/create-redirects/_site/.gitkeep +0 -0
  35. data/features/support/test_site_dirs/create-redirects/s3_website.yml +6 -0
  36. data/features/support/test_site_dirs/index-and-assets.blog.fi/_site/assets/picture.gif +0 -0
  37. data/features/support/test_site_dirs/index-and-assets.blog.fi/_site/css/styles.css +3 -0
  38. data/features/support/test_site_dirs/index-and-assets.blog.fi/_site/index.html +5 -0
  39. data/features/support/test_site_dirs/index-and-assets.blog.fi/s3_website.yml +3 -0
  40. data/features/support/test_site_dirs/my.blog.com/_site/css/styles.css +3 -0
  41. data/features/support/test_site_dirs/my.blog.com/_site/index.html +5 -0
  42. data/features/support/test_site_dirs/my.blog.com/s3_website.yml +3 -0
  43. data/features/support/test_site_dirs/my.sydney.blog.au/_site/css/styles.css +3 -0
  44. data/features/support/test_site_dirs/my.sydney.blog.au/_site/index.html +5 -0
  45. data/features/support/test_site_dirs/my.sydney.blog.au/s3_website.yml +4 -0
  46. data/features/support/test_site_dirs/new-and-changed-files.com/_site/css/styles.css +4 -0
  47. data/features/support/test_site_dirs/new-and-changed-files.com/_site/index.html +8 -0
  48. data/features/support/test_site_dirs/new-and-changed-files.com/s3_website.yml +3 -0
  49. data/features/support/test_site_dirs/no-new-or-changed-files.com/_site/css/styles.css +3 -0
  50. data/features/support/test_site_dirs/no-new-or-changed-files.com/_site/index.html +5 -0
  51. data/features/support/test_site_dirs/no-new-or-changed-files.com/s3_website.yml +3 -0
  52. data/features/support/test_site_dirs/only-changed-files.com/_site/css/styles.css +3 -0
  53. data/features/support/test_site_dirs/only-changed-files.com/_site/index.html +9 -0
  54. data/features/support/test_site_dirs/only-changed-files.com/s3_website.yml +3 -0
  55. data/features/support/test_site_dirs/site.with.css-maxage.com/_site/css/styles.css +3 -0
  56. data/features/support/test_site_dirs/site.with.css-maxage.com/_site/index.html +5 -0
  57. data/features/support/test_site_dirs/site.with.css-maxage.com/s3_website.yml +5 -0
  58. data/features/support/test_site_dirs/site.with.gzipped-and-max-aged-content.com/_site/css/styles.css +3 -0
  59. data/features/support/test_site_dirs/site.with.gzipped-and-max-aged-content.com/_site/index.html +5 -0
  60. data/features/support/test_site_dirs/site.with.gzipped-and-max-aged-content.com/s3_website.yml +5 -0
  61. data/features/support/test_site_dirs/site.with.gzipped-html.com/_site/css/styles.css +3 -0
  62. data/features/support/test_site_dirs/site.with.gzipped-html.com/_site/index.html +5 -0
  63. data/features/support/test_site_dirs/site.with.gzipped-html.com/s3_website.yml +5 -0
  64. data/features/support/test_site_dirs/site.with.maxage.com/_site/css/styles.css +3 -0
  65. data/features/support/test_site_dirs/site.with.maxage.com/_site/index.html +5 -0
  66. data/features/support/test_site_dirs/site.with.maxage.com/s3_website.yml +4 -0
  67. data/features/support/test_site_dirs/unpublish-a-post.com/_site/css/styles.css +3 -0
  68. data/features/support/test_site_dirs/unpublish-a-post.com/s3_website.yml +3 -0
  69. data/features/support/vcr.rb +18 -0
  70. data/features/sync.feature +80 -0
  71. data/features/website-performance.feature +57 -0
  72. data/lib/cloudfront/invalidator.rb +22 -0
  73. data/lib/s3_website.rb +20 -0
  74. data/lib/s3_website/config_loader.rb +56 -0
  75. data/lib/s3_website/diff_helper.rb +21 -0
  76. data/lib/s3_website/endpoint.rb +30 -0
  77. data/lib/s3_website/errors.rb +28 -0
  78. data/lib/s3_website/keyboard.rb +27 -0
  79. data/lib/s3_website/parallelism.rb +18 -0
  80. data/lib/s3_website/retry.rb +19 -0
  81. data/lib/s3_website/tasks.rb +42 -0
  82. data/lib/s3_website/upload.rb +103 -0
  83. data/lib/s3_website/uploader.rb +160 -0
  84. data/s3-website.gemspec +39 -0
  85. data/spec/lib/config_loader_spec.rb +20 -0
  86. data/spec/lib/endpoint_spec.rb +27 -0
  87. data/spec/lib/keyboard_spec.rb +59 -0
  88. data/spec/lib/parallelism_spec.rb +43 -0
  89. data/spec/lib/retry_spec.rb +34 -0
  90. data/spec/lib/upload_spec.rb +205 -0
  91. data/spec/lib/uploader_spec.rb +30 -0
  92. data/spec/sample_files/hyde_site/_site/.vimrc +5 -0
  93. data/spec/sample_files/hyde_site/_site/css/styles.css +3 -0
  94. data/spec/sample_files/hyde_site/_site/index.html +1 -0
  95. data/spec/sample_files/hyde_site/s3_website.yml +3 -0
  96. data/spec/sample_files/tokyo_site/_site/.vimrc +5 -0
  97. data/spec/sample_files/tokyo_site/_site/css/styles.css +3 -0
  98. data/spec/sample_files/tokyo_site/_site/index.html +1 -0
  99. data/spec/sample_files/tokyo_site/s3_website.yml +4 -0
  100. data/spec/spec_helper.rb +1 -0
  101. metadata +416 -0
@@ -0,0 +1,303 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://s3.amazonaws.com/s3-website-test.net?max-keys=1000
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ Content-Type:
11
+ - ''
12
+ User-Agent:
13
+ - aws-sdk-ruby/1.8.5 ruby/1.9.3 x86_64-darwin11.4.0
14
+ Date:
15
+ - Thu, 14 Mar 2013 20:46:56 GMT
16
+ Authorization:
17
+ - AWS
18
+ Accept:
19
+ - ! '*/*'
20
+ response:
21
+ status:
22
+ code: 200
23
+ message: OK
24
+ headers:
25
+ X-Amz-Id-2:
26
+ - n/56IAnMZXp5psiUuGdl7DlXN6R0KhCJl+pCpnUDmbg+PG/fKFczZYzjy/79uYXA
27
+ X-Amz-Request-Id:
28
+ - E9087D44BE68DA77
29
+ Date:
30
+ - Thu, 14 Mar 2013 20:46:56 GMT
31
+ Content-Type:
32
+ - application/xml
33
+ Transfer-Encoding:
34
+ - chunked
35
+ Server:
36
+ - AmazonS3
37
+ body:
38
+ encoding: US-ASCII
39
+ string: ! '<?xml version="1.0" encoding="UTF-8"?>
40
+
41
+ <ListBucketResult xmlns="http://s3.amazonaws.com/doc/2006-03-01/"><Name>s3-website-test.net</Name><Prefix></Prefix><Marker></Marker><MaxKeys>1000</MaxKeys><IsTruncated>false</IsTruncated><Contents><Key>css/styles.css</Key><LastModified>2013-03-14T20:44:23.000Z</LastModified><ETag>&quot;5ac030ccfb37ddf75a62710f78d06155&quot;</ETag><Size>25</Size><Owner><ID>3855ebae0f370c3dd0c8d8031863792112bd2a2cb18fa310d3f463ae0dea62f1</ID><DisplayName>83</DisplayName></Owner><StorageClass>STANDARD</StorageClass></Contents></ListBucketResult>'
42
+ http_version:
43
+ recorded_at: Thu, 14 Mar 2013 20:46:57 GMT
44
+ - request:
45
+ method: head
46
+ uri: https://s3.amazonaws.com/s3-website-test.net/css/styles.css
47
+ body:
48
+ encoding: US-ASCII
49
+ string: ''
50
+ headers:
51
+ Content-Type:
52
+ - ''
53
+ User-Agent:
54
+ - aws-sdk-ruby/1.8.5 ruby/1.9.3 x86_64-darwin11.4.0
55
+ Date:
56
+ - Thu, 14 Mar 2013 20:46:57 GMT
57
+ Authorization:
58
+ - AWS
59
+ Accept:
60
+ - ! '*/*'
61
+ response:
62
+ status:
63
+ code: 200
64
+ message: OK
65
+ headers:
66
+ X-Amz-Id-2:
67
+ - iYQlU5I/tVdjqrBsRshlwuw1E53+ZHEkwwvtRtHcXQQY0AyMqDtTjnECGDAd7Huy
68
+ X-Amz-Request-Id:
69
+ - 2E522C37567E3709
70
+ Date:
71
+ - Thu, 14 Mar 2013 20:46:57 GMT
72
+ Last-Modified:
73
+ - Thu, 14 Mar 2013 20:44:23 GMT
74
+ Etag:
75
+ - ! '"5ac030ccfb37ddf75a62710f78d06155"'
76
+ Accept-Ranges:
77
+ - bytes
78
+ Content-Type:
79
+ - text/css
80
+ Content-Length:
81
+ - '25'
82
+ Server:
83
+ - AmazonS3
84
+ body:
85
+ encoding: US-ASCII
86
+ string: ''
87
+ http_version:
88
+ recorded_at: Thu, 14 Mar 2013 20:46:57 GMT
89
+ - request:
90
+ method: head
91
+ uri: https://s3.amazonaws.com/s3-website-test.net/css/styles.css
92
+ body:
93
+ encoding: US-ASCII
94
+ string: ''
95
+ headers:
96
+ Content-Type:
97
+ - ''
98
+ User-Agent:
99
+ - aws-sdk-ruby/1.8.5 ruby/1.9.3 x86_64-darwin11.4.0
100
+ Date:
101
+ - Thu, 14 Mar 2013 20:46:57 GMT
102
+ Authorization:
103
+ - AWS
104
+ Accept:
105
+ - ! '*/*'
106
+ response:
107
+ status:
108
+ code: 200
109
+ message: OK
110
+ headers:
111
+ X-Amz-Id-2:
112
+ - ShTpgPfA+nHqpgDFjV4/fmsjRFQrT6e9uIII/iaTIs2YhDPw0z5s99wr6IowJTaC
113
+ X-Amz-Request-Id:
114
+ - 9402166F4103E39B
115
+ Date:
116
+ - Thu, 14 Mar 2013 20:46:57 GMT
117
+ Last-Modified:
118
+ - Thu, 14 Mar 2013 20:44:23 GMT
119
+ Etag:
120
+ - ! '"5ac030ccfb37ddf75a62710f78d06155"'
121
+ Accept-Ranges:
122
+ - bytes
123
+ Content-Type:
124
+ - text/css
125
+ Content-Length:
126
+ - '25'
127
+ Server:
128
+ - AmazonS3
129
+ body:
130
+ encoding: US-ASCII
131
+ string: ''
132
+ http_version:
133
+ recorded_at: Thu, 14 Mar 2013 20:46:58 GMT
134
+ - request:
135
+ method: head
136
+ uri: https://s3.amazonaws.com/s3-website-test.net/css/styles.css
137
+ body:
138
+ encoding: US-ASCII
139
+ string: ''
140
+ headers:
141
+ Content-Type:
142
+ - ''
143
+ User-Agent:
144
+ - aws-sdk-ruby/1.8.5 ruby/1.9.3 x86_64-darwin11.4.0
145
+ Date:
146
+ - Thu, 14 Mar 2013 20:46:58 GMT
147
+ Authorization:
148
+ - AWS
149
+ Accept:
150
+ - ! '*/*'
151
+ response:
152
+ status:
153
+ code: 200
154
+ message: OK
155
+ headers:
156
+ X-Amz-Id-2:
157
+ - sksCU/tVxnSDBwPDuBWfupx9LmfEKkEl3++IGvXIg2HMzLTkgHk5962+riD4rof5
158
+ X-Amz-Request-Id:
159
+ - A70344D18078CD6A
160
+ Date:
161
+ - Thu, 14 Mar 2013 20:46:58 GMT
162
+ Last-Modified:
163
+ - Thu, 14 Mar 2013 20:44:23 GMT
164
+ Etag:
165
+ - ! '"5ac030ccfb37ddf75a62710f78d06155"'
166
+ Accept-Ranges:
167
+ - bytes
168
+ Content-Type:
169
+ - text/css
170
+ Content-Length:
171
+ - '25'
172
+ Server:
173
+ - AmazonS3
174
+ body:
175
+ encoding: US-ASCII
176
+ string: ''
177
+ http_version:
178
+ recorded_at: Thu, 14 Mar 2013 20:46:58 GMT
179
+ - request:
180
+ method: put
181
+ uri: https://s3.amazonaws.com/s3-website-test.net/css/styles.css
182
+ body:
183
+ encoding: UTF-8
184
+ string: ! "body {\n color: green;\n\n}\n"
185
+ headers:
186
+ Content-Type:
187
+ - text/css
188
+ Content-Length:
189
+ - '26'
190
+ User-Agent:
191
+ - aws-sdk-ruby/1.8.5 ruby/1.9.3 x86_64-darwin11.4.0
192
+ Date:
193
+ - Thu, 14 Mar 2013 20:46:58 GMT
194
+ Authorization:
195
+ - AWS
196
+ Accept:
197
+ - ! '*/*'
198
+ response:
199
+ status:
200
+ code: 200
201
+ message: OK
202
+ headers:
203
+ X-Amz-Id-2:
204
+ - 6MeyZ9uhPyxspkadeVRg1pAP77oN0RgIW5Cbv7fb63zwmH0MXPkXImdfBf70A3Ux
205
+ X-Amz-Request-Id:
206
+ - 4799B014EE88BBE2
207
+ Date:
208
+ - Thu, 14 Mar 2013 20:46:59 GMT
209
+ Etag:
210
+ - ! '"61ef54ea5b2672933f5a82b7805bd969"'
211
+ Content-Length:
212
+ - '0'
213
+ Server:
214
+ - AmazonS3
215
+ body:
216
+ encoding: US-ASCII
217
+ string: ''
218
+ http_version:
219
+ recorded_at: Thu, 14 Mar 2013 20:46:59 GMT
220
+ - request:
221
+ method: put
222
+ uri: https://s3.amazonaws.com/s3-website-test.net/index.html
223
+ body:
224
+ encoding: UTF-8
225
+ string: ! "<html>\n <head>\n <title>hello!</title>\n </head>\n <body>\n
226
+ \ i am a new blog post\n </body>\n</html>\n"
227
+ headers:
228
+ Content-Type:
229
+ - text/html; charset=utf-8
230
+ Content-Length:
231
+ - '104'
232
+ User-Agent:
233
+ - aws-sdk-ruby/1.8.5 ruby/1.9.3 x86_64-darwin11.4.0
234
+ Date:
235
+ - Thu, 14 Mar 2013 20:46:59 GMT
236
+ Authorization:
237
+ - AWS
238
+ Accept:
239
+ - ! '*/*'
240
+ response:
241
+ status:
242
+ code: 200
243
+ message: OK
244
+ headers:
245
+ X-Amz-Id-2:
246
+ - ryFVi8gsOUIbA7hCqRiQR6tvXmQs6hXGuN+l5OWDbjTOfdSyRGaoo3uJyjFIiWdM
247
+ X-Amz-Request-Id:
248
+ - 3E2511F1315ABE17
249
+ Date:
250
+ - Thu, 14 Mar 2013 20:46:59 GMT
251
+ Etag:
252
+ - ! '"84c3aea67581d0a7b28ea245e6cf4af7"'
253
+ Content-Length:
254
+ - '0'
255
+ Server:
256
+ - AmazonS3
257
+ body:
258
+ encoding: US-ASCII
259
+ string: ''
260
+ http_version:
261
+ recorded_at: Thu, 14 Mar 2013 20:47:00 GMT
262
+ - request:
263
+ method: get
264
+ uri: https://s3.amazonaws.com/s3-website-test.net?max-keys=1000
265
+ body:
266
+ encoding: US-ASCII
267
+ string: ''
268
+ headers:
269
+ Content-Type:
270
+ - ''
271
+ User-Agent:
272
+ - aws-sdk-ruby/1.8.5 ruby/1.9.3 x86_64-darwin11.4.0
273
+ Date:
274
+ - Thu, 14 Mar 2013 20:47:00 GMT
275
+ Authorization:
276
+ - AWS AKIAJDUL6Q4MU4XNQKDQ:eQkZJuEP2kkmkf1a+M1nmTLf8lw=
277
+ Accept:
278
+ - ! '*/*'
279
+ response:
280
+ status:
281
+ code: 200
282
+ message: OK
283
+ headers:
284
+ X-Amz-Id-2:
285
+ - Fb+UNlAgTcIVHWsuXClByNL2R/UMxq6tZciRgMbecrkrZBCiOoVIzH+89wwlR2+y
286
+ X-Amz-Request-Id:
287
+ - 979CB189DC3BDC8D
288
+ Date:
289
+ - Thu, 14 Mar 2013 20:47:00 GMT
290
+ Content-Type:
291
+ - application/xml
292
+ Transfer-Encoding:
293
+ - chunked
294
+ Server:
295
+ - AmazonS3
296
+ body:
297
+ encoding: US-ASCII
298
+ string: ! '<?xml version="1.0" encoding="UTF-8"?>
299
+
300
+ <ListBucketResult xmlns="http://s3.amazonaws.com/doc/2006-03-01/"><Name>s3-website-test.net</Name><Prefix></Prefix><Marker></Marker><MaxKeys>1000</MaxKeys><IsTruncated>false</IsTruncated><Contents><Key>css/styles.css</Key><LastModified>2013-03-14T20:46:59.000Z</LastModified><ETag>&quot;61ef54ea5b2672933f5a82b7805bd969&quot;</ETag><Size>26</Size><Owner><ID>3855ebae0f370c3dd0c8d8031863792112bd2a2cb18fa310d3f463ae0dea62f1</ID><DisplayName>83</DisplayName></Owner><StorageClass>STANDARD</StorageClass></Contents><Contents><Key>index.html</Key><LastModified>2013-03-14T20:46:59.000Z</LastModified><ETag>&quot;84c3aea67581d0a7b28ea245e6cf4af7&quot;</ETag><Size>104</Size><Owner><ID>3855ebae0f370c3dd0c8d8031863792112bd2a2cb18fa310d3f463ae0dea62f1</ID><DisplayName>83</DisplayName></Owner><StorageClass>STANDARD</StorageClass></Contents></ListBucketResult>'
301
+ http_version:
302
+ recorded_at: Thu, 14 Mar 2013 20:47:00 GMT
303
+ recorded_with: VCR 2.3.0
@@ -0,0 +1,211 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://s3-ap-southeast-2.amazonaws.com/
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ Content-Type:
11
+ - ''
12
+ User-Agent:
13
+ - aws-sdk-ruby/1.5.6 ruby/1.9.3 x86_64-darwin11.4.0
14
+ Date:
15
+ - Sun, 14 Oct 2012 16:40:24 +0300
16
+ Authorization:
17
+ - AWS foo:foo=
18
+ Accept:
19
+ - ! '*/*'
20
+ response:
21
+ status:
22
+ code: 200
23
+ message: OK
24
+ headers:
25
+ X-Amz-Id-2:
26
+ - oPO1kjdvRumCNZHfhZaWYgyeqf1rszjLU6Yv5VmeJlagrp0L7xDlja33A3NEB+lF
27
+ X-Amz-Request-Id:
28
+ - 0ADF25683FCFEA3B
29
+ Date:
30
+ - Sun, 14 Oct 2012 13:40:27 GMT
31
+ Content-Type:
32
+ - application/xml
33
+ Transfer-Encoding:
34
+ - chunked
35
+ Server:
36
+ - AmazonS3
37
+ body:
38
+ encoding: US-ASCII
39
+ string: ! '<?xml version="1.0" encoding="UTF-8"?>
40
+
41
+ <ListAllMyBucketsResult xmlns="http://s3.amazonaws.com/doc/2006-03-01/"><Owner><ID>x</ID><DisplayName>x</DisplayName></Owner><Buckets><Bucket><Name>s3-website-test.net</Name><CreationDate>2012-10-14T12:58:37.000Z</CreationDate></Bucket></Buckets></ListAllMyBucketsResult>'
42
+ http_version:
43
+ recorded_at: Sun, 14 Oct 2012 13:40:25 GMT
44
+ - request:
45
+ method: get
46
+ uri: https://s3-ap-southeast-2.amazonaws.com/s3-website-test.net?max-keys=1000
47
+ body:
48
+ encoding: US-ASCII
49
+ string: ''
50
+ headers:
51
+ Content-Type:
52
+ - ''
53
+ User-Agent:
54
+ - aws-sdk-ruby/1.5.6 ruby/1.9.3 x86_64-darwin11.4.0
55
+ Date:
56
+ - Sun, 14 Oct 2012 16:40:25 +0300
57
+ Authorization:
58
+ - AWS foo:foo=
59
+ Accept:
60
+ - ! '*/*'
61
+ response:
62
+ status:
63
+ code: 200
64
+ message: OK
65
+ headers:
66
+ X-Amz-Id-2:
67
+ - QTSymXMQalg5cw/APPEwt9g6sYMDXbxW0Aaps1zAQ0u/4SwrvkOeNt3jKm54/VMM
68
+ X-Amz-Request-Id:
69
+ - AA208FECCB1E85EE
70
+ Date:
71
+ - Sun, 14 Oct 2012 13:40:27 GMT
72
+ Content-Type:
73
+ - application/xml
74
+ Transfer-Encoding:
75
+ - chunked
76
+ Server:
77
+ - AmazonS3
78
+ body:
79
+ encoding: US-ASCII
80
+ string: ! '<?xml version="1.0" encoding="UTF-8"?>
81
+
82
+ <ListBucketResult xmlns="http://s3.amazonaws.com/doc/2006-03-01/"><Name>s3-website-test.net</Name><Prefix></Prefix><Marker></Marker><MaxKeys>1000</MaxKeys><IsTruncated>false</IsTruncated></ListBucketResult>'
83
+ http_version:
84
+ recorded_at: Sun, 14 Oct 2012 13:40:26 GMT
85
+ - request:
86
+ method: put
87
+ uri: https://s3-ap-southeast-2.amazonaws.com/s3-website-test.net/css/styles.css
88
+ body:
89
+ encoding: ASCII-8BIT
90
+ string: !binary |-
91
+ Ym9keSB7Cgp9Cg==
92
+ headers:
93
+ Content-Type:
94
+ - ''
95
+ Content-Length:
96
+ - '10'
97
+ User-Agent:
98
+ - aws-sdk-ruby/1.5.6 ruby/1.9.3 x86_64-darwin11.4.0
99
+ Date:
100
+ - Sun, 14 Oct 2012 16:40:26 +0300
101
+ Authorization:
102
+ - AWS foo:foo=
103
+ Accept:
104
+ - ! '*/*'
105
+ response:
106
+ status:
107
+ code: 200
108
+ message: OK
109
+ headers:
110
+ X-Amz-Id-2:
111
+ - xhRbNnKb3BflLa4OrGe9qeM2gSadOHcnWNdpqaMwEYL909QAoBkaUTJZGqcYABhq
112
+ X-Amz-Request-Id:
113
+ - E5428005DF85FB78
114
+ Date:
115
+ - Sun, 14 Oct 2012 13:40:28 GMT
116
+ Etag:
117
+ - ! '"8fcf43a38cbf0c502f029a50645f2374"'
118
+ Content-Length:
119
+ - '0'
120
+ Server:
121
+ - AmazonS3
122
+ body:
123
+ encoding: US-ASCII
124
+ string: ''
125
+ http_version:
126
+ recorded_at: Sun, 14 Oct 2012 13:40:26 GMT
127
+ - request:
128
+ method: put
129
+ uri: https://s3-ap-southeast-2.amazonaws.com/s3-website-test.net/index.html
130
+ body:
131
+ encoding: ASCII-8BIT
132
+ string: !binary |-
133
+ PGh0bWw+CiAgPGhlYWQ+CiAgICA8dGl0bGU+aGVsbG8hPC90aXRsZT4KICA8
134
+ L2hlYWQ+CjwvaHRtbD4K
135
+ headers:
136
+ Content-Type:
137
+ - ''
138
+ Content-Length:
139
+ - '60'
140
+ User-Agent:
141
+ - aws-sdk-ruby/1.5.6 ruby/1.9.3 x86_64-darwin11.4.0
142
+ Date:
143
+ - Sun, 14 Oct 2012 16:40:26 +0300
144
+ Authorization:
145
+ - AWS foo:foo=
146
+ Accept:
147
+ - ! '*/*'
148
+ response:
149
+ status:
150
+ code: 200
151
+ message: OK
152
+ headers:
153
+ X-Amz-Id-2:
154
+ - /qDHDvVyWt95mWDmaswN75KKtnBPN2ISIlgdBOFSvWyy/Ovva2u8SMDd4aQJSoVj
155
+ X-Amz-Request-Id:
156
+ - EDC7726801AA0AE2
157
+ Date:
158
+ - Sun, 14 Oct 2012 13:40:29 GMT
159
+ Etag:
160
+ - ! '"8a8892a2b0fad281f26c0dedbff7011a"'
161
+ Content-Length:
162
+ - '0'
163
+ Server:
164
+ - AmazonS3
165
+ body:
166
+ encoding: US-ASCII
167
+ string: ''
168
+ http_version:
169
+ recorded_at: Sun, 14 Oct 2012 13:40:27 GMT
170
+ - request:
171
+ method: get
172
+ uri: https://s3-ap-southeast-2.amazonaws.com/s3-website-test.net?max-keys=1000
173
+ body:
174
+ encoding: US-ASCII
175
+ string: ''
176
+ headers:
177
+ Content-Type:
178
+ - ''
179
+ User-Agent:
180
+ - aws-sdk-ruby/1.5.6 ruby/1.9.3 x86_64-darwin11.4.0
181
+ Date:
182
+ - Sun, 14 Oct 2012 16:40:27 +0300
183
+ Authorization:
184
+ - AWS foo:foo
185
+ Accept:
186
+ - ! '*/*'
187
+ response:
188
+ status:
189
+ code: 200
190
+ message: OK
191
+ headers:
192
+ X-Amz-Id-2:
193
+ - ZIix7PUbt+Kpmb1wbV5hYk4fPyZYjj9doj54LQAQjsXqskA7Yk442vj47FeoD6sC
194
+ X-Amz-Request-Id:
195
+ - 62CBD66CCEB953BA
196
+ Date:
197
+ - Sun, 14 Oct 2012 13:40:29 GMT
198
+ Content-Type:
199
+ - application/xml
200
+ Transfer-Encoding:
201
+ - chunked
202
+ Server:
203
+ - AmazonS3
204
+ body:
205
+ encoding: US-ASCII
206
+ string: ! '<?xml version="1.0" encoding="UTF-8"?>
207
+
208
+ <ListBucketResult xmlns="http://s3.amazonaws.com/doc/2006-03-01/"><Name>s3-website-test.net</Name><Prefix></Prefix><Marker></Marker><MaxKeys>1000</MaxKeys><IsTruncated>false</IsTruncated><Contents><Key>css/styles.css</Key><LastModified>2012-10-14T13:40:28.000Z</LastModified><ETag>&quot;8fcf43a38cbf0c502f029a50645f2374&quot;</ETag><Size>10</Size><Owner><ID>3855ebae0f370c3dd0c8d8031863792112bd2a2cb18fa310d3f463ae0dea62f1</ID><DisplayName>fluid83</DisplayName></Owner><StorageClass>STANDARD</StorageClass></Contents><Contents><Key>index.html</Key><LastModified>2012-10-14T13:40:29.000Z</LastModified><ETag>&quot;8a8892a2b0fad281f26c0dedbff7011a&quot;</ETag><Size>60</Size><Owner><ID>3855ebae0f370c3dd0c8d8031863792112bd2a2cb18fa310d3f463ae0dea62f1</ID><DisplayName>fluid83</DisplayName></Owner><StorageClass>STANDARD</StorageClass></Contents></ListBucketResult>'
209
+ http_version:
210
+ recorded_at: Sun, 14 Oct 2012 13:40:28 GMT
211
+ recorded_with: VCR 2.2.4