harbr 0.0.23 → 0.0.25

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 +4 -4
  2. data/lib/harbr/version.rb +1 -1
  3. data/lib/harbr.rb +43 -19
  4. metadata +1 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 28ae1579499a1e8067034cdd4f45a85e26f97b7ebcf0a20c2d4842c01b077c3b
4
- data.tar.gz: 0a31b608754ae15f90872986a1ee811da8e28355aef7e70b74a12ea4bc24c018
3
+ metadata.gz: e2e645784be5d177119a608de05eee3f53b12a579007c4b3fc2da7137d1fccaa
4
+ data.tar.gz: 7b8804b25fe8a81b2f4f81d0bb486c3b000d9d95147484839b48a25dae5950ae
5
5
  SHA512:
6
- metadata.gz: cd7f2f81374f336392ffe2b8ce9f081febd9c775bb6f046958093976f8ace0d1f74581a7c2bd9f64b7a93803363a5d9cb9dd6c405d4016cafc370269db93bdb8
7
- data.tar.gz: 6d0ec91b81f725066d5511c3309d0f1cd9b5d57cabeec5bf0432cad28a803b01a05fa8b90f564a3b0f7cad481cb2e087a5a3a7d49a73d392301b8fe4c9b81db2
6
+ metadata.gz: d7f648a23cf7b0f0779c8369ac21ae33bf1633302799b88faf9e7e565e725b63c0053577295a7c798be8eae1389c52e3cb238c0fa8b23f5e2504b73a5f931e8c
7
+ data.tar.gz: 88f8533124e4b01fb2b026c278a041651728d4442eefd549ca3d200a45d856f6ac77ad869a47fa830f0cd6dc15c74a4f9f50b296da69d25143b59ebc4620cd0a
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.0.23"
4
+ VERSION = "0.0.25"
5
5
  end
data/lib/harbr.rb CHANGED
@@ -23,25 +23,7 @@ module Harbr
23
23
  include SuckerPunch::Job
24
24
 
25
25
  def perform(manifest)
26
-
27
- puts "Starting container: #{manifest.name}"
28
-
29
- Dddr.configure do |config|
30
- config.data_dir = Harbr::DEFAULT_DIRECTORY_DATA_DIR
31
- end
32
-
33
- pool = Harbr::Port::Pool.new
34
- port = pool.get_port(manifest.host)
35
-
36
- create_a_service(manifest.name, port.number)
37
-
38
-
39
- sleep 5
40
- system("sv restart #{manifest.name}")
41
- sleep 5
42
- system("sv status #{manifest.name}")
43
- puts "Started container: #{manifest.name}"
44
-
26
+ run_container(manifest)
45
27
  end
46
28
 
47
29
 
@@ -97,11 +79,53 @@ module Harbr
97
79
  system("ln -s /etc/sv/harbr/#{container_name} /etc/service/#{container_name}") unless File.exist?("/etc/service/#{container_name}")
98
80
  end
99
81
 
82
+ def run_container(manifest)
83
+
84
+ puts "Starting container: #{manifest.name}"
85
+
86
+ Dddr.configure do |config|
87
+ config.data_dir = Harbr::DEFAULT_DIRECTORY_DATA_DIR
88
+ end
89
+
90
+ pool = Harbr::Port::Pool.new
91
+ port = pool.get_port(manifest.host)
92
+
93
+ create_a_service(manifest.name, port.number)
94
+
95
+
96
+ sleep 5
97
+ system("sv restart #{manifest.name}")
98
+ sleep 5
99
+ system("sv status #{manifest.name}")
100
+ puts "Started container: #{manifest.name}"
101
+
102
+
103
+ container = Container.new
104
+ containers = Container::Repository.new
105
+
106
+ container.name = manifest.name
107
+ container.host_header = manifest.host
108
+ container.ip = manifest.ip
109
+ container.port = port.number
110
+ containers.add(container) unless containers.find_by_header(manifest.host)
111
+
112
+ puts "Started container: #{manifest.name}"
113
+
114
+ end
115
+
116
+
100
117
 
101
118
  end
102
119
 
103
120
  include Dddr::Entity
104
121
  attr_accessor :name, :host_header, :ip, :port
122
+
123
+ queries do
124
+ def find_by_header(host_header)
125
+ all.find { |container| container.host_header.downcase == host_header.downcase }
126
+ end
127
+ end
128
+
105
129
  end
106
130
 
107
131
  class Port
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.0.23
4
+ version: 0.0.25
5
5
  platform: ruby
6
6
  authors:
7
7
  - Delaney Kuldvee Burke