kuby-core 0.8.1 → 0.9.0
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/CHANGELOG.md +12 -1
- data/README.md +11 -1
- data/bin/kuby +4 -0
- data/kuby-core.gemspec +5 -2
- data/lib/kuby.rb +46 -18
- data/lib/kuby/basic_logger.rb +13 -0
- data/lib/kuby/cli_base.rb +81 -8
- data/lib/kuby/commands.rb +220 -0
- data/lib/kuby/definition.rb +1 -3
- data/lib/kuby/dev_setup.rb +255 -0
- data/lib/kuby/docker.rb +1 -0
- data/lib/kuby/docker/bundler_phase.rb +3 -3
- data/lib/kuby/docker/cli.rb +13 -1
- data/lib/kuby/docker/dev_spec.rb +131 -0
- data/lib/kuby/docker/dockerfile.rb +16 -1
- data/lib/kuby/docker/layer_stack.rb +4 -0
- data/lib/kuby/docker/local_tags.rb +4 -0
- data/lib/kuby/docker/metadata.rb +0 -22
- data/lib/kuby/docker/setup_phase.rb +3 -2
- data/lib/kuby/docker/spec.rb +31 -5
- data/lib/kuby/environment.rb +10 -1
- data/lib/kuby/kubernetes.rb +9 -9
- data/lib/kuby/kubernetes/deploy_task.rb +4 -0
- data/lib/kuby/kubernetes/deployer.rb +63 -11
- data/lib/kuby/kubernetes/{minikube_provider.rb → docker_desktop_provider.rb} +4 -4
- data/lib/kuby/kubernetes/provider.rb +8 -4
- data/lib/kuby/kubernetes/spec.rb +23 -22
- data/lib/kuby/plugin_registry.rb +27 -0
- data/lib/kuby/plugins/rails_app/generators/kuby.rb +3 -15
- data/lib/kuby/plugins/rails_app/plugin.rb +230 -40
- data/lib/kuby/rails_commands.rb +89 -0
- data/lib/kuby/railtie.rb +0 -4
- data/lib/kuby/tasks.rb +76 -23
- data/lib/kuby/version.rb +1 -1
- data/spec/docker/metadata_spec.rb +0 -108
- data/spec/docker/spec_spec.rb +266 -0
- data/spec/spec_helper.rb +8 -1
- metadata +44 -9
- data/lib/kuby/tasks/kuby.rake +0 -70
data/spec/spec_helper.rb
CHANGED
@@ -22,6 +22,8 @@ require 'support/docker/fake_cli'
|
|
22
22
|
#
|
23
23
|
# See http://rubydoc.info/gems/rspec-core/RSpec/Core/Configuration
|
24
24
|
|
25
|
+
Kuby.register_package(:fake_package)
|
26
|
+
|
25
27
|
module SpecHelpers
|
26
28
|
extend RSpec::SharedContext
|
27
29
|
|
@@ -52,10 +54,15 @@ module SpecHelpers
|
|
52
54
|
end
|
53
55
|
|
54
56
|
image_url context.docker_image_url
|
57
|
+
|
58
|
+
# puma isn't in our gemspec or Gemfile, so we have to manually
|
59
|
+
# set the webserver here (this won't be a problem for actual
|
60
|
+
# rails apps)
|
61
|
+
webserver_phase.webserver = :puma
|
55
62
|
end
|
56
63
|
|
57
64
|
kubernetes do
|
58
|
-
provider :
|
65
|
+
provider :docker_desktop
|
59
66
|
|
60
67
|
add_plugin :rails_app do
|
61
68
|
root File.expand_path(File.join(*%w(. dummy)), __dir__)
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: kuby-core
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.9.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Cameron Dutro
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-
|
11
|
+
date: 2020-09-10 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: colorize
|
@@ -38,6 +38,34 @@ dependencies:
|
|
38
38
|
- - "~>"
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: '0.1'
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: gli
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - "~>"
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '2.0'
|
48
|
+
type: :runtime
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - "~>"
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '2.0'
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: helm-cli
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - "~>"
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '0.3'
|
62
|
+
type: :runtime
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - "~>"
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: '0.3'
|
41
69
|
- !ruby/object:Gem::Dependency
|
42
70
|
name: krane
|
43
71
|
requirement: !ruby/object:Gem::Requirement
|
@@ -92,28 +120,28 @@ dependencies:
|
|
92
120
|
requirements:
|
93
121
|
- - ">="
|
94
122
|
- !ruby/object:Gem::Version
|
95
|
-
version: '0.
|
123
|
+
version: '0.6'
|
96
124
|
type: :runtime
|
97
125
|
prerelease: false
|
98
126
|
version_requirements: !ruby/object:Gem::Requirement
|
99
127
|
requirements:
|
100
128
|
- - ">="
|
101
129
|
- !ruby/object:Gem::Version
|
102
|
-
version: '0.
|
130
|
+
version: '0.6'
|
103
131
|
- !ruby/object:Gem::Dependency
|
104
132
|
name: kubernetes-cli
|
105
133
|
requirement: !ruby/object:Gem::Requirement
|
106
134
|
requirements:
|
107
135
|
- - "~>"
|
108
136
|
- !ruby/object:Gem::Version
|
109
|
-
version: '0.
|
137
|
+
version: '0.3'
|
110
138
|
type: :runtime
|
111
139
|
prerelease: false
|
112
140
|
version_requirements: !ruby/object:Gem::Requirement
|
113
141
|
requirements:
|
114
142
|
- - "~>"
|
115
143
|
- !ruby/object:Gem::Version
|
116
|
-
version: '0.
|
144
|
+
version: '0.3'
|
117
145
|
- !ruby/object:Gem::Dependency
|
118
146
|
name: railties
|
119
147
|
requirement: !ruby/object:Gem::Requirement
|
@@ -159,7 +187,8 @@ dependencies:
|
|
159
187
|
description: Deploy your Rails app onto Kubernetes the easy way.
|
160
188
|
email:
|
161
189
|
- camertron@gmail.com
|
162
|
-
executables:
|
190
|
+
executables:
|
191
|
+
- kuby
|
163
192
|
extensions: []
|
164
193
|
extra_rdoc_files: []
|
165
194
|
files:
|
@@ -168,11 +197,14 @@ files:
|
|
168
197
|
- LICENSE
|
169
198
|
- README.md
|
170
199
|
- Rakefile
|
200
|
+
- bin/kuby
|
171
201
|
- kuby-core.gemspec
|
172
202
|
- lib/kuby.rb
|
173
203
|
- lib/kuby/basic_logger.rb
|
174
204
|
- lib/kuby/cli_base.rb
|
205
|
+
- lib/kuby/commands.rb
|
175
206
|
- lib/kuby/definition.rb
|
207
|
+
- lib/kuby/dev_setup.rb
|
176
208
|
- lib/kuby/docker.rb
|
177
209
|
- lib/kuby/docker/alpine.rb
|
178
210
|
- lib/kuby/docker/assets_phase.rb
|
@@ -181,6 +213,7 @@ files:
|
|
181
213
|
- lib/kuby/docker/copy_phase.rb
|
182
214
|
- lib/kuby/docker/credentials.rb
|
183
215
|
- lib/kuby/docker/debian.rb
|
216
|
+
- lib/kuby/docker/dev_spec.rb
|
184
217
|
- lib/kuby/docker/dockerfile.rb
|
185
218
|
- lib/kuby/docker/errors.rb
|
186
219
|
- lib/kuby/docker/inline_layer.rb
|
@@ -208,15 +241,16 @@ files:
|
|
208
241
|
- lib/kuby/kubernetes/deploy_task.rb
|
209
242
|
- lib/kuby/kubernetes/deployer.rb
|
210
243
|
- lib/kuby/kubernetes/docker_config.rb
|
244
|
+
- lib/kuby/kubernetes/docker_desktop_provider.rb
|
211
245
|
- lib/kuby/kubernetes/errors.rb
|
212
246
|
- lib/kuby/kubernetes/manifest.rb
|
213
|
-
- lib/kuby/kubernetes/minikube_provider.rb
|
214
247
|
- lib/kuby/kubernetes/provider.rb
|
215
248
|
- lib/kuby/kubernetes/registry_secret.rb
|
216
249
|
- lib/kuby/kubernetes/spec.rb
|
217
250
|
- lib/kuby/middleware.rb
|
218
251
|
- lib/kuby/middleware/health_check.rb
|
219
252
|
- lib/kuby/plugin.rb
|
253
|
+
- lib/kuby/plugin_registry.rb
|
220
254
|
- lib/kuby/plugins.rb
|
221
255
|
- lib/kuby/plugins/nginx_ingress.rb
|
222
256
|
- lib/kuby/plugins/rails_app.rb
|
@@ -230,12 +264,13 @@ files:
|
|
230
264
|
- lib/kuby/plugins/rails_app/rewrite_db_config.rb
|
231
265
|
- lib/kuby/plugins/rails_app/sqlite.rb
|
232
266
|
- lib/kuby/plugins/rails_app/tasks.rake
|
267
|
+
- lib/kuby/rails_commands.rb
|
233
268
|
- lib/kuby/railtie.rb
|
234
269
|
- lib/kuby/tasks.rb
|
235
|
-
- lib/kuby/tasks/kuby.rake
|
236
270
|
- lib/kuby/trailing_hash.rb
|
237
271
|
- lib/kuby/version.rb
|
238
272
|
- spec/docker/metadata_spec.rb
|
273
|
+
- spec/docker/spec_spec.rb
|
239
274
|
- spec/docker/timestamp_tag_spec.rb
|
240
275
|
- spec/dummy/Gemfile
|
241
276
|
- spec/dummy/Gemfile.lock
|
data/lib/kuby/tasks/kuby.rake
DELETED
@@ -1,70 +0,0 @@
|
|
1
|
-
require 'shellwords'
|
2
|
-
|
3
|
-
namespace :kuby do
|
4
|
-
def tasks
|
5
|
-
Kuby.load!
|
6
|
-
@tasks ||= Kuby::Tasks.new(Kuby.environment)
|
7
|
-
end
|
8
|
-
|
9
|
-
task :dockerfile do
|
10
|
-
tasks.print_dockerfile
|
11
|
-
end
|
12
|
-
|
13
|
-
task :build do
|
14
|
-
tasks.build
|
15
|
-
end
|
16
|
-
|
17
|
-
task :run do
|
18
|
-
tasks.run
|
19
|
-
end
|
20
|
-
|
21
|
-
task :push do
|
22
|
-
tasks.push
|
23
|
-
end
|
24
|
-
|
25
|
-
task :resources do
|
26
|
-
tasks.print_resources
|
27
|
-
end
|
28
|
-
|
29
|
-
task :kubectl, [:cmd] do |_, args|
|
30
|
-
tasks.kubectl(Shellwords.shellsplit(args[:cmd]))
|
31
|
-
end
|
32
|
-
|
33
|
-
task :deploy do
|
34
|
-
tasks.deploy
|
35
|
-
end
|
36
|
-
|
37
|
-
task :rollback do
|
38
|
-
tasks.rollback
|
39
|
-
end
|
40
|
-
|
41
|
-
task :kubeconfig do
|
42
|
-
tasks.print_kubeconfig
|
43
|
-
end
|
44
|
-
|
45
|
-
task :setup do
|
46
|
-
tasks.setup
|
47
|
-
end
|
48
|
-
|
49
|
-
namespace :remote do
|
50
|
-
task :logs do
|
51
|
-
tasks.remote_logs
|
52
|
-
end
|
53
|
-
|
54
|
-
task :status do
|
55
|
-
tasks.remote_status
|
56
|
-
end
|
57
|
-
|
58
|
-
task :shell do
|
59
|
-
tasks.remote_shell
|
60
|
-
end
|
61
|
-
|
62
|
-
task :console do
|
63
|
-
tasks.remote_console
|
64
|
-
end
|
65
|
-
|
66
|
-
task :dbconsole do
|
67
|
-
tasks.remote_dbconsole
|
68
|
-
end
|
69
|
-
end
|
70
|
-
end
|