harbr 0.0.77 → 0.0.78

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f40ae935a661bc9e3999ca1083921bbad577ec219b1270eb7bda6c15bcfaf785
4
- data.tar.gz: 8ccc4d896eccf86d8f94ab9f11f8836d0dfb0c7072ed5e5306b1257742b80540
3
+ metadata.gz: 3cfbe8ee63ba9673159a4cbe99bff5508886e603274bdfe7eca373e4fad1cf1d
4
+ data.tar.gz: 27e468bb49b774ecb556fa6553e9b2134a98a06c7e3bd3a312cb45c848ddfc5d
5
5
  SHA512:
6
- metadata.gz: f4273c533d657ba4f96a3d896b1400a1ca9f7451f39a4233eb77b1f8ec29bb1d2fa44027a875202642d185beb5e1bd003dc7b41090de3eb6fac26970c8b00b88
7
- data.tar.gz: cb7b2910e9f39ef1f35c360f83ca0a63221658001a56313b4456c51be61513024750be379be3b41b9d8da6ecc74a0c5465984b619c2c265fb791df495ff31aa9
6
+ metadata.gz: 53e4d7f9397d59ecfd496c717b1fb983f29cd6b1c2a81ba9225cae566c8c1f09d8f99ab1e3c3bb5ed3c4897eee7f738f76a65b79b6b2216ad4d6fc1521c75783
7
+ data.tar.gz: 1dca696d45363ca0645f94b8b6813d9f8c6e1e3d4b86e734a8f585c0371cd86867c1e06dc0fb817bde2c3bc9fbe92b2cbd1c39c1d3480323d6f7fb9d8f65b3b3
data/exe/harbr CHANGED
@@ -43,7 +43,7 @@ class HarbrCLI < Thor
43
43
  end
44
44
 
45
45
  def scan_for_containers
46
- Dir.glob("/var/harbr/*").each_with_object({}) do |container_path, hash|
46
+ Dir.glob("/var/harbr/containers/*").each_with_object({}) do |container_path, hash|
47
47
  next unless File.directory?(container_path)
48
48
  container_name = File.basename(container_path)
49
49
  versions = Dir.glob("#{container_path}/versions/*").select { |path| File.directory?(path) }
@@ -76,7 +76,6 @@ class HarbrCLI < Thor
76
76
  else
77
77
  Harbr::Next::Job.perform_async(container, version)
78
78
  puts "deploy next version #{version} of #{container}"
79
-
80
79
  end
81
80
  end
82
81
 
@@ -154,7 +153,7 @@ class HarbrCLI < Thor
154
153
  desc "setup", "Set up Harbr environment"
155
154
  def setup
156
155
  # Check and create /var/harbr directory
157
- check_and_create_directory("/var/harbr")
156
+ check_and_create_directory("/var/harbr/containers")
158
157
 
159
158
  # Check for Ruby, Traefik, and runit, and install if necessary
160
159
  install_with_snap("ruby") unless command_exists?("ruby")
@@ -170,14 +169,14 @@ class HarbrCLI < Thor
170
169
  display_containers_table(container_repo.all)
171
170
  end
172
171
 
173
- desc "monitor", "Monitor /var/harbr for new container versions"
172
+ desc "monitor", "Monitor /var/harbr/comtainers for new container versions"
174
173
  def monitor
175
- puts "Monitoring /var/harbr for new container versions..."
174
+ puts "Monitoring /var/harbr/containers for new container versions..."
176
175
  last_known_state = {}
177
176
 
178
177
  loop do
179
178
  current_state = scan_for_containers
180
- new_versions = current_state.keys - last_known_state.keys
179
+ new_versions = current_state.keys - last_known_state.keysß
181
180
 
182
181
  new_versions.each do |container_version|
183
182
  container, version = container_version.split("/versions/")
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.77"
4
+ VERSION = "0.0.78"
5
5
  end
data/lib/harbr.rb CHANGED
@@ -14,7 +14,7 @@ require_relative "harbr/next/job"
14
14
 
15
15
  # Harbr module for managing containers, jobs, ports, and 2s
16
16
  module Harbr
17
- DEFAULT_DIRECTORY = "/var/harbr"
17
+ DEFAULT_DIRECTORY = "/var/harbr/containers"
18
18
  DEFAULT_DIRECTORY_DATA_DIR = "#{DEFAULT_DIRECTORY}/.data"
19
19
  class Error < StandardError; end
20
20
 
@@ -22,84 +22,7 @@ module Harbr
22
22
  directories = Dir.glob("#{path}/*").select { |entry| File.directory?(entry) }
23
23
  directories.max_by { |entry| entry[/\d+/].to_i }
24
24
  end
25
-
26
- module Runit
27
- class Run
28
- def initialize(container, port)
29
- @container_name = container
30
- @port = port
31
- end
32
-
33
- def to_s
34
- <<~SCRIPT
35
- #!/bin/sh
36
- exec 2>&1
37
- cd /var/harbr/#{@container_name}/current
38
- exec ./exe/run #{@port}
39
- SCRIPT
40
- end
41
-
42
- def link
43
- "ln -s /etc/sv/harbr/#{@container_name} /etc/service/#{@container_name}"
44
- end
45
- end
46
-
47
- class Log
48
- def initialize(container, port)
49
- @container_name = container
50
- end
51
-
52
- def to_s
53
- <<~SCRIPT
54
- #!/bin/sh
55
- exec svlogd -tt /var/log/harbr/#{@container_name}/next/
56
- SCRIPT
57
- end
58
-
59
- def link
60
- "ln -s /etc/sv/harbr/#{@container_name}/log /etc/service/#{@container_name}/log"
61
- end
62
- end
63
-
64
- module Next
65
- class Run
66
- def initialize(container, port)
67
- @container_name = container
68
- @port = port
69
- end
70
-
71
- def to_s
72
- <<~SCRIPT
73
- #!/bin/sh
74
- exec 2>&1
75
- cd /var/harbr/#{@container_name}/next
76
- exec ./exe/run #{@port}
77
- SCRIPT
78
- end
79
-
80
- def link
81
- "ln -s /etc/sv/harbr/#{@container_name}/next /etc/service/next.#{@container_name}"
82
- end
83
- end
84
-
85
- class Log
86
- def initialize(container, port)
87
- @container_name = container
88
- end
89
-
90
- def to_s
91
- <<~SCRIPT
92
- #!/bin/sh
93
- exec svlogd -tt /var/log/harbr/#{@container_name}/next/
94
- SCRIPT
95
- end
96
-
97
- def link
98
- "ln -s /etc/sv/harbr/#{container_name}/next/log/ /etc/service/next.#{container_name}/log"
99
- end
100
- end
101
- end
102
- end
25
+
103
26
  end
104
27
 
105
28
  Dddr.configure do |config|
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: harbr
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.77
4
+ version: 0.0.78
5
5
  platform: ruby
6
6
  authors:
7
7
  - Delaney Kuldvee Burke
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2023-12-13 00:00:00.000000000 Z
11
+ date: 2023-12-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: listen