From 7019d75e84e5ba7e628a73af8dd1671bcd77f9ac Mon Sep 17 00:00:00 2001 From: Romuald Conty Date: Fri, 25 Sep 2020 18:11:19 +0200 Subject: [PATCH] CLI: Allow to configure use_sessions setting --- manifests/cli.pp | 3 +++ manifests/cli/params.pp | 1 + spec/classes/foreman_cli_spec.rb | 3 +++ templates/hammer_etc.yml.erb | 6 ++++++ 4 files changed, 13 insertions(+) diff --git a/manifests/cli.pp b/manifests/cli.pp index 062a9b1c5..16a60ebb1 100644 --- a/manifests/cli.pp +++ b/manifests/cli.pp @@ -14,6 +14,8 @@ # # $manage_root_config:: Whether to manage /root/.hammer configuration. # +# $use_sessions:: Enable using sessions +# # $refresh_cache:: Check API documentation cache status on each request # # $request_timeout:: API request timeout, set -1 for infinity @@ -31,6 +33,7 @@ Boolean $manage_root_config = $foreman::cli::params::manage_root_config, Optional[String] $username = $foreman::cli::params::username, Optional[String] $password = $foreman::cli::params::password, + Boolean $use_sessions = $foreman::cli::params::use_sessions, Boolean $refresh_cache = $foreman::cli::params::refresh_cache, Integer[-1] $request_timeout = $foreman::cli::params::request_timeout, Optional[Stdlib::Absolutepath] $ssl_ca_file = $foreman::cli::params::ssl_ca_file, diff --git a/manifests/cli/params.pp b/manifests/cli/params.pp index 0d9698f17..6d74dfb9b 100644 --- a/manifests/cli/params.pp +++ b/manifests/cli/params.pp @@ -7,6 +7,7 @@ $password = undef $refresh_cache = false $request_timeout = 120 + $use_sessions = false $ssl_ca_file = undef # OS specific paths diff --git a/spec/classes/foreman_cli_spec.rb b/spec/classes/foreman_cli_spec.rb index d309a99da..4ac7dd47b 100644 --- a/spec/classes/foreman_cli_spec.rb +++ b/spec/classes/foreman_cli_spec.rb @@ -23,6 +23,7 @@ ':foreman:', ' :enable_module: true', " :host: 'http://example.com'", + ' :use_sessions: false', ' :refresh_cache: false', ' :request_timeout: 120', ]) @@ -56,6 +57,7 @@ ':foreman:', ' :enable_module: true', " :host: 'http://example.com'", + ' :use_sessions: false', ' :refresh_cache: false', ' :request_timeout: 120', ':ssl:', @@ -96,6 +98,7 @@ class { 'foreman': ':foreman:', ' :enable_module: true', " :host: 'https://foreman.example.com'", + ' :use_sessions: false', ' :refresh_cache: false', ' :request_timeout: 120', ':ssl:', diff --git a/templates/hammer_etc.yml.erb b/templates/hammer_etc.yml.erb index b335e94e6..a2542e1cf 100644 --- a/templates/hammer_etc.yml.erb +++ b/templates/hammer_etc.yml.erb @@ -5,11 +5,17 @@ # Your foreman server address :host: '<%= @foreman_url_real %>' + # Enable using sessions + # When sessions are enabled, hammer ignores credentials stored in the config file + # and asks for them interactively at the begining of each session. + :use_sessions: <%= @use_sessions %> + # Check API documentation cache status on each request :refresh_cache: <%= @refresh_cache %> # API request timeout in seconds, set -1 for infinity :request_timeout: <%= @request_timeout %> + <% if @ssl_ca_file_real -%> :ssl: