-
Notifications
You must be signed in to change notification settings - Fork 1
/
tests3tool.rb
executable file
·139 lines (113 loc) · 4.41 KB
/
tests3tool.rb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
#!/usr/bin/ruby
require "fileutils"
# TODO: real tests, check responses and detect failures
BUCKET_NAME = "s3cpp_testbucket"
$successes = 0
$failures = 0
FileUtils.mkdir("s3test")
FileUtils.cd("s3test")
FileUtils.ln_s("../s3tool", "s3tool")
def run(cmd)
puts cmd
system(cmd)
if($? == 0)
$successes += 1
puts "+++SUCCESS+++"
else
$failures += 1
puts "###FAILURE###"
end
end
puts "||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||"
puts "Installing in test directory"
puts "||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||"
run("./s3tool install")
puts ""
puts "||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||"
puts "Getting test image"
puts "||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||"
run("./s3get images.arklyffe.com spark.png")
puts ""
puts "||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||"
puts "Listing all buckets"
puts "||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||"
run("./s3ls")
puts ""
puts "||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||"
puts "Creating test bucket"
puts "||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||"
run("./s3mkbkt #{BUCKET_NAME}")
puts ""
puts "||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||"
puts "Putting spark.png"
puts "||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||"
run("./s3put #{BUCKET_NAME} spark.png")
puts ""
puts "||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||"
puts "Listing #{BUCKET_NAME}"
puts "||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||"
run("./s3ls #{BUCKET_NAME}")
puts ""
puts "||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||"
puts "Listing #{BUCKET_NAME} spark.png"
puts "||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||"
run("./s3ls #{BUCKET_NAME} spark.png")
puts ""
puts "||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||"
puts "Getting metadata for #{BUCKET_NAME} spark.png"
puts "||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||"
run("./s3getmeta #{BUCKET_NAME} spark.png")
puts ""
puts "||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||"
puts "Getting spark.png to localspark.png"
puts "||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||"
run("./s3get #{BUCKET_NAME} spark.png localspark.png")
puts ""
puts "||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||"
puts "Copying #{BUCKET_NAME}/spark.png to #{BUCKET_NAME}/sparkcopy.png"
puts "||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||"
run("./s3cp #{BUCKET_NAME} spark.png #{BUCKET_NAME} sparkcopy.png")
puts ""
puts "||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||"
puts "Moving #{BUCKET_NAME}/spark.png to #{BUCKET_NAME}/sparkoriginal.png"
puts "||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||"
run("./s3mv #{BUCKET_NAME} spark.png #{BUCKET_NAME} sparkoriginal.png")
puts ""
puts "||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||"
puts "Getting metadata for #{BUCKET_NAME} sparkoriginal.png"
puts "||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||"
run("./s3getmeta #{BUCKET_NAME} sparkoriginal.png")
puts ""
puts "||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||"
puts "Getting metadata for #{BUCKET_NAME} sparkcopy.png"
puts "||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||"
run("./s3getmeta #{BUCKET_NAME} sparkcopy.png")
# TODO:
# bucket to bucket move/copy
# Test permissions and metadata:
#TODO: s3put file -pPERM -tTYPE -mMETADATA
# s3putmeta
# move, copy with metadata override
# s3setbktacl
# s3setacl
# s3getacl
puts ""
puts "||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||"
puts "Removing objects"
puts "||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||"
run("./s3rm #{BUCKET_NAME} sparkoriginal.png")
run("./s3rm #{BUCKET_NAME} sparkcopy.png")
puts ""
puts "||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||"
puts "Removing bucket"
puts "||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||"
run("./s3rmbkt #{BUCKET_NAME}")
puts ""
puts "||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||"
puts "Listing all buckets"
puts "||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||"
run("./s3ls")
# rm s3test and contents
puts ""
puts ""
puts "#{$successes} successes, #{$failures} failures"