cifrado 0.1.1 → 0.1.2
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.
- checksums.yaml +7 -0
- checksums.yaml.gz.sig +0 -0
- data.tar.gz.sig +0 -0
- data/CHANGELOG.md +18 -0
- data/README.md +31 -2
- data/TODO.md +4 -2
- data/lib/cifrado/cli.rb +12 -1
- data/lib/cifrado/cli/setup.rb +3 -1
- data/lib/cifrado/streaming_uploader.rb +0 -14
- data/lib/cifrado/version.rb +1 -1
- data/tests/cli/upload_multi_tests.rb +1 -1
- data/tests/cli/upload_tests.rb +1 -1
- metadata +47 -73
- metadata.gz.sig +0 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 8a5a0c02f4d962d3ae89d56e154d44c16dab7348
|
4
|
+
data.tar.gz: 691d6fe9a5b52577dcb7050d90a82acea095423d
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: dfe0187897d4e05c9af29dbffb9db76631e331872fdcf42a1f6df466ca63652e0406c3cadcad1f30e360be0ee620d8955cf55e953fc71d658e5cb674deb5e0d1
|
7
|
+
data.tar.gz: c8a0fbe0bc4c26734f99513c66256202235dd45a8bd3081e3ca7d1ac8100cc1071d81ce1ecf7c7f3455c219ab73f78c11087a777600206fc9d6f62daebc2ab4a
|
checksums.yaml.gz.sig
ADDED
Binary file
|
data.tar.gz.sig
CHANGED
Binary file
|
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,21 @@
|
|
1
|
+
# Cifrado 0.1.2 - Mon 04 Mar 2013
|
2
|
+
|
3
|
+
* Added Rackspace Cloud Files support
|
4
|
+
To use Rackspace Cloud Files, run 'setup' and provide the following
|
5
|
+
details when asked:
|
6
|
+
|
7
|
+
username: <your Rackspace username>
|
8
|
+
password: <your Rackspace password> # NOT THE API KEY!
|
9
|
+
|
10
|
+
For US accounts, the auth URL is:
|
11
|
+
|
12
|
+
https://identity.api.rackspacecloud.com/v2.0/tokens
|
13
|
+
|
14
|
+
For UK accounts:
|
15
|
+
|
16
|
+
https://lon.identity.api.rackspacecloud.com/v2.0/tokens
|
17
|
+
|
18
|
+
|
1
19
|
# Cifrado 0.1.1 - Sun 03 Mar 2013
|
2
20
|
|
3
21
|
* saio command improvements
|
data/README.md
CHANGED
@@ -6,7 +6,13 @@ The current Cifrado release is experimental. Use at your own risk.
|
|
6
6
|
|
7
7
|
OpenStack Swift CLI with built in (GPG) encryption.
|
8
8
|
|
9
|
-
|
9
|
+
There's an **ongoing** effort to document Cifrado in the Wiki. Additional details such as
|
10
|
+
documentation to bootstrap your own Swift All-In-One server with Cifrado and the demo
|
11
|
+
server available are documented there.
|
12
|
+
|
13
|
+
See [Cifrado Demo Server](https://github.com/rubiojr/cifrado/wiki/Cifrado-Demo-Server) and [Cifrado SAIO Bootstrap](https://github.com/rubiojr/cifrado/wiki/Cifrado-SAIO-bootstrap).
|
14
|
+
|
15
|
+
## Features available in Cifrado 0.1.2
|
10
16
|
|
11
17
|
* Uploading/downloading files and directories to/from OpenStack Swift.
|
12
18
|
* Regular list/delete/stat commands to manipulate objects and containers.
|
@@ -23,6 +29,7 @@ OpenStack Swift CLI with built in (GPG) encryption.
|
|
23
29
|
* Video streaming (streams video files available in a container).
|
24
30
|
* Bootstrap a Swift All-In-One server in a cloud provider
|
25
31
|
(DigitalOcean is the only one supported ATM).
|
32
|
+
* Rackspace Cloud Files support (documentation available in the wiki).
|
26
33
|
* Ruby 1.8.7, 1.9.X and 2.0 compatibility.
|
27
34
|
|
28
35
|
Cifrado has a built-in help command:
|
@@ -68,7 +75,7 @@ To add the PPA and install the packages, open a terminal and type:
|
|
68
75
|
```
|
69
76
|
sudo add-apt-repository ppa:rubiojr/cifrado
|
70
77
|
sudo apt-get update
|
71
|
-
sudo apt-get install cifrado
|
78
|
+
sudo apt-get install cifrado mplayer --no-install-recommends
|
72
79
|
```
|
73
80
|
|
74
81
|
You'll also need GnuPG and MPlayer installed if you want to have
|
@@ -178,6 +185,28 @@ test container, download it like any other regular object.
|
|
178
185
|
|
179
186
|
#### Downloading files
|
180
187
|
|
188
|
+
Downloading a file
|
189
|
+
|
190
|
+
```
|
191
|
+
$ cifrado download my-container my-object
|
192
|
+
```
|
193
|
+
|
194
|
+
Will download my-object from my-container to the current directory.
|
195
|
+
If you want to download the file to another directory:
|
196
|
+
|
197
|
+
```
|
198
|
+
$ cifrado download my-container my-object --output /tmp
|
199
|
+
```
|
200
|
+
|
201
|
+
You can also download all the files available in a container:
|
202
|
+
|
203
|
+
```
|
204
|
+
$cifrado download my-container --output /tmp/mycontainer
|
205
|
+
```
|
206
|
+
|
207
|
+
This will download all the files in 'my-container' container
|
208
|
+
to /tmp/mycontainer.
|
209
|
+
|
181
210
|
#### Encryption support
|
182
211
|
|
183
212
|
**Symmetric Encryption**
|
data/TODO.md
CHANGED
@@ -1,6 +1,8 @@
|
|
1
1
|
* Cifrado::CLI needs heavy refactoring
|
2
|
-
* Graceful exits (i.e. when hitting Ctrl-C)
|
3
2
|
* Uploads with progressbar are very inefficient under ruby 1.8
|
4
3
|
(1.9 is slightly better)
|
5
4
|
* High CPU utilisation when uplading at high speed
|
6
|
-
*
|
5
|
+
* Object/Container copy: https://answers.launchpad.net/swift/+question/154210
|
6
|
+
* Additional providers for cifrado saio (OpenStack, Rackspace)
|
7
|
+
* Rackspace, Dreamhost Objects, HP support
|
8
|
+
* Plugin API, pluggin support
|
data/lib/cifrado/cli.rb
CHANGED
@@ -80,13 +80,24 @@ module Cifrado
|
|
80
80
|
config[:tenant] = options[:tenant] || config[:tenant]
|
81
81
|
config[:region] = options[:region] || config[:region]
|
82
82
|
config[:secure_random] = config[:secure_random]
|
83
|
-
[:username, :password, :auth_url
|
83
|
+
[:username, :password, :auth_url].each do |opt|
|
84
84
|
if config[opt].nil?
|
85
85
|
Log.error "#{opt.to_s.capitalize} not provided."
|
86
86
|
Log.error "Use --#{opt.to_s.gsub('_', '-')} option or run 'cifrado setup' first."
|
87
87
|
raise "Missing setting"
|
88
88
|
end
|
89
89
|
end
|
90
|
+
|
91
|
+
if (config[:auth_url] !~ /rackspacecloud\.com/) and config[:tenant].nil?
|
92
|
+
Log.error "tenant not provided."
|
93
|
+
Log.error "Use --tenant option or run 'cifrado setup' first."
|
94
|
+
raise "Missing tenant"
|
95
|
+
else
|
96
|
+
# Make sure tenant is nil for Rackspace
|
97
|
+
# otherwise we get a service catalog without cloudFiles endpoints
|
98
|
+
config[:tenant] = nil
|
99
|
+
end
|
100
|
+
|
90
101
|
unless config[:secure_random]
|
91
102
|
raise Exception.new("secure_random key not found in #{config_file}")
|
92
103
|
end
|
data/lib/cifrado/cli/setup.rb
CHANGED
@@ -27,12 +27,14 @@ module Cifrado
|
|
27
27
|
puts "The settings (password included) are saved unencrypted."
|
28
28
|
puts
|
29
29
|
config[:username] = ask(set_color('Username:', :bold))
|
30
|
-
config[:tenant] = ask(set_color('Tenant:', :bold))
|
31
30
|
system 'stty -echo'
|
32
31
|
config[:password] = ask(set_color 'Password:', :bold)
|
33
32
|
system 'stty echo'
|
34
33
|
puts
|
35
34
|
config[:auth_url] = ask(set_color 'Auth URL:', :bold)
|
35
|
+
if config[:auth_url] !~ /rackspacecloud\.com/
|
36
|
+
config[:tenant] = ask(set_color('Tenant:', :bold))
|
37
|
+
end
|
36
38
|
|
37
39
|
if !config[:secure_random]
|
38
40
|
# shit happens
|
@@ -1,19 +1,5 @@
|
|
1
1
|
module Cifrado
|
2
2
|
|
3
|
-
# StreamingUploader Adapted by Sergio Rubio <rubiojr@frameos.org>
|
4
|
-
#
|
5
|
-
# inspired by Opscode Chef StreamingCookbookUploader chef/streaming_cookbook_uploader.rb
|
6
|
-
# http://opscode.com
|
7
|
-
#
|
8
|
-
# inspired by/cargo-culted from http://stanislavvitvitskiy.blogspot.com/2008/12/multipart-post-in-ruby.html
|
9
|
-
# On Apr 6, 2010, at 3:00 PM, Stanislav Vitvitskiy wrote:
|
10
|
-
#
|
11
|
-
# It's free to use / modify / distribute. No need to mention anything. Just copy/paste and use.
|
12
|
-
#
|
13
|
-
# Regards,
|
14
|
-
# Stan
|
15
|
-
|
16
|
-
|
17
3
|
require 'net/http'
|
18
4
|
require 'net/https'
|
19
5
|
require 'cifrado/rate_limit'
|
data/lib/cifrado/version.rb
CHANGED
data/tests/cli/upload_tests.rb
CHANGED
metadata
CHANGED
@@ -1,186 +1,160 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cifrado
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
5
|
-
prerelease:
|
4
|
+
version: 0.1.2
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- Sergio Rubio
|
9
8
|
autorequire:
|
10
9
|
bindir: bin
|
11
10
|
cert_chain:
|
12
|
-
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
OHdqeG9WKzU5SnVJRlk4b3FGeTNCMG85YjdXVTU5Uk53cWRhdWFXeWUxSkVX
|
35
|
-
cjVjMThkTThWSktDCjlnTk5OaXdyaDFRNVEzSHdqamVObFVqR1ptUWNnY2VH
|
36
|
-
NFhkb294ODkvSE5tNWJ5ODNtSGtuRCsrdHF3YTJuOEYKL05uYXo5d09YdTYv
|
37
|
-
VmpCY252Rk9HWThmMzJoVnE2MTlRaUpWcFY5elJnWWE1TTA1bVdSbXdIQnly
|
38
|
-
YjR5SzBBYgozR3B5dU1NTkJNaz0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0t
|
39
|
-
LQo=
|
40
|
-
date: 2013-03-03 00:00:00.000000000 Z
|
11
|
+
- |
|
12
|
+
-----BEGIN CERTIFICATE-----
|
13
|
+
MIIDNDCCAhygAwIBAgIBADANBgkqhkiG9w0BAQUFADBAMRAwDgYDVQQDDAdydWJp
|
14
|
+
b2pyMRcwFQYKCZImiZPyLGQBGRYHZnJhbWVvczETMBEGCgmSJomT8ixkARkWA29y
|
15
|
+
ZzAeFw0xMzAyMTIyMDU0NTFaFw0xNDAyMTIyMDU0NTFaMEAxEDAOBgNVBAMMB3J1
|
16
|
+
YmlvanIxFzAVBgoJkiaJk/IsZAEZFgdmcmFtZW9zMRMwEQYKCZImiZPyLGQBGRYD
|
17
|
+
b3JnMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA6gSsIib3HHQ87Dsu
|
18
|
+
9EZzKMk2oswglzatmxIbCKXTCflTFd7U4I3sinGCOPdkRmqf9vjJSv2ppFnq8D/J
|
19
|
+
flUrqpvqnDSGWW4mHdCXGGkbgsmNGV2d3AYGC1fhstBTxJIvQaDibxrH5IIqBtNN
|
20
|
+
wBGrOVuSb1HjqPpp+5MKcQdqYT4GW1rZkeV4FYXg+SThwjx+AlmvUKmMT9cmB2Ml
|
21
|
+
JWpId4O027AjcdmOk1s1ZMIlr+ZzV0EDmqPyNFmxZm72QUsywijM9B76eVC5sdOH
|
22
|
+
JKZK75oXtz0Pr++MYTlNaXHu98RzgMyOzLHM5LRCZg1f/zB9NbI2Fqm7IIfKpz0e
|
23
|
+
9KGBFQIDAQABozkwNzAJBgNVHRMEAjAAMB0GA1UdDgQWBBSO48JZEE9yvI13QfH2
|
24
|
+
UVEWt45QaTALBgNVHQ8EBAMCBLAwDQYJKoZIhvcNAQEFBQADggEBABTq7sClnZ83
|
25
|
+
ZeGgOUKMYq7/I5gGgZHyjIcuceMuVlhVWcjrxC1Fn7eqCZupAfveoxiNrWROmZ3C
|
26
|
+
26+nSlwMVQub9ruoGwejS1PSEBrtR56sZ78WNwUMogjzPUzDDgHZgDMneKLytSco
|
27
|
+
ustJSPP8wjxoV+59JuIFY8oqFy3B0o9b7WU59RNwqdauaWye1JEWr5c18dM8VJKC
|
28
|
+
9gNNNiwrh1Q5Q3HwjjeNlUjGZmQcgceG4Xdoox89/HNm5by83mHknD++tqwa2n8F
|
29
|
+
/Nnaz9wOXu6/VjBcnvFOGY8f32hVq619QiJVpV9zRgYa5M05mWRmwHByrb4yK0Ab
|
30
|
+
3GpyuMMNBMk=
|
31
|
+
-----END CERTIFICATE-----
|
32
|
+
date: 2013-03-04 00:00:00.000000000 Z
|
41
33
|
dependencies:
|
42
34
|
- !ruby/object:Gem::Dependency
|
43
35
|
name: excon
|
44
36
|
requirement: !ruby/object:Gem::Requirement
|
45
|
-
none: false
|
46
37
|
requirements:
|
47
|
-
- -
|
38
|
+
- - '>='
|
48
39
|
- !ruby/object:Gem::Version
|
49
40
|
version: '0'
|
50
41
|
type: :runtime
|
51
42
|
prerelease: false
|
52
43
|
version_requirements: !ruby/object:Gem::Requirement
|
53
|
-
none: false
|
54
44
|
requirements:
|
55
|
-
- -
|
45
|
+
- - '>='
|
56
46
|
- !ruby/object:Gem::Version
|
57
47
|
version: '0'
|
58
48
|
- !ruby/object:Gem::Dependency
|
59
49
|
name: thor
|
60
50
|
requirement: !ruby/object:Gem::Requirement
|
61
|
-
none: false
|
62
51
|
requirements:
|
63
|
-
- -
|
52
|
+
- - '>='
|
64
53
|
- !ruby/object:Gem::Version
|
65
54
|
version: '0.17'
|
66
55
|
type: :runtime
|
67
56
|
prerelease: false
|
68
57
|
version_requirements: !ruby/object:Gem::Requirement
|
69
|
-
none: false
|
70
58
|
requirements:
|
71
|
-
- -
|
59
|
+
- - '>='
|
72
60
|
- !ruby/object:Gem::Version
|
73
61
|
version: '0.17'
|
74
62
|
- !ruby/object:Gem::Dependency
|
75
63
|
name: ruby-progressbar
|
76
64
|
requirement: !ruby/object:Gem::Requirement
|
77
|
-
none: false
|
78
65
|
requirements:
|
79
|
-
- -
|
66
|
+
- - '>='
|
80
67
|
- !ruby/object:Gem::Version
|
81
68
|
version: '0'
|
82
69
|
type: :runtime
|
83
70
|
prerelease: false
|
84
71
|
version_requirements: !ruby/object:Gem::Requirement
|
85
|
-
none: false
|
86
72
|
requirements:
|
87
|
-
- -
|
73
|
+
- - '>='
|
88
74
|
- !ruby/object:Gem::Version
|
89
75
|
version: '0'
|
90
76
|
- !ruby/object:Gem::Dependency
|
91
77
|
name: multi_json
|
92
78
|
requirement: !ruby/object:Gem::Requirement
|
93
|
-
none: false
|
94
79
|
requirements:
|
95
|
-
- -
|
80
|
+
- - '>='
|
96
81
|
- !ruby/object:Gem::Version
|
97
82
|
version: '0'
|
98
83
|
type: :runtime
|
99
84
|
prerelease: false
|
100
85
|
version_requirements: !ruby/object:Gem::Requirement
|
101
|
-
none: false
|
102
86
|
requirements:
|
103
|
-
- -
|
87
|
+
- - '>='
|
104
88
|
- !ruby/object:Gem::Version
|
105
89
|
version: '0'
|
106
90
|
- !ruby/object:Gem::Dependency
|
107
91
|
name: mime-types
|
108
92
|
requirement: !ruby/object:Gem::Requirement
|
109
|
-
none: false
|
110
93
|
requirements:
|
111
|
-
- -
|
94
|
+
- - '>='
|
112
95
|
- !ruby/object:Gem::Version
|
113
96
|
version: '0'
|
114
97
|
type: :runtime
|
115
98
|
prerelease: false
|
116
99
|
version_requirements: !ruby/object:Gem::Requirement
|
117
|
-
none: false
|
118
100
|
requirements:
|
119
|
-
- -
|
101
|
+
- - '>='
|
120
102
|
- !ruby/object:Gem::Version
|
121
103
|
version: '0'
|
122
104
|
- !ruby/object:Gem::Dependency
|
123
105
|
name: yajl-ruby
|
124
106
|
requirement: !ruby/object:Gem::Requirement
|
125
|
-
none: false
|
126
107
|
requirements:
|
127
|
-
- -
|
108
|
+
- - '>='
|
128
109
|
- !ruby/object:Gem::Version
|
129
110
|
version: '0'
|
130
111
|
type: :runtime
|
131
112
|
prerelease: false
|
132
113
|
version_requirements: !ruby/object:Gem::Requirement
|
133
|
-
none: false
|
134
114
|
requirements:
|
135
|
-
- -
|
115
|
+
- - '>='
|
136
116
|
- !ruby/object:Gem::Version
|
137
117
|
version: '0'
|
138
118
|
- !ruby/object:Gem::Dependency
|
139
119
|
name: formatador
|
140
120
|
requirement: !ruby/object:Gem::Requirement
|
141
|
-
none: false
|
142
121
|
requirements:
|
143
|
-
- -
|
122
|
+
- - '>='
|
144
123
|
- !ruby/object:Gem::Version
|
145
124
|
version: '0'
|
146
125
|
type: :runtime
|
147
126
|
prerelease: false
|
148
127
|
version_requirements: !ruby/object:Gem::Requirement
|
149
|
-
none: false
|
150
128
|
requirements:
|
151
|
-
- -
|
129
|
+
- - '>='
|
152
130
|
- !ruby/object:Gem::Version
|
153
131
|
version: '0'
|
154
132
|
- !ruby/object:Gem::Dependency
|
155
133
|
name: shexy
|
156
134
|
requirement: !ruby/object:Gem::Requirement
|
157
|
-
none: false
|
158
135
|
requirements:
|
159
|
-
- -
|
136
|
+
- - '>='
|
160
137
|
- !ruby/object:Gem::Version
|
161
138
|
version: '0'
|
162
139
|
type: :runtime
|
163
140
|
prerelease: false
|
164
141
|
version_requirements: !ruby/object:Gem::Requirement
|
165
|
-
none: false
|
166
142
|
requirements:
|
167
|
-
- -
|
143
|
+
- - '>='
|
168
144
|
- !ruby/object:Gem::Version
|
169
145
|
version: '0'
|
170
146
|
- !ruby/object:Gem::Dependency
|
171
147
|
name: shindo
|
172
148
|
requirement: !ruby/object:Gem::Requirement
|
173
|
-
none: false
|
174
149
|
requirements:
|
175
|
-
- -
|
150
|
+
- - '>='
|
176
151
|
- !ruby/object:Gem::Version
|
177
152
|
version: '0'
|
178
153
|
type: :development
|
179
154
|
prerelease: false
|
180
155
|
version_requirements: !ruby/object:Gem::Requirement
|
181
|
-
none: false
|
182
156
|
requirements:
|
183
|
-
- -
|
157
|
+
- - '>='
|
184
158
|
- !ruby/object:Gem::Version
|
185
159
|
version: '0'
|
186
160
|
description: OpenStack Swift CLI with encryption support
|
@@ -558,26 +532,26 @@ files:
|
|
558
532
|
- vendor/fog/lib/fog/volume.rb
|
559
533
|
homepage: http://rubiojr.github.com/cifrado
|
560
534
|
licenses: []
|
535
|
+
metadata: {}
|
561
536
|
post_install_message:
|
562
537
|
rdoc_options: []
|
563
538
|
require_paths:
|
564
539
|
- lib
|
565
540
|
required_ruby_version: !ruby/object:Gem::Requirement
|
566
|
-
none: false
|
567
541
|
requirements:
|
568
|
-
- -
|
542
|
+
- - '>='
|
569
543
|
- !ruby/object:Gem::Version
|
570
544
|
version: '0'
|
571
545
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
572
|
-
none: false
|
573
546
|
requirements:
|
574
|
-
- -
|
547
|
+
- - '>='
|
575
548
|
- !ruby/object:Gem::Version
|
576
549
|
version: '0'
|
577
550
|
requirements: []
|
578
551
|
rubyforge_project:
|
579
|
-
rubygems_version:
|
552
|
+
rubygems_version: 2.0.0
|
580
553
|
signing_key:
|
581
|
-
specification_version:
|
554
|
+
specification_version: 4
|
582
555
|
summary: OpenStack Swift CLI with encryption support
|
583
556
|
test_files: []
|
557
|
+
has_rdoc:
|
metadata.gz.sig
CHANGED
Binary file
|