s3cp 1.1.19 → 1.1.20
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/History.txt +18 -0
- data/lib/s3cp/s3cp.rb +5 -1
- data/lib/s3cp/s3mod.rb +5 -1
- data/lib/s3cp/s3stat.rb +1 -1
- data/lib/s3cp/s3up.rb +5 -1
- data/lib/s3cp/utils.rb +4 -2
- data/lib/s3cp/version.rb +1 -1
- metadata +7 -7
data/History.txt
CHANGED
@@ -1,3 +1,21 @@
|
|
1
|
+
=== 1.1.20 (2013-02-26)
|
2
|
+
|
3
|
+
* Added: "--header" command-line option to s3cp, s3up, s3mod.
|
4
|
+
|
5
|
+
This option allows passing individual headers including ones with
|
6
|
+
a comma in the value, e.g.:
|
7
|
+
|
8
|
+
s3cp --header 'Cache-Control: max-age=604800,must-revalidate'
|
9
|
+
|
10
|
+
That otherwise would have been interpreted as two headers by the
|
11
|
+
"--headers" option. You may use several "--header" arguments
|
12
|
+
if needed.
|
13
|
+
|
14
|
+
(Be warned that at the time of this writing, the 's3stat' command
|
15
|
+
does not display all headers/metadata on the S3 object. This is
|
16
|
+
a bug in the aws-sdk gem. You may use the AWS console to get an
|
17
|
+
accurate list of all object headers and metadata.)
|
18
|
+
|
1
19
|
=== 1.1.19 (2013-02-06)
|
2
20
|
|
3
21
|
* Fixed: Error in `s3lifecycle` if rule prefix is nil.
|
data/lib/s3cp/s3cp.rb
CHANGED
@@ -91,7 +91,11 @@ op = OptionParser.new do |opts|
|
|
91
91
|
opts.separator ""
|
92
92
|
|
93
93
|
opts.on('--headers \'Header1: Header1Value\',\'Header2: Header2Value\'', Array, "Headers to set on the item in S3." ) do |h|
|
94
|
-
options[:headers]
|
94
|
+
options[:headers] += h
|
95
|
+
end
|
96
|
+
|
97
|
+
opts.on('--header \'Header: Value\'', "Header to set on the item in S3." ) do |h|
|
98
|
+
options[:headers] += [h]
|
95
99
|
end
|
96
100
|
|
97
101
|
opts.on("--acl PERMISSION", "One of 'private', 'authenticated-read', 'public-read', 'public-read-write'") do |permission|
|
data/lib/s3cp/s3mod.rb
CHANGED
@@ -56,7 +56,11 @@ op = OptionParser.new do |opts|
|
|
56
56
|
end
|
57
57
|
|
58
58
|
opts.on('--headers \'Header1: Header1Value\',\'Header2: Header2Value\'', Array, "Headers to set on the item in S3." ) do |h|
|
59
|
-
options[:headers]
|
59
|
+
options[:headers] += h
|
60
|
+
end
|
61
|
+
|
62
|
+
opts.on('--header \'Header: Value\'', "Header to set on the item in S3." ) do |h|
|
63
|
+
options[:headers] += [h]
|
60
64
|
end
|
61
65
|
|
62
66
|
opts.on("--acl PERMISSION", "One of 'private', 'authenticated-read', 'public-read', 'public-read-write'") do |permission|
|
data/lib/s3cp/s3stat.rb
CHANGED
@@ -52,7 +52,7 @@ S3CP.load_config()
|
|
52
52
|
obj = @s3.objects[@key]
|
53
53
|
|
54
54
|
metadata = obj.head
|
55
|
-
metadata.keys.sort { |k1, k2| k1.to_s <=> k2.to_s}.each do |k|
|
55
|
+
metadata.to_h.keys.sort { |k1, k2| k1.to_s <=> k2.to_s}.each do |k|
|
56
56
|
puts "#{"%30s" % k} #{metadata[k].is_a?(Hash) ? metadata[k].inspect : metadata[k].to_s}"
|
57
57
|
end
|
58
58
|
|
data/lib/s3cp/s3up.rb
CHANGED
@@ -30,7 +30,11 @@ op = OptionParser.new do |opts|
|
|
30
30
|
opts.separator 'Uploads data from STDIN to S3.'
|
31
31
|
|
32
32
|
opts.on('--headers \'Header1: Header1Value\',\'Header2: Header2Value\'', Array, "Headers to set on the item in S3." ) do |h|
|
33
|
-
options[:headers]
|
33
|
+
options[:headers] += h
|
34
|
+
end
|
35
|
+
|
36
|
+
opts.on('--header \'Header: Value\'', "Header to set on the item in S3." ) do |h|
|
37
|
+
options[:headers] += [h]
|
34
38
|
end
|
35
39
|
|
36
40
|
opts.on("--acl PERMISSION", "One of 'private', 'authenticated-read', 'public-read', 'public-read-write'") do |permission|
|
data/lib/s3cp/utils.rb
CHANGED
@@ -83,7 +83,7 @@ module S3CP
|
|
83
83
|
header_array.each do |header|
|
84
84
|
header_parts = header.split(": ", 2)
|
85
85
|
if header_parts.size == 2
|
86
|
-
headers[header_parts[0]
|
86
|
+
headers[header_parts[0]] = header_parts[1]
|
87
87
|
else
|
88
88
|
fail("Invalid header value; expected single colon delimiter; e.g. Header: Value")
|
89
89
|
end
|
@@ -193,9 +193,11 @@ module S3CP
|
|
193
193
|
end
|
194
194
|
end
|
195
195
|
|
196
|
+
metadata = {}
|
196
197
|
remaining.each do |k,v|
|
197
|
-
|
198
|
+
metadata[k] = v
|
198
199
|
end
|
200
|
+
options[:metadata] = metadata if metadata
|
199
201
|
|
200
202
|
options
|
201
203
|
end
|
data/lib/s3cp/version.rb
CHANGED
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: s3cp
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 59
|
5
5
|
prerelease:
|
6
6
|
segments:
|
7
7
|
- 1
|
8
8
|
- 1
|
9
|
-
-
|
10
|
-
version: 1.1.
|
9
|
+
- 20
|
10
|
+
version: 1.1.20
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Alex Boisvert
|
@@ -15,7 +15,7 @@ autorequire:
|
|
15
15
|
bindir: bin
|
16
16
|
cert_chain: []
|
17
17
|
|
18
|
-
date: 2013-02-
|
18
|
+
date: 2013-02-27 00:00:00 Z
|
19
19
|
dependencies:
|
20
20
|
- !ruby/object:Gem::Dependency
|
21
21
|
version_requirements: &id001 !ruby/object:Gem::Requirement
|
@@ -54,12 +54,12 @@ dependencies:
|
|
54
54
|
requirements:
|
55
55
|
- - ~>
|
56
56
|
- !ruby/object:Gem::Version
|
57
|
-
hash:
|
57
|
+
hash: 49
|
58
58
|
segments:
|
59
59
|
- 1
|
60
60
|
- 8
|
61
|
-
-
|
62
|
-
version: 1.8.
|
61
|
+
- 3
|
62
|
+
version: 1.8.3
|
63
63
|
requirement: *id003
|
64
64
|
type: :runtime
|
65
65
|
prerelease: false
|