af 0.3.18.6 → 0.3.18.7

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/lib/cli.rb CHANGED
@@ -27,6 +27,7 @@ module VMC
27
27
  autoload :TunnelHelper, "#{ROOT}/cli/tunnel_helper"
28
28
  autoload :ManifestHelper, "#{ROOT}/cli/manifest_helper"
29
29
  autoload :ConsoleHelper, "#{ROOT}/cli/console_helper"
30
+ autoload :FileHelper, "#{ROOT}/cli/file_helper"
30
31
 
31
32
  module Command
32
33
  autoload :Base, "#{ROOT}/cli/commands/base"
@@ -14,6 +14,7 @@ module VMC::Cli::Command
14
14
  include VMC::Cli::ManifestHelper
15
15
  include VMC::Cli::TunnelHelper
16
16
  include VMC::Cli::ConsoleHelper
17
+ include VMC::Cli::FileHelper
17
18
 
18
19
  def list
19
20
  apps = client.apps
@@ -501,7 +502,7 @@ module VMC::Cli::Command
501
502
  files = Dir.glob("#{path}/**/*", File::FNM_DOTMATCH)
502
503
  files && files.select { |f| File.socket? f }
503
504
  end
504
-
505
+
505
506
  def upload_app_bits(appname, path, infra)
506
507
  display 'Uploading Application:'
507
508
 
@@ -533,7 +534,9 @@ module VMC::Cli::Command
533
534
 
534
535
  # Do not process .git files
535
536
  files.delete('.git') if files
536
-
537
+
538
+ files = afignore("#{path}/.afignore",files)
539
+
537
540
  FileUtils.cp_r(files, explode_dir)
538
541
 
539
542
  find_sockets(explode_dir).each do |s|
