kitsune-kit 0.1.0 → 0.1.1
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/README.md +1 -1
- data/bin/kit +0 -1
- data/lib/kitsune/kit/cli.rb +1 -0
- data/lib/kitsune/kit/commands/bootstrap.rb +11 -8
- data/lib/kitsune/kit/commands/bootstrap_docker.rb +1 -1
- data/lib/kitsune/kit/commands/setup_docker_prereqs.rb +1 -0
- data/lib/kitsune/kit/commands/setup_postgres_docker.rb +2 -2
- data/lib/kitsune/kit/env_loader.rb +2 -2
- data/lib/kitsune/kit/version.rb +1 -1
- metadata +86 -30
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 72a0142a3c968422bbf176e7c9166607d0cdb77bb98ad7dea178465d432be628
|
4
|
+
data.tar.gz: 3231de17dda946adabd4f1ed6cc3811a03bcf42e61ffce251532871cabdb51c6
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0f29ff9c74c0b2bfd9c224077ef958e661f13795e59ffae3d4f81f23181a38546cbf192056a35d1888cbfa55606d067cd1ae2f615c5c988ef38e291ddd02a359
|
7
|
+
data.tar.gz: 4186a5914e1e8746691d01c2432591dc51e2b395ccd3c5b08b3bf95327d2be175fd36cf55eece21cc0872ad548789b6ba53a12a7644432f277df18aadabe21d0
|
data/README.md
CHANGED
data/bin/kit
CHANGED
data/lib/kitsune/kit/cli.rb
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
require "thor"
|
2
|
-
require "
|
2
|
+
require "stringio"
|
3
3
|
require_relative "../defaults"
|
4
4
|
require_relative "../options_builder"
|
5
5
|
require_relative "../provisioner"
|
@@ -78,18 +78,21 @@ module Kitsune
|
|
78
78
|
end
|
79
79
|
|
80
80
|
def fetch_droplet_ip
|
81
|
-
|
82
|
-
|
83
|
-
|
81
|
+
out = StringIO.new
|
82
|
+
$stdout = out
|
83
|
+
begin
|
84
|
+
Kitsune::Kit::CLI.start(["provision", "create"])
|
85
|
+
ensure
|
86
|
+
$stdout = STDOUT
|
84
87
|
end
|
85
|
-
|
86
|
-
ip =
|
87
|
-
abort "❌ Could not detect droplet IP!" if ip.empty?
|
88
|
+
|
89
|
+
ip = out.string[/(\d{1,3}\.){3}\d{1,3}/]
|
90
|
+
abort "❌ Could not detect droplet IP!" if ip.nil? || ip.empty?
|
88
91
|
ip
|
89
92
|
end
|
90
93
|
|
91
94
|
def run_cli(command, droplet_ip, filled_options)
|
92
|
-
say "▶️ Running: kitsune kit #{command} --server-ip #{droplet_ip}", :blue
|
95
|
+
say "\n▶️ Running: kitsune kit #{command} --server-ip #{droplet_ip}", :blue
|
93
96
|
subcommand, action = command.split(" ", 2)
|
94
97
|
Kitsune::Kit::CLI.start([
|
95
98
|
subcommand, action,
|
@@ -47,7 +47,7 @@ module Kitsune
|
|
47
47
|
end
|
48
48
|
|
49
49
|
def run_cli(command, filled_options)
|
50
|
-
say "▶️ Running: kitsune kit #{command} --server-ip #{filled_options[:server_ip]}", :blue
|
50
|
+
say "\n▶️ Running: kitsune kit #{command} --server-ip #{filled_options[:server_ip]}", :blue
|
51
51
|
|
52
52
|
subcommand, action = command.split(" ", 2)
|
53
53
|
Kitsune::Kit::CLI.start([
|
@@ -86,6 +86,7 @@ module Kitsune
|
|
86
86
|
sudo apt-get install -y "\${TARGET_PKGS[@]}"
|
87
87
|
sudo touch "$AFTER_FILE" && echo " - marker created at $AFTER_FILE"
|
88
88
|
else
|
89
|
+
echo "🔁 Already set up, ensuring latest"
|
89
90
|
sudo apt-get update -y
|
90
91
|
sudo apt-get install -y "\${TARGET_PKGS[@]}"
|
91
92
|
echo "✅ Prerequisites are current"
|
@@ -168,7 +168,7 @@ module Kitsune
|
|
168
168
|
success = true
|
169
169
|
break
|
170
170
|
else
|
171
|
-
say "⏳
|
171
|
+
say "⏳ PostgreSQL not ready yet, retrying in 5 seconds... (#{attempt + 1}/#{max_attempts})", :yellow
|
172
172
|
sleep 5
|
173
173
|
end
|
174
174
|
end
|
@@ -216,7 +216,7 @@ module Kitsune
|
|
216
216
|
sudo ufw delete allow 5432 || true
|
217
217
|
fi
|
218
218
|
else
|
219
|
-
echo "
|
219
|
+
echo "💡 Nothing to rollback"
|
220
220
|
fi
|
221
221
|
|
222
222
|
echo "✅ Rollback completed"
|
@@ -1,5 +1,4 @@
|
|
1
1
|
require "dotenv"
|
2
|
-
|
3
2
|
module Kitsune
|
4
3
|
module Kit
|
5
4
|
class EnvLoader
|
@@ -19,7 +18,8 @@ module Kitsune
|
|
19
18
|
|
20
19
|
if found
|
21
20
|
Dotenv.load(found)
|
22
|
-
puts "🧪 Loaded Kitsune environment from #{found}"
|
21
|
+
puts "🧪 Loaded Kitsune environment from #{found.light_cyan}"
|
22
|
+
puts "=======================================================================\n".light_cyan
|
23
23
|
else
|
24
24
|
puts "⚠️ No Kitsune infra config found for environment '#{env}' (looked for infra.#{env}.env and infra.env)"
|
25
25
|
end
|
data/lib/kitsune/kit/version.rb
CHANGED
metadata
CHANGED
@@ -1,113 +1,169 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: kitsune-kit
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Omar Herrera
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2025-
|
11
|
+
date: 2025-05-01 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: net-ssh
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- - "
|
17
|
+
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: '
|
19
|
+
version: '7.2'
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
|
-
- - "
|
24
|
+
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: '
|
26
|
+
version: '7.2'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: ed25519
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
|
-
- - "
|
31
|
+
- - "~>"
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: '
|
33
|
+
version: '1.3'
|
34
34
|
type: :runtime
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
|
-
- - "
|
38
|
+
- - "~>"
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version: '
|
40
|
+
version: '1.3'
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: bcrypt_pbkdf
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
|
-
- - "
|
45
|
+
- - "~>"
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version: '
|
47
|
+
version: '1.1'
|
48
48
|
type: :runtime
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
|
-
- - "
|
52
|
+
- - "~>"
|
53
53
|
- !ruby/object:Gem::Version
|
54
|
-
version: '
|
54
|
+
version: '1.1'
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
name: dotenv
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
|
-
- - "
|
59
|
+
- - "~>"
|
60
60
|
- !ruby/object:Gem::Version
|
61
|
-
version: '0'
|
61
|
+
version: '3.0'
|
62
62
|
type: :runtime
|
63
63
|
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
|
-
- - "
|
66
|
+
- - "~>"
|
67
67
|
- !ruby/object:Gem::Version
|
68
|
-
version: '0'
|
68
|
+
version: '3.0'
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: droplet_kit
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|
72
72
|
requirements:
|
73
|
-
- - "
|
73
|
+
- - "~>"
|
74
74
|
- !ruby/object:Gem::Version
|
75
|
-
version: '
|
75
|
+
version: '3.17'
|
76
76
|
type: :runtime
|
77
77
|
prerelease: false
|
78
78
|
version_requirements: !ruby/object:Gem::Requirement
|
79
79
|
requirements:
|
80
|
-
- - "
|
80
|
+
- - "~>"
|
81
81
|
- !ruby/object:Gem::Version
|
82
|
-
version: '
|
82
|
+
version: '3.17'
|
83
83
|
- !ruby/object:Gem::Dependency
|
84
84
|
name: thor
|
85
85
|
requirement: !ruby/object:Gem::Requirement
|
86
86
|
requirements:
|
87
|
-
- - "
|
87
|
+
- - "~>"
|
88
88
|
- !ruby/object:Gem::Version
|
89
|
-
version: '
|
89
|
+
version: '1.3'
|
90
90
|
type: :runtime
|
91
91
|
prerelease: false
|
92
92
|
version_requirements: !ruby/object:Gem::Requirement
|
93
93
|
requirements:
|
94
|
-
- - "
|
94
|
+
- - "~>"
|
95
95
|
- !ruby/object:Gem::Version
|
96
|
-
version: '
|
96
|
+
version: '1.3'
|
97
|
+
- !ruby/object:Gem::Dependency
|
98
|
+
name: colorize
|
99
|
+
requirement: !ruby/object:Gem::Requirement
|
100
|
+
requirements:
|
101
|
+
- - "~>"
|
102
|
+
- !ruby/object:Gem::Version
|
103
|
+
version: 1.0.4
|
104
|
+
type: :runtime
|
105
|
+
prerelease: false
|
106
|
+
version_requirements: !ruby/object:Gem::Requirement
|
107
|
+
requirements:
|
108
|
+
- - "~>"
|
109
|
+
- !ruby/object:Gem::Version
|
110
|
+
version: 1.0.4
|
97
111
|
- !ruby/object:Gem::Dependency
|
98
112
|
name: pry
|
99
113
|
requirement: !ruby/object:Gem::Requirement
|
100
114
|
requirements:
|
101
|
-
- - "
|
115
|
+
- - "~>"
|
116
|
+
- !ruby/object:Gem::Version
|
117
|
+
version: '0.14'
|
118
|
+
type: :development
|
119
|
+
prerelease: false
|
120
|
+
version_requirements: !ruby/object:Gem::Requirement
|
121
|
+
requirements:
|
122
|
+
- - "~>"
|
123
|
+
- !ruby/object:Gem::Version
|
124
|
+
version: '0.14'
|
125
|
+
- !ruby/object:Gem::Dependency
|
126
|
+
name: pry-stack_explorer
|
127
|
+
requirement: !ruby/object:Gem::Requirement
|
128
|
+
requirements:
|
129
|
+
- - "~>"
|
130
|
+
- !ruby/object:Gem::Version
|
131
|
+
version: 0.6.0
|
132
|
+
type: :development
|
133
|
+
prerelease: false
|
134
|
+
version_requirements: !ruby/object:Gem::Requirement
|
135
|
+
requirements:
|
136
|
+
- - "~>"
|
137
|
+
- !ruby/object:Gem::Version
|
138
|
+
version: 0.6.0
|
139
|
+
- !ruby/object:Gem::Dependency
|
140
|
+
name: rspec
|
141
|
+
requirement: !ruby/object:Gem::Requirement
|
142
|
+
requirements:
|
143
|
+
- - "~>"
|
144
|
+
- !ruby/object:Gem::Version
|
145
|
+
version: '3.12'
|
146
|
+
type: :development
|
147
|
+
prerelease: false
|
148
|
+
version_requirements: !ruby/object:Gem::Requirement
|
149
|
+
requirements:
|
150
|
+
- - "~>"
|
151
|
+
- !ruby/object:Gem::Version
|
152
|
+
version: '3.12'
|
153
|
+
- !ruby/object:Gem::Dependency
|
154
|
+
name: aruba
|
155
|
+
requirement: !ruby/object:Gem::Requirement
|
156
|
+
requirements:
|
157
|
+
- - "~>"
|
102
158
|
- !ruby/object:Gem::Version
|
103
|
-
version: '
|
159
|
+
version: '2.2'
|
104
160
|
type: :development
|
105
161
|
prerelease: false
|
106
162
|
version_requirements: !ruby/object:Gem::Requirement
|
107
163
|
requirements:
|
108
|
-
- - "
|
164
|
+
- - "~>"
|
109
165
|
- !ruby/object:Gem::Version
|
110
|
-
version: '
|
166
|
+
version: '2.2'
|
111
167
|
description: Kitsune Kit is a CLI toolkit that automates the provisioning, configuration,
|
112
168
|
and Docker setup of remote servers, especially tailored for Ruby developers using
|
113
169
|
Kamal. Includes rollback features and multi-environment support.
|