harbr 0.1.50 → 0.1.53

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: 1ffce72f6f98f51fc8dc5e57b77d325e7ec1a9dc6598def839a8c2f558e25fe4
4
+ data.tar.gz: '09f0e701182b74f04292e39c51910378952fc402642dbaa130b06cd4eefd2e42'
5
5
  SHA512:
6
- metadata.gz: 06b2f41d6c688caf22f5c8b91dfadbc1d8116b6d12b99b117ed6069e6896cb9779938d3d5884fc5434433473ba446c0021c8868a85e14644a5e4c90ffa8ee71e
7
- data.tar.gz: 44b75738862cec2529b340c83cc77b02ef05cc508365222e8d11d06057b7432e4c06e6cc39634f8e86f0c300f8422538efcf770cc433bf7c60bbbeeb38b1c85f
6
+ metadata.gz: 2f90bd5caaf758c5aff69d470baff77b4c2effa6fc5595bea179920a87fdcd4edf0fd199e3f5d1b11a3259769de0d209ea823de3bb75a0f41f102be4b6ddf327
7
+ data.tar.gz: daed009e2420fc5e7d96549687662d05e5b4e46d03bfd27f25055f45a723d078b4b06198be48611ea56caf2d1652f8989c51dd6705212088ad067522066f4e04
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}/current`
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.53"
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.53
5
5
  platform: ruby
6
6
  authors:
7
7
  - Delaney Kuldvee Burke