harbr 0.1.50 → 0.1.52

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 2194f76f6826ebac55719cf284659c5df90236fc883e654a863465506233f6b1
4
- data.tar.gz: 656cc2ccb446abf757b301ea6533a2b47c8f36e2fb31a0d9c97d35acefd4c063
3
+ metadata.gz: a31eedc9d45cc5968cb05e2287c2686b9c25627a5a31b4dea46e93ffa92ed82b
4
+ data.tar.gz: 5ee4e173c8c1daa6425d6909be7f3389b88ca295153e27b36f1c18ed2783ef65
5
5
  SHA512:
6
- metadata.gz: 06b2f41d6c688caf22f5c8b91dfadbc1d8116b6d12b99b117ed6069e6896cb9779938d3d5884fc5434433473ba446c0021c8868a85e14644a5e4c90ffa8ee71e
7
- data.tar.gz: 44b75738862cec2529b340c83cc77b02ef05cc508365222e8d11d06057b7432e4c06e6cc39634f8e86f0c300f8422538efcf770cc433bf7c60bbbeeb38b1c85f
6
+ metadata.gz: 8af7d7b58ba8944153bacd29e374bcd7dceee42d9f9495e6bd5b541964f75e3d7dc46495175dd8f35a3c8db1a34104e08c312cd42888cdff9c75e472bf9389ed
7
+ data.tar.gz: d298bc7ee67bd56e7dac7b9fbb3a38f95c09cb2c4d923073ee96553837dd04806948fbc3028af0fb359e0efadd5cb2536cf9b8f1dd9c167809f95727b04c0e38
data/exe/harbr CHANGED
@@ -187,17 +187,15 @@ class HarbrCLI < Thor
187
187
 
188
188
  desc "deploy", "deploy a container to production"
189
189
  def deploy(name)
190
-
191
- Dir.chdir("/var/harbr/containers/#{name}/") do
192
- /(?:. * -> (?:.*))/ =~ `ls -l /var/harbr/containers/#{name}/next`
193
- version = $2
194
- end
195
-
190
+ /versions\/(?<version>\d*)/.match(`ls -l /var/harbr/containers/#{name}/next`)
191
+ version = $1
192
+ raise "Ooops! next version not found!" if version.nil?
193
+
196
194
  Harbr::Job.perform_async(name, version, "current")
197
- puts "deploy current version #{version} of #{container}"
195
+ puts "deploy current version #{version} of #{name}"
198
196
 
199
197
  end
200
-
198
+
201
199
  desc "rollback", "rollback last deploy"
202
200
  def rollback(name)
203
201
  Dir.chdir("/var/harbr/containers/#{name}") do
data/lib/harbr/job.rb CHANGED
@@ -115,11 +115,14 @@ module Harbr
115
115
  link_directories(name, version, env)
116
116
  sync_live_data_if_next(name) if env == "next"
117
117
 
118
- containers = collate_containers("#{env}.#{name}", "#{env}.#{manifest.host}", port)
118
+ containers = collate_containers("#{name}", "#{manifest.host}", port) if env == "current"
119
+ containers = collate_containers("#{env}.#{name}", "#{env}.#{manifest.host}", port) if env == "next"
120
+
119
121
  create_traefik_config(containers)
120
122
 
121
123
  system "sv start #{env}.#{name}" if env == "next"
122
124
  system "sv start #{name}" if env == "current"
125
+
123
126
 
124
127
 
125
128
  puts "harbr: #{version} of #{name} in #{env} environment"
@@ -139,19 +142,38 @@ module Harbr
139
142
  finish_script = Runit::Script.new(name, port, env).finish_script
140
143
  log_script = Runit::Script.new(name, port, env).log_script
141
144
 
142
- write_to_file "/etc/sv/harbr/#{name}/#{env}/run", run_script
143
- write_to_file "/etc/sv/harbr/#{name}/#{env}/log/run", log_script
145
+ if env == "next"
146
+ write_to_file "/etc/sv/harbr/#{name}/#{env}/run", run_script
147
+ write_to_file "/etc/sv/harbr/#{name}/#{env}/log/run", log_script
148
+ `chmod +x /etc/sv/harbr/#{name}/#{env}/run`
149
+ `chmod +x /etc/sv/harbr/#{name}/#{env}/log/run`
150
+ end
151
+
152
+ if env == "current"
153
+ write_to_file "/etc/sv/harbr/#{name}/run", run_script
154
+ write_to_file "/etc/sv/harbr/#{name}/log/run", log_script
155
+ `chmod +x /etc/sv/harbr/#{name}/run`
156
+ `chmod +x /etc/sv/harbr/#{name}/log/run`
157
+ end
144
158
 
145
- `chmod +x /etc/sv/harbr/#{name}/#{env}/run`
146
- `chmod +x /etc/sv/harbr/#{name}/#{env}/log/run`
159
+
147
160
  end
148
161
 
149
162
  def link_directories(name, version, env)
163
+ if env == "next"
150
164
  `rm -f /etc/service/#{env}.#{name}`
151
165
  `rm -f /var/harbr/containers/#{name}/#{env}`
152
-
153
166
  `ln -sf /var/harbr/containers/#{name}/versions/#{version} /var/harbr/containers/#{name}/#{env}`
154
167
  `ln -sf /etc/sv/harbr/#{name}/#{env} /etc/service/#{env}.#{name}`
168
+ end
169
+
170
+ if env == "current"
171
+ `rm -f /etc/service/#{name}`
172
+ `rm -f /var/harbr/containers/#{name}`
173
+ `ln -sf /var/harbr/containers/#{name}/versions/#{version} /var/harbr/containers/#{name}`
174
+ `ln -sf /etc/sv/harbr/#{name}/#{env} /etc/service/#{name}`
175
+ end
176
+
155
177
  end
156
178
 
157
179
  def sync_live_data_if_next(name)
data/lib/harbr/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Harbr
4
- VERSION = "0.1.50"
4
+ VERSION = "0.1.52"
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: harbr
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.50
4
+ version: 0.1.52
5
5
  platform: ruby
6
6
  authors:
7
7
  - Delaney Kuldvee Burke