tripleo-heat-templates/extraconfig/pre_network/host_config_and_reboot.role.j2.yaml
James Slagle 11b3cb25a9 Revert "Revert "Blacklist support for ExtraConfig""
There is a Heat patch posted (via Depends-On) that resolves the issue
that caused this to be reverted. This reverts the revert and we need to
make sure all the upgrades jobs pass before we merge this patch.

This reverts commit 69936229f4.
Closes-Bug: #1699463
implements blueprint disable-deployments

Change-Id: Iedf680fddfbfc020d301bec8837a0cb98d481eb5
2017-07-10 17:39:57 +00:00

130 lines
3.4 KiB
YAML

heat_template_version: pike
description: >
Do some configuration, then reboot - sometimes needed for early-boot
changes such as modifying kernel configuration
parameters:
server:
type: string
# Deprecated Parameters, these configuration are deprecated in favor or role-specific parameters.
# Use: extraconfig/pre_network/host_config_and_reboot.yaml.
# Deprecated in Pike and will be removed in Queens.
{{role}}KernelArgs:
type: string
default: ""
{{role}}TunedProfileName:
type: string
default: ""
{{role}}HostCpusList:
type: string
default: ""
deployment_actions:
default: ['CREATE', 'UPDATE']
type: comma_delimited_list
description: >
List of stack actions that will trigger any deployments in this
templates. The actions will be an empty list of the server is in the
toplevel DeploymentServerBlacklist parameter's value.
parameter_group:
- label: deprecated
parameters:
- {{role}}KernelArgs
- {{role}}TunedProfileName
- {{role}}HostCpusList
conditions:
param_exists:
or:
- not:
equals:
- get_param: {{role}}KernelArgs
- ""
- not:
equals:
- get_param: {{role}}TunedProfileName
- ""
deployment_actions_empty:
equals:
- {get_param: deployment_actions}
- []
resources:
HostParametersConfig:
type: OS::Heat::SoftwareConfig
condition: param_exists
properties:
group: ansible
inputs:
- name: _KERNEL_ARGS_
- name: _TUNED_PROFILE_NAME_
- name: _HOST_CPUS_LIST_
outputs:
- name: result
config:
get_file: ansible_host_config.ansible
HostParametersDeployment:
type: OS::Heat::SoftwareDeployment
condition: param_exists
properties:
name: HostParametersDeployment
server: {get_param: server}
config: {get_resource: HostParametersConfig}
actions:
if:
- deployment_actions_empty
- []
- ['CREATE'] # Only do this on CREATE
input_values:
_KERNEL_ARGS_: {get_param: {{role}}KernelArgs}
_TUNED_PROFILE_NAME_: {get_param: {{role}}TunedProfileName}
_HOST_CPUS_LIST_: {get_param: {{role}}HostCpusList}
RebootConfig:
type: OS::Heat::SoftwareConfig
condition: param_exists
properties:
group: script
config: |
#!/bin/bash
# Stop os-collect-config to avoid any race collecting another
# deployment before reboot happens
systemctl stop os-collect-config.service
/sbin/reboot
RebootDeployment:
type: OS::Heat::SoftwareDeployment
condition: param_exists
depends_on: HostParametersDeployment
properties:
name: RebootDeployment
server: {get_param: server}
config: {get_resource: RebootConfig}
actions:
if:
- deployment_actions_empty
- []
- ['CREATE'] # Only do this on CREATE
signal_transport: NO_SIGNAL
outputs:
result:
value:
get_attr: [HostParametersDeployment, result]
condition: param_exists
stdout:
value:
get_attr: [HostParametersDeployment, deploy_stdout]
condition: param_exists
stderr:
value:
get_attr: [HostParametersDeployment, deploy_stderr]
condition: param_exists
status_code:
value:
get_attr: [HostParametersDeployment, deploy_status_code]
condition: param_exists