krane 3.6.0 → 3.6.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: c4fbeac365a394dbe14c05850c06c8244384f90cf205fe97036f76533f70d347
4
- data.tar.gz: dad9b5ae3898b73a9323a2f6440130bca8279de9617b5643945d3dc6bd6ca386
3
+ metadata.gz: ba72a52b848777243b9335d8df21f98080fcf49142706c2443bf40475d071b5f
4
+ data.tar.gz: 4f1a17c291e5ef38847f7a083cc1d6dcc00262c0dd447a39b7c39ab044268142
5
5
  SHA512:
6
- metadata.gz: ee9b35d145a99a127d9d4ec7f8dd4414e0fcd7f3c495e7278d70007faa5505806025bf26db08ff6b66d1b8bb17cccde6b54759ae3ca8b1d19dcfd070e2f99099
7
- data.tar.gz: ecefda0f27ab181082792b63f94988bcc6a0e90b611f1bab16cbbe58091a2fd38724190e3556f53b80925ffa49f6082a5296d71fd3217d6a036c7f69768cc981
6
+ metadata.gz: fdae1d679008ec4de4ee83c2f1925f7b168456189f824face6b3d3f7079bdda89c25bea6da676ab95508cc5ce125587863e8af307a6f6d3814dc75b029280d56
7
+ data.tar.gz: 603e6f890a482b0e549ed9b1c0deca4ae3e4bb73144c7174f2a430c964127ee4cd75d516eb4e7561258afac29c711f5b595c3cc35316cf4c9e05a6a1aeab9bf0
data/CHANGELOG.md CHANGED
@@ -1,5 +1,15 @@
1
1
  ## next
2
2
 
3
+ ## 3.6.2
4
+
5
+ - Pinning `stats-instrument` to < 3.9 to avoid breaking changes.
6
+
7
+ ## 3.6.1
8
+
9
+ *Features*
10
+
11
+ - Enable the option to bypass endpoint validation for a service by using the annotation `krane.shopify.io/skip-endpoint-validation: true`.
12
+
3
13
  ## 3.6.0
4
14
 
5
15
  - Test against k8s 1.29, 1.30
data/README.md CHANGED
@@ -176,6 +176,10 @@ before the deployment is considered successful.
176
176
  - _Accepted values_: `create`, `replace`, and `replace-force`
177
177
  - _Warning_: Resources whose deploy method is overridden are no longer subject to pruning on deploy.
178
178
  - This feature is _experimental_ and may be removed at any time.
179
+ - `krane.shopify.io/skip-endpoint-validation`: Skip endpoint validation for the service.
180
+ - _Compatibility_: Service
181
+ - _Default_: `false`
182
+ - `true`: Endpoint validation is not performed during the deployment of the service.
179
183
 
180
184
 
181
185
  ### Running tasks at the beginning of a deploy
data/dev.yml CHANGED
@@ -9,7 +9,15 @@ up:
9
9
  image: kindest/node:v1.28.0@sha256:dad5a6238c5e41d7cac405fae3b5eda2ad1de6f1190fa8bfc64ff5bb86173213
10
10
  commands:
11
11
  test:
12
- run: bin/test
12
+ run: bin/test unit_test && bin/test cli_test && bin/test serial_integration_test && bin/test integration_test
13
+ test-unit:
14
+ run: bin/test unit_test
15
+ test-cli:
16
+ run: bin/test cli_test
17
+ test-serial_integration:
18
+ run: bin/test serial_integration_test,
19
+ test-integration:
20
+ run: bin/test integration_test
13
21
  tophat:
14
22
  run: PRINT_LOGS=1 bundle exec ruby -I test test/integration/krane_deploy_test.rb -n/${1}/
15
23
  desc: Tophat a change by running a test scenario with logging output enabled.
data/krane.gemspec CHANGED
@@ -31,7 +31,7 @@ Gem::Specification.new do |spec|
31
31
  spec.add_dependency("googleauth", "~> 1.2")