@@ -0,0 +1,48 @@
1
+ module VMC::Cli
2
+ module FileHelper
3
+
4
+
5
+ def match(pattern,filename)
6
+ return false if pattern =~ /^\s*$/ # ignore blank lines
7
+
8
+ return false if pattern =~ /^#/ # lines starting with # are comments
9
+
10
+ if pattern =~ /\/$/
11
+ # pattern ending in a slash should ignore directory and all its children
12
+ dirname = pattern.sub(/\/$/,'')
13
+ return filename == dirname || filename =~ /#{dirname}\/.*$/
14
+ end
15
+
16
+ if pattern =~ /^!/
17
+ return !match(pattern.sub(/^!/,''),filename)
18
+ end
19
+
20
+ if pattern =~ /^\//
21
+ parts = filename.split('/')
22
+ return File.fnmatch(pattern.sub(/^\//,''),parts[0])
23
+ end
24
+
25
+ if pattern.include? '/'
26
+ return File.fnmatch(pattern,filename)
27
+ end
28
+
29
+ File.fnmatch(pattern,filename,File::FNM_PATHNAME)
30
+ end
31
+
32
+ def reject_patterns(patterns,filenames)
33
+ filenames.reject do |filename|
34
+ patterns.detect { |pattern| match(pattern,filename)} != nil
35
+ end
36
+ end
37
+
38
+ def afignore(ignore_path,files)
39
+ if File.exists?(ignore_path)
40
+ patterns = File.read(ignore_path).split("\n")
41
+ reject_patterns(patterns,files)
42
+ else
43
+ files
44
+ end
45
+ end
46
+
47
+ end
48
+ end
data/lib/cli/version.rb CHANGED
@@ -2,6 +2,6 @@ module VMC
2
2
  module Cli
3
3
  # This version number is used as the RubyGem release version.
4
4
  # The internal VMC version number is VMC::VERSION.
5
- VERSION = '0.3.18.6'
5
+ VERSION = '0.3.18.7'
6
6
  end
7
7
  end
metadata CHANGED
@@ -1,223 +1,213 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: af
3
- version: !ruby/object:Gem::Version
4
- hash: 19
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.3.18.7
5
5
  prerelease:
6
- segments:
7
- - 0
8
- - 3
9
- - 18
10
- - 6
11
- version: 0.3.18.6
12
6
  platform: ruby
13
- authors:
7
+ authors:
14
8
  - AppFog
15
9
  autorequire:
16
10
  bindir: bin
17
11
  cert_chain: []
18
-
19
- date: 2012-09-21 00:00:00 Z
20
- dependencies:
21
- - !ruby/object:Gem::Dependency
12
+ date: 2012-09-24 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
22
15
  name: json_pure
23
- prerelease: false
24
- requirement: &id001 !ruby/object:Gem::Requirement
16
+ requirement: !ruby/object:Gem::Requirement
25
17
  none: false
26
- requirements:
27
- - - ">="
28
- - !ruby/object:Gem::Version
29
- hash: 1
30
- segments:
31
- - 1
32
- - 5
33
- - 1
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
34
21
  version: 1.5.1
35
22
  - - <
36
- - !ruby/object:Gem::Version
37
- hash: 11
38
- segments:
39
- - 1
40
- - 7
41
- - 0
23
+ - !ruby/object:Gem::Version
42
24
  version: 1.7.0
43
25
  type: :runtime
44
- version_requirements: *id001
45
- - !ruby/object:Gem::Dependency
46
- name: rubyzip
47
26
  prerelease: false
48
- requirement: &id002 !ruby/object:Gem::Requirement
27
+ version_requirements: !ruby/object:Gem::Requirement
28
+ none: false
29
+ requirements:
30
+ - - ! '>='
31
+ - !ruby/object:Gem::Version
32
+ version: 1.5.1
33
+ - - <
34
+ - !ruby/object:Gem::Version
35
+ version: 1.7.0
36
+ - !ruby/object:Gem::Dependency
37
+ name: rubyzip
38
+ requirement: !ruby/object:Gem::Requirement
49
39
  none: false
50
- requirements:
40
+ requirements:
51
41
  - - ~>
52
- - !ruby/object:Gem::Version
53
- hash: 51
54
- segments:
55
- - 0
56
- - 9
57
- - 4
42
+ - !ruby/object:Gem::Version
58
43
  version: 0.9.4
59
44
  type: :runtime
60
- version_requirements: *id002
61
- - !ruby/object:Gem::Dependency
62
- name: rest-client
63
45
  prerelease: false
64
- requirement: &id003 !ruby/object:Gem::Requirement
46
+ version_requirements: !ruby/object:Gem::Requirement
65
47
  none: false
66
- requirements:
67
- - - ">="
68
- - !ruby/object:Gem::Version
69
- hash: 13
70
- segments:
71
- - 1
72
- - 6
73
- - 1
48
+ requirements:
49
+ - - ~>
50
+ - !ruby/object:Gem::Version
51
+ version: 0.9.4
52
+ - !ruby/object:Gem::Dependency
53
+ name: rest-client
54
+ requirement: !ruby/object:Gem::Requirement
55
+ none: false
56
+ requirements:
57
+ - - ! '>='
58
+ - !ruby/object:Gem::Version
74
59
  version: 1.6.1
75
60
  - - <
76
- - !ruby/object:Gem::Version
77
- hash: 11
78
- segments:
79
- - 1
80
- - 7
81
- - 0
61
+ - !ruby/object:Gem::Version
82
62
  version: 1.7.0
83
63
  type: :runtime
84
- version_requirements: *id003
85
- - !ruby/object:Gem::Dependency
86
- name: terminal-table
87
64
  prerelease: false
88
- requirement: &id004 !ruby/object:Gem::Requirement
65
+ version_requirements: !ruby/object:Gem::Requirement
66
+ none: false
67
+ requirements:
68
+ - - ! '>='
69
+ - !ruby/object:Gem::Version
70
+ version: 1.6.1
71
+ - - <
72
+ - !ruby/object:Gem::Version
73
+ version: 1.7.0
74
+ - !ruby/object:Gem::Dependency
75
+ name: terminal-table
76
+ requirement: !ruby/object:Gem::Requirement
89
77
  none: false
90
- requirements:
78
+ requirements:
91
79
  - - ~>
92
- - !ruby/object:Gem::Version
93
- hash: 3
94
- segments:
95
- - 1
96
- - 4
97
- - 2
80
+ - !ruby/object:Gem::Version
98
81
  version: 1.4.2
99
82
  type: :runtime
100
- version_requirements: *id004
101
- - !ruby/object:Gem::Dependency
102
- name: interact
103
83
  prerelease: false
104
- requirement: &id005 !ruby/object:Gem::Requirement
84
+ version_requirements: !ruby/object:Gem::Requirement
85
+ none: false
86
+ requirements:
87
+ - - ~>
88
+ - !ruby/object:Gem::Version
89
+ version: 1.4.2
90
+ - !ruby/object:Gem::Dependency
91
+ name: interact
92
+ requirement: !ruby/object:Gem::Requirement
105
93
  none: false
106
- requirements:
94
+ requirements:
107
95
  - - ~>
108
- - !ruby/object:Gem::Version
109
- hash: 15
110
- segments:
111
- - 0
112
- - 4
113
- - 0
96
+ - !ruby/object:Gem::Version
114
97
  version: 0.4.0
115
98
  type: :runtime
116
- version_requirements: *id005
117
- - !ruby/object:Gem::Dependency
118
- name: addressable
119
99
  prerelease: false
120
- requirement: &id006 !ruby/object:Gem::Requirement
100
+ version_requirements: !ruby/object:Gem::Requirement
101
+ none: false
102
+ requirements:
103
+ - - ~>
104
+ - !ruby/object:Gem::Version
105
+ version: 0.4.0
106
+ - !ruby/object:Gem::Dependency
107
+ name: addressable
108
+ requirement: !ruby/object:Gem::Requirement
121
109
  none: false
122
- requirements:
110
+ requirements:
123
111
  - - ~>
124
- - !ruby/object:Gem::Version
125
- hash: 11
126
- segments:
127
- - 2
128
- - 2
129
- - 6
112
+ - !ruby/object:Gem::Version
130
113
  version: 2.2.6
131
114
  type: :runtime
132
- version_requirements: *id006
133
- - !ruby/object:Gem::Dependency
134
- name: uuidtools
135
115
  prerelease: false
136
- requirement: &id007 !ruby/object:Gem::Requirement
116
+ version_requirements: !ruby/object:Gem::Requirement
137
117
  none: false
138
- requirements:
118
+ requirements:
139
119
  - - ~>
140
- - !ruby/object:Gem::Version
141
- hash: 11
142
- segments:
143
- - 2
144
- - 1
145
- - 0
120
+ - !ruby/object:Gem::Version
121
+ version: 2.2.6
122
+ - !ruby/object:Gem::Dependency
123
+ name: uuidtools
124
+ requirement: !ruby/object:Gem::Requirement
125
+ none: false
126
+ requirements:
127
+ - - ~>
128
+ - !ruby/object:Gem::Version
146
129
  version: 2.1.0
147
130
  type: :runtime
148
- version_requirements: *id007
149
- - !ruby/object:Gem::Dependency
150
- name: rb-readline
151
131
  prerelease: false
152
- requirement: &id008 !ruby/object:Gem::Requirement
132
+ version_requirements: !ruby/object:Gem::Requirement
133
+ none: false
134
+ requirements:
135
+ - - ~>
136
+ - !ruby/object:Gem::Version
137
+ version: 2.1.0
138
+ - !ruby/object:Gem::Dependency
139
+ name: rb-readline
140
+ requirement: !ruby/object:Gem::Requirement
153
141
  none: false
154
- requirements:
142
+ requirements:
155
143
  - - ~>
156
- - !ruby/object:Gem::Version
157
- hash: 11
158
- segments:
159
- - 0
160
- - 4
161
- - 2
144
+ - !ruby/object:Gem::Version
162
145
  version: 0.4.2
163
146
  type: :runtime
164
- version_requirements: *id008
165
- - !ruby/object:Gem::Dependency
166
- name: rake
167
147
  prerelease: false
168
- requirement: &id009 !ruby/object:Gem::Requirement
148
+ version_requirements: !ruby/object:Gem::Requirement
169
149
  none: false
170
- requirements:
171
- - - ">="
172
- - !ruby/object:Gem::Version
173
- hash: 3
174
- segments:
175
- - 0
176
- version: "0"
150
+ requirements:
151
+ - - ~>
152
+ - !ruby/object:Gem::Version
153
+ version: 0.4.2
154
+ - !ruby/object:Gem::Dependency
155
+ name: rake
156
+ requirement: !ruby/object:Gem::Requirement
157
+ none: false
158
+ requirements:
159
+ - - ! '>='
160
+ - !ruby/object:Gem::Version
161
+ version: '0'
177
162
  type: :development
178
- version_requirements: *id009
179
- - !ruby/object:Gem::Dependency
180
- name: rspec
181
163
  prerelease: false
182
- requirement: &id010 !ruby/object:Gem::Requirement
164
+ version_requirements: !ruby/object:Gem::Requirement
165
+ none: false
166
+ requirements:
167
+ - - ! '>='
168
+ - !ruby/object:Gem::Version
169
+ version: '0'
170
+ - !ruby/object:Gem::Dependency
171
+ name: rspec
172
+ requirement: !ruby/object:Gem::Requirement
183
173
  none: false
184
- requirements:
174
+ requirements:
185
175
  - - ~>
186
- - !ruby/object:Gem::Version
187
- hash: 27
188
- segments:
189
- - 1
190
- - 3
191
- - 0
176
+ - !ruby/object:Gem::Version
192
177
  version: 1.3.0
193
178
  type: :development
194
- version_requirements: *id010
195
- - !ruby/object:Gem::Dependency
196
- name: webmock
197
179
  prerelease: false
198
- requirement: &id011 !ruby/object:Gem::Requirement
180
+ version_requirements: !ruby/object:Gem::Requirement
199
181
  none: false
200
- requirements:
182
+ requirements:
201
183
  - - ~>
202
- - !ruby/object:Gem::Version
203
- hash: 3
204
- segments:
205
- - 1
206
- - 5
207
- - 0
184
+ - !ruby/object:Gem::Version
185
+ version: 1.3.0
186
+ - !ruby/object:Gem::Dependency
187
+ name: webmock
188
+ requirement: !ruby/object:Gem::Requirement
189
+ none: false
190
+ requirements:
191
+ - - ~>
192
+ - !ruby/object:Gem::Version
208
193
  version: 1.5.0
209
194
  type: :development
210
- version_requirements: *id011
195
+ prerelease: false
196
+ version_requirements: !ruby/object:Gem::Requirement
197
+ none: false
198
+ requirements:
199
+ - - ~>
200
+ - !ruby/object:Gem::Version
201
+ version: 1.5.0
211
202
  description: AppFog.com CLI
212
203
  email: support@appfog.com
213
- executables:
204
+ executables:
214
205
  - af
215
206
  extensions: []
216
-
217
- extra_rdoc_files:
207
+ extra_rdoc_files:
218
208
  - README.md
219
209
  - LICENSE
220
- files:
210
+ files:
221
211
  - LICENSE
222
212
  - README.md
223
213
  - Rakefile
@@ -237,6 +227,7 @@ files:
237
227
  - lib/cli/console_helper.rb
238
228
  - lib/cli/core_ext.rb
239
229
  - lib/cli/errors.rb
230
+ - lib/cli/file_helper.rb
240
231
  - lib/cli/frameworks.rb
241
232
  - lib/cli/manifest_helper.rb
242
233
  - lib/cli/runner.rb
@@ -262,36 +253,26 @@ files:
262
253
  - bin/af
263
254
  homepage: http://appfog.com
264
255
  licenses: []
265
-
266
256
  post_install_message:
267
257
  rdoc_options: []
268
-
269
- require_paths:
258
+ require_paths:
270
259
  - lib
271
- required_ruby_version: !ruby/object:Gem::Requirement
260
+ required_ruby_version: !ruby/object:Gem::Requirement
272
261
  none: false
273
- requirements:
274
- - - ">="
275
- - !ruby/object:Gem::Version
276
- hash: 3
277
- segments:
278
- - 0
279
- version: "0"
280
- required_rubygems_version: !ruby/object:Gem::Requirement
262
+ requirements:
263
+ - - ! '>='
264
+ - !ruby/object:Gem::Version
265
+ version: '0'
266
+ required_rubygems_version: !ruby/object:Gem::Requirement
281
267
  none: false
282
- requirements:
283
- - - ">="
284
- - !ruby/object:Gem::Version
285
- hash: 3
286
- segments:
287
- - 0
288
- version: "0"
268
+ requirements:
269
+ - - ! '>='
270
+ - !ruby/object:Gem::Version
271
+ version: '0'
289
272
  requirements: []
290
-
291
273
  rubyforge_project:
292
274
  rubygems_version: 1.8.24
293
275
  signing_key:
294
276
  specification_version: 3
295
277
  summary: AppFog.com CLI
296
278
  test_files: []
297
-