Not possible to deploy undercloud with ipxe_enabled = false
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
tripleo |
Fix Released
|
Medium
|
Bogdan Dobrelya |
Bug Description
When setting: ``ipxe_enabled = false`` in undercloud.conf the undercloud deployment fails with.
"puppet-user: Error: Could not set 'present' on ensure: No such file or directory - /var/lib/
"puppet-user: No such file or directory - /var/lib/
"puppet-user: Error: /Stage[
cfg/default2019
Changed in tripleo: | |
importance: | High → Medium |
milestone: | ussuri-1 → train-rc1 |
tags: | added: stein-backport-potential |
It seems this case ends up with some untested path for the containerized Ironic.
IIUc, disabling ipxe makes it looking into /var/lib/ ironic/ tftpboot/ pxelinux. cfg pxelinux. cfg path here https:/ /opendev. org/openstack/ puppet- ironic/ src/branch/ master/ manifests/ pxe.pp# L93
which seems never created because of the missing include ::ironic::pxe. That class normally creates
the required tftpboot/
While we make sure that t-h-t always creates only the base path: https:/ /opendev. org/openstack/ tripleo- heat-templates/ src/branch/ master/ deployment/ ironic/ ironic- conductor- container- puppet. yaml#L582 (note that it doesn't set setype for it, but puppet does) /opendev. org/openstack/ tripleo- heat-templates/ src/branch/ master/ deployment/ ironic/ ironic- pxe-container- puppet. yaml#L112 that relies on that base /var/lib/ ironic/ tftpboot path but never ensures it via its own host_prep_tasks...
There is also https:/
So those t-h-t's host_prep_tasks seems inconsistent with that puppet does in https:/ /opendev. org/openstack/ puppet- ironic/ src/branch/ master/ manifests/ pxe.pp# L79 -> https:/ /opendev. org/openstack/ puppet- ironic/ src/branch/ master/ manifests/ pxe.pp# L93