From 58c797b186754ac3a4c93a9aedd6293fb954b1d7 Mon Sep 17 00:00:00 2001 From: Michael Moll Date: Mon, 18 May 2020 18:45:28 +0200 Subject: [PATCH 1/9] Switch to postgresql::postgresql_password --- manifests/database/postgresql.pp | 2 +- metadata.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/manifests/database/postgresql.pp b/manifests/database/postgresql.pp index 825abb069..f902614d4 100644 --- a/manifests/database/postgresql.pp +++ b/manifests/database/postgresql.pp @@ -7,7 +7,7 @@ $password = $foreman::db_password ? { 'UNSET' => false, - default => postgresql_password($foreman::db_username, $foreman::db_password), + default => postgresql::postgresql_password($foreman::db_username, $foreman::db_password), } # Prevents errors if run from /root etc. diff --git a/metadata.json b/metadata.json index 5f6a94ab2..9c1c407e7 100644 --- a/metadata.json +++ b/metadata.json @@ -30,7 +30,7 @@ }, { "name": "puppetlabs/postgresql", - "version_requirement": ">= 4.2.0 < 7.0.0" + "version_requirement": ">= 6.5.0 < 7.0.0" }, { "name": "puppetlabs/stdlib", From 2dc5e7d802e2a11e35bd1e34d28cce05195040ce Mon Sep 17 00:00:00 2001 From: Ewoud Kohl van Wijngaarden Date: Wed, 20 May 2020 14:15:51 +0200 Subject: [PATCH 2/9] Fixes #29892 - Use server certs for websockets Prior to this the user needed to specify the certs both for the server and websockets. In practice these are pretty much always the same files. By using undef + pick() the option to specify these is maintained, but the defaults are better. --- manifests/config.pp | 4 ++++ manifests/init.pp | 4 ++-- manifests/params.pp | 4 ++-- spec/classes/foreman_spec.rb | 12 ++++++++++-- templates/settings.yaml.erb | 4 ++-- 5 files changed, 20 insertions(+), 8 deletions(-) diff --git a/manifests/config.pp b/manifests/config.pp index 86364b5f5..845773d16 100644 --- a/manifests/config.pp +++ b/manifests/config.pp @@ -19,6 +19,10 @@ } } + # Used in the settings template + $websockets_ssl_cert = pick($foreman::websockets_ssl_cert, $foreman::server_ssl_cert) + $websockets_ssl_key = pick($foreman::websockets_ssl_key, $foreman::server_ssl_key) + concat::fragment {'foreman_settings+01-header.yaml': target => '/etc/foreman/settings.yaml', content => template('foreman/settings.yaml.erb'), diff --git a/manifests/init.pp b/manifests/init.pp index 3136b253b..2d7a9f568 100644 --- a/manifests/init.pp +++ b/manifests/init.pp @@ -273,8 +273,8 @@ String $pam_service = $foreman::params::pam_service, Boolean $ipa_manage_sssd = $foreman::params::ipa_manage_sssd, Boolean $websockets_encrypt = $foreman::params::websockets_encrypt, - Stdlib::Absolutepath $websockets_ssl_key = $foreman::params::websockets_ssl_key, - Stdlib::Absolutepath $websockets_ssl_cert = $foreman::params::websockets_ssl_cert, + Optional[Stdlib::Absolutepath] $websockets_ssl_key = $foreman::params::websockets_ssl_key, + Optional[Stdlib::Absolutepath] $websockets_ssl_cert = $foreman::params::websockets_ssl_cert, Enum['debug', 'info', 'warn', 'error', 'fatal'] $logging_level = $foreman::params::logging_level, Enum['file', 'syslog', 'journald'] $logging_type = $foreman::params::logging_type, Enum['pattern', 'multiline_pattern', 'json'] $logging_layout = $foreman::params::logging_layout, diff --git a/manifests/params.pp b/manifests/params.pp index 96c440791..781affdd2 100644 --- a/manifests/params.pp +++ b/manifests/params.pp @@ -183,8 +183,8 @@ # Websockets $websockets_encrypt = true - $websockets_ssl_key = $server_ssl_key - $websockets_ssl_cert = $server_ssl_cert + $websockets_ssl_key = undef + $websockets_ssl_cert = undef # Application logging $logging_level = 'info' diff --git a/spec/classes/foreman_spec.rb b/spec/classes/foreman_spec.rb index c00a42667..5e5a910c6 100644 --- a/spec/classes/foreman_spec.rb +++ b/spec/classes/foreman_spec.rb @@ -31,6 +31,8 @@ .with_content(/^:oauth_consumer_key:\s*\w+$/) .with_content(/^:oauth_consumer_secret:\s*\w+$/) .with_content(/^:websockets_encrypt:\s*true$/) + .with_content(%r{^:websockets_ssl_key:\s*/etc/puppetlabs/puppet/ssl/private_keys/foo\.example\.com\.pem$}) + .with_content(%r{^:websockets_ssl_cert:\s*/etc/puppetlabs/puppet/ssl/certs/foo\.example\.com\.pem$}) .with_content(%r{^:ssl_certificate:\s*/etc/puppetlabs/puppet/ssl/certs/foo\.example\.com\.pem$}) .with_content(%r{^:ssl_ca_file:\s*/etc/puppetlabs/puppet/ssl/certs/ca.pem$}) .with_content(%r{^:ssl_priv_key:\s*/etc/puppetlabs/puppet/ssl/private_keys/foo\.example\.com\.pem$}) @@ -236,8 +238,8 @@ pam_service: 'foreman', ipa_manage_sssd: true, websockets_encrypt: true, - websockets_ssl_key: '/etc/ssl/private/snakeoil.pem', - websockets_ssl_cert: '/etc/ssl/certs/snakeoil.pem', + websockets_ssl_key: '/etc/ssl/private/snakeoil-ws.pem', + websockets_ssl_cert: '/etc/ssl/certs/snakeoil-ws.pem', logging_level: 'info', loggers: {}, email_delivery_method: 'sendmail', @@ -260,6 +262,12 @@ .with_keycloak_app_name('cloak-app') .with_keycloak_realm('myrealm') end + + it 'should configure certificates in settings.yaml' do + is_expected.to contain_concat__fragment('foreman_settings+01-header.yaml') + .with_content(%r{^:websockets_ssl_key: /etc/ssl/private/snakeoil-ws\.pem$}) + .with_content(%r{^:websockets_ssl_cert: /etc/ssl/certs/snakeoil-ws\.pem$}) + end end context 'with journald logging' do diff --git a/templates/settings.yaml.erb b/templates/settings.yaml.erb index 61d0969f5..383b490e5 100644 --- a/templates/settings.yaml.erb +++ b/templates/settings.yaml.erb @@ -17,8 +17,8 @@ # Websockets :websockets_encrypt: <%= scope.lookupvar("foreman::websockets_encrypt") %> -:websockets_ssl_key: <%= scope.lookupvar("foreman::websockets_ssl_key") %> -:websockets_ssl_cert: <%= scope.lookupvar("foreman::websockets_ssl_cert") %> +:websockets_ssl_key: <%= @websockets_ssl_key %> +:websockets_ssl_cert: <%= @websockets_ssl_cert %> # SSL-settings :ssl_certificate: <%= scope.lookupvar("foreman::client_ssl_cert") %> From fe7b09a36752c609486f82c87e042350457aee9b Mon Sep 17 00:00:00 2001 From: Ewoud Kohl van Wijngaarden Date: Fri, 5 Jun 2020 13:43:00 +0200 Subject: [PATCH 3/9] Fixes #30026 - Ensure Foreman is provisioned before puppetdb This is the same as 81a68c923a9e52a1579c599f95828042d0c95470 but for puppetdb. --- manifests/plugin/puppetdb.pp | 30 +++++++++++++--------------- spec/classes/plugin/puppetdb_spec.rb | 10 ++++++++++ 2 files changed, 24 insertions(+), 16 deletions(-) diff --git a/manifests/plugin/puppetdb.pp b/manifests/plugin/puppetdb.pp index dc26e766b..abf2f6e66 100644 --- a/manifests/plugin/puppetdb.pp +++ b/manifests/plugin/puppetdb.pp @@ -25,22 +25,20 @@ foreman::plugin { 'puppetdb': package => $foreman::plugin_prefix.regsubst(/foreman[_-]/, 'puppetdb_foreman'), } - -> foreman_config_entry { 'puppetdb_enabled': - value => true, + + $config = { + 'puppetdb_enabled' => true, + 'puppetdb_address' => $address, + 'puppetdb_ssl_ca_file' => $ssl_ca_file, + 'puppetdb_ssl_certificate' => $ssl_certificate, + 'puppetdb_ssl_private_key' => $ssl_private_key, + 'puppetdb_api_version' => $api_version, } - -> foreman_config_entry { 'puppetdb_address': - value => $address, - } - -> foreman_config_entry { 'puppetdb_ssl_ca_file': - value => $ssl_ca_file, - } - -> foreman_config_entry { 'puppetdb_ssl_certificate': - value => $ssl_certificate, - } - -> foreman_config_entry { 'puppetdb_ssl_private_key': - value => $ssl_private_key, - } - -> foreman_config_entry { 'puppetdb_api_version': - value => $api_version, + + $config.each |$setting, $value| { + foreman_config_entry { $setting: + value => $value, + require => Class['foreman::database'], + } } } diff --git a/spec/classes/plugin/puppetdb_spec.rb b/spec/classes/plugin/puppetdb_spec.rb index 3af497649..efe7721b7 100644 --- a/spec/classes/plugin/puppetdb_spec.rb +++ b/spec/classes/plugin/puppetdb_spec.rb @@ -19,6 +19,16 @@ it { should compile.with_all_deps } it { should contain_foreman__plugin('puppetdb').with_package(package_name) } + it do + should contain_foreman_config_entry('puppetdb_enabled') + .with_value(true) + .that_requires(['Class[foreman::database]', 'Foreman::Plugin[puppetdb]']) + end + it do + should contain_foreman_config_entry('puppetdb_address') + .with_value('https://localhost:8081/pdb/cmd/v1') + .that_requires(['Class[foreman::database]', 'Foreman::Plugin[puppetdb]']) + end end end end From 746229243abb98995981f90d1a777e096d201108 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pr=C3=A9mel-Cabic=20Arnaud?= Date: Thu, 18 Jun 2020 10:14:21 +0200 Subject: [PATCH 4/9] fix: indent for rails_cache_store redis type --- templates/settings.yaml.erb | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/templates/settings.yaml.erb b/templates/settings.yaml.erb index 383b490e5..6df7e2076 100644 --- a/templates/settings.yaml.erb +++ b/templates/settings.yaml.erb @@ -81,22 +81,22 @@ :rails_cache_store: :type: <%= scope["foreman::rails_cache_store"]["type"] %> <% if scope["foreman::rails_cache_store"]["type"] == "redis" -%> - :urls: + :urls: <% if scope["foreman::rails_cache_store"].key?("urls") -%> <% scope["foreman::rails_cache_store"]["urls"].each do |url| -%> - - redis://<%= url %> + - redis://<%= url %> <% end -%> <% else -%> - - redis://localhost:8479/0 + - redis://localhost:8479/0 <% end -%> - :options: + :options: <% if scope["foreman::rails_cache_store"].key?("options") -%> <% scope["foreman::rails_cache_store"]["options"].each do |option,value| -%> - :<%= option %>: <%= value %> + :<%= option %>: <%= value %> <% end -%> <% else -%> - :compress: true - :namespace: foreman + :compress: true + :namespace: foreman <% end -%> <% end -%> <% if scope.lookupvar("foreman::apache") && !scope.lookupvar("foreman::passenger") -%> From 9bb72cee31c3d7265f4f83c9dc222f7205848fed Mon Sep 17 00:00:00 2001 From: Adam Ruzicka Date: Tue, 21 Jul 2020 10:53:45 +0200 Subject: [PATCH 5/9] Fixes #30456 - Fix missing icons on /pub page The requests for /icons/* were being proxy-passed to puma, which didn't know about any icons and returned 404s. --- manifests/config/apache.pp | 2 +- spec/classes/foreman_config_apache_spec.rb | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/manifests/config/apache.pp b/manifests/config/apache.pp index f103d51b2..83de950f8 100644 --- a/manifests/config/apache.pp +++ b/manifests/config/apache.pp @@ -107,7 +107,7 @@ Stdlib::Port $server_ssl_port = 443, Stdlib::HTTPUrl $proxy_backend = 'http://localhost:3000/', Hash $proxy_params = {'retry' => '0'}, - Array[String] $proxy_no_proxy_uris = ['/pulp', '/pulp2', '/streamer', '/pub'], + Array[String] $proxy_no_proxy_uris = ['/pulp', '/pulp2', '/streamer', '/pub', '/icons'], Boolean $ssl = false, Optional[Stdlib::Absolutepath] $ssl_ca = undef, Optional[Stdlib::Absolutepath] $ssl_chain = undef, diff --git a/spec/classes/foreman_config_apache_spec.rb b/spec/classes/foreman_config_apache_spec.rb index 9f07bbf05..acbd879f4 100644 --- a/spec/classes/foreman_config_apache_spec.rb +++ b/spec/classes/foreman_config_apache_spec.rb @@ -222,7 +222,7 @@ 'set SSL_CLIENT_VERIFY ""' ]) .with_proxy_pass( - "no_proxy_uris" => ['/pulp', '/pulp2', '/streamer', '/pub'], + "no_proxy_uris" => ['/pulp', '/pulp2', '/streamer', '/pub', '/icons'], "path" => '/', "url" => 'http://localhost:3000/', "params" => { "retry" => '0' }, @@ -249,7 +249,7 @@ ]) .with_ssl_proxyengine(true) .with_proxy_pass( - "no_proxy_uris" => ['/pulp', '/pulp2', '/streamer', '/pub'], + "no_proxy_uris" => ['/pulp', '/pulp2', '/streamer', '/pub', '/icons'], "path" => '/', "url" => 'http://localhost:3000/', "params" => { "retry" => '0' }, From 8e4c89a9eb36cc6f396c1abfd0a0d12c7ff8424c Mon Sep 17 00:00:00 2001 From: Anand Patel Date: Thu, 25 Jun 2020 09:56:34 -0400 Subject: [PATCH 6/9] Fixes #30078 - add parameter to accept a hostgroup config hash --- manifests/plugin/default_hostgroup.pp | 20 ++++++++-- spec/classes/plugin/default_hostgroup_spec.rb | 40 +++++++++++++++++++ templates/default_hostgroup.yaml.erb | 11 +++++ 3 files changed, 68 insertions(+), 3 deletions(-) create mode 100644 templates/default_hostgroup.yaml.erb diff --git a/manifests/plugin/default_hostgroup.pp b/manifests/plugin/default_hostgroup.pp index 964ec96e5..1d697dcf7 100644 --- a/manifests/plugin/default_hostgroup.pp +++ b/manifests/plugin/default_hostgroup.pp @@ -1,4 +1,18 @@ -# Installs foreman_default_hostgroup plugin -class foreman::plugin::default_hostgroup { - foreman::plugin {'default_hostgroup': } +# @summary This class installs the default_hostgroup plugin and optionally manages the configuration file +# +# @param hostgroups An array of hashes of hostgroup names and facts to add to the configuration +# +class foreman::plugin::default_hostgroup ( + Array[Hash[String, Hash]] $hostgroups = [], +){ + if empty($hostgroups) { + $config = undef + } else { + $config = template('foreman/default_hostgroup.yaml.erb') + } + + foreman::plugin {'default_hostgroup': + config => $config, + config_file => "${foreman::plugin_config_dir}/default_hostgroup.yaml", + } } diff --git a/spec/classes/plugin/default_hostgroup_spec.rb b/spec/classes/plugin/default_hostgroup_spec.rb index 1c99d17b5..f08d829f1 100644 --- a/spec/classes/plugin/default_hostgroup_spec.rb +++ b/spec/classes/plugin/default_hostgroup_spec.rb @@ -2,4 +2,44 @@ describe 'foreman::plugin::default_hostgroup' do include_examples 'basic foreman plugin tests', 'default_hostgroup' + + context 'with user provided config hash' do + let(:params) do + { + :hostgroups => [ + 'Redhat' => { + 'osfamily'=> 'RedHat', + 'lsbdistcodename' => 'Santiago', + }, + 'Osx/common' => { + 'osfamily' => 'Darwin', + }, + 'Base' => { + 'hostname' => '.*' + } + ] + } + end + +hostgroups = < +<% group.each do |name, value| -%> + '<%= name %>': +<% value.sort.each do |fact_name, fact_value| -%> + '<%= fact_name %>': '<%= fact_value %>' +<% end -%> +<% end -%> +<% end -%> From 705ae080e37b3f8d6d4de7d4d6e3518efb6bc713 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ond=C5=99ej=20Ezr?= Date: Wed, 10 Jun 2020 19:39:49 +0200 Subject: [PATCH 7/9] Add foreman_statistics plugin --- manifests/plugin/statistics.pp | 8 ++++++++ spec/classes/plugin/statistics_spec.rb | 5 +++++ 2 files changed, 13 insertions(+) create mode 100644 manifests/plugin/statistics.pp create mode 100644 spec/classes/plugin/statistics_spec.rb diff --git a/manifests/plugin/statistics.pp b/manifests/plugin/statistics.pp new file mode 100644 index 000000000..5dcb4f24f --- /dev/null +++ b/manifests/plugin/statistics.pp @@ -0,0 +1,8 @@ +# = Foreman Statistics plugin +# +# This class installs trends and statistics plugin +# +class foreman::plugin::statistics { + foreman::plugin {'statistics': + } +} diff --git a/spec/classes/plugin/statistics_spec.rb b/spec/classes/plugin/statistics_spec.rb new file mode 100644 index 000000000..9d66d5c36 --- /dev/null +++ b/spec/classes/plugin/statistics_spec.rb @@ -0,0 +1,5 @@ +require 'spec_helper' + +describe 'foreman::plugin::statistics' do + include_examples 'basic foreman plugin tests', 'statistics' +end From d755349d6fe8ad89eea111bdd32ea1cc50b702e7 Mon Sep 17 00:00:00 2001 From: Dirk Goetz Date: Wed, 18 Oct 2017 16:18:04 +0200 Subject: [PATCH 8/9] add plugin foreman_column_view --- manifests/plugin/column_view.pp | 15 ++++++ spec/classes/plugin/column_view_spec.rb | 63 +++++++++++++++++++++++++ templates/foreman_column_view.yaml.erb | 12 +++++ types/column_view_column.pp | 12 +++++ 4 files changed, 102 insertions(+) create mode 100644 manifests/plugin/column_view.pp create mode 100644 spec/classes/plugin/column_view_spec.rb create mode 100644 templates/foreman_column_view.yaml.erb create mode 100644 types/column_view_column.pp diff --git a/manifests/plugin/column_view.pp b/manifests/plugin/column_view.pp new file mode 100644 index 000000000..5c5c7d432 --- /dev/null +++ b/manifests/plugin/column_view.pp @@ -0,0 +1,15 @@ +# @summary Install the column view plugin and optionally manage the configuration file +# +# @param columns +# an hash of columns to add to the configuration +# +class foreman::plugin::column_view ( + Hash[String, Hash] $columns = {}, +){ + # https://projects.theforeman.org/issues/21398 + assert_type(Hash[String, Foreman::Column_view_column], $columns) + + foreman::plugin { 'column_view': + config => template('foreman/foreman_column_view.yaml.erb'), + } +} diff --git a/spec/classes/plugin/column_view_spec.rb b/spec/classes/plugin/column_view_spec.rb new file mode 100644 index 000000000..272fa0e6c --- /dev/null +++ b/spec/classes/plugin/column_view_spec.rb @@ -0,0 +1,63 @@ +require 'spec_helper' + +describe 'foreman::plugin::column_view' do + include_examples 'basic foreman plugin tests', 'column_view' + + context 'with columns hash architecture' do + let(:params) do + { + 'columns' => { + 'architecture' => { + 'title' => 'Architecture', + 'after' => 'last_report', + 'content' => 'facts_hash["architecture"]', + } + } + } + end + + it { is_expected.to contain_file('/etc/foreman/plugins/foreman_column_view.yaml').with_content(/.*:title: Architecture.*/) } + + it { is_expected.to compile.with_all_deps } + end + + context 'with columns hash architecture and console' do + let(:params) do + { + 'columns' => { + 'architecture' => { + 'title' => 'Architecture', + 'after' => 'last_report', + 'content' => 'facts_hash["architecture"]', + }, + 'console' => { + 'title' => 'Console', + 'after' => '0', + 'content' => 'link_to(_("Console"), "https://#{host.interfaces.first.name}.domainname", { :class => "btn btn-info" } )', + 'conditional' => ':bmc_available?', + 'eval_content' => 'true', + 'view' => ':hosts_properties', + } + } + } + end + + it { is_expected.to contain_file('/etc/foreman/plugins/foreman_column_view.yaml').with_content(/.*:title: Console.*/) } + + it { is_expected.to compile.with_all_deps } + end + + context 'with columns hash broken' do + let(:params) do + { + 'columns' => { + 'broken' => { + 'title' => 'Broken', + } + } + } + end + + it { is_expected.to compile.and_raise_error(%r{broken}) } + end +end diff --git a/templates/foreman_column_view.yaml.erb b/templates/foreman_column_view.yaml.erb new file mode 100644 index 000000000..b9fd56b5c --- /dev/null +++ b/templates/foreman_column_view.yaml.erb @@ -0,0 +1,12 @@ +<%= ERB.new(File.read(File.expand_path("_header.erb",File.dirname(file)))).result(binding) -%> +# +# See tfm-rubygem-foreman_column_view-doc and /opt/theforeman/tfm/root/usr/share/gems/gems/foreman_column_view-0.3.0/README.md for more information +:column_view: +<% if @columns -%> +<% @columns.each do |column, hash| -%> + :<%= column %>: +<% hash.each do |key,value| -%> + :<%= key %>: <%= value %> +<% end -%> +<% end -%> +<% end -%> diff --git a/types/column_view_column.pp b/types/column_view_column.pp new file mode 100644 index 000000000..092809c6a --- /dev/null +++ b/types/column_view_column.pp @@ -0,0 +1,12 @@ +type Foreman::Column_view_column = Struct[ + { + title => String[1], + after => String[1], + content => String[1], + Optional['conditional'] => String[1], + Optional['eval_content'] => String[1], + Optional['view'] => String[1], + Optional['width'] => String[1], + Optional['custom_method'] => String[1], + } +] From e3bf011200d2519895627e29f0cb458dc47338b7 Mon Sep 17 00:00:00 2001 From: William Bradford Clark Date: Wed, 5 Aug 2020 14:59:48 -0400 Subject: [PATCH 9/9] Release 15.1.0 --- CHANGELOG.md | 32 +++++++++++++++++++++ HISTORY.md | 78 +++++++++++++++++++++++++++++++++++++++++++++++++++ metadata.json | 2 +- 3 files changed, 111 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index a1251db27..5ad0f5fb5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,37 @@ # Changelog +## [15.1.0](https://github.com/theforeman/puppet-foreman/tree/15.1.0) (2020-08-07) + +[Full Changelog](https://github.com/theforeman/puppet-foreman/compare/15.0.2...15.1.0) + +**Implemented enhancements:** + +- Fixes [\#30078](https://projects.theforeman.org/issues/30078) - add parameter to accept a hostgroup config hash [\#863](https://github.com/theforeman/puppet-foreman/pull/863) ([apatelKmd](https://github.com/apatelKmd)) +- Fixes [\#29892](https://projects.theforeman.org/issues/29892) - Use server certs for websockets [\#846](https://github.com/theforeman/puppet-foreman/pull/846) ([ekohl](https://github.com/ekohl)) +- Switch to postgresql::postgresql\_password [\#845](https://github.com/theforeman/puppet-foreman/pull/845) ([mmoll](https://github.com/mmoll)) + +## [15.0.2](https://github.com/theforeman/puppet-foreman/tree/15.0.2) (2020-08-03) + +[Full Changelog](https://github.com/theforeman/puppet-foreman/compare/15.0.1...15.0.2) + +**Implemented enhancements:** + +- Add foreman\_statistics plugin [\#855](https://github.com/theforeman/puppet-foreman/pull/855) ([ezr-ondrej](https://github.com/ezr-ondrej)) +- add plugin foreman\_column\_view [\#601](https://github.com/theforeman/puppet-foreman/pull/601) ([dgoetz](https://github.com/dgoetz)) + +**Fixed bugs:** + +- Fixes [\#30456](https://projects.theforeman.org/issues/30456) - Fix missing icons on /pub page [\#867](https://github.com/theforeman/puppet-foreman/pull/867) ([adamruzicka](https://github.com/adamruzicka)) +- fix: indent for rails\_cache\_store redis type [\#859](https://github.com/theforeman/puppet-foreman/pull/859) ([ministicraft](https://github.com/ministicraft)) + +## [15.0.1](https://github.com/theforeman/puppet-foreman/tree/15.0.1) (2020-06-15) + +[Full Changelog](https://github.com/theforeman/puppet-foreman/compare/15.0.0...15.0.1) + +**Fixed bugs:** + +- Fixes [\#30026](https://projects.theforeman.org/issues/30026) - Ensure Foreman is provisioned before puppetdb [\#852](https://github.com/theforeman/puppet-foreman/pull/852) ([ekohl](https://github.com/ekohl)) + ## [15.0.0](https://github.com/theforeman/puppet-foreman/tree/15.0.0) (2020-05-15) [Full Changelog](https://github.com/theforeman/puppet-foreman/compare/14.0.0...15.0.0) diff --git a/HISTORY.md b/HISTORY.md index 38670501a..afe51cc06 100644 --- a/HISTORY.md +++ b/HISTORY.md @@ -1,3 +1,81 @@ +## [15.1.0](https://github.com/theforeman/puppet-foreman/tree/15.1.0) (2020-08-07) + +[Full Changelog](https://github.com/theforeman/puppet-foreman/compare/15.0.2...15.1.0) + +**Implemented enhancements:** + +- Fixes [\#30078](https://projects.theforeman.org/issues/30078) - add parameter to accept a hostgroup config hash [\#863](https://github.com/theforeman/puppet-foreman/pull/863) ([apatelKmd](https://github.com/apatelKmd)) +- Fixes [\#29892](https://projects.theforeman.org/issues/29892) - Use server certs for websockets [\#846](https://github.com/theforeman/puppet-foreman/pull/846) ([ekohl](https://github.com/ekohl)) +- Switch to postgresql::postgresql\_password [\#845](https://github.com/theforeman/puppet-foreman/pull/845) ([mmoll](https://github.com/mmoll)) + +## [15.0.2](https://github.com/theforeman/puppet-foreman/tree/15.0.2) (2020-08-03) + +[Full Changelog](https://github.com/theforeman/puppet-foreman/compare/15.0.1...15.0.2) + +**Implemented enhancements:** + +- Add foreman\_statistics plugin [\#855](https://github.com/theforeman/puppet-foreman/pull/855) ([ezr-ondrej](https://github.com/ezr-ondrej)) +- add plugin foreman\_column\_view [\#601](https://github.com/theforeman/puppet-foreman/pull/601) ([dgoetz](https://github.com/dgoetz)) + +**Fixed bugs:** + +- Fixes [\#30456](https://projects.theforeman.org/issues/30456) - Fix missing icons on /pub page [\#867](https://github.com/theforeman/puppet-foreman/pull/867) ([adamruzicka](https://github.com/adamruzicka)) +- fix: indent for rails\_cache\_store redis type [\#859](https://github.com/theforeman/puppet-foreman/pull/859) ([ministicraft](https://github.com/ministicraft)) + +## [15.0.1](https://github.com/theforeman/puppet-foreman/tree/15.0.1) (2020-06-15) + +[Full Changelog](https://github.com/theforeman/puppet-foreman/compare/15.0.0...15.0.1) + +**Fixed bugs:** + +- Fixes [\#30026](https://projects.theforeman.org/issues/30026) - Ensure Foreman is provisioned before puppetdb [\#852](https://github.com/theforeman/puppet-foreman/pull/852) ([ekohl](https://github.com/ekohl)) + +## [15.0.0](https://github.com/theforeman/puppet-foreman/tree/15.0.0) (2020-05-15) + +[Full Changelog](https://github.com/theforeman/puppet-foreman/compare/14.0.0...15.0.0) + +**Breaking changes:** + +- Use modern facts [\#841](https://github.com/theforeman/puppet-foreman/issues/841) +- Prefix ipa and sssd facts with foreman\_ [\#839](https://github.com/theforeman/puppet-foreman/pull/839) ([ekohl](https://github.com/ekohl)) +- Remove unused parameters from puppetmaster [\#824](https://github.com/theforeman/puppet-foreman/pull/824) ([ekohl](https://github.com/ekohl)) +- Rename inventory\_upload to rh\_cloud [\#821](https://github.com/theforeman/puppet-foreman/pull/821) ([ShimShtein](https://github.com/ShimShtein)) +- Refactor repository handling [\#815](https://github.com/theforeman/puppet-foreman/pull/815) ([ekohl](https://github.com/ekohl)) +- Use plugin\_prefix to determine plugin packages [\#809](https://github.com/theforeman/puppet-foreman/pull/809) ([ekohl](https://github.com/ekohl)) +- Fixes [\#29148](https://projects.theforeman.org/issues/29148) - Use Puma instead of Passenger by default [\#802](https://github.com/theforeman/puppet-foreman/pull/802) ([sthirugn](https://github.com/sthirugn)) + +**Implemented enhancements:** + +- Allow puppet/redis 6.x [\#840](https://github.com/theforeman/puppet-foreman/pull/840) ([ekohl](https://github.com/ekohl)) +- Refs [\#29601](https://projects.theforeman.org/issues/29601): Drop foreman-release-scl in favor of centos-release-scl-rh [\#838](https://github.com/theforeman/puppet-foreman/pull/838) ([ehelms](https://github.com/ehelms)) +- Switch AIO detection to use aio\_agent\_version fact [\#834](https://github.com/theforeman/puppet-foreman/pull/834) ([ekohl](https://github.com/ekohl)) +- Add Leapp plugin [\#833](https://github.com/theforeman/puppet-foreman/pull/833) ([stejskalleos](https://github.com/stejskalleos)) +- Fixes [\#29212](https://projects.theforeman.org/issues/29212) - support el8 [\#828](https://github.com/theforeman/puppet-foreman/pull/828) ([wbclark](https://github.com/wbclark)) +- Only install foreman-release-scl on CentOS EL 7 [\#822](https://github.com/theforeman/puppet-foreman/pull/822) ([ehelms](https://github.com/ehelms)) +- Allow extlib 5.x [\#820](https://github.com/theforeman/puppet-foreman/pull/820) ([mmoll](https://github.com/mmoll)) +- Refs [\#29144](https://projects.theforeman.org/issues/29144) - Use systemd socket activation [\#814](https://github.com/theforeman/puppet-foreman/pull/814) ([ekohl](https://github.com/ekohl)) +- Fixes [\#29255](https://projects.theforeman.org/issues/29255) - Set plugin config file mode to 0640 [\#807](https://github.com/theforeman/puppet-foreman/pull/807) ([ekohl](https://github.com/ekohl)) +- Fixes [\#28955](https://projects.theforeman.org/issues/28955) - Add puma configuration tuning options [\#790](https://github.com/theforeman/puppet-foreman/pull/790) ([sthirugn](https://github.com/sthirugn)) +- Fixes [\#28436](https://projects.theforeman.org/issues/28436) - Add keycloak support [\#779](https://github.com/theforeman/puppet-foreman/pull/779) ([ekohl](https://github.com/ekohl)) +- Add options for rails\_cache\_store [\#762](https://github.com/theforeman/puppet-foreman/pull/762) ([dgoetz](https://github.com/dgoetz)) + +**Fixed bugs:** + +- Ensure Foreman is provisioned before configuring cockpit [\#835](https://github.com/theforeman/puppet-foreman/pull/835) ([ekohl](https://github.com/ekohl)) +- Drop the separate rails repository [\#826](https://github.com/theforeman/puppet-foreman/pull/826) ([ekohl](https://github.com/ekohl)) +- Refs [\#29148](https://projects.theforeman.org/issues/29148): Do not proxy /pulp2 to Puma [\#811](https://github.com/theforeman/puppet-foreman/pull/811) ([ehelms](https://github.com/ehelms)) +- Correct casing on Stdlib::HTTPUrl [\#806](https://github.com/theforeman/puppet-foreman/pull/806) ([ekohl](https://github.com/ekohl)) +- Fixes [\#28739](https://projects.theforeman.org/issues/28739): Fix static asset caching when using Puma [\#788](https://github.com/theforeman/puppet-foreman/pull/788) ([ehelms](https://github.com/ehelms)) + +**Closed issues:** + +- db\_username changes do not work [\#750](https://github.com/theforeman/puppet-foreman/issues/750) + +**Merged pull requests:** + +- Make camptocamp/systemd a hard dependency [\#825](https://github.com/theforeman/puppet-foreman/pull/825) ([ekohl](https://github.com/ekohl)) +- Make foreman::config::apache standalone [\#800](https://github.com/theforeman/puppet-foreman/pull/800) ([ekohl](https://github.com/ekohl)) + ## [14.0.0](https://github.com/theforeman/puppet-foreman/tree/14.0.0) (2020-02-12) [Full Changelog](https://github.com/theforeman/puppet-foreman/compare/13.1.0...14.0.0) diff --git a/metadata.json b/metadata.json index 9c1c407e7..36a1b123b 100644 --- a/metadata.json +++ b/metadata.json @@ -1,6 +1,6 @@ { "name": "theforeman-foreman", - "version": "15.0.0", + "version": "15.1.0", "author": "theforeman", "summary": "Foreman server configuration", "license": "GPL-3.0+",