diff --git a/ansible/group_vars/all/bifrost b/ansible/group_vars/all/bifrost index ee9bef43c8dcfa30c5c35b10863216c7e86231df..1b9f5f245cf447c918bf5e97031ed79b02c1ab34 100644 --- a/ansible/group_vars/all/bifrost +++ b/ansible/group_vars/all/bifrost @@ -54,6 +54,12 @@ kolla_bifrost_dib_env_vars: "{{ kolla_bifrost_dib_env_vars_default | combine(kol # List of DIB packages to install. kolla_bifrost_dib_packages: [] +############################################################################### +# Disk image deployment configuration. + +# Name of disk image file to deploy. Default is "deployment_image.qcow2". +kolla_bifrost_deploy_image_filename: "deployment_image.qcow2" + ############################################################################### # Ironic configuration. diff --git a/ansible/kolla-bifrost-hostvars.yml b/ansible/kolla-bifrost-hostvars.yml index 55e01d2b5d625137817dfe3b03ab2f5675d6ced9..0de2d80108bbb80112dacc85068ace807951bcb5 100644 --- a/ansible/kolla-bifrost-hostvars.yml +++ b/ansible/kolla-bifrost-hostvars.yml @@ -14,6 +14,7 @@ ansible_host: "{{ hostvars[seed_host].ansible_host | default(seed_host) }}" bifrost_hostvars: addressing_mode: static + deploy_image_filename: "{{ kolla_bifrost_deploy_image_filename }}" ipv4_interface_mac: "{% raw %}{{ extra.pxe_interface_mac | default }}{% endraw %}" ipv4_address: "{{ admin_oc_net_name | net_ip }}" ipv4_subnet_mask: "{{ admin_oc_net_name | net_cidr | ipaddr('netmask') }}" diff --git a/doc/source/configuration/reference/bifrost.rst b/doc/source/configuration/reference/bifrost.rst index 21307eac5cdf454aad150434142052956513dd07..15d718ba9fb6274ab47587c8a604cf8bb6b70d66 100644 --- a/doc/source/configuration/reference/bifrost.rst +++ b/doc/source/configuration/reference/bifrost.rst @@ -179,6 +179,22 @@ Rather than needing to write a custom DIB element, we can use the kolla_bifrost_dib_packages: - "biosdevname" +Disk image deployment configuration +=================================== + +The name of the root disk image to deploy can be configured via the +``kolla_bifrost_deploy_image_filename`` option, which defaults to +``deployment_image.qcow2``. It can be defined globally in +``${KAYOBE_CONFIG_PATH}/bifrost.yml``, or defined per-group or per-host in the +Kayobe inventory. This can be used to provision different images across the +overcloud. + +.. note:: + + Support for building multiple disk images is not yet available. Images can + be manually renamed before changing the Kayobe configuration to build a + different image. + Ironic configuration ==================== @@ -283,7 +299,7 @@ Inventory configuration This feature is currently not well tested. It is advisable to use autodiscovery of overcloud servers instead. -The following options are used to configure a static inventory of servers for +The following option is used to configure a static inventory of servers for Bifrost. ``kolla_bifrost_servers`` diff --git a/etc/kayobe/bifrost.yml b/etc/kayobe/bifrost.yml index 34f84ef32b049a56787a9e5f65609a7a62dfc840..85d018d35926dedc59f78728eb96535099453b10 100644 --- a/etc/kayobe/bifrost.yml +++ b/etc/kayobe/bifrost.yml @@ -53,6 +53,12 @@ # List of DIB packages to install. Default is to install no extra packages. #kolla_bifrost_dib_packages: +############################################################################### +# Disk image deployment configuration. + +# Name of disk image file to deploy. Default is "deployment_image.qcow2". +#kolla_bifrost_deploy_image_filename: + ############################################################################### # Ironic configuration. diff --git a/releasenotes/notes/bifrost-deploy-image-filename-716c12e71c769a27.yaml b/releasenotes/notes/bifrost-deploy-image-filename-716c12e71c769a27.yaml new file mode 100644 index 0000000000000000000000000000000000000000..813826ca69d4404e243bbcce95dff4f75111f5d3 --- /dev/null +++ b/releasenotes/notes/bifrost-deploy-image-filename-716c12e71c769a27.yaml @@ -0,0 +1,6 @@ +--- +features: + - | + Adds a new ``kolla_bifrost_deploy_image_filename`` variable used to define + the name of the root disk image to provision. This may be used to deploy + different images on different hosts.