sdbcli 0.1.0 → 0.1.1
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/README +29 -22
- data/bin/sdbcli +28 -13
- data/lib/sdbcli/sdb-runner.rb +10 -2
- metadata +5 -5
data/README
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
|
3
3
|
== Description
|
4
4
|
|
5
|
-
sdbcli is command
|
5
|
+
sdbcli is interactive command-line client of Amazon SimpleDB.
|
6
6
|
|
7
7
|
== Source Code
|
8
8
|
|
@@ -19,30 +19,37 @@ https://bitbucket.org/winebarrel/sdbcli
|
|
19
19
|
== Example
|
20
20
|
|
21
21
|
ap-northeast-1> help
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
22
|
+
SHOW domains
|
23
|
+
displays a domain list
|
24
|
+
|
25
|
+
CREATE domain domain_name
|
26
|
+
creates a domain
|
27
|
+
|
28
|
+
DROP DOMAIN domain_name
|
29
|
+
deletes a domain
|
30
|
+
|
31
|
+
GET [output_list] FROM domain_name WHERE itemName = '...'
|
32
|
+
gets the attribute of an item
|
33
|
+
|
34
|
+
INSERT INTO domain_name (itemName, attr1, ...) values ('name', 'val1', ...)
|
35
|
+
creates an item
|
36
|
+
|
37
|
+
UPDATE domain_name set attr1 = 'val1', ... where itemName = '...'
|
38
|
+
updates an item
|
39
|
+
|
40
|
+
DELETE [attr1, ...] FROM domain_name itemName = '...'
|
41
|
+
deletes the attribute of an item or an item
|
42
|
+
|
43
|
+
SELECT output_list FROM domain_name [where expression] [sort_instructions] [limit limit]
|
44
|
+
queries using the SELECT statement
|
45
|
+
|
31
46
|
ap-northeast-1> select * from test
|
32
47
|
---
|
33
|
-
-
|
34
|
-
|
35
|
-
attr2: val2
|
36
|
-
- - itemname2
|
37
|
-
- attr1: val1
|
38
|
-
attr2: val2
|
48
|
+
- [itemname1, {attr1: val1, attr2: val2}]
|
49
|
+
- [itemname2, {attr1: val1, attr2: val2}]
|
39
50
|
|
40
51
|
shell> echo 'select * from test' | sdbcli
|
41
52
|
---
|
42
|
-
-
|
43
|
-
|
44
|
-
attr2: val2
|
45
|
-
- - itemname2
|
46
|
-
- attr1: val1
|
47
|
-
attr2: val2
|
53
|
+
- [itemname1, {attr1: val1, attr2: val2}]
|
54
|
+
- [itemname2, {attr1: val1, attr2: val2}]
|
48
55
|
|
data/bin/sdbcli
CHANGED
@@ -13,9 +13,9 @@ secret_access_key = ENV['AWS_SECRET_ACCESS_KEY']
|
|
13
13
|
sdb_endpoint = ENV['SDB_ENDPOINT'] || 'sdb.amazonaws.com'
|
14
14
|
|
15
15
|
ARGV.options do |opt|
|
16
|
-
opt.on('-k', '--access-key
|
17
|
-
opt.on('-s', '--secret-
|
18
|
-
opt.on('-e', '--endpoint=
|
16
|
+
opt.on('-k', '--access-key=ACCESS_KEY') {|v| access_key_id = v }
|
17
|
+
opt.on('-s', '--secret-key=SECRET_KEY') {|v| secret_access_key = v }
|
18
|
+
opt.on('-e', '--endpoint=ENDPOINT') {|v| sdb_endpoint = v }
|
19
19
|
opt.parse!
|
20
20
|
|
21
21
|
unless access_key_id and secret_access_key and sdb_endpoint
|
@@ -44,15 +44,30 @@ end
|
|
44
44
|
|
45
45
|
def help
|
46
46
|
<<-EOS
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
47
|
+
SHOW domains
|
48
|
+
displays a domain list
|
49
|
+
|
50
|
+
CREATE domain domain_name
|
51
|
+
creates a domain
|
52
|
+
|
53
|
+
DROP DOMAIN domain_name
|
54
|
+
deletes a domain
|
55
|
+
|
56
|
+
GET [output_list] FROM domain_name WHERE itemName = '...'
|
57
|
+
gets the attribute of an item
|
58
|
+
|
59
|
+
INSERT INTO domain_name (itemName, attr1, ...) values ('name', 'val1', ...)
|
60
|
+
creates an item
|
61
|
+
|
62
|
+
UPDATE domain_name set attr1 = 'val1', ... where itemName = '...'
|
63
|
+
updates an item
|
64
|
+
|
65
|
+
DELETE [attr1, ...] FROM domain_name itemName = '...'
|
66
|
+
deletes the attribute of an item or an item
|
67
|
+
|
68
|
+
SELECT output_list FROM domain_name [where expression] [sort_instructions] [limit limit]
|
69
|
+
queries using the SELECT statement
|
70
|
+
|
56
71
|
EOS
|
57
72
|
end
|
58
73
|
|
@@ -67,6 +82,6 @@ while buf = Readline.readline("#{region}> ", true)
|
|
67
82
|
execute(buf.sub(/;\Z/, ''))
|
68
83
|
end
|
69
84
|
rescue => e
|
70
|
-
puts e.message
|
85
|
+
puts e.message.strip
|
71
86
|
end
|
72
87
|
end
|
data/lib/sdbcli/sdb-runner.rb
CHANGED
@@ -23,7 +23,9 @@ module SimpleDB
|
|
23
23
|
|
24
24
|
case command
|
25
25
|
when :GET
|
26
|
-
@driver.get(parsed.domain, parsed.item_name, parsed.attr_names)
|
26
|
+
item = @driver.get(parsed.domain, parsed.item_name, parsed.attr_names)
|
27
|
+
def item.to_yaml_style; :inline; end
|
28
|
+
item
|
27
29
|
when :INSERT
|
28
30
|
@driver.insert(parsed.domain, parsed.item_name, parsed.attrs)
|
29
31
|
nil
|
@@ -34,7 +36,13 @@ module SimpleDB
|
|
34
36
|
@driver.delete(parsed.domain, parsed.items)
|
35
37
|
nil
|
36
38
|
when :SELECT
|
37
|
-
@driver.select(parsed.query)
|
39
|
+
items = @driver.select(parsed.query)
|
40
|
+
|
41
|
+
items.each do |item|
|
42
|
+
def item.to_yaml_style; :inline; end
|
43
|
+
end
|
44
|
+
|
45
|
+
items
|
38
46
|
when :CREATE
|
39
47
|
@driver.create_domain(parsed.domain)
|
40
48
|
nil
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sdbcli
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 25
|
5
5
|
prerelease:
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 1
|
9
|
-
-
|
10
|
-
version: 0.1.
|
9
|
+
- 1
|
10
|
+
version: 0.1.1
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- winebarrel
|
@@ -15,7 +15,7 @@ autorequire:
|
|
15
15
|
bindir: bin
|
16
16
|
cert_chain: []
|
17
17
|
|
18
|
-
date: 2012-01-
|
18
|
+
date: 2012-01-17 00:00:00 Z
|
19
19
|
dependencies:
|
20
20
|
- !ruby/object:Gem::Dependency
|
21
21
|
name: nokogiri
|
@@ -80,6 +80,6 @@ rubyforge_project:
|
|
80
80
|
rubygems_version: 1.8.11
|
81
81
|
signing_key:
|
82
82
|
specification_version: 3
|
83
|
-
summary: sdbcli is command
|
83
|
+
summary: sdbcli is interactive command-line client of Amazon SimpleDB.
|
84
84
|
test_files: []
|
85
85
|
|