32
32
  spec.add_dependency("ejson", "~> 1.0")
33
33
  spec.add_dependency("colorize", "~> 0.8")
34
- spec.add_dependency("statsd-instrument", ['>= 2.8', "< 4"])
34
+ spec.add_dependency("statsd-instrument", ['>= 2.8', "< 3.9"])
35
35
  spec.add_dependency("multi_json")
36
36
  spec.add_dependency("concurrent-ruby", "~> 1.1")
37
37
  spec.add_dependency("jsonpath", "~> 1.0")
@@ -5,6 +5,7 @@ module Krane
5
5
  class Service < KubernetesResource
6
6
  TIMEOUT = 7.minutes
7
7
  SYNC_DEPENDENCIES = %w(Pod Deployment StatefulSet)
8
+ SKIP_ENDPOINT_VALIDATION_ANNOTATION = 'skip-endpoint-validation'
8
9
 
9
10
  def sync(cache)
10
11
  super
@@ -59,6 +60,9 @@ module Krane
59
60
  end
60
61
 
61
62
  def requires_endpoints?
63
+ # skip validation if the annotation is present
64
+ return false if skip_endpoint_validation
65
+
62
66
  # services of type External don't have endpoints
63
67
  return false if external_name_svc?
64
68
 
@@ -96,5 +100,9 @@ module Krane
96
100
  def published?
97
101
  @instance_data.dig('status', 'loadBalancer', 'ingress').present?
98
102
  end
103
+
104
+ def skip_endpoint_validation
105
+ krane_annotation_value(SKIP_ENDPOINT_VALIDATION_ANNOTATION) == 'true'
106
+ end
99
107
  end
100
108
  end
data/lib/krane/version.rb CHANGED
@@ -1,4 +1,4 @@
1
1
  # frozen_string_literal: true
2
2
  module Krane
3
- VERSION = "3.6.0"
3
+ VERSION = "3.6.2"
4
4
  end
metadata CHANGED
@@ -1,16 +1,16 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: krane
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.6.0
4
+ version: 3.6.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Katrina Verey
8
8
  - Daniel Turner
9
9
  - Kir Shatrov
10
- autorequire:
10
+ autorequire:
11
11
  bindir: exe
12
12
  cert_chain: []
13
- date: 2024-05-22 00:00:00.000000000 Z
13
+ date: 2024-08-21 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: activesupport
@@ -91,7 +91,7 @@ dependencies:
91
91
  version: '2.8'
92
92
  - - "<"
93
93
  - !ruby/object:Gem::Version
94
- version: '4'
94
+ version: '3.9'
95
95
  type: :runtime
96
96
  prerelease: false
97
97
  version_requirements: !ruby/object:Gem::Requirement
@@ -101,7 +101,7 @@ dependencies:
101
101
  version: '2.8'
102
102
  - - "<"
103
103
  - !ruby/object:Gem::Version
104
- version: '4'
104
+ version: '3.9'
105
105
  - !ruby/object:Gem::Dependency
106
106
  name: multi_json
107
107
  requirement: !ruby/object:Gem::Requirement
@@ -512,7 +512,7 @@ licenses:
512
512
  - MIT
513
513
  metadata:
514
514
  allowed_push_host: https://rubygems.org
515
- post_install_message:
515
+ post_install_message:
516
516
  rdoc_options: []
517
517
  require_paths:
518
518
  - lib
@@ -527,8 +527,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
527
527
  - !ruby/object:Gem::Version
528
528
  version: '0'
529
529
  requirements: []
530
- rubygems_version: 3.5.10
531
- signing_key:
530
+ rubygems_version: 3.5.17
531
+ signing_key:
532
532
  specification_version: 4
533
533
  summary: A command line tool that helps you ship changes to a Kubernetes namespace
534
534
  and understand the result