hammer_cli_foreman 3.19.0 → 5.0.0

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: 5497c9734d90b46fa06d3a1ad26a007162fe0a14252c198451728d4ac668115a
4
- data.tar.gz: 81ac1b708117feec9e26488fdcda86ad4c969a23835016a65188c4b06dba272e
3
+ metadata.gz: aa8e936210a0637b599cccd85fe7280abe8a2e2a13f229f583a6b82413b2bdac
4
+ data.tar.gz: e83a819d4ab5f9ebf158c1f0ca9401aa3331c9dc5bd30cca5cb5d161bf20b760
5
5
  SHA512:
6
- metadata.gz: bc6f88e37b1ed37b735dd266f329262166792b53c3abe6ce9a775cc5ba2fbe644be82d51fdd19b79742c2b3054c3ebeb1e825b561ef194635b76a85cbb0d714b
7
- data.tar.gz: cb58b247301d176f88242ab9d343f132b12b91baf2e3aa16a19046cf0e5df5dd3eca1be497cab4e5f151373b9c3bd2ff53cb94ba5e094957045458474025c572
6
+ metadata.gz: d060e979ab494cb98d2fb2367bd479601e3fde8728f95baefc849e9f339fe786f30cf624b7be96dd97d413415a1f93aa0f23b3c52d0d394f578cac26d57095dd
7
+ data.tar.gz: eb37530e01112d0328219b47acc76f6368878e13c30a1f963684a9489f84de5a3844c4398f249e4ec16fb2394da6572eba3e08bf420a5ec2b793be5c9bbb5e3c
data/doc/release_notes.md CHANGED
@@ -1,5 +1,15 @@
1
1
  Release notes
2
2
  =============
