harbr 0.1.83 → 0.1.84
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 -8
- data/lib/harbr/job.rb +14 -41
- data/lib/harbr/version.rb +1 -1
- data/lib/harbr.rb +0 -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: 0eeb93a8a44b33d81585d43043fc3e87d8af4ca2b86b58b84e395edd9fdcc486
|
|
4
|
+
data.tar.gz: 4ab4e30f7811be94fa7d4c8ccd6a2f00b8ac441bfec0a33426c3f00dfde972f4
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: a2079550747b2693fdfbb9df75fb59044b9455cf66b422493d75de5255d3d274696ed345cc0ba5fee99b6865f0642507a17868d6319dbe9826c3977c44733e12
|
|
7
|
+
data.tar.gz: f80160a004bb2b406b9e21f4f20171b432181ee434b7bbaef3a3492b2996ec156d7858540e28cdfa942c72fe999344c199ac7b792a859d7050ee4b9d2862f56b
|
data/exe/harbr
CHANGED
|
@@ -133,7 +133,8 @@ class HarbrCLI < Thor
|
|
|
133
133
|
|
|
134
134
|
container_repo = Harbr::Container::Repository.new
|
|
135
135
|
|
|
136
|
-
[name, "next.#{name}"].each do |container_name|
|
|
136
|
+
["live.#{name}", "next.#{name}"].each do |container_name|
|
|
137
|
+
|
|
137
138
|
container_repo.get_by_name(container_name).each do |container|
|
|
138
139
|
`port release #{container.port}`
|
|
139
140
|
puts "released port #{container.port} successfully."
|
|
@@ -164,7 +165,7 @@ class HarbrCLI < Thor
|
|
|
164
165
|
container_repo = Harbr::Container::Repository.new
|
|
165
166
|
container = container_repo.find_by_name(container)
|
|
166
167
|
if container
|
|
167
|
-
exec "tail -f /var/log/harbr/#{container.name}/current" if options[:live]
|
|
168
|
+
exec "tail -f /var/log/harbr/#{container.name}/live/current" if options[:live]
|
|
168
169
|
exec "tail -f /var/log/harbr/#{container.name}/next/current" if options[:next]
|
|
169
170
|
else
|
|
170
171
|
puts "Container not recognized"
|
|
@@ -217,12 +218,12 @@ class HarbrCLI < Thor
|
|
|
217
218
|
version = $1
|
|
218
219
|
raise "Ooops! next version not found!" if version.nil?
|
|
219
220
|
|
|
220
|
-
/versions\/(?<version>\d*)/ =~ `ls -l /var/harbr/containers/#{name}/
|
|
221
|
+
/versions\/(?<version>\d*)/ =~ `ls -l /var/harbr/containers/#{name}/live`
|
|
221
222
|
`ln -sf /var/harbr/containers/#{name}/version/#{$1} /var/harbr/containers/#{name}/rollback`
|
|
222
223
|
|
|
223
|
-
Harbr::Job.perform_async(name, version, "
|
|
224
|
+
Harbr::Job.perform_async(name, version, "live")
|
|
224
225
|
|
|
225
|
-
puts "deploy
|
|
226
|
+
puts "deploy version #{version} of #{name} to live environment"
|
|
226
227
|
end
|
|
227
228
|
|
|
228
229
|
desc "rollback", "rollback last deploy"
|
|
@@ -231,9 +232,9 @@ class HarbrCLI < Thor
|
|
|
231
232
|
if File.exist?("rollback")
|
|
232
233
|
Dir.chdir("/var/harbr/containers/#{name}/") do
|
|
233
234
|
/(?:. * -> (?:.*))/ =~ `ls -l /var/harbr/containers/#{name}/rollback`
|
|
234
|
-
`rm -r
|
|
235
|
-
`ln -sf #{$2}
|
|
236
|
-
`sv restart
|
|
235
|
+
`rm -r live`
|
|
236
|
+
`ln -sf #{$2} live`
|
|
237
|
+
`sv restart live.#{name}`
|
|
237
238
|
end
|
|
238
239
|
puts "rollback successful"
|
|
239
240
|
end
|
data/lib/harbr/job.rb
CHANGED
|
@@ -138,15 +138,13 @@ module Harbr
|
|
|
138
138
|
link_directories(name, version, env)
|
|
139
139
|
sync_live_data_if_next(name) if env == "next"
|
|
140
140
|
|
|
141
|
-
containers = collate_containers("#{name}", "#{manifest.host}", port, manifest.host_aliases
|
|
142
|
-
containers = collate_containers("#{env}.#{name}", "#{env}.#{manifest.host}", port, manifest.host_aliases&.map { |host| "#{env}.#{host}" }) if env == "next"
|
|
141
|
+
containers = collate_containers("#{env}.#{name}", "#{env}.#{manifest.host}", port, manifest.host_aliases&.map { |host| "#{env}.#{host}" })
|
|
143
142
|
|
|
144
143
|
create_traefik_config(containers)
|
|
145
144
|
|
|
146
|
-
system "sv restart #{env}.#{name}"
|
|
147
|
-
system "sv restart #{name}" if env == "current"
|
|
145
|
+
system "sv restart #{env}.#{name}"
|
|
148
146
|
|
|
149
|
-
puts "harbr: #{version} of #{name}
|
|
147
|
+
puts "harbr: #{version} of #{name} deployed to #{env} environment"
|
|
150
148
|
end
|
|
151
149
|
|
|
152
150
|
def bundle_install_if_needed(path)
|
|
@@ -165,44 +163,20 @@ module Harbr
|
|
|
165
163
|
finish_script = Runit::Script.new(name, port, env).finish_script
|
|
166
164
|
log_script = Runit::Script.new(name, port, env).log_script
|
|
167
165
|
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
`mkdir -p /var/log/harbr/#{name}/#{env}`
|
|
176
|
-
end
|
|
177
|
-
|
|
178
|
-
if env == "current"
|
|
179
|
-
write_to_file "/etc/sv/harbr/#{name}/run", run_script
|
|
180
|
-
write_to_file "/etc/sv/harbr/#{name}/log/run", log_script
|
|
181
|
-
write_to_file "/etc/sv/harbr/#{name}/finish", finish_script
|
|
182
|
-
`chmod +x /etc/sv/harbr/#{name}/run`
|
|
183
|
-
`chmod +x /etc/sv/harbr/#{name}/finish`
|
|
184
|
-
`chmod +x /etc/sv/harbr/#{name}/log/run`
|
|
185
|
-
`mkdir -p /var/log/harbr/#{name}`
|
|
186
|
-
|
|
187
|
-
end
|
|
166
|
+
write_to_file "/etc/sv/harbr/#{name}/#{env}/run", run_script
|
|
167
|
+
write_to_file "/etc/sv/harbr/#{name}/#{env}/log/run", log_script
|
|
168
|
+
write_to_file "/etc/sv/harbr/#{name}/#{env}/finish", finish_script
|
|
169
|
+
`chmod +x /etc/sv/harbr/#{name}/#{env}/run`
|
|
170
|
+
`chmod +x /etc/sv/harbr/#{name}/#{env}/finish`
|
|
171
|
+
`chmod +x /etc/sv/harbr/#{name}/#{env}/log/run`
|
|
172
|
+
`mkdir -p /var/log/harbr/#{name}/#{env}`
|
|
188
173
|
end
|
|
189
174
|
|
|
190
175
|
def link_directories(name, version, env)
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
`ln -sf /etc/sv/harbr/#{name}/#{env} /etc/service/#{env}.#{name}`
|
|
196
|
-
end
|
|
197
|
-
|
|
198
|
-
if env == "current"
|
|
199
|
-
|
|
200
|
-
`rm -f /etc/service/#{name}`
|
|
201
|
-
`rm -f /var/harbr/containers/#{name}/current`
|
|
202
|
-
|
|
203
|
-
`ln -sf /var/harbr/containers/#{name}/versions/#{version} /var/harbr/containers/#{name}/current`
|
|
204
|
-
`ln -sf /etc/sv/harbr/#{name} /etc/service/#{name}`
|
|
205
|
-
end
|
|
176
|
+
`rm -f /etc/service/#{env}.#{name}`
|
|
177
|
+
`rm -f /var/harbr/containers/#{name}/#{env}`
|
|
178
|
+
`ln -sf /var/harbr/containers/#{name}/versions/#{version} /var/harbr/containers/#{name}/#{env}`
|
|
179
|
+
`ln -sf /etc/sv/harbr/#{name}/#{env} /etc/service/#{env}.#{name}`
|
|
206
180
|
end
|
|
207
181
|
|
|
208
182
|
def sync_live_data_if_next(name)
|
|
@@ -238,7 +212,6 @@ module Harbr
|
|
|
238
212
|
end
|
|
239
213
|
|
|
240
214
|
def log_script
|
|
241
|
-
env = @env == 'current' ? nil : @env
|
|
242
215
|
<<~SCRIPT
|
|
243
216
|
#!/bin/sh
|
|
244
217
|
echo "starting log for #{@container_name} on port #{@port}"
|
data/lib/harbr/version.rb
CHANGED
data/lib/harbr.rb
CHANGED
|
@@ -41,7 +41,6 @@ module Harbr
|
|
|
41
41
|
|
|
42
42
|
def self.notifiable(name, version, env)
|
|
43
43
|
yield if block_given?
|
|
44
|
-
env = "live" if env == "current"
|
|
45
44
|
send_notification("Harbr: #{name} deployed to #{env} successfully", "<p>harbr: #{version} of #{name} deployed to #{env} successfully</p>")
|
|
46
45
|
rescue => e
|
|
47
46
|
html_content = <<~HTML
|