Map ironic-inspector resources to anchors

and fixes missing notification from ironic-inspector service to
ironic-inspector::service::end anchor so that users can use the end
anchor to detect any change in services.

Change-Id: Idf2489d8591b7037545d26474bf292218acd367c
This commit is contained in:
Takashi Kajinami 2023-11-02 10:52:09 +09:00
parent 2104bc4991
commit 56a629f1da
3 changed files with 18 additions and 14 deletions

View File

@ -43,9 +43,12 @@ class ironic::deps {
-> anchor { 'ironic-inspector::dbsync::end': }
~> anchor { 'ironic-inspector::service::begin': }
~> Service<| tag == 'ironic-inspector-service' |>
~> Service<| tag == 'ironic-inspector-dnsmasq-service' |>
~> anchor { 'ironic-inspector::service::end': }
Anchor['ironic-inspector::service::begin']
~> Service<| tag == 'ironic-inspector-dnsmasq-service' |>
~> Anchor['ironic-inspector::service::end']
Anchor['ironic::db::end']
-> Anchor['ironic-inspector::dbsync::begin']

View File

@ -260,7 +260,7 @@ class ironic::inspector (
file { '/etc/ironic-inspector/dnsmasq.conf':
ensure => 'present',
content => template('ironic/inspector_dnsmasq_tftp.erb'),
require => Anchor['ironic-inspector::config::begin'],
tag => 'ironic-inspector-dnsmasq-file',
}
file { "${tftp_root_real}/pxelinux.cfg/default":
ensure => 'present',
@ -268,7 +268,7 @@ class ironic::inspector (
owner => $::ironic::params::inspector_user,
group => $::ironic::params::inspector_group,
content => template('ironic/inspector_pxelinux_cfg.erb'),
require => Anchor['ironic-inspector::config::begin'],
tag => 'ironic-inspector-dnsmasq-file',
}
}
@ -276,7 +276,7 @@ class ironic::inspector (
file { '/etc/ironic-inspector/dnsmasq.conf':
ensure => 'present',
content => template('ironic/inspector_dnsmasq_http.erb'),
require => Anchor['ironic-inspector::config::begin'],
tag => 'ironic-inspector-dnsmasq-file',
}
file { "${http_root_real}/inspector.ipxe":
ensure => 'present',
@ -284,7 +284,7 @@ class ironic::inspector (
owner => $::ironic::params::inspector_user,
group => $::ironic::params::inspector_group,
content => template('ironic/inspector_ipxe.erb'),
require => Anchor['ironic-inspector::config::begin'],
tag => 'ironic-inspector-dnsmasq-file',
}
}
@ -295,7 +295,7 @@ class ironic::inspector (
seltype => 'tftpdir_t',
owner => $::ironic::params::inspector_user,
group => $::ironic::params::inspector_group,
require => Anchor['ironic-inspector::config::begin'],
tag => 'ironic-inspector-dnsmasq-file',
}
file { "${tftp_root_real}/ppc64le/default":
ensure => 'present',
@ -303,10 +303,14 @@ class ironic::inspector (
owner => $::ironic::params::inspector_user,
group => $::ironic::params::inspector_group,
content => template('ironic/inspector_pxelinux_cfg.erb'),
require => Anchor['ironic-inspector::config::begin'],
tag => 'ironic-inspector-dnsmasq-file',
}
}
Anchor['ironic-inspector::config::begin']
-> File<| tag == 'ironic-inspector-dnsmasq-file' |>
-> Anchor['ironic-inspector::config::end']
# Configure inspector.conf
#Processing hooks string

View File

@ -132,8 +132,8 @@ describe 'ironic::inspector' do
it 'should contain file /etc/ironic-inspector/dnsmasq.conf' do
is_expected.to contain_file('/etc/ironic-inspector/dnsmasq.conf').with(
'ensure' => 'present',
'require' => 'Anchor[ironic-inspector::config::begin]',
'content' => /pxelinux/,
'tag' => 'ironic-inspector-dnsmasq-file',
)
is_expected.to contain_file('/etc/ironic-inspector/dnsmasq.conf').with_content(
/dhcp-range=192.168.0.100,192.168.0.120,10m/
@ -178,8 +178,8 @@ describe 'ironic::inspector' do
'group' => 'ironic-inspector',
'seltype' => 'tftpdir_t',
'ensure' => 'present',
'require' => 'Anchor[ironic-inspector::config::begin]',
'content' => /default/,
'tag' => 'ironic-inspector-dnsmasq-file',
)
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/
@ -226,8 +226,8 @@ describe 'ironic::inspector' do
it 'should contain file /etc/ironic-inspector/dnsmasq.conf' do
is_expected.to contain_file('/etc/ironic-inspector/dnsmasq.conf').with(
'ensure' => 'present',
'require' => 'Anchor[ironic-inspector::config::begin]',
'content' => /ipxe/,
'tag' => 'ironic-inspector-dnsmasq-file',
)
is_expected.to contain_file('/etc/ironic-inspector/dnsmasq.conf').with_content(
/dhcp-boot=tag:ipxe,http:\/\/192.168.0.1:3816\/inspector.ipxe/
@ -267,7 +267,6 @@ describe 'ironic::inspector' do
'group' => 'ironic-inspector',
'seltype' => 'httpd_sys_content_t',
'ensure' => 'present',
'require' => 'Anchor[ironic-inspector::config::begin]',
'content' => /ipxe/,
)
is_expected.to contain_file('/var/www/httpboot/inspector.ipxe').with_content(
@ -322,7 +321,6 @@ describe 'ironic::inspector' do
is_expected.to contain_file('/tftpboot/ppc64le').with(
'owner' => 'ironic-inspector',
'group' => 'ironic-inspector',
'require' => 'Anchor[ironic-inspector::config::begin]',
'ensure' => 'directory',
'seltype' => 'tftpdir_t',
)
@ -333,7 +331,6 @@ describe 'ironic::inspector' do
'group' => 'ironic-inspector',
'seltype' => 'tftpdir_t',
'ensure' => 'present',
'require' => 'Anchor[ironic-inspector::config::begin]',
'content' => /default/,
)
is_expected.to contain_file('/tftpboot/ppc64le/default').with_content(
@ -364,8 +361,8 @@ describe 'ironic::inspector' do
'group' => 'ironic-inspector',
'seltype' => 'tftpdir_t',
'ensure' => 'present',
'require' => 'Anchor[ironic-inspector::config::begin]',
'content' => /default/,
'tag' => 'ironic-inspector-dnsmasq-file',
)
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/