lucarecord 0.8.1 → 0.8.2

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: 43e4eb24c71ea14be0af8bcaa20ff15806b3f13fde5d9b0766f4554c725354e0
4
- data.tar.gz: 76a9001610ac76dcb2904c500bce4283ce57612e6f7ac0d42da76f818eadf05a
3
+ metadata.gz: ca9ede7fa64020e0ec2f102e5a257f480e6d690fed2ee185502bf4438e472725
4
+ data.tar.gz: a1c94709fe2fa98e8cbf9ccdc7399ec1660ae4389c47d5f6b2c5e1ec9512245d
5
5
  SHA512:
6
- metadata.gz: 493c82233012f4db8e001a04c65d8b010979835e61d04d6f6c0659de6b0557fef8085efa433748f63fdb02548943020a6574caaca24a2663d58eee8e5cad5235
7
- data.tar.gz: 458ebf81b4639ec305e6b99cd0ebbfe3617d46538487a9cf781cdb32f3ca483b02b9c90de746457ddfc26d80e26a4169e688796beb0367b788df532d465d36e7
6
+ metadata.gz: df32c057800c4f8f7f30b2cd5a0d3311ffee580b51642ec0d5bbaceb3fb7603a860963da9e03c51714119e2864b523fa3cf8c8b5e6559de753475bbab4d7ace1
7
+ data.tar.gz: d1cf7ab3341fd3c2c013b74c29049ddf67f4ee45c51787f121796398686cffde8474480f4ad047d2271ea9a2719075522ca92fe7dae8d550575e55c1213e6f16
data/CHANGELOG.md CHANGED
@@ -1,3 +1,7 @@
1
+ ## LucaRecord 0.8.2
2
+
3
+ * setup CA cert chain for mTLS.
4
+
1
5
  ## LucaRecord 0.8.1
2
6
 
3
7
  * Merge config in parent directory, when the parent is git repo root.
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module LucaRecord
4
- VERSION = '0.8.1'
4
+ VERSION = '0.8.2'
5
5
  end
@@ -60,10 +60,17 @@ module LucaSupport
60
60
  return nil if ca_file.nil? && c_cert_path.nil? && c_key_path.nil?
61
61
 
62
62
  tls_ctx = OpenSSL::SSL::SSLContext.new
63
- tls_ctx.cert = c_cert_path ?
64
- OpenSSL::X509::Certificate.new(File.read(c_cert_path)) : nil
65
63
  tls_ctx.key = c_key_path ?
66
64
  OpenSSL::PKey::RSA.new(File.read(c_key_path)) : nil
65
+ certs = if c_cert_path
66
+ File.read(c_cert_path)
67
+ .scan(/-----BEGIN CERTIFICATE-----(?:.|\n)*?-----END CERTIFICATE-----/)
68
+ .map { |pem| OpenSSL::X509::Certificate.new(pem) }
69
+ else
70
+ nil
71
+ end
72
+ tls_ctx.cert = certs.shift if certs&.any?
73
+ tls_ctx.extra_chain_cert = certs if certs&.any?
67
74
  tls_ctx.ca_file = ca_file
68
75
  tls_ctx.verify_mode = OpenSSL::SSL::VERIFY_PEER if ca_file || @host[:openssl_verify_mode]
69
76
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: lucarecord
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.8.1
4
+ version: 0.8.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Chuma Takahiro
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2025-12-08 00:00:00.000000000 Z
11
+ date: 2025-12-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler