From f47e1614c70e7784b71268d1923c221563f90327 Mon Sep 17 00:00:00 2001 From: Takashi Kajinami Date: Thu, 2 Nov 2023 00:06:21 +0900 Subject: [PATCH] Do not override ipa-inspection-collectors by default The ipa-inspection-collectors option is optional so can be omitted. Note that this change effectively enables the log collector which is enabled by default in IPA since 6.4.0[1]. [1] d50ff06b6bbf8909496882c7200c11299dc6b039 Change-Id: I779d35d8244759023fe2dc1e889f5f4674b78561 --- manifests/inspector.pp | 4 ++-- spec/classes/ironic_inspector_spec.rb | 23 +++++++++++++++++------ templates/inspector_ipxe.erb | 2 +- templates/inspector_pxelinux_cfg.erb | 2 +- 4 files changed, 21 insertions(+), 10 deletions(-) diff --git a/manifests/inspector.pp b/manifests/inspector.pp index da5d0d99..53328f5f 100644 --- a/manifests/inspector.pp +++ b/manifests/inspector.pp @@ -126,7 +126,7 @@ # # [*ramdisk_collectors*] # Comma-separated list of IPA inspection collectors -# Defaults to 'default' +# Defaults to undef # # [*additional_processing_hooks*] # Comma-separated list of processing hooks to append to the default list. @@ -220,7 +220,7 @@ class ironic::inspector ( $dnsmasq_dhcp_hostsdir = undef, $dnsmasq_log_facility = undef, Boolean $sync_db = true, - String[1] $ramdisk_collectors = 'default', + Optional[String[1]] $ramdisk_collectors = undef, String[1] $ramdisk_filename = 'agent.ramdisk', String[1] $kernel_filename = 'agent.kernel', $additional_processing_hooks = undef, diff --git a/spec/classes/ironic_inspector_spec.rb b/spec/classes/ironic_inspector_spec.rb index 0a00371e..3c13591a 100644 --- a/spec/classes/ironic_inspector_spec.rb +++ b/spec/classes/ironic_inspector_spec.rb @@ -182,7 +182,7 @@ describe 'ironic::inspector' do 'content' => /default/, ) is_expected.to contain_file('/tftpboot/pxelinux.cfg/default').with_content( - /initrd=agent.ramdisk ipa-inspection-callback-url=http:\/\/192.168.0.1:5050\/v1\/continue ipa-inspection-collectors=default/ + /^append initrd=agent.ramdisk ipa-inspection-callback-url=http:\/\/192.168.0.1:5050\/v1\/continue / ) end @@ -194,6 +194,7 @@ describe 'ironic::inspector' do :api_max_limit => 100, :pxe_transfer_protocol => 'http', :additional_processing_hooks => 'hook1,hook2', + :ramdisk_collectors => 'default', :ramdisk_kernel_args => 'foo=bar', :http_port => 3816, :tftp_root => '/var/lib/tftpboot', @@ -271,7 +272,10 @@ describe 'ironic::inspector' do 'content' => /ipxe/, ) is_expected.to contain_file('/var/www/httpboot/inspector.ipxe').with_content( - /kernel http:\/\/192.168.0.1:3816\/agent.kernel ipa-inspection-callback-url=http:\/\/192.168.0.1:5050\/v1\/continue ipa-inspection-collectors=default .* foo=bar || goto retry_boot/ + /^kernel http:\/\/192.168.0.1:3816\/agent.kernel ipa-inspection-callback-url=http:\/\/192.168.0.1:5050\/v1\/continue ipa-inspection-collectors=default .* foo=bar || goto retry_boot$/ + ) + is_expected.to contain_file('/var/www/httpboot/inspector.ipxe').with_content( + /^initrd http:\/\/192.168.0.1:3816\/agent.ramdisk || goto retry_boot$/ ) end @@ -284,7 +288,11 @@ describe 'ironic::inspector' do it 'should contain file /var/www/httpboot/inspector.ipxe' do is_expected.to contain_file('/var/www/httpboot/inspector.ipxe').with_content( - /kernel --timeout 30000/) + /^kernel --timeout 30000 / + ) + is_expected.to contain_file('/var/www/httpboot/inspector.ipxe').with_content( + /^initrd --timeout 30000 / + ) end end @@ -297,7 +305,10 @@ describe 'ironic::inspector' do it 'should contain file /var/www/httpboot/inspector.ipxe' do is_expected.to contain_file('/var/www/httpboot/inspector.ipxe').with_content( - /kernel http:\/\/\[fd00::1\]:3816\/agent.kernel ipa-inspection-callback-url=http:\/\/\[fd00::1\]:5050\/v1\/continue ipa-inspection-collectors=default .* foo=bar || goto retry_boot/ + /^kernel http:\/\/\[fd00::1\]:3816\/agent.kernel ipa-inspection-callback-url=http:\/\/\[fd00::1\]:5050\/v1\/continue .* foo=bar || goto retry_boot$/ + ) + is_expected.to contain_file('/var/www/httpboot/inspector.ipxe').with_content( + /^initrd http:\/\/\[fd00::1\]:3816\/agent.ramdisk || goto retry_boot$/ ) end end @@ -337,7 +348,7 @@ describe 'ironic::inspector' do 'content' => /default/, ) is_expected.to contain_file('/tftpboot/ppc64le/default').with_content( - /initrd=agent.ramdisk ipa-inspection-callback-url=http:\/\/192.168.0.1:5050\/v1\/continue ipa-inspection-collectors=default/ + /^append initrd=agent.ramdisk ipa-inspection-callback-url=http:\/\/192.168.0.1:5050\/v1\/continue / ) end end @@ -368,7 +379,7 @@ describe 'ironic::inspector' do 'content' => /default/, ) is_expected.to contain_file('/tftpboot/ppc64le/default').with_content( - /initrd=agent.ramdisk ipa-inspection-callback-url=http:\/\/192.168.0.1:5050\/v1\/continue ipa-inspection-collectors=default/ + /^append initrd=agent.ramdisk ipa-inspection-callback-url=http:\/\/192.168.0.1:5050\/v1\/continue / ) end end diff --git a/templates/inspector_ipxe.erb b/templates/inspector_ipxe.erb index 821ab2d7..de428451 100644 --- a/templates/inspector_ipxe.erb +++ b/templates/inspector_ipxe.erb @@ -2,6 +2,6 @@ :retry_boot imgfree -kernel <% if @ipxe_timeout_real != "0" %>--timeout <%= Integer(@ipxe_timeout_real) * 1000 %> <% end %>http://<%= @dnsmasq_local_ip_real %>:<%= @http_port_real %>/<%= @kernel_filename %> ipa-inspection-callback-url=http://<%= @dnsmasq_local_ip_real %>:5050/v1/continue ipa-inspection-collectors=<%= @ramdisk_collectors %> systemd.journald.forward_to_console=yes BOOTIF=${mac} <%= @ramdisk_kernel_args %> initrd=<%= @ramdisk_filename %> || goto retry_boot +kernel <% if @ipxe_timeout_real != "0" %>--timeout <%= Integer(@ipxe_timeout_real) * 1000 %> <% end %>http://<%= @dnsmasq_local_ip_real %>:<%= @http_port_real %>/<%= @kernel_filename %> ipa-inspection-callback-url=http://<%= @dnsmasq_local_ip_real %>:5050/v1/continue <%if !@ramdisk_collectors.nil? %>ipa-inspection-collectors=<%= @ramdisk_collectors %> <% end %>systemd.journald.forward_to_console=yes BOOTIF=${mac} <%= @ramdisk_kernel_args %> initrd=<%= @ramdisk_filename %> || goto retry_boot initrd <% if @ipxe_timeout_real != "0" %>--timeout <%= Integer(@ipxe_timeout_real) * 1000 %> <% end %>http://<%= @dnsmasq_local_ip_real %>:<%= @http_port_real %>/<%= @ramdisk_filename %> || goto retry_boot boot diff --git a/templates/inspector_pxelinux_cfg.erb b/templates/inspector_pxelinux_cfg.erb index dea8ec73..377ed79a 100644 --- a/templates/inspector_pxelinux_cfg.erb +++ b/templates/inspector_pxelinux_cfg.erb @@ -2,5 +2,5 @@ default inspector label inspector kernel <%= @kernel_filename %> -append initrd=<%= @ramdisk_filename %> ipa-inspection-callback-url=http://<%= @dnsmasq_local_ip %>:5050/v1/continue ipa-inspection-collectors=<%= @ramdisk_collectors %> systemd.journald.forward_to_console=yes <%= @ramdisk_kernel_args %> +append initrd=<%= @ramdisk_filename %> ipa-inspection-callback-url=http://<%= @dnsmasq_local_ip %>:5050/v1/continue <%if !@ramdisk_collectors.nil? %>ipa-inspection-collectors=<%= @ramdisk_collectors %> <% end %>systemd.journald.forward_to_console=yes <%= @ramdisk_kernel_args %> ipappend 3