kubekrypt 2.2.2 → 2.2.3

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: 29884a227adfa74c500a67af67cced8af277524b2a8231b6b9ae5c490e68e1de
4
- data.tar.gz: a27408973011e115570f159c0797c9831a3d21d5e76abe70e239186535304f3a
3
+ metadata.gz: 101ea0dd17b015654925f7c24ff7101073f390a9d0784fa618017e1203392bc5
4
+ data.tar.gz: 6c1949385152a207dc3019723ab9709b171a871b3430f3d8cd900c6205119bde
5
5
  SHA512:
6
- metadata.gz: 3056579c4174da4245f0294576aa2d6c1e00e0a561382fa66678629ee4b82da65be986137a746a9f9c0f04459312ed05b562de041004d4cf078f018b9ff16c8c
7
- data.tar.gz: 11282cbbc9af75421ef62c97e32d9157169cd5705613b08f610de054300b26ebf79f2ead8f06984ad28a288a632144e9fcda98941d6297d1f906c71b95c6e4ec
6
+ metadata.gz: 8d562fc536f8c11e37068e03fafcbe053534306b4c6835677b414e3ddea568f0ef1d10e216968d8ae4805369eb18f994e89ab45c4a929c29e43ba694617529ad
7
+ data.tar.gz: f28b90f7de3488c3f64982d11e6571355b7e5a7f13fe31c758d480f821b5c941ba1ef3770d2bcc0529fba4b92c57c003c510f948b0f715639e51d7c80b21f46b
data/CHANGELOG.md CHANGED
@@ -1,5 +1,10 @@
1
1
  # Changelog
2
2
 
3
+ ## [2.2.3] - 2026-06-14
4
+
5
+ ### Fixed
6
+ - `encrypt` and `decrypt` now raise `InvalidSecretError` when the manifest has no `data` key, instead of silently passing the content through. Previously such a manifest was printed back **unencrypted** in Ruby-inspect format — easy to redirect into an `.enc.yaml` file and commit plaintext secrets without noticing.
7
+
3
8
  ## [2.2.2] - 2026-03-31
4
9
 
5
10
  ### Changed
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- kubekrypt (2.2.2)
4
+ kubekrypt (2.2.3)
5
5
  google-cloud-kms
6
6
  grpc
7
7
  thor (>= 1.0)
@@ -10,15 +10,15 @@ PATH
10
10
  GEM
11
11
  remote: https://rubygems.org/
12
12
  specs:
13
- addressable (2.8.9)
13
+ addressable (2.9.0)
14
14
  public_suffix (>= 2.0.2, < 8.0)
15
15
  ast (2.4.3)
16
16
  base64 (0.3.0)
17
- bigdecimal (4.1.0)
17
+ bigdecimal (4.1.2)
18
18
  coderay (1.1.3)
19
19
  date (3.5.1)
20
20
  diff-lcs (1.6.2)
21
- erb (6.0.2)
21
+ erb (6.0.4)
22
22
  faraday (2.14.1)
23
23
  faraday-net_http (>= 2.0, < 3.5)
24
24
  json
@@ -55,19 +55,19 @@ GEM
55
55
  google-cloud-location (1.3.0)
56
56
  gapic-common (~> 1.2)
57
57
  google-cloud-errors (~> 1.0)
58
- google-iam-v1 (1.5.1)
58
+ google-iam-v1 (1.6.1)
59
59
  gapic-common (~> 1.2)
60
60
  google-cloud-errors (~> 1.0)
61
61
  grpc-google-iam-v1 (~> 1.11)
62
62
  google-logging-utils (0.2.0)
63
- google-protobuf (4.34.1)
63
+ google-protobuf (4.35.0)
64
64
  bigdecimal
65
65
  rake (~> 13.3)
66
66
  googleapis-common-protos (1.7.0)
67
67
  google-protobuf (>= 3.18, < 5.a)
68
68
  googleapis-common-protos-types (~> 1.7)
69
69
  grpc (~> 1.41)
70
- googleapis-common-protos-types (1.22.0)
70
+ googleapis-common-protos-types (1.23.0)
71
71
  google-protobuf (~> 4.26)
72
72
  googleauth (1.16.2)
73
73
  faraday (>= 1.0, < 3.a)
@@ -77,7 +77,7 @@ GEM
77
77
  multi_json (~> 1.11)
78
78
  os (>= 0.9, < 2.0)
79
79
  signet (>= 0.16, < 2.a)
80
- grpc (1.80.0)
80
+ grpc (1.81.0)
81
81
  google-protobuf (>= 3.25, < 5.0)
82
82
  googleapis-common-protos-types (~> 1.0)
83
83
  grpc-google-iam-v1 (1.11.0)
@@ -85,7 +85,7 @@ GEM
85
85
  googleapis-common-protos (~> 1.7.0)
86
86
  grpc (~> 1.41)
87
87
  io-console (0.8.2)
88
- irb (1.17.0)
88
+ irb (1.18.0)
89
89
  pp (>= 0.6.0)
90
90
  prism (>= 1.3.0)
91
91
  rdoc (>= 4.0.0)
@@ -97,11 +97,11 @@ GEM
97
97
  lint_roller (1.1.0)
98
98
  logger (1.7.0)
99
99
  method_source (1.1.0)
100
- multi_json (1.19.1)
100
+ multi_json (1.20.1)
101
101
  net-http (0.9.1)
102
102
  uri (>= 0.11.1)
103
103
  os (1.1.4)
104
- parallel (1.27.0)
104
+ parallel (1.28.0)
105
105
  parser (3.3.11.1)
106
106
  ast (~> 2.4.1)
107
107
  racc
@@ -119,12 +119,12 @@ GEM
119
119
  public_suffix (7.0.5)
120
120
  racc (1.8.1)
121
121
  rainbow (3.1.1)
122
- rake (13.3.1)
122
+ rake (13.4.2)
123
123
  rdoc (7.2.0)
124
124
  erb
125
125
  psych (>= 4.0.0)
126
126
  tsort
127
- regexp_parser (2.11.3)
127
+ regexp_parser (2.12.0)
128
128
  reline (0.6.3)
129
129
  io-console (~> 0.5)
130
130
  rspec (3.13.2)
data/LICENSE CHANGED
@@ -1,6 +1,6 @@
1
1
  The MIT License (MIT)
2
2
 
3
- Copyright (c) 2025 Krzysztof Knapik
3
+ Copyright (c) 2026 Krzysztof Knapik
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
@@ -20,7 +20,9 @@ module KubeKrypt
20
20
  end
21
21
 
22
22
  def self.call(content:, base64:)
23
- return content unless content["data"]
23
+ unless content["data"]
24
+ raise InvalidSecretError, "no data key found — nothing to decrypt"
25
+ end
24
26
 
25
27
  key_name = content.fetch(METADATA_KEY).fetch(KMS_KEY.to_s)
26
28
  decryptor = new(key_name)
@@ -14,7 +14,10 @@ module KubeKrypt
14
14
  end
15
15
 
16
16
  def self.call(content:, key_name:)
17
- return content unless content["data"]
17
+ unless content["data"]
18
+ raise InvalidSecretError,
19
+ "no data key found — refusing to write the manifest through unencrypted"
20
+ end
18
21
 
19
22
  encryptor = new(key_name)
20
23
 
@@ -1,3 +1,3 @@
1
1
  module KubeKrypt
2
- VERSION = "2.2.2".freeze
2
+ VERSION = "2.2.3".freeze
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: kubekrypt
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.2.2
4
+ version: 2.2.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Krzysztof Knapik
@@ -111,7 +111,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
111
111
  - !ruby/object:Gem::Version
112
112
  version: '0'
113
113
  requirements: []
114
- rubygems_version: 4.0.8
114
+ rubygems_version: 4.0.10
115
115
  specification_version: 4
116
116
  summary: KubeKrypt provides seamless encryption and decryption of Kubernetes Secret
117
117
  menifests using Google Cloud KMS