harbr 0.1.54 → 0.1.56
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 +4 -4
- data/exe/harbr +9 -0
- data/lib/harbr/job.rb +20 -0
- data/lib/harbr/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 6c35141e47e0208a680bb1e53cbc2347edf82618db4972ea53164dd193140ff9
|
|
4
|
+
data.tar.gz: 5791e84611a57c605e4d611901544d57c510cc0dbe914b5f0e10f184216aafb5
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 45ef0f748e52e03653b52c772c58a1e9036d5edda6311ba96c18b10230c905312aef1ad6817fdb5806c56f0c4ba151f76c3dea8e680ead39ab9af32c59f44a4d
|
|
7
|
+
data.tar.gz: 13eec59f7d9ff960a0592f0760a93eadb752943fcbb4ce41eba2f3ad3524de1a3710151e323bc5e253f777aa7d336e4f84ccced777e228653466df45741a26af
|
data/exe/harbr
CHANGED
|
@@ -191,10 +191,19 @@ class HarbrCLI < Thor
|
|
|
191
191
|
version = $1
|
|
192
192
|
raise "Ooops! next version not found!" if version.nil?
|
|
193
193
|
|
|
194
|
+
|
|
195
|
+
/versions\/(?<version>\d*)/.match(`ls -l /var/harbr/containers/#{name}/current`)
|
|
196
|
+
`ln -sf /var/harbr/containers/#{name}/version/#{$1} /var/harbr/containers/#{name}/rollback`
|
|
197
|
+
|
|
198
|
+
|
|
199
|
+
`rm -rf /var/harbr/containers/#{name}/current`
|
|
200
|
+
|
|
194
201
|
Harbr::Job.perform_async(name, version, "current")
|
|
202
|
+
|
|
195
203
|
puts "deploy current version #{version} of #{name}"
|
|
196
204
|
|
|
197
205
|
end
|
|
206
|
+
|
|
198
207
|
|
|
199
208
|
desc "rollback", "rollback last deploy"
|
|
200
209
|
def rollback(name)
|
data/lib/harbr/job.rb
CHANGED
|
@@ -102,6 +102,23 @@ module Harbr
|
|
|
102
102
|
end
|
|
103
103
|
end
|
|
104
104
|
|
|
105
|
+
def check_dir_exists(path)
|
|
106
|
+
sleep_times = [1, 3, 5, 8, 23]
|
|
107
|
+
begin
|
|
108
|
+
sleep_times.each do |time|
|
|
109
|
+
puts "checking #{path}...."
|
|
110
|
+
if Dir.exist?(path)
|
|
111
|
+
puts "found #{path}"
|
|
112
|
+
return
|
|
113
|
+
end
|
|
114
|
+
sleep(time)
|
|
115
|
+
end
|
|
116
|
+
raise "Directory not found: #{path}"
|
|
117
|
+
rescue => e
|
|
118
|
+
puts "Error: #{e.message}"
|
|
119
|
+
end
|
|
120
|
+
end
|
|
121
|
+
|
|
105
122
|
def process_container(name, version, port, env, manifest)
|
|
106
123
|
|
|
107
124
|
version_path = "/var/harbr/containers/#{name}/versions/#{version}"
|
|
@@ -129,6 +146,9 @@ module Harbr
|
|
|
129
146
|
end
|
|
130
147
|
|
|
131
148
|
def bundle_install_if_needed(path)
|
|
149
|
+
|
|
150
|
+
check_dir_exists(path)
|
|
151
|
+
|
|
132
152
|
Dir.chdir(path) do
|
|
133
153
|
if File.exist?("Gemfile")
|
|
134
154
|
`bundle config set --local path 'vendor/bundle'`
|
data/lib/harbr/version.rb
CHANGED