kubes 0.4.3 → 0.5.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +22 -0
- data/docs/_docs/config/reference.md +1 -0
- data/docs/_docs/config/skip.md +1 -1
- data/docs/_docs/dsl/multiple-resources.md +3 -3
- data/docs/_docs/dsl/resources/job.md +62 -0
- data/docs/_docs/extra-env/dsl.md +2 -2
- data/docs/_docs/extra-env/yaml.md +1 -1
- data/docs/_docs/generators.md +41 -0
- data/docs/_docs/helpers.md +10 -3
- data/docs/_docs/helpers/aws.md +15 -0
- data/docs/_docs/helpers/aws/iam-role.md +91 -0
- data/docs/_docs/helpers/aws/secrets.md +129 -0
- data/docs/_docs/helpers/aws/ssm.md +76 -0
- data/docs/_docs/helpers/custom.md +40 -0
- data/docs/_docs/helpers/google.md +17 -0
- data/docs/_docs/helpers/google/secrets.md +76 -0
- data/docs/_docs/helpers/google/service-account.md +60 -0
- data/docs/_docs/intro.md +3 -1
- data/docs/_docs/intro/docker-image.md +66 -0
- data/docs/_docs/layering/merge.md +1 -1
- data/docs/_docs/learn/dsl/delete.md +10 -2
- data/docs/_docs/learn/dsl/review-project.md +2 -2
- data/docs/_docs/learn/yaml/delete.md +10 -2
- data/docs/_docs/learn/yaml/review-project.md +2 -2
- data/docs/_docs/patterns/clock-web-worker.md +3 -3
- data/docs/_docs/patterns/migrations.md +1 -1
- data/docs/_docs/patterns/secrets.md +0 -2
- data/docs/_docs/yaml.md +2 -2
- data/docs/_includes/commands.html +2 -2
- data/docs/_includes/helpers/base64.md +1 -0
- data/docs/_includes/layering/layers.md +1 -1
- data/docs/_includes/sidebar.html +23 -1
- data/docs/_reference/kubes-delete.md +1 -1
- data/docs/_reference/kubes-exec.md +17 -1
- data/docs/_reference/kubes-init.md +2 -2
- data/docs/_reference/kubes-logs.md +2 -1
- data/docs/_reference/kubes-new.md +58 -0
- data/docs/_reference/kubes-prune.md +22 -0
- data/docs/reference.md +2 -0
- data/kubes.gemspec +1 -0
- data/lib/kubes.rb +3 -1
- data/lib/kubes/autoloader.rb +9 -0
- data/lib/kubes/cli.rb +9 -1
- data/lib/kubes/cli/build.rb +6 -0
- data/lib/kubes/cli/compile.rb +7 -0
- data/lib/kubes/cli/deploy.rb +1 -6
- data/lib/kubes/cli/exec.rb +5 -1
- data/lib/kubes/cli/help/exec.md +15 -0
- data/lib/kubes/cli/help/new.md +30 -0
- data/lib/kubes/cli/init.rb +1 -1
- data/lib/kubes/cli/new.rb +97 -0
- data/lib/kubes/cli/sequence.rb +1 -0
- data/lib/kubes/command.rb +7 -0
- data/lib/kubes/compiler.rb +19 -21
- data/lib/kubes/compiler/dsl/syntax/job.rb +217 -0
- data/lib/kubes/compiler/shared/custom_helpers.rb +17 -0
- data/lib/kubes/compiler/shared/helpers.rb +12 -3
- data/lib/kubes/compiler/shared/helpers/deprecated.rb +37 -0
- data/lib/kubes/compiler/strategy/base.rb +3 -3
- data/lib/kubes/compiler/strategy/dsl.rb +3 -2
- data/lib/kubes/compiler/strategy/erb.rb +10 -1
- data/lib/kubes/compiler/strategy/erb/yaml_error.rb +60 -0
- data/lib/kubes/compiler/util/normalize.rb +1 -1
- data/lib/kubes/compiler/util/save_file.rb +8 -0
- data/lib/kubes/config.rb +1 -1
- data/lib/kubes/core.rb +6 -0
- data/lib/kubes/docker/strategy/image_name.rb +1 -1
- data/lib/kubes/kubectl.rb +5 -23
- data/lib/kubes/kubectl/batch.rb +27 -33
- data/lib/kubes/kubectl/ordering.rb +42 -0
- data/lib/kubes/version.rb +1 -1
- data/lib/templates/base/.kubes/config.rb.tt +1 -1
- data/lib/templates/base/.kubes/config/env/dev.rb +1 -1
- data/lib/templates/base/.kubes/config/env/prod.rb +1 -1
- data/lib/templates/dsl/.kubes/resources/web/deployment.rb +1 -1
- data/lib/templates/new/dsl/backend_config.rb +10 -0
- data/lib/templates/new/dsl/config_map.rb +5 -0
- data/lib/templates/new/dsl/daemon_set.rb +11 -0
- data/lib/templates/new/dsl/deployment.rb +4 -0
- data/lib/templates/new/dsl/ingress.rb +3 -0
- data/lib/templates/new/dsl/job.rb +2 -0
- data/lib/templates/new/dsl/managed_certificate.rb +2 -0
- data/lib/templates/new/dsl/namespace.rb +2 -0
- data/lib/templates/new/dsl/network_policy.rb +7 -0
- data/lib/templates/new/dsl/pod.rb +6 -0
- data/lib/templates/new/dsl/role.rb +4 -0
- data/lib/templates/new/dsl/role_binding.rb +7 -0
- data/lib/templates/new/dsl/secret.rb +5 -0
- data/lib/templates/new/dsl/service.rb +2 -0
- data/lib/templates/new/dsl/service_account.rb +1 -0
- data/lib/templates/new/yaml/backend_config.yaml +10 -0
- data/lib/templates/new/yaml/config_map.yaml +9 -0
- data/lib/templates/new/yaml/daemon_set.yaml +11 -0
- data/lib/templates/new/yaml/deployment.yaml +20 -0
- data/lib/templates/new/yaml/ingress.yaml +12 -0
- data/lib/templates/new/yaml/job.yaml +19 -0
- data/lib/templates/new/yaml/managed_certificate.yaml +7 -0
- data/lib/templates/new/yaml/namespace.yaml +6 -0
- data/lib/templates/new/yaml/network_policy.yaml +20 -0
- data/lib/templates/new/yaml/pod.yaml +11 -0
- data/lib/templates/new/yaml/role.yaml +13 -0
- data/lib/templates/new/yaml/role_binding.yaml +11 -0
- data/lib/templates/new/yaml/secret.yaml +9 -0
- data/lib/templates/new/yaml/service.yaml +14 -0
- data/lib/templates/new/yaml/service_account.yaml +4 -0
- data/lib/templates/yaml/.kubes/resources/base/all.yaml.tt +2 -0
- data/lib/templates/yaml/.kubes/resources/web/deployment.yaml.tt +1 -1
- data/spec/kubes/cli/prune_spec.rb +1 -0
- data/spec/kubes/compiler_spec.rb +5 -1
- metadata +67 -2
@@ -0,0 +1 @@
|
|
1
|
+
name "<%= app %>"
|
@@ -0,0 +1,20 @@
|
|
1
|
+
test: 1
|
2
|
+
apiVersion: apps/v1
|
3
|
+
kind: Deployment
|
4
|
+
metadata:
|
5
|
+
name: <%= role %>
|
6
|
+
labels:
|
7
|
+
role: <%= role %>
|
8
|
+
spec:
|
9
|
+
replicas: 1 # overridden on a env basis
|
10
|
+
selector:
|
11
|
+
matchLabels:
|
12
|
+
role: <%= role %>
|
13
|
+
template:
|
14
|
+
metadata:
|
15
|
+
labels:
|
16
|
+
role: <%= role %>
|
17
|
+
spec:
|
18
|
+
containers:
|
19
|
+
- name: <%= role %>
|
20
|
+
image: <%%= docker_image %>
|
@@ -0,0 +1,19 @@
|
|
1
|
+
apiVersion: batch/v1
|
2
|
+
kind: Job
|
3
|
+
metadata:
|
4
|
+
name: <%= app %>
|
5
|
+
spec:
|
6
|
+
template:
|
7
|
+
spec:
|
8
|
+
restartPolicy: Never
|
9
|
+
serviceAccountName: <%= app %>
|
10
|
+
containers:
|
11
|
+
- name: <%= app %>
|
12
|
+
image: <%%= docker_image %>
|
13
|
+
command: ["uptime"] # IE: ["bin/job/migrate.sh"]
|
14
|
+
# envFrom:
|
15
|
+
# - secretRef:
|
16
|
+
# name: <%= app %>
|
17
|
+
# - configMapRef:
|
18
|
+
# name: <%= app %>
|
19
|
+
backoffLimit: 1
|
@@ -0,0 +1,20 @@
|
|
1
|
+
apiVersion: networking.k8s.io/v1
|
2
|
+
kind: NetworkPolicy
|
3
|
+
metadata:
|
4
|
+
name: <%= role %>
|
5
|
+
labels:
|
6
|
+
app: <%= app %> # IE: backend
|
7
|
+
namespace: <%= app %> # IE: backend
|
8
|
+
spec:
|
9
|
+
podSelector:
|
10
|
+
matchLabels:
|
11
|
+
app: <%= app %> # IE: backend
|
12
|
+
role: <%= role %>
|
13
|
+
ingress:
|
14
|
+
- from:
|
15
|
+
- namespaceSelector:
|
16
|
+
matchLabels:
|
17
|
+
app: <%= app %> # IE: frontend
|
18
|
+
- podSelector:
|
19
|
+
matchLabels:
|
20
|
+
app: <%= app %> # IE: backend
|
@@ -4,6 +4,7 @@ describe Kubes::CLI::Prune do
|
|
4
4
|
allow(prune).to receive(:sure?)
|
5
5
|
allow(prune).to receive(:capture_items).and_return(capture)
|
6
6
|
allow(prune).to receive(:logger).and_return(null)
|
7
|
+
allow(prune).to receive(:compile).and_return(null) # to avoid building Docker image
|
7
8
|
prune
|
8
9
|
end
|
9
10
|
let(:null) { double(:null).as_null_object }
|
data/spec/kubes/compiler_spec.rb
CHANGED
@@ -1,5 +1,9 @@
|
|
1
1
|
describe Kubes::Compiler do
|
2
|
-
let(:compiler)
|
2
|
+
let(:compiler) do
|
3
|
+
compiler = described_class.new(options)
|
4
|
+
allow(compiler).to receive(:write_full)
|
5
|
+
compiler
|
6
|
+
end
|
3
7
|
let(:options) { {path: "spec/fixtures/project/.kubes/deployment.rb" } }
|
4
8
|
|
5
9
|
describe "compiler" do
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: kubes
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.5.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Tung Nguyen
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-
|
11
|
+
date: 2020-11-02 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activesupport
|
@@ -136,6 +136,20 @@ dependencies:
|
|
136
136
|
- - ">="
|
137
137
|
- !ruby/object:Gem::Version
|
138
138
|
version: '0'
|
139
|
+
- !ruby/object:Gem::Dependency
|
140
|
+
name: kubes_aws
|
141
|
+
requirement: !ruby/object:Gem::Requirement
|
142
|
+
requirements:
|
143
|
+
- - ">="
|
144
|
+
- !ruby/object:Gem::Version
|
145
|
+
version: '0'
|
146
|
+
type: :runtime
|
147
|
+
prerelease: false
|
148
|
+
version_requirements: !ruby/object:Gem::Requirement
|
149
|
+
requirements:
|
150
|
+
- - ">="
|
151
|
+
- !ruby/object:Gem::Version
|
152
|
+
version: '0'
|
139
153
|
- !ruby/object:Gem::Dependency
|
140
154
|
name: kubes_google
|
141
155
|
requirement: !ruby/object:Gem::Requirement
|
@@ -272,6 +286,7 @@ files:
|
|
272
286
|
- docs/_docs/dsl/resources/deployment.md
|
273
287
|
- docs/_docs/dsl/resources/generic.md
|
274
288
|
- docs/_docs/dsl/resources/ingress.md
|
289
|
+
- docs/_docs/dsl/resources/job.md
|
275
290
|
- docs/_docs/dsl/resources/managed_certificate.md
|
276
291
|
- docs/_docs/dsl/resources/namespace.md
|
277
292
|
- docs/_docs/dsl/resources/network_policy.md
|
@@ -284,9 +299,19 @@ files:
|
|
284
299
|
- docs/_docs/extra-env.md
|
285
300
|
- docs/_docs/extra-env/dsl.md
|
286
301
|
- docs/_docs/extra-env/yaml.md
|
302
|
+
- docs/_docs/generators.md
|
287
303
|
- docs/_docs/helpers.md
|
304
|
+
- docs/_docs/helpers/aws.md
|
305
|
+
- docs/_docs/helpers/aws/iam-role.md
|
306
|
+
- docs/_docs/helpers/aws/secrets.md
|
307
|
+
- docs/_docs/helpers/aws/ssm.md
|
308
|
+
- docs/_docs/helpers/custom.md
|
309
|
+
- docs/_docs/helpers/google.md
|
310
|
+
- docs/_docs/helpers/google/secrets.md
|
311
|
+
- docs/_docs/helpers/google/service-account.md
|
288
312
|
- docs/_docs/intro.md
|
289
313
|
- docs/_docs/intro/concepts.md
|
314
|
+
- docs/_docs/intro/docker-image.md
|
290
315
|
- docs/_docs/intro/how-kubes-works.md
|
291
316
|
- docs/_docs/intro/install.md
|
292
317
|
- docs/_docs/intro/ordering.md
|
@@ -339,6 +364,7 @@ files:
|
|
339
364
|
- docs/_includes/footer.html
|
340
365
|
- docs/_includes/google_analytics.html
|
341
366
|
- docs/_includes/header.html
|
367
|
+
- docs/_includes/helpers/base64.md
|
342
368
|
- docs/_includes/intro/install.md
|
343
369
|
- docs/_includes/js.html
|
344
370
|
- docs/_includes/kubes-steps.md
|
@@ -368,6 +394,8 @@ files:
|
|
368
394
|
- docs/_reference/kubes-get.md
|
369
395
|
- docs/_reference/kubes-init.md
|
370
396
|
- docs/_reference/kubes-logs.md
|
397
|
+
- docs/_reference/kubes-new.md
|
398
|
+
- docs/_reference/kubes-prune.md
|
371
399
|
- docs/_reference/kubes-version.md
|
372
400
|
- docs/_sass/bootstrap-overrides.scss
|
373
401
|
- docs/_sass/buttons.scss
|
@@ -499,8 +527,10 @@ files:
|
|
499
527
|
- lib/kubes/cli/help/completion_script.md
|
500
528
|
- lib/kubes/cli/help/deploy.md
|
501
529
|
- lib/kubes/cli/help/exec.md
|
530
|
+
- lib/kubes/cli/help/new.md
|
502
531
|
- lib/kubes/cli/init.rb
|
503
532
|
- lib/kubes/cli/logs.rb
|
533
|
+
- lib/kubes/cli/new.rb
|
504
534
|
- lib/kubes/cli/prune.rb
|
505
535
|
- lib/kubes/cli/sequence.rb
|
506
536
|
- lib/kubes/command.rb
|
@@ -524,6 +554,7 @@ files:
|
|
524
554
|
- lib/kubes/compiler/dsl/syntax/daemon_set.rb
|
525
555
|
- lib/kubes/compiler/dsl/syntax/deployment.rb
|
526
556
|
- lib/kubes/compiler/dsl/syntax/ingress.rb
|
557
|
+
- lib/kubes/compiler/dsl/syntax/job.rb
|
527
558
|
- lib/kubes/compiler/dsl/syntax/managed_certificate.rb
|
528
559
|
- lib/kubes/compiler/dsl/syntax/namespace.rb
|
529
560
|
- lib/kubes/compiler/dsl/syntax/network_policy.rb
|
@@ -535,14 +566,18 @@ files:
|
|
535
566
|
- lib/kubes/compiler/dsl/syntax/service.rb
|
536
567
|
- lib/kubes/compiler/dsl/syntax/service_account.rb
|
537
568
|
- lib/kubes/compiler/layering.rb
|
569
|
+
- lib/kubes/compiler/shared/custom_helpers.rb
|
538
570
|
- lib/kubes/compiler/shared/helpers.rb
|
571
|
+
- lib/kubes/compiler/shared/helpers/deprecated.rb
|
539
572
|
- lib/kubes/compiler/strategy.rb
|
540
573
|
- lib/kubes/compiler/strategy/base.rb
|
541
574
|
- lib/kubes/compiler/strategy/dsl.rb
|
542
575
|
- lib/kubes/compiler/strategy/erb.rb
|
576
|
+
- lib/kubes/compiler/strategy/erb/yaml_error.rb
|
543
577
|
- lib/kubes/compiler/strategy/pass.rb
|
544
578
|
- lib/kubes/compiler/strategy/result.rb
|
545
579
|
- lib/kubes/compiler/util/normalize.rb
|
580
|
+
- lib/kubes/compiler/util/save_file.rb
|
546
581
|
- lib/kubes/compiler/util/yaml_dump.rb
|
547
582
|
- lib/kubes/completer.rb
|
548
583
|
- lib/kubes/completer/script.rb
|
@@ -591,6 +626,36 @@ files:
|
|
591
626
|
- lib/templates/dsl/.kubes/resources/web/deployment/dev.rb
|
592
627
|
- lib/templates/dsl/.kubes/resources/web/deployment/prod.rb
|
593
628
|
- lib/templates/dsl/.kubes/resources/web/service.rb
|
629
|
+
- lib/templates/new/dsl/backend_config.rb
|
630
|
+
- lib/templates/new/dsl/config_map.rb
|
631
|
+
- lib/templates/new/dsl/daemon_set.rb
|
632
|
+
- lib/templates/new/dsl/deployment.rb
|
633
|
+
- lib/templates/new/dsl/ingress.rb
|
634
|
+
- lib/templates/new/dsl/job.rb
|
635
|
+
- lib/templates/new/dsl/managed_certificate.rb
|
636
|
+
- lib/templates/new/dsl/namespace.rb
|
637
|
+
- lib/templates/new/dsl/network_policy.rb
|
638
|
+
- lib/templates/new/dsl/pod.rb
|
639
|
+
- lib/templates/new/dsl/role.rb
|
640
|
+
- lib/templates/new/dsl/role_binding.rb
|
641
|
+
- lib/templates/new/dsl/secret.rb
|
642
|
+
- lib/templates/new/dsl/service.rb
|
643
|
+
- lib/templates/new/dsl/service_account.rb
|
644
|
+
- lib/templates/new/yaml/backend_config.yaml
|
645
|
+
- lib/templates/new/yaml/config_map.yaml
|
646
|
+
- lib/templates/new/yaml/daemon_set.yaml
|
647
|
+
- lib/templates/new/yaml/deployment.yaml
|
648
|
+
- lib/templates/new/yaml/ingress.yaml
|
649
|
+
- lib/templates/new/yaml/job.yaml
|
650
|
+
- lib/templates/new/yaml/managed_certificate.yaml
|
651
|
+
- lib/templates/new/yaml/namespace.yaml
|
652
|
+
- lib/templates/new/yaml/network_policy.yaml
|
653
|
+
- lib/templates/new/yaml/pod.yaml
|
654
|
+
- lib/templates/new/yaml/role.yaml
|
655
|
+
- lib/templates/new/yaml/role_binding.yaml
|
656
|
+
- lib/templates/new/yaml/secret.yaml
|
657
|
+
- lib/templates/new/yaml/service.yaml
|
658
|
+
- lib/templates/new/yaml/service_account.yaml
|
594
659
|
- lib/templates/yaml/.kubes/resources/base/all.yaml.tt
|
595
660
|
- lib/templates/yaml/.kubes/resources/base/deployment.yaml.tt
|
596
661
|
- lib/templates/yaml/.kubes/resources/shared/namespace.yaml.tt
|