ruby_easy_rsa 0.12.0.pre.4 → 0.12.0.pre.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (36) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +55 -56
  3. data/lib/ruby_easy_rsa/commands/base.rb +32 -12
  4. data/lib/ruby_easy_rsa/commands/build_ca.rb +5 -5
  5. data/lib/ruby_easy_rsa/commands/build_client_full.rb +5 -5
  6. data/lib/ruby_easy_rsa/commands/build_client_server_full.rb +5 -5
  7. data/lib/ruby_easy_rsa/commands/build_server_full.rb +5 -5
  8. data/lib/ruby_easy_rsa/commands/export_p12.rb +15 -8
  9. data/lib/ruby_easy_rsa/commands/export_p7.rb +10 -6
  10. data/lib/ruby_easy_rsa/commands/gen_crl.rb +5 -3
  11. data/lib/ruby_easy_rsa/commands/gen_dh.rb +4 -2
  12. data/lib/ruby_easy_rsa/commands/gen_req.rb +5 -5
  13. data/lib/ruby_easy_rsa/commands/import_req.rb +6 -4
  14. data/lib/ruby_easy_rsa/commands/init_pki.rb +4 -2
  15. data/lib/ruby_easy_rsa/commands/mixins/algorithm_config.rb +7 -7
  16. data/lib/ruby_easy_rsa/commands/mixins/copy_extensions_config.rb +5 -5
  17. data/lib/ruby_easy_rsa/commands/mixins/encrypt_key_config.rb +5 -5
  18. data/lib/ruby_easy_rsa/commands/mixins/extra_extensions_config.rb +8 -6
  19. data/lib/ruby_easy_rsa/commands/mixins/global_config.rb +30 -14
  20. data/lib/ruby_easy_rsa/commands/mixins/inline_credentials_file_config.rb +5 -5
  21. data/lib/ruby_easy_rsa/commands/mixins/netscape_extensions_config.rb +6 -6
  22. data/lib/ruby_easy_rsa/commands/mixins/ssl_config.rb +44 -48
  23. data/lib/ruby_easy_rsa/commands/mixins/sub_ca_config.rb +5 -5
  24. data/lib/ruby_easy_rsa/commands/renew.rb +5 -5
  25. data/lib/ruby_easy_rsa/commands/revoke.rb +8 -6
  26. data/lib/ruby_easy_rsa/commands/set_ec_pass.rb +6 -7
  27. data/lib/ruby_easy_rsa/commands/set_rsa_pass.rb +6 -7
  28. data/lib/ruby_easy_rsa/commands/show_ca.rb +5 -6
  29. data/lib/ruby_easy_rsa/commands/show_cert.rb +5 -6
  30. data/lib/ruby_easy_rsa/commands/show_req.rb +5 -6
  31. data/lib/ruby_easy_rsa/commands/sign_req.rb +5 -6
  32. data/lib/ruby_easy_rsa/commands/update_db.rb +5 -3
  33. data/lib/ruby_easy_rsa/commands/upgrade.rb +4 -4
  34. data/lib/ruby_easy_rsa/version.rb +1 -1
  35. data/ruby_easy_rsa.gemspec +2 -2
  36. metadata +8 -8
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 97f824d8bdcbed236dfcf920546727855023067f99d8e073eb181d96466b0b31
4
- data.tar.gz: 54d2af8f9d4eb0b2cffa84157d5e6ed4bb522d8034c138cd35576ee3298a346a
3
+ metadata.gz: 59dbaf6124c9b01ebdc2dda12a5366b3222ecccb03827e57cdaa3ec2e9f3f203
4
+ data.tar.gz: 1e8d6c301e17bbb81b91e42eb93673e78dd1d3973dea5f28e07d8900a39869e9
5
5
  SHA512:
6
- metadata.gz: e3dde86b7974c35e93564e16b3cb33c7894ac776242bf4e1b361157dc49d518dedd84c290be928201a8a363d2c9dfe3380cf1d0f0cafeafda703fd68ba040fdd
7
- data.tar.gz: ad7f3b06b96f8d5f4303d1341df5d70933d0bd17d70bdb6d5662a48054c8a3ee5887ac711a79f7c0c92f93f996201564bab94b983b930f6a6ced9341c34ba586
6
+ metadata.gz: e9bb48b797c6a108c1a952fd4e6b4465894d7597c1f91a27b7671fe645b81804328ebb78203399478b4bc727b1accb819d922079d2e65b9897eca04024619bba
7
+ data.tar.gz: b135a88c675d96725d2008e9d4bc3d129a1d449e3bad33a94e95015e6c33a3d3dc816c20ae2cedd2f4559cf432ada46113a090a3bc6687c921c32699e9677ef5
data/Gemfile.lock CHANGED
@@ -1,13 +1,13 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- ruby_easy_rsa (0.12.0.pre.4)
5
- lino (~> 3.0)
4
+ ruby_easy_rsa (0.12.0.pre.5)
5
+ lino (>= 3.1)
6
6
 
7
7
  GEM
8
8
  remote: https://rubygems.org/
9
9
  specs:
10
- activesupport (7.1.1)
10
+ activesupport (7.1.3.4)
11
11
  base64
12
12
  bigdecimal
13
13
  concurrent-ruby (~> 1.0, >= 1.0.2)
@@ -17,52 +17,55 @@ GEM
17
17
  minitest (>= 5.1)
18
18
  mutex_m
19
19
  tzinfo (~> 2.0)
20
- addressable (2.8.5)
21
- public_suffix (>= 2.0.2, < 6.0)
20
+ addressable (2.8.7)
21
+ public_suffix (>= 2.0.2, < 7.0)
22
22
  ast (2.4.2)
23
- base64 (0.1.1)
24
- bigdecimal (3.1.4)
23
+ base64 (0.2.0)
24
+ bigdecimal (3.1.8)
25
25
  colored2 (3.1.2)
26
- concurrent-ruby (1.2.2)
26
+ concurrent-ruby (1.3.3)
27
27
  connection_pool (2.4.1)
28
- diff-lcs (1.5.0)
28
+ diff-lcs (1.5.1)
29
29
  docile (1.4.0)
30
- drb (2.1.1)
31
- ruby2_keywords
32
- excon (0.104.0)
33
- faraday (2.7.11)
34
- base64
35
- faraday-net_http (>= 2.0, < 3.1)
36
- ruby2_keywords (>= 0.0.4)
37
- faraday-net_http (3.0.2)
30
+ drb (2.2.1)
31
+ excon (0.111.0)
32
+ faraday (2.10.0)
33
+ faraday-net_http (>= 2.0, < 3.2)
34
+ logger
35
+ faraday-net_http (3.1.0)
36
+ net-http
38
37
  gem-release (2.2.2)
39
- git (1.18.0)
38
+ git (1.19.1)
40
39
  addressable (~> 2.8)
41
40
  rchardet (~> 1.8)
42
41
  hamster (3.0.0)
43
42
  concurrent-ruby (~> 1.0)
44
- i18n (1.14.1)
43
+ i18n (1.14.5)
45
44
  concurrent-ruby (~> 1.0)
46
45
  immutable-struct (2.4.1)
47
- json (2.6.3)
46
+ json (2.7.2)
48
47
  language_server-protocol (3.17.0.3)
49
48
  lino (3.1.0)
50
49
  hamster (~> 3.0)
51
50
  open4 (~> 1.3)
52
- minitest (5.20.0)
53
- mutex_m (0.1.2)
54
- octokit (8.0.0)
51
+ logger (1.6.0)
52
+ minitest (5.24.1)
53
+ mutex_m (0.2.0)
54
+ net-http (0.4.1)
55
+ uri
56
+ octokit (8.1.0)
57
+ base64
55
58
  faraday (>= 1, < 3)
56
59
  sawyer (~> 0.9)
57
60
  open4 (1.3.4)
58
- parallel (1.23.0)
59
- parser (3.2.2.4)
61
+ parallel (1.25.1)
62
+ parser (3.3.4.0)
60
63
  ast (~> 2.4.1)
61
64
  racc
62
- public_suffix (5.0.3)
63
- racc (1.7.3)
65
+ public_suffix (6.0.0)
66
+ racc (1.8.0)
64
67
  rainbow (3.1.1)
65
- rake (13.1.0)
68
+ rake (13.2.1)
66
69
  rake_circle_ci (0.11.0)
67
70
  colored2 (~> 3.1)
68
71
  excon (~> 0.72)
@@ -93,46 +96,40 @@ GEM
93
96
  rake_factory (~> 0.23)
94
97
  sshkey (~> 2.0)
95
98
  rchardet (1.8.0)
96
- regexp_parser (2.8.2)
97
- rexml (3.2.6)
98
- rspec (3.12.0)
99
- rspec-core (~> 3.12.0)
100
- rspec-expectations (~> 3.12.0)
101
- rspec-mocks (~> 3.12.0)
102
- rspec-core (3.12.2)
103
- rspec-support (~> 3.12.0)
104
- rspec-expectations (3.12.3)
99
+ regexp_parser (2.9.2)
100
+ rexml (3.3.1)
101
+ strscan
102
+ rspec (3.13.0)
103
+ rspec-core (~> 3.13.0)
104
+ rspec-expectations (~> 3.13.0)
105
+ rspec-mocks (~> 3.13.0)
106
+ rspec-core (3.13.0)
107
+ rspec-support (~> 3.13.0)
108
+ rspec-expectations (3.13.1)
105
109
  diff-lcs (>= 1.2.0, < 2.0)
106
- rspec-support (~> 3.12.0)
107
- rspec-mocks (3.12.6)
110
+ rspec-support (~> 3.13.0)
111
+ rspec-mocks (3.13.1)
108
112
  diff-lcs (>= 1.2.0, < 2.0)
109
- rspec-support (~> 3.12.0)
110
- rspec-support (3.12.1)
111
- rubocop (1.57.2)
113
+ rspec-support (~> 3.13.0)
114
+ rspec-support (3.13.1)
115
+ rubocop (1.65.0)
112
116
  json (~> 2.3)
113
117
  language_server-protocol (>= 3.17.0)
114
118
  parallel (~> 1.10)
115
- parser (>= 3.2.2.4)
119
+ parser (>= 3.3.0.2)
116
120
  rainbow (>= 2.2.2, < 4.0)
117
- regexp_parser (>= 1.8, < 3.0)
121
+ regexp_parser (>= 2.4, < 3.0)
118
122
  rexml (>= 3.2.5, < 4.0)
119
- rubocop-ast (>= 1.28.1, < 2.0)
123
+ rubocop-ast (>= 1.31.1, < 2.0)
120
124
  ruby-progressbar (~> 1.7)
121
125
  unicode-display_width (>= 2.4.0, < 3.0)
122
- rubocop-ast (1.30.0)
123
- parser (>= 3.2.1.0)
124
- rubocop-capybara (2.19.0)
125
- rubocop (~> 1.41)
126
- rubocop-factory_bot (2.24.0)
127
- rubocop (~> 1.33)
126
+ rubocop-ast (1.31.3)
127
+ parser (>= 3.3.1.0)
128
128
  rubocop-rake (0.6.0)
129
129
  rubocop (~> 1.0)
130
- rubocop-rspec (2.25.0)
131
- rubocop (~> 1.40)
132
- rubocop-capybara (~> 2.17)
133
- rubocop-factory_bot (~> 2.22)
130
+ rubocop-rspec (3.0.3)
131
+ rubocop (~> 1.61)
134
132
  ruby-progressbar (1.13.0)
135
- ruby2_keywords (0.0.5)
136
133
  ruby_git_crypt (0.1.0.pre.4)
137
134
  immutable-struct (~> 2.4)
138
135
  lino (~> 3.0)
@@ -148,9 +145,11 @@ GEM
148
145
  simplecov-html (0.12.3)
149
146
  simplecov_json_formatter (0.1.4)
150
147
  sshkey (2.0.0)
148
+ strscan (3.1.0)
151
149
  tzinfo (2.0.6)
152
150
  concurrent-ruby (~> 1.0)
153
151
  unicode-display_width (2.5.0)
152
+ uri (0.13.0)
154
153
 
155
154
  PLATFORMS
156
155
  arm64-darwin-21
@@ -12,7 +12,7 @@ module RubyEasyRSA
12
12
  end
13
13
 
14
14
  def stdin
15
- ''
15
+ nil
16
16
  end
17
17
 
18
18
  def stdout
@@ -23,16 +23,22 @@ module RubyEasyRSA
23
23
  $stderr
24
24
  end
25
25
 
26
- def execute(opts = {})
27
- do_before(opts)
28
- configure_command(instantiate_builder, opts)
29
- .build
30
- .execute(
31
- stdin: stdin,
32
- stdout: stdout,
33
- stderr: stderr
34
- )
35
- do_after(opts)
26
+ def execute(parameters = {})
27
+ parameters = resolve_parameters(parameters)
28
+
29
+ do_before(parameters)
30
+ result = build_and_execute_command(parameters)
31
+ do_after(parameters)
32
+
33
+ result
34
+ end
35
+
36
+ private
37
+
38
+ def build_and_execute_command(parameters)
39
+ command = configure_command(instantiate_builder, parameters).build
40
+
41
+ command.execute(stdin:, stdout:, stderr:)
36
42
  end
37
43
 
38
44
  def instantiate_builder
@@ -43,11 +49,25 @@ module RubyEasyRSA
43
49
 
44
50
  def do_before(_); end
45
51
 
46
- def configure_command(builder, _opts)
52
+ def configure_command(builder, _parameters)
47
53
  builder
48
54
  end
49
55
 
50
56
  def do_after(_); end
57
+
58
+ def resolve_parameters(parameters)
59
+ parameter_defaults(parameters)
60
+ .merge(parameters)
61
+ .merge(parameter_overrides(parameters))
62
+ end
63
+
64
+ def parameter_defaults(_parameters)
65
+ {}
66
+ end
67
+
68
+ def parameter_overrides(_parameters)
69
+ {}
70
+ end
51
71
  end
52
72
  end
53
73
  end
@@ -16,12 +16,12 @@ module RubyEasyRSA
16
16
  include Mixins::AlgorithmConfig
17
17
  include Mixins::EncryptKeyConfig
18
18
 
19
- def configure_command(builder, opts)
20
- sub_ca = opts[:sub_ca]
19
+ private
21
20
 
22
- builder = builder.with_subcommand('build-ca')
23
- builder = builder.with_argument('subca') if sub_ca
24
- super(builder, opts)
21
+ def configure_command(initial_builder, parameters)
22
+ builder = initial_builder.with_subcommand('build-ca')
23
+ builder = builder.with_argument('subca') if parameters[:sub_ca]
24
+ super(builder, parameters)
25
25
  end
26
26
  end
27
27
  end
@@ -26,12 +26,12 @@ module RubyEasyRSA
26
26
  include Mixins::EncryptKeyConfig
27
27
  include Mixins::InlineCredentialsFileConfig
28
28
 
29
- def configure_command(builder, opts)
30
- filename_base = opts[:filename_base]
29
+ private
31
30
 
32
- builder = builder.with_subcommand('build-client-full')
33
- builder = builder.with_argument(filename_base)
34
- super(builder, opts)
31
+ def configure_command(initial_builder, parameters)
32
+ builder = initial_builder.with_subcommand('build-client-full')
33
+ builder = builder.with_argument(parameters[:filename_base])
34
+ super(builder, parameters)
35
35
  end
36
36
  end
37
37
  end
@@ -26,12 +26,12 @@ module RubyEasyRSA
26
26
  include Mixins::EncryptKeyConfig
27
27
  include Mixins::InlineCredentialsFileConfig
28
28
 
29
- def configure_command(builder, opts)
30
- filename_base = opts[:filename_base]
29
+ private
31
30
 
32
- builder = builder.with_subcommand('build-clientServer-full')
33
- builder = builder.with_argument(filename_base)
34
- super(builder, opts)
31
+ def configure_command(initial_builder, parameters)
32
+ builder = initial_builder.with_subcommand('build-clientServer-full')
33
+ builder = builder.with_argument(parameters[:filename_base])
34
+ super(builder, parameters)
35
35
  end
36
36
  end
37
37
  end
@@ -26,12 +26,12 @@ module RubyEasyRSA
26
26
  include Mixins::EncryptKeyConfig
27
27
  include Mixins::InlineCredentialsFileConfig
28
28
 
29
- def configure_command(builder, opts)
30
- filename_base = opts[:filename_base]
29
+ private
31
30
 
32
- builder = builder.with_subcommand('build-server-full')
33
- builder = builder.with_argument(filename_base)
34
- super(builder, opts)
31
+ def configure_command(initial_builder, parameters)
32
+ builder = initial_builder.with_subcommand('build-server-full')
33
+ builder = builder.with_argument(parameters[:filename_base])
34
+ super(builder, parameters)
35
35
  end
36
36
  end
37
37
  end
@@ -12,16 +12,23 @@ module RubyEasyRSA
12
12
  include Mixins::GlobalConfig
13
13
  include Mixins::SSLConfig
14
14
 