3
+ ### 5.0.0 (2026-08-11)
4
+ * Fix release tag pattern and drop redundant manual gem push
5
+ * Clarify cacert behavior in containerized environment
6
+ * Clarify param description
7
+ * Hide the cacert option, only allow cacert-file
8
+ * Implement ldap ca cert support, [#39537](http://projects.theforeman.org/issues/39537)
9
+ * Show unrecognized smart proxy features in list and info ([PR #656](https://github.com/theforeman/hammer-cli-foreman/pull/656)), [#39414](http://projects.theforeman.org/issues/39414)
10
+ * Bump to 5.0.0-develop
11
+ * Bump to 3.20.0-develop
12
+
3
13
  ### 3.19.0 (2026-05-11)
4
14
  * Sync ci ruby versions from hammer-cli
5
15
  * Provide empty provider_vm_specific_fields in cr::base, [#39126](http://projects.theforeman.org/issues/39126)
@@ -4,6 +4,15 @@ module HammerCLIForeman
4
4
  command_name 'ldap'
5
5
  desc _('Manage LDAP auth sources')
6
6
 
7
+ module CacertFileOption
8
+ def self.included(base)
9
+ base.option '--cacert-file', 'CACERT_FILE',
10
+ _('Path to a PEM file with CA certificate(s) used for LDAPS verification (system trust store is not used when set). In containerized deployments, the container\'s trust store is used, so the CA certificate(s) may need to be provided here explicitly'),
11
+ :attribute_name => :option_cacert,
12
+ :format => HammerCLI::Options::Normalizers::File.new
13
+ end
14
+ end
15
+
7
16
  class ListCommand < HammerCLIForeman::ListCommand
8
17
  output do
9
18
  field :id, _('Id')
@@ -23,6 +32,7 @@ module HammerCLIForeman
23
32
  field :name, _('Name')
24
33
  field :host, _('Server')
25
34
  field :tls, _('LDAPS'), Fields::Boolean
35
+ field :cacert, _('CA certificate'), Fields::LongText, :hide_blank => true
26
36
  field :port, _('Port')
27
37
  field :server_type, _('Server Type')
28
38
  end
@@ -50,10 +60,14 @@ module HammerCLIForeman
50
60
  end
51
61
 
52
62
  class CreateCommand < HammerCLIForeman::CreateCommand
63
+ include CacertFileOption
64
+
53
65
  success_message _('Auth source [%{name}] created.')
54
66
  failure_message _('Could not create the Auth Source')
55
67
 
56
- build_options
68
+ build_options do |o|
69
+ o.without(:cacert)
70
+ end
57
71
  end
58
72
 
59
73
  class DeleteCommand < HammerCLIForeman::DeleteCommand
@@ -64,10 +78,14 @@ module HammerCLIForeman
64
78
  end
65
79
 
66
80
  class UpdateCommand < HammerCLIForeman::UpdateCommand
81
+ include CacertFileOption
82
+
67
83
  success_message _('Auth source [%{name}] updated.')
68
84
  failure_message _('Could not update the Auth Source')
69
85
 
70
- build_options
86
+ build_options do |o|
87
+ o.without(:cacert)
88
+ end
71
89
  end
72
90
 
73
91
  autoload_subcommands
@@ -13,6 +13,7 @@ module HammerCLIForeman
13
13
  field :status, _("Status")
14
14
  field :url, _("URL")
15
15
  field :_features, _( "Features"), Fields::List, :hide_blank => true
16
+ field :unrecognized_features, _("Unrecognized features"), Fields::List, :hide_blank => true
16
17
  end
17
18
 
18
19
  def extend_data(proxy)
@@ -31,10 +32,18 @@ module HammerCLIForeman
31
32
  field :name, _('Name')
32
33
  field :version, _('Version')
33
34
  end
35
+ collection :_unrecognized_features, _("Unrecognized features"), :hide_blank => true do
36
+ field :name, _('Name')
37
+ end
34
38
  HammerCLIForeman::References.taxonomies(self)
35
39
  HammerCLIForeman::References.timestamps(self)
36
40
  end
37
41
 
42
+ def extend_data(proxy)
43
+ proxy['_unrecognized_features'] = proxy.delete('unrecognized_features').map { |f| { 'name' => f } } if proxy['unrecognized_features']
44
+ proxy
45
+ end
46
+
38
47
  build_options
39
48
  end
40
49
 
@@ -1,5 +1,5 @@
1
1
  module HammerCLIForeman
2
2
  def self.version
3
- @version ||= Gem::Version.new "3.19.0"
3
+ @version ||= Gem::Version.new "5.0.0"
4
4
  end
5
5
  end
@@ -60,6 +60,7 @@ describe HammerCLIForeman::AuthSourceLdap do
60
60
 
61
61
  describe "parameters" do
62
62
  it_should_accept "all required params", ["--name=arch", "--host=my.host"]
63
+ it_should_accept "cacert file", ["--name=arch", "--host=my.host", "--cacert-file=#{__FILE__}"]
63
64
  # it_should_fail_with "name missing", []
64
65
  # TODO: temporarily disabled, parameters are checked in the api
65
66
  end
@@ -87,6 +88,7 @@ describe HammerCLIForeman::AuthSourceLdap do
87
88
  describe "parameters" do
88
89
  it_should_accept "name", ["--name=arch", "--new-name=arch2"]
89
90
  it_should_accept "id", ["--id=1", "--new-name=arch2"]
91
+ it_should_accept "cacert file", ["--id=1", "--cacert-file=#{__FILE__}"]
90
92
  # it_should_fail_with "no params", [] # TODO: temporarily disabled, parameters are checked in the id resolver
91
93
  # it_should_fail_with "name or id missing", ["--new-name=arch2"] # TODO: temporarily disabled, parameters are checked in the id resolver
92
94
  end
metadata CHANGED
@@ -1,15 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hammer_cli_foreman
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.19.0
4
+ version: 5.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tomáš Strachota
8
8
  - Martin Bačovský
9
- autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2026-05-11 00:00:00.000000000 Z
11
+ date: 1980-01-02 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: hammer_cli
@@ -80,6 +79,7 @@ email: tstracho@redhat.com
80
79
  executables: []
81
80
  extensions: []
82
81
  extra_rdoc_files:
82
+ - README.md
83
83
  - doc/configuration.md
84
84
  - doc/developer_docs.md
85
85
  - doc/host_create.md
@@ -89,7 +89,6 @@ extra_rdoc_files:
89
89
  - doc/release_notes.md
90
90
  - doc/testing.md
91
91
  - doc/using_hammer_cli_foreman_command.md
92
- - README.md
93
92
  files:
94
93
  - LICENSE
95
94
  - README.md
@@ -341,7 +340,6 @@ homepage: https://github.com/theforeman/hammer-cli-foreman
341
340
  licenses:
342
341
  - GPL-3.0-or-later
343
342
  metadata: {}
344
- post_install_message:
345
343
  rdoc_options: []
346
344
  require_paths:
347
345
  - lib
@@ -356,8 +354,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
356
354
  - !ruby/object:Gem::Version
357
355
  version: '0'
358
356
  requirements: []
359
- rubygems_version: 3.2.33
360
- signing_key:
357
+ rubygems_version: 4.0.16
361
358
  specification_version: 4
362
359
  summary: Foreman commands for Hammer
363
360
  test_files: