vae 0.6.3 → 0.6.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (4) hide show
  1. checksums.yaml +8 -8
  2. data/lib/vae.rb +35 -7
  3. data/lib/version.rb +1 -1
  4. metadata +2 -2
checksums.yaml CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- MTFhZjg3MzcxNTRlMjc0YjkzNjQ3OGQwYTE4ZjE1YzQ1YzY5OGEyNQ==
4
+ Njc1YTZhN2ZhMTc0NjYzZTRiZjhmNDcwNWM5NTBjNTNiODY5NjA0MQ==
5
5
  data.tar.gz: !binary |-
6
- NGRkOTQ3YjRkNTc2MjA1Mzc4NTNjMDQ4MDE3NmNjY2NlOWU2ZGZmMA==
6
+ ZDdjMzYyMzdmZTI1ZTMzYjQwZDk4Y2EyZjE5MDY2NjRjYmYwMWMxYQ==
7
7
  !binary "U0hBNTEy":
8
8
  metadata.gz: !binary |-
9
- NzFmM2M4NTcwYjdkNWQ5YWYyYTVmMWZhNDQ2MjUyOTc5NmM2NzM2ZmY2YzE5
10
- MWUwOTdjNGM4OWMzZjE4NTIzYjdhZWQyYWJmMWUxZjk0NzNiZWRiYzkxNzBh
11
- Y2VjYTUxZGRmNGU3NWNhMDliYTFkYjk5MjljODkxM2MxODg2ODM=
9
+ ZDg5YzRmMDBiMjYyMjQ5NjRiOWRlN2JjODBhODE5YTU1ODM1NjA5ZDY3Yzhk
10
+ YTEwNGY4ZTY2OWVhYzEwMWM4NmZlZjM0ODE5MDA1Yjc5MjE5MzYyMDhmOWMz
11
+ MjllNGM2NzMxNmRmN2NhZDlmMTVlYTU0ZDVhYzMzZjRjMDU1NTg=
12
12
  data.tar.gz: !binary |-
13
- MWQ5OTlhYjFlN2M1OTI1ZTMwZjVhY2UwMTI3NzEyMmZlNTNlODZhZjAwNmM0
14
- YTY5YmRkYzY5NzVlNzhlN2UwNWY4OGRjYjhmOWMwOTg5OWNhZjE0ZTRkNDEy
15
- MTRiYjA3YjQxMzQwNzRiZTcyNmU5ZjMxODI1ZDJhMmQzYWJkN2M=
13
+ Y2NhZTZlNDE2OTQ5YTQ4MTFlOGYwZTY5NDAyY2NhNGVjZWI0MTM0NWYwOTQ1
14
+ MmVmZGRiMzU0MDE2OTlkNGYxMjYyN2VmZTFhYzdmMmY4YTUyYzczMjkwZjlh
15
+ OWMwZTliZGUyZDJkNjM4ODhlNjQzMzA0MmNmYjVhNzhkNDAyYzY=
data/lib/vae.rb CHANGED
@@ -2,6 +2,7 @@ require 'rubygems'
2
2
 
3
3
  require 'cgi'
4
4
  require 'digest/md5'
5
+ require 'json'
5
6
  require 'mongrel'
6
7
  require 'net/http'
7
8
  require 'net/https'
@@ -145,22 +146,49 @@ class VaeLocal
145
146
  puts "Thanks for using Vae!"
146
147
  end
147
148
  end
149
+
150
+ def show_job_status(res, site)
151
+ data = JSON.parse(res.body)
152
+ if data['error']
153
+ raise VaeError, data['error']
154
+ else
155
+ puts "Request started, waiting for completion..."
156
+ loop do
157
+ sleep 5
158
+ req = Net::HTTP::Get.new("/resque_jobs/show/#{data['job']}")
159
+ res = fetch_from_vaeplatform(site, req)
160
+ status = JSON.parse(res.body)
161
+ if status['status'] == "completed"
162
+ puts data['success']
163
+ return
164
+ elsif status['status'] != "working"
165
+ raise VaeError, "Got the following error from Vae Platform: #{status['message']}"
166
+ end
167
+ end
168
+ end
169
+ rescue JSON::ParserError
170
+ raise VaeError, "An unknown error occurred requesting this operation from Vae Platform. Please email support for help."
171
+ end
148
172
 
149
173
  def stagerelease(action, site, username, password)
150
- if action == "deploy"
151
- action = "stage"
174
+ if action == "deploy" or action == "stage"
175
+ action = "subversion/stage"
152
176
  elsif action == "stagerelease"
153
- stagerelease("stage", site, username, password)
154
- stagerelease("release", site, username, password)
177
+ stagerelease("subversion/stage", site, username, password)
178
+ stagerelease("subversion/release", site, username, password)
155
179
  return
180
+ elsif action == "release"
181
+ action = "releases/release"
182
+ elsif action == "rollback"
183
+ action = "releases/rollback"
156
184
  end
157
- req = Net::HTTP::Post.new("/subversion/#{action}")
158
- req.body = "username=#{CGI.escape(username)}&password=#{CGI.escape(password)}"
185
+ req = Net::HTTP::Post.new("/#{action}")
186
+ req.body = "username=#{CGI.escape(username)}&password=#{CGI.escape(password)}&vae_local=1"
159
187
  res = fetch_from_vaeplatform(site, req)
160
188
  if res.is_a?(Net::HTTPFound)
161
189
  raise VaeError, "Invalid username/password or insufficient permissions."
162
190
  else
163
- puts res.body
191
+ show_job_status(res, site)
164
192
  end
165
193
  end
166
194
 
@@ -1 +1 @@
1
- VER = "0.6.3"
1
+ VER = "0.6.4"
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: vae
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.3
4
+ version: 0.6.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Action Verb, LLC
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-09-09 00:00:00.000000000 Z
12
+ date: 2013-09-20 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: chunky_png