tripleo-heat-templates/undercloud-vm-nova-deploy.yaml
Nicholas Randon de1ea55597 Add strict dependencies to the undercloud template
Currently there is very weak ordering of StructuredDeployments during
heat stack creation on the undercloud. This can cause the deployment which
sends the completion signal back to Heat to happen before all others have
completed, which in turn leads Heat to state the stack is ready while ORC
is still configuring services

The only workaround to this is to wait an unknown amount of time after the
heat stack completes before the system is usable.

This patch prevents the completion signal from being returned early, by
ensuring these are strictly ordered:
   undercloudIronicDeployment (if used)
   undercloudNovaDeployment
   undercloudPassthroughDeployment
   undercloudDeployment

Note: The reference numbering for the undercloud has been removed.
Change-Id: I98499dd54bb907d29cf355fe83b5c285a7375e97
2014-08-14 14:27:41 +01:00

41 lines
1.4 KiB
YAML

parameters:
NeutronPublicInterface:
default: eth0
description: What interface to bridge onto br-ex for network nodes.
type: string
PowerManager:
default: nova.virt.baremetal.virtual_power_driver.VirtualPowerManager
description: Bare metal power manager driver.
type: string
PxeDeployTimeout:
default: 2400
description: Timeout for PXE deployment of baremetal nodes
type: number
PowerSSHHost:
default: 192.168.122.1
description: SSH host to ssh to for power management operations.
type: string
PowerSSHPrivateKey:
description: Private key for using to ssh to a virtual power host.
type: string
hidden: true
PowerUserName:
default: stack
description: What username to ssh to the virtual power host with.
type: string
resources:
undercloudNovaDeployment:
type: OS::Heat::StructuredDeployment
properties:
config: {get_resource: undercloudNovaConfig}
server: {get_resource: undercloud}
signal_transport: NO_SIGNAL
input_values:
nova_arch: {get_param: BaremetalArch}
power_manager: {get_param: PowerManager}
pxe_deploy_timeout: {get_param: PxeDeployTimeout}
nova_service_password: {get_param: NovaPassword}
user: {get_param: PowerUserName}
ssh_host: {get_param: PowerSSHHost}
ssh_key: {get_param: PowerSSHPrivateKey}