15
- def configure_command(builder, opts)
16
- filename_base = opts[:filename_base]
17
- include_ca = opts[:include_ca].nil? ? true : opts[:include_ca]
18
- include_key = opts[:include_key].nil? ? true : opts[:include_key]
15
+ private
19
16
 
20
- builder = super(builder, opts)
17
+ def parameter_defaults(parameters)
18
+ include_ca = parameters[:include_ca]
19
+ include_key = parameters[:include_key]
20
+ super.merge(
21
+ include_ca: include_ca.nil? ? true : include_ca,
22
+ include_key: include_key.nil? ? true : include_key
23
+ )
24
+ end
25
+
26
+ def configure_command(initial_builder, parameters)
27
+ builder = super
21
28
  builder = builder.with_subcommand('export-p12')
22
- builder = builder.with_argument(filename_base)
23
- builder = builder.with_argument('noca') unless include_ca
24
- builder = builder.with_argument('nokey') unless include_key
29
+ builder = builder.with_argument(parameters[:filename_base])
30
+ builder = builder.with_argument('noca') unless parameters[:include_ca]
31
+ builder = builder.with_argument('nokey') unless parameters[:include_key]
25
32
  builder
26
33
  end
27
34
  end
@@ -12,14 +12,18 @@ module RubyEasyRSA
12
12
  include Mixins::GlobalConfig
13
13
  include Mixins::SSLConfig
14
14
 
15
- def configure_command(builder, opts)
16
- filename_base = opts[:filename_base]
17
- include_ca = opts[:include_ca].nil? ? true : opts[:include_ca]
15
+ private
18
16
 
19
- builder = super(builder, opts)
17
+ def parameter_defaults(parameters)
18
+ include_ca = parameters[:include_ca]
19
+ super.merge(include_ca: include_ca.nil? ? true : include_ca)
20
+ end
21
+
22
+ def configure_command(initial_builder, parameters)
23
+ builder = super
20
24
  builder = builder.with_subcommand('export-p7')
21
- builder = builder.with_argument(filename_base)
22
- builder = builder.with_argument('noca') unless include_ca
25
+ builder = builder.with_argument(parameters[:filename_base])
26
+ builder = builder.with_argument('noca') unless parameters[:include_ca]
23
27
  builder
24
28
  end
25
29
  end
@@ -12,9 +12,11 @@ module RubyEasyRSA
12
12
  include Mixins::GlobalConfig
13
13
  include Mixins::SSLConfig
14
14
 
15
- def configure_command(builder, opts)
16
- builder = builder.with_subcommand('gen-crl')
17
- super(builder, opts)
15
+ private
16
+
17
+ def configure_command(initial_builder, parameters)
18
+ builder = initial_builder.with_subcommand('gen-crl')
19
+ super(builder, parameters)
18
20
  end
19
21
  end
20
22
  end
@@ -12,8 +12,10 @@ module RubyEasyRSA
12
12
  include Mixins::GlobalConfig
13
13
  include Mixins::SSLConfig
14
14
 
15
- def configure_command(builder, opts)
16
- builder = super(builder, opts)
15
+ private
16
+
17
+ def configure_command(initial_builder, parameters)
18
+ builder = super
17
19
  builder.with_subcommand('gen-dh')
18
20
  end
19
21
  end
@@ -18,12 +18,12 @@ module RubyEasyRSA
18
18
  include Mixins::ExtraExtensionsConfig
19
19
  include Mixins::EncryptKeyConfig
20
20
 
21
- def configure_command(builder, opts)
22
- filename_base = opts[:filename_base]
21
+ private
23
22
 
24
- builder = builder.with_subcommand('gen-req')
25
- builder = builder.with_argument(filename_base)
26
- super(builder, opts)
23
+ def configure_command(initial_builder, parameters)
24
+ builder = initial_builder.with_subcommand('gen-req')
25
+ builder = builder.with_argument(parameters[:filename_base])
26
+ super(builder, parameters)
27
27
  end
28
28
  end
29
29
  end
@@ -12,11 +12,13 @@ module RubyEasyRSA
12
12
  include Mixins::GlobalConfig
13
13
  include Mixins::SSLConfig
14
14
 
15
- def configure_command(builder, opts)
16
- request_file = opts[:request_file]
17
- filename_base = opts[:filename_base]
15
+ private
18
16
 
19
- builder = super(builder, opts)
17
+ def configure_command(initial_builder, parameters)
18
+ request_file = parameters[:request_file]
19
+ filename_base = parameters[:filename_base]
20
+
21
+ builder = super
20
22
  builder = builder.with_subcommand('import-req')
21
23
  builder = builder.with_argument(request_file)
22
24
  builder.with_argument(filename_base)
@@ -12,8 +12,10 @@ module RubyEasyRSA
12
12
  include Mixins::GlobalConfig
13
13
  include Mixins::SSLConfig
14
14
 
15
- def configure_command(builder, opts)
16
- builder = super(builder, opts)
15
+ private
16
+
17
+ def configure_command(initial_builder, parameters)
18
+ builder = super
17
19
  builder.with_subcommand('init-pki')
18
20
  end
19
21
  end
@@ -4,18 +4,18 @@ module RubyEasyRSA
4
4
  module Commands
5
5
  module Mixins
6
6
  module AlgorithmConfig
7
+ private
8
+
7
9
  # rubocop:disable Style/RedundantAssignment
8
- def configure_command(builder, opts)
9
- builder = super(builder, opts)
10
- builder = with_ec_directory(builder, opts[:ec_directory])
11
- builder = with_algorithm(builder, opts[:algorithm])
12
- builder = with_curve(builder, opts[:curve])
10
+ def configure_command(initial_builder, parameters)
11
+ builder = super
12
+ builder = with_ec_directory(builder, parameters[:ec_directory])
13
+ builder = with_algorithm(builder, parameters[:algorithm])
14
+ builder = with_curve(builder, parameters[:curve])
13
15
  builder
14
16
  end
15
17
  # rubocop:enable Style/RedundantAssignment
16
18
 
17
- private
18
-
19
19
  def with_ec_directory(builder, ec_directory)
20
20
  return builder unless ec_directory
21
21
 
@@ -4,16 +4,16 @@ module RubyEasyRSA
4
4
  module Commands
5
5
  module Mixins
6
6
  module CopyExtensionsConfig
7
+ private
8
+
7
9
  # rubocop:disable Style/RedundantAssignment
8
- def configure_command(builder, opts)
9
- builder = super(builder, opts)
10
- builder = with_copy_extensions(builder, opts[:copy_extensions])
10
+ def configure_command(initial_builder, parameters)
11
+ builder = super
12
+ builder = with_copy_extensions(builder, parameters[:copy_extensions])
11
13
  builder
12
14
  end
13
15
  # rubocop:enable Style/RedundantAssignment
14
16
 
15
- private
16
-
17
17
  def with_copy_extensions(builder, copy_extensions)
18
18
  return builder unless copy_extensions
19
19
 
@@ -4,16 +4,16 @@ module RubyEasyRSA
4
4
  module Commands
5
5
  module Mixins
6
6
  module EncryptKeyConfig
7
+ private
8
+
7
9
  # rubocop:disable Style/RedundantAssignment
8
- def configure_command(builder, opts)
9
- builder = super(builder, opts)
10
- builder = with_encrypt_key(builder, encrypt_key(opts))
10
+ def configure_command(initial_builder, parameters)
11
+ builder = super
12
+ builder = with_encrypt_key(builder, encrypt_key(parameters))
11
13
  builder
12
14
  end
13
15
  # rubocop:enable Style/RedundantAssignment
14
16
 
15
- private
16
-
17
17
  def encrypt_key(opts)
18
18
  opts[:encrypt_key].nil? ? true : opts[:encrypt_key]
19
19
  end
@@ -4,19 +4,21 @@ module RubyEasyRSA
4
4
  module Commands
5
5
  module Mixins
6
6
  module ExtraExtensionsConfig
7
+ private
8
+
7
9
  # rubocop:disable Style/RedundantAssignment
8
- def configure_command(builder, opts)
9
- builder = super(builder, opts)
10
- builder = with_extra_extensions(builder, opts[:extra_extensions])
10
+ def configure_command(initial_builder, parameters)
11
+ builder = super
12
+ builder = with_extra_extensions(
13
+ builder, parameters[:extra_extensions]
14
+ )
11
15
  builder = with_subject_alternative_name(
12
- builder, opts[:subject_alternative_name]
16
+ builder, parameters[:subject_alternative_name]
13
17
  )
14
18
  builder
15
19
  end
16
20
  # rubocop:enable Style/RedundantAssignment
17
21
 
18
- private
19
-
20
22
  def with_extra_extensions(builder, extra_extensions)
21
23
  return builder unless extra_extensions
22
24
 
@@ -4,30 +4,46 @@ module RubyEasyRSA
4
4
  module Commands
5
5
  module Mixins
6
6
  module GlobalConfig
7
+ private
8
+
7
9
  # rubocop:disable Style/RedundantAssignment
8
10
  # rubocop:disable Metrics/MethodLength
9
11
  # rubocop:disable Metrics/AbcSize
10
- def configure_command(builder, opts)
11
- builder = super(builder, opts)
12
- builder = with_openssl_binary(builder, opts[:openssl_binary])
12
+ def configure_command(initial_builder, parameters)
13
+ builder = super
14
+ builder = with_openssl_binary(
15
+ builder, parameters[:openssl_binary]
16
+ )
13
17
  builder = with_extensions_directory(
14
- builder, opts[:extensions_directory]
15
- )
16
- builder = with_ssl_configuration(builder, opts[:ssl_configuration])
17
- builder = with_safe_configuration(builder, opts[:safe_configuration])
18
- builder = with_vars(builder, opts[:vars])
19
- builder = with_batch(builder, opts[:batch])
20
- builder = with_pki_directory(builder, opts[:pki_directory])
21
- builder = with_input_password(builder, opts[:input_password])
22
- builder = with_output_password(builder, opts[:output_password])
18
+ builder, parameters[:extensions_directory]
19
+ )
20
+ builder = with_ssl_configuration(
21
+ builder, parameters[:ssl_configuration]
22
+ )
23
+ builder = with_safe_configuration(
24
+ builder, parameters[:safe_configuration]
25
+ )
26
+ builder = with_vars(
27
+ builder, parameters[:vars]
28
+ )
29
+ builder = with_batch(
30
+ builder, parameters[:batch]
31
+ )
32
+ builder = with_pki_directory(
33
+ builder, parameters[:pki_directory]
34
+ )
35
+ builder = with_input_password(
36
+ builder, parameters[:input_password]
37
+ )
38
+ builder = with_output_password(
39
+ builder, parameters[:output_password]
40
+ )
23
41
  builder
24
42
  end
25
43
  # rubocop:enable Metrics/AbcSize
26
44
  # rubocop:enable Metrics/MethodLength
27
45
  # rubocop:enable Style/RedundantAssignment
28
46
 
29
- private
30
-
31
47
  def with_openssl_binary(builder, openssl_binary)
32
48
  return builder unless openssl_binary
33
49
 
@@ -4,18 +4,18 @@ module RubyEasyRSA
4
4
  module Commands
5
5
  module Mixins
6
6
  module InlineCredentialsFileConfig
7
+ private
8
+
7
9
  # rubocop:disable Style/RedundantAssignment
8
- def configure_command(builder, opts)
9
- builder = super(builder, opts)
10
+ def configure_command(initial_builder, parameters)
11
+ builder = super
10
12
  builder = with_inline_credentials_file(
11
- builder, opts[:inline_credentials_file]
13
+ builder, parameters[:inline_credentials_file]
12
14
  )
13
15
  builder
14
16
  end
15
17
  # rubocop:enable Style/RedundantAssignment
16
18
 
17
- private
18
-
19
19
  def with_inline_credentials_file(builder, inline_credentials_file)
20
20
  return builder unless inline_credentials_file
21
21
 
@@ -4,21 +4,21 @@ module RubyEasyRSA
4
4
  module Commands
5
5
  module Mixins
6
6
  module NetscapeExtensionsConfig
7
+ private
8
+
7
9
  # rubocop:disable Style/RedundantAssignment
8
- def configure_command(builder, opts)
9
- builder = super(builder, opts)
10
+ def configure_command(initial_builder, parameters)
11
+ builder = super
10
12
  builder = with_netscape_extensions_support(
11
- builder, opts[:netscape_extensions_support]
13
+ builder, parameters[:netscape_extensions_support]
12
14
  )
13
15
  builder = with_netscape_extensions_comment(
14
- builder, opts[:netscape_extensions_comment]
16
+ builder, parameters[:netscape_extensions_comment]
15
17
  )
16
18
  builder
17
19
  end
18
20
  # rubocop:enable Style/RedundantAssignment
19
21
 
20
- private
21
-
22
22
  def with_netscape_extensions_support(
23
23
  builder, netscape_extensions_support
24
24
  )
@@ -4,120 +4,116 @@ module RubyEasyRSA
4
4
  module Commands
5
5
  module Mixins
6
6
  module SSLConfig
7
+ private
8
+
7
9
  # rubocop:disable Style/RedundantAssignment
8
10
  # rubocop:disable Metrics/MethodLength
9
11
  # rubocop:disable Metrics/AbcSize
10
- def configure_command(builder, opts)
11
- builder = super(builder, opts)
12
- builder = with_digest(builder, opts[:digest])
13
- builder = with_expires_in_days(builder, opts[:expires_in_days])
14
- builder = with_key_size_in_bits(builder, opts[:key_size_in_bits])
12
+ def configure_command(initial_builder, parameters)
13
+ builder = super
14
+ builder = with_digest(
15
+ builder, parameters[:digest]
16
+ )
17
+ builder = with_expires_in_days(
18
+ builder, parameters[:expires_in_days]
19
+ )
20
+ builder = with_key_size_in_bits(
21
+ builder, parameters[:key_size_in_bits]
22
+ )
15
23
  builder = with_distinguished_name_mode(
16
- builder, opts[:distinguished_name_mode]
24
+ builder, parameters[:distinguished_name_mode]
25
+ )
26
+ builder = with_common_name(
27
+ builder, parameters[:common_name]
28
+ )
29
+ builder = with_country(
30
+ builder, parameters[:country]
31
+ )
32
+ builder = with_province(
33
+ builder, parameters[:province]
34
+ )
35
+ builder = with_city(
36
+ builder, parameters[:city]
37
+ )
38
+ builder = with_organisation(
39
+ builder, parameters[:organisation]
17
40
  )
18
- builder = with_common_name(builder, opts[:common_name])
19
- builder = with_country(builder, opts[:country])
20
- builder = with_province(builder, opts[:province])
21
- builder = with_city(builder, opts[:city])
22
- builder = with_organisation(builder, opts[:organisation])
23
41
  builder = with_organisational_unit(
24
- builder, opts[:organisational_unit]
42
+ builder, parameters[:organisational_unit]
43
+ )
44
+ builder = with_email(
45
+ builder, parameters[:email]
25
46
  )
26
- builder = with_email(builder, opts[:email])
27
47
  builder
28
48
  end
29
49
  # rubocop:enable Metrics/AbcSize
30
50
  # rubocop:enable Metrics/MethodLength
31
51
  # rubocop:enable Style/RedundantAssignment
32
52
 
33
- private
34
-
35
53
  def with_digest(builder, digest)
36
54
  return builder unless digest
37
55
 
38
- builder.with_option(
39
- '--digest', digest
40
- )
56
+ builder.with_option('--digest', digest)
41
57
  end
42
58
 
43
59
  def with_expires_in_days(builder, expires_in_days)
44
60
  return builder unless expires_in_days
45
61
 
46
- builder.with_option(
47
- '--days', expires_in_days
48
- )
62
+ builder.with_option('--days', expires_in_days)
49
63
  end
50
64
 
51
65
  def with_key_size_in_bits(builder, key_size_in_bits)
52
66
  return builder unless key_size_in_bits
53
67
 
54
- builder.with_option(
55
- '--keysize', key_size_in_bits
56
- )
68
+ builder.with_option('--keysize', key_size_in_bits)
57
69
  end
58
70
 
59
71
  def with_distinguished_name_mode(builder, distinguished_name_mode)
60
72
  return builder unless distinguished_name_mode
61
73
 
62
- builder.with_option(
63
- '--dn-mode', distinguished_name_mode
64
- )
74
+ builder.with_option('--dn-mode', distinguished_name_mode)
65
75
  end
66
76
 
67
77
  def with_common_name(builder, common_name)
68
78
  return builder unless common_name
69
79
 
70
- builder.with_option(
71
- '--req-cn', common_name, quoting: '"'
72
- )
80
+ builder.with_option('--req-cn', common_name, quoting: '"')
73
81
  end
74
82
 
75
83
  def with_country(builder, country)
76
84
  return builder unless country
77
85
 
78
- builder.with_option(
79
- '--req-c', country, quoting: '"'
80
- )
86
+ builder.with_option('--req-c', country, quoting: '"')
81
87
  end
82
88
 
83
89
  def with_province(builder, province)
84
90
  return builder unless province
85
91
 
86
- builder.with_option(
87
- '--req-st', province, quoting: '"'
88
- )
92
+ builder.with_option('--req-st', province, quoting: '"')
89
93
  end
90
94
 
91
95
  def with_city(builder, city)
92
96
  return builder unless city
93
97
 
94
- builder.with_option(
95
- '--req-city', city, quoting: '"'
96
- )
98
+ builder.with_option('--req-city', city, quoting: '"')
97
99
  end
98
100
 
99
101
  def with_organisation(builder, organisation)
100
102
  return builder unless organisation
101
103
 
102
- builder.with_option(
103
- '--req-org', organisation, quoting: '"'
104
- )
104
+ builder.with_option('--req-org', organisation, quoting: '"')
105
105
  end
106
106
 
107
107
  def with_organisational_unit(builder, organisational_unit)
108
108
  return builder unless organisational_unit
109
109
 
110
- builder.with_option(
111
- '--req-ou', organisational_unit, quoting: '"'
112
- )
110
+ builder.with_option('--req-ou', organisational_unit, quoting: '"')
113
111
  end
114
112
 
115
113
  def with_email(builder, email)
116
114
  return builder unless email
117
115
 
118
- builder.with_option(
119
- '--req-email', email
120
- )
116
+ builder.with_option('--req-email', email)
121
117
  end
122
118
  end
123
119
  end
@@ -4,16 +4,16 @@ module RubyEasyRSA
4
4
  module Commands
5
5
  module Mixins
6
6
  module SubCAConfig
7
+ private
8
+
7
9
  # rubocop:disable Style/RedundantAssignment
8
- def configure_command(builder, opts)
9
- builder = super(builder, opts)
10
- builder = with_sub_ca_length(builder, opts[:sub_ca_length])
10
+ def configure_command(initial_builder, parameters)
11
+ builder = super
12
+ builder = with_sub_ca_length(builder, parameters[:sub_ca_length])
11
13
  builder
12
14
  end
13
15
  # rubocop:enable Style/RedundantAssignment
14
16
 
15
- private
16
-
17
17
  def with_sub_ca_length(builder, sub_ca_length)
18
18
  return builder unless sub_ca_length
19
19
 
@@ -14,12 +14,12 @@ module RubyEasyRSA
14
14
  include Mixins::SSLConfig
15
15
  include Mixins::EncryptKeyConfig
16
16
 
17
- def configure_command(builder, opts)
18
- filename_base = opts[:filename_base]
17
+ private
19
18
 
20
- builder = builder.with_subcommand('renew')
21
- builder = builder.with_argument(filename_base)
22
- super(builder, opts)
19
+ def configure_command(initial_builder, parameters)
20
+ builder = initial_builder.with_subcommand('renew')
21
+ builder = builder.with_argument(parameters[:filename_base])
22
+ super(builder, parameters)
23
23
  end
24
24
  end
25
25
  end
@@ -12,14 +12,16 @@ module RubyEasyRSA
12
12
  include Mixins::GlobalConfig
13
13
  include Mixins::SSLConfig
14
14
 
15
- def configure_command(builder, opts)
16
- filename_base = opts[:filename_base]
17
- reason = opts[:reason]
15
+ private
18
16
 
19
- builder = super(builder, opts)
17
+ def configure_command(initial_builder, parameters)
18
+ builder = super
20
19
  builder = builder.with_subcommand('revoke')
21
- builder = builder.with_argument(filename_base)
22
- builder = builder.with_argument(reason) if reason
20
+ builder = builder.with_argument(parameters[:filename_base])
21
+ if parameters[:reason]
22
+ builder =
23
+ builder.with_argument(parameters[:reason])
24
+ end
23
25
  builder
24
26
  end
25
27
  end
@@ -14,14 +14,13 @@ module RubyEasyRSA
14
14
  include Mixins::SSLConfig
15
15
  include Mixins::EncryptKeyConfig
16
16
 
17
- def configure_command(builder, opts)
18
- filename_base = opts[:filename_base]
19
- file = opts[:file]
17
+ private
20
18
 
21
- builder = builder.with_subcommand('set-ec-pass')
22
- builder = builder.with_argument(filename_base)
23
- builder = super(builder, opts)
24
- builder = builder.with_argument('file') if file
19
+ def configure_command(initial_builder, parameters)
20
+ builder = initial_builder.with_subcommand('set-ec-pass')
21
+ builder = builder.with_argument(parameters[:filename_base])
22
+ builder = super(builder, parameters)
23
+ builder = builder.with_argument('file') if parameters[:file]
25
24
  builder
26
25
  end
27
26
  end
@@ -14,14 +14,13 @@ module RubyEasyRSA
14
14
  include Mixins::SSLConfig
15
15
  include Mixins::EncryptKeyConfig
16
16
 
17
- def configure_command(builder, opts)
18
- filename_base = opts[:filename_base]
19
- file = opts[:file]
17
+ private
20
18
 
21
- builder = builder.with_subcommand('set-rsa-pass')
22
- builder = builder.with_argument(filename_base)
23
- builder = super(builder, opts)
24
- builder = builder.with_argument('file') if file
19
+ def configure_command(initial_builder, parameters)
20
+ builder = initial_builder.with_subcommand('set-rsa-pass')
21
+ builder = builder.with_argument(parameters[:filename_base])
22
+ builder = super(builder, parameters)
23
+ builder = builder.with_argument('file') if parameters[:file]
25
24
  builder
26
25
  end
27
26
  end
@@ -12,14 +12,13 @@ module RubyEasyRSA
12
12
  include Mixins::GlobalConfig
13
13
  include Mixins::SSLConfig
14
14
 
15
- def configure_command(builder, opts)
16
- filename_base = opts[:filename_base]
17
- full = opts[:full]
15
+ private
18
16
 
19
- builder = super(builder, opts)
17
+ def configure_command(initial_builder, parameters)
18
+ builder = super
20
19
  builder = builder.with_subcommand('show-ca')
21
- builder = builder.with_argument(filename_base)
22
- builder = builder.with_argument('full') if full
20
+ builder = builder.with_argument(parameters[:filename_base])
21
+ builder = builder.with_argument('full') if parameters[:full]
23
22
  builder
24
23
  end
25
24
  end
@@ -12,14 +12,13 @@ module RubyEasyRSA
12
12
  include Mixins::GlobalConfig
13
13
  include Mixins::SSLConfig
14
14
 
15
- def configure_command(builder, opts)
16
- filename_base = opts[:filename_base]
17
- full = opts[:full]
15
+ private
18
16
 
19
- builder = super(builder, opts)
17
+ def configure_command(initial_builder, parameters)
18
+ builder = super
20
19
  builder = builder.with_subcommand('show-cert')
21
- builder = builder.with_argument(filename_base)
22
- builder = builder.with_argument('full') if full
20
+ builder = builder.with_argument(parameters[:filename_base])
21
+ builder = builder.with_argument('full') if parameters[:full]
23
22
  builder
24
23
  end
25
24
  end
@@ -12,14 +12,13 @@ module RubyEasyRSA
12
12
  include Mixins::GlobalConfig
13
13
  include Mixins::SSLConfig
14
14
 
15
- def configure_command(builder, opts)
16
- filename_base = opts[:filename_base]
17
- full = opts[:full]
15
+ private
18
16
 
19
- builder = super(builder, opts)
17
+ def configure_command(initial_builder, parameters)
18
+ builder = super
20
19
  builder = builder.with_subcommand('show-req')
21
- builder = builder.with_argument(filename_base)
22
- builder = builder.with_argument('full') if full
20
+ builder = builder.with_argument(parameters[:filename_base])
21
+ builder = builder.with_argument('full') if parameters[:full]
23
22
  builder
24
23
  end
25
24
  end
@@ -22,14 +22,13 @@ module RubyEasyRSA
22
22
  include Mixins::ExtraExtensionsConfig
23
23
  include Mixins::NetscapeExtensionsConfig
24
24
 
25
- def configure_command(builder, opts)
26
- type = opts[:type]
27
- filename_base = opts[:filename_base]
25
+ private
28
26
 
29
- builder = super(builder, opts)
27
+ def configure_command(initial_builder, parameters)
28
+ builder = super
30
29
  builder = builder.with_subcommand('sign-req')
31
- builder = builder.with_argument(type)
32
- builder.with_argument(filename_base)
30
+ builder = builder.with_argument(parameters[:type])
31
+ builder.with_argument(parameters[:filename_base])
33
32
  end
34
33
  end
35
34
  end
@@ -12,9 +12,11 @@ module RubyEasyRSA
12
12
  include Mixins::GlobalConfig
13
13
  include Mixins::SSLConfig
14
14
 
15
- def configure_command(builder, opts)
16
- builder = builder.with_subcommand('update-db')
17
- super(builder, opts)
15
+ private
16
+
17
+ def configure_command(initial_builder, parameters)
18
+ builder = initial_builder.with_subcommand('update-db')
19
+ super(builder, parameters)
18
20
  end
19
21
  end
20
22
  end
@@ -12,12 +12,12 @@ module RubyEasyRSA
12
12
  include Mixins::GlobalConfig
13
13
  include Mixins::SSLConfig
14
14
 
15
- def configure_command(builder, opts)
16
- type = opts[:type]
15
+ private
17
16
 
18
- builder = super(builder, opts)
17
+ def configure_command(initial_builder, parameters)
18
+ builder = super
19
19
  builder = builder.with_subcommand('upgrade')
20
- builder.with_argument(type)
20
+ builder.with_argument(parameters[:type])
21
21
  end
22
22
  end
23
23
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module RubyEasyRSA
4
- VERSION = '0.12.0.pre.4'
4
+ VERSION = '0.12.0.pre.5'
5
5
  end
@@ -34,9 +34,9 @@ Gem::Specification.new do |spec|
34
34
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
35
35
  spec.require_paths = ['lib']
36
36
 
37
- spec.required_ruby_version = '>= 2.7'
37
+ spec.required_ruby_version = '>= 3.1'
38
38
 
39
- spec.add_dependency 'lino', '~> 3.0'
39
+ spec.add_dependency 'lino', '>= 3.1'
40
40
 
41
41
  spec.add_development_dependency 'bundler'
42
42
  spec.add_development_dependency 'gem-release'
metadata CHANGED
@@ -1,29 +1,29 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ruby_easy_rsa
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.12.0.pre.4
4
+ version: 0.12.0.pre.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - InfraBlocks Maintainers
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2023-11-06 00:00:00.000000000 Z
11
+ date: 2024-07-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: lino
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - "~>"
17
+ - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: '3.0'
19
+ version: '3.1'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - "~>"
24
+ - - ">="
25
25
  - !ruby/object:Gem::Version
26
- version: '3.0'
26
+ version: '3.1'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: bundler
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -282,14 +282,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
282
282
  requirements:
283
283
  - - ">="
284
284
  - !ruby/object:Gem::Version
285
- version: '2.7'
285
+ version: '3.1'
286
286
  required_rubygems_version: !ruby/object:Gem::Requirement
287
287
  requirements:
288
288
  - - ">"
289
289
  - !ruby/object:Gem::Version
290
290
  version: 1.3.1
291
291
  requirements: []
292
- rubygems_version: 3.1.6
292
+ rubygems_version: 3.3.7
293
293
  signing_key:
294
294
  specification_version: 4
295
295
  summary: A simple Ruby wrapper for invoking EasyRSA commands.