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
This commit is contained in:
James Slagle 2017-06-26 09:48:34 -04:00
parent d61d11daba
commit 11b3cb25a9
11 changed files with 192 additions and 7 deletions

View File

@ -59,6 +59,19 @@ parameters:
description: | description: |
When enabled, the system will perform a yum update after performing the When enabled, the system will perform a yum update after performing the
RHEL Registration process. RHEL Registration process.
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.
conditions:
deployment_actions_empty:
equals:
- {get_param: deployment_actions}
- []
resources: resources:
@ -136,7 +149,11 @@ resources:
name: RHELUnregistrationDeployment name: RHELUnregistrationDeployment
server: {get_param: server} server: {get_param: server}
config: {get_resource: RHELUnregistration} config: {get_resource: RHELUnregistration}
actions: ['DELETE'] # Only do this on DELETE actions:
if:
- deployment_actions_empty
- []
- ['DELETE'] # Only do this on DELETE
input_values: input_values:
REG_METHOD: {get_param: rhel_reg_method} REG_METHOD: {get_param: rhel_reg_method}
@ -169,7 +186,11 @@ resources:
name: UpdateDeploymentAfterRHELRegistration name: UpdateDeploymentAfterRHELRegistration
config: {get_resource: YumUpdateConfigurationAfterRHELRegistration} config: {get_resource: YumUpdateConfigurationAfterRHELRegistration}
server: {get_param: server} server: {get_param: server}
actions: ['CREATE'] # Only do this on CREATE actions:
if:
- deployment_actions_empty
- []
- ['CREATE'] # Only do this on CREATE
outputs: outputs:
deploy_stdout: deploy_stdout:

View File

@ -7,6 +7,19 @@ description: >
parameters: parameters:
server: server:
type: string type: string
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.
conditions:
deployment_actions_empty:
equals:
- {get_param: deployment_actions}
- []
resources: resources:
@ -24,6 +37,11 @@ resources:
name: SomeDeployment name: SomeDeployment
server: {get_param: server} server: {get_param: server}
config: {get_resource: SomeConfig} config: {get_resource: SomeConfig}
actions:
if:
- deployment_actions_empty
- []
- ['CREATE'] # Only do this on CREATE
actions: ['CREATE'] # Only do this on CREATE actions: ['CREATE'] # Only do this on CREATE
RebootConfig: RebootConfig:
@ -44,5 +62,9 @@ resources:
name: RebootDeployment name: RebootDeployment
server: {get_param: server} server: {get_param: server}
config: {get_resource: RebootConfig} config: {get_resource: RebootConfig}
actions: ['CREATE'] # Only do this on CREATE actions:
if:
- deployment_actions_empty
- []
- ['CREATE'] # Only do this on CREATE
signal_transport: NO_SIGNAL signal_transport: NO_SIGNAL

View File

@ -19,6 +19,13 @@ parameters:
{{role}}HostCpusList: {{role}}HostCpusList:
type: string type: string
default: "" 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: parameter_group:
- label: deprecated - label: deprecated
@ -38,6 +45,10 @@ conditions:
equals: equals:
- get_param: {{role}}TunedProfileName - get_param: {{role}}TunedProfileName
- "" - ""
deployment_actions_empty:
equals:
- {get_param: deployment_actions}
- []
resources: resources:
@ -62,7 +73,11 @@ resources:
name: HostParametersDeployment name: HostParametersDeployment
server: {get_param: server} server: {get_param: server}
config: {get_resource: HostParametersConfig} config: {get_resource: HostParametersConfig}
actions: ['CREATE'] # Only do this on CREATE actions:
if:
- deployment_actions_empty
- []
- ['CREATE'] # Only do this on CREATE
input_values: input_values:
_KERNEL_ARGS_: {get_param: {{role}}KernelArgs} _KERNEL_ARGS_: {get_param: {{role}}KernelArgs}
_TUNED_PROFILE_NAME_: {get_param: {{role}}TunedProfileName} _TUNED_PROFILE_NAME_: {get_param: {{role}}TunedProfileName}
@ -88,7 +103,11 @@ resources:
name: RebootDeployment name: RebootDeployment
server: {get_param: server} server: {get_param: server}
config: {get_resource: RebootConfig} config: {get_resource: RebootConfig}
actions: ['CREATE'] # Only do this on CREATE actions:
if:
- deployment_actions_empty
- []
- ['CREATE'] # Only do this on CREATE
signal_transport: NO_SIGNAL signal_transport: NO_SIGNAL
outputs: outputs:

View File

@ -95,6 +95,13 @@ parameters:
default: "vfio-pci" default: "vfio-pci"
description: DPDK Driver type description: DPDK Driver type
type: string type: string
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.
conditions: conditions:
is_host_config_required: {not: {equals: [{get_param: [RoleParameters, KernelArgs]}, ""]}} is_host_config_required: {not: {equals: [{get_param: [RoleParameters, KernelArgs]}, ""]}}
@ -117,6 +124,10 @@ conditions:
socket_mem_empty: {equals: [{get_param: OvsDpdkSocketMemory}, '']} socket_mem_empty: {equals: [{get_param: OvsDpdkSocketMemory}, '']}
driver_not_set: {equals: [{get_param: OvsDpdkDriverType}, 'vfio-pci']} driver_not_set: {equals: [{get_param: OvsDpdkDriverType}, 'vfio-pci']}
isol_cpus_empty: {equals: [{get_param: IsolCpusList}, '0']} isol_cpus_empty: {equals: [{get_param: IsolCpusList}, '0']}
deployment_actions_empty:
equals:
- {get_param: deployment_actions}
- []
resources: resources:
RoleParametersValue: RoleParametersValue:
@ -162,7 +173,11 @@ resources:
name: HostParametersDeployment name: HostParametersDeployment
server: {get_param: server} server: {get_param: server}
config: {get_resource: HostParametersConfig} config: {get_resource: HostParametersConfig}
actions: ['CREATE'] # Only do this on CREATE actions:
if:
- deployment_actions_empty
- []
- ['CREATE'] # Only do this on CREATE
input_values: input_values:
_KERNEL_ARGS_: {get_param: [RoleParameters, KernelArgs]} _KERNEL_ARGS_: {get_param: [RoleParameters, KernelArgs]}
_TUNED_PROFILE_NAME_: {get_param: [RoleParameters, TunedProfileName]} _TUNED_PROFILE_NAME_: {get_param: [RoleParameters, TunedProfileName]}
@ -224,7 +239,11 @@ resources:
name: RebootDeployment name: RebootDeployment
server: {get_param: server} server: {get_param: server}
config: {get_resource: RebootConfig} config: {get_resource: RebootConfig}
actions: ['CREATE'] # Only do this on CREATE actions:
if:
- deployment_actions_empty
- []
- ['CREATE'] # Only do this on CREATE
signal_transport: NO_SIGNAL signal_transport: NO_SIGNAL
outputs: outputs:

View File

@ -7,6 +7,13 @@ parameters:
server: server:
description: ID of the node to apply this config to description: ID of the node to apply this config to
type: string type: string
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.
resources: resources:
SshHostPubKeyConfig: SshHostPubKeyConfig:
@ -28,6 +35,7 @@ resources:
properties: properties:
config: {get_resource: SshHostPubKeyConfig} config: {get_resource: SshHostPubKeyConfig}
server: {get_param: server} server: {get_param: server}
actions: {get_param: deployment_actions}
outputs: outputs:

View File

@ -409,6 +409,7 @@ resources:
server: {get_resource: BlockStorage} server: {get_resource: BlockStorage}
RoleParameters: {get_param: RoleParameters} RoleParameters: {get_param: RoleParameters}
ServiceNames: {get_param: ServiceNames} ServiceNames: {get_param: ServiceNames}
deployment_actions: {get_attr: [DeploymentActions, value]}
NetworkDeployment: NetworkDeployment:
type: OS::TripleO::SoftwareDeployment type: OS::TripleO::SoftwareDeployment
@ -517,6 +518,9 @@ resources:
NodeExtraConfig: NodeExtraConfig:
depends_on: NodeTLSCAData depends_on: NodeTLSCAData
type: OS::TripleO::NodeExtraConfig type: OS::TripleO::NodeExtraConfig
# We have to use conditions here so that we don't break backwards
# compatibility with templates everywhere
condition: server_not_blacklisted
properties: properties:
server: {get_resource: BlockStorage} server: {get_resource: BlockStorage}
@ -539,11 +543,21 @@ resources:
- ['CREATE', 'UPDATE'] - ['CREATE', 'UPDATE']
- [] - []
DeploymentActions:
type: OS::Heat::Value
properties:
value:
if:
- server_not_blacklisted
- ['CREATE', 'UPDATE']
- []
SshHostPubKey: SshHostPubKey:
type: OS::TripleO::Ssh::HostPubKey type: OS::TripleO::Ssh::HostPubKey
depends_on: BlockStorageDeployment depends_on: BlockStorageDeployment
properties: properties:
server: {get_resource: BlockStorage} server: {get_resource: BlockStorage}
deployment_actions: {get_attr: [DeploymentActions, value]}
outputs: outputs:
ip_address: ip_address:

View File

@ -415,6 +415,7 @@ resources:
server: {get_resource: CephStorage} server: {get_resource: CephStorage}
RoleParameters: {get_param: RoleParameters} RoleParameters: {get_param: RoleParameters}
ServiceNames: {get_param: ServiceNames} ServiceNames: {get_param: ServiceNames}
deployment_actions: {get_attr: [DeploymentActions, value]}
NetworkDeployment: NetworkDeployment:
type: OS::TripleO::SoftwareDeployment type: OS::TripleO::SoftwareDeployment
@ -521,6 +522,9 @@ resources:
CephStorageExtraConfigPre: CephStorageExtraConfigPre:
depends_on: CephStorageDeployment depends_on: CephStorageDeployment
type: OS::TripleO::CephStorageExtraConfigPre type: OS::TripleO::CephStorageExtraConfigPre
# We have to use conditions here so that we don't break backwards
# compatibility with templates everywhere
condition: server_not_blacklisted
properties: properties:
server: {get_resource: CephStorage} server: {get_resource: CephStorage}
@ -529,6 +533,9 @@ resources:
NodeExtraConfig: NodeExtraConfig:
depends_on: [CephStorageExtraConfigPre, NodeTLSCAData] depends_on: [CephStorageExtraConfigPre, NodeTLSCAData]
type: OS::TripleO::NodeExtraConfig type: OS::TripleO::NodeExtraConfig
# We have to use conditions here so that we don't break backwards
# compatibility with templates everywhere
condition: server_not_blacklisted
properties: properties:
server: {get_resource: CephStorage} server: {get_resource: CephStorage}
@ -550,11 +557,21 @@ resources:
- ['CREATE', 'UPDATE'] - ['CREATE', 'UPDATE']
- [] - []
DeploymentActions:
type: OS::Heat::Value
properties:
value:
if:
- server_not_blacklisted
- ['CREATE', 'UPDATE']
- []
SshHostPubKey: SshHostPubKey:
type: OS::TripleO::Ssh::HostPubKey type: OS::TripleO::Ssh::HostPubKey
depends_on: CephStorageDeployment depends_on: CephStorageDeployment
properties: properties:
server: {get_resource: CephStorage} server: {get_resource: CephStorage}
deployment_actions: {get_attr: [DeploymentActions, value]}
outputs: outputs:
ip_address: ip_address:

View File

@ -418,6 +418,7 @@ resources:
server: {get_resource: NovaCompute} server: {get_resource: NovaCompute}
RoleParameters: {get_param: RoleParameters} RoleParameters: {get_param: RoleParameters}
ServiceNames: {get_param: ServiceNames} ServiceNames: {get_param: ServiceNames}
deployment_actions: {get_attr: [DeploymentActions, value]}
NetworkConfig: NetworkConfig:
type: OS::TripleO::Compute::Net::SoftwareConfig type: OS::TripleO::Compute::Net::SoftwareConfig
@ -544,6 +545,9 @@ resources:
ComputeExtraConfigPre: ComputeExtraConfigPre:
depends_on: NovaComputeDeployment depends_on: NovaComputeDeployment
type: OS::TripleO::ComputeExtraConfigPre type: OS::TripleO::ComputeExtraConfigPre
# We have to use conditions here so that we don't break backwards
# compatibility with templates everywhere
condition: server_not_blacklisted
properties: properties:
server: {get_resource: NovaCompute} server: {get_resource: NovaCompute}
@ -552,6 +556,9 @@ resources:
NodeExtraConfig: NodeExtraConfig:
depends_on: [ComputeExtraConfigPre, NodeTLSCAData] depends_on: [ComputeExtraConfigPre, NodeTLSCAData]
type: OS::TripleO::NodeExtraConfig type: OS::TripleO::NodeExtraConfig
# We have to use conditions here so that we don't break backwards
# compatibility with templates everywhere
condition: server_not_blacklisted
properties: properties:
server: {get_resource: NovaCompute} server: {get_resource: NovaCompute}
@ -574,11 +581,21 @@ resources:
update_identifier: update_identifier:
get_param: UpdateIdentifier get_param: UpdateIdentifier
DeploymentActions:
type: OS::Heat::Value
properties:
value:
if:
- server_not_blacklisted
- ['CREATE', 'UPDATE']
- []
SshHostPubKey: SshHostPubKey:
type: OS::TripleO::Ssh::HostPubKey type: OS::TripleO::Ssh::HostPubKey
depends_on: NovaComputeDeployment depends_on: NovaComputeDeployment
properties: properties:
server: {get_resource: NovaCompute} server: {get_resource: NovaCompute}
deployment_actions: {get_attr: [DeploymentActions, value]}
outputs: outputs:
ip_address: ip_address:

View File

@ -441,6 +441,7 @@ resources:
server: {get_resource: Controller} server: {get_resource: Controller}
RoleParameters: {get_param: RoleParameters} RoleParameters: {get_param: RoleParameters}
ServiceNames: {get_param: ServiceNames} ServiceNames: {get_param: ServiceNames}
deployment_actions: {get_attr: [DeploymentActions, value]}
NetworkConfig: NetworkConfig:
type: OS::TripleO::Controller::Net::SoftwareConfig type: OS::TripleO::Controller::Net::SoftwareConfig
@ -587,6 +588,9 @@ resources:
ControllerExtraConfigPre: ControllerExtraConfigPre:
depends_on: ControllerDeployment depends_on: ControllerDeployment
type: OS::TripleO::ControllerExtraConfigPre type: OS::TripleO::ControllerExtraConfigPre
# We have to use conditions here so that we don't break backwards
# compatibility with templates everywhere
condition: server_not_blacklisted
properties: properties:
server: {get_resource: Controller} server: {get_resource: Controller}
@ -595,6 +599,9 @@ resources:
NodeExtraConfig: NodeExtraConfig:
depends_on: [ControllerExtraConfigPre, NodeTLSData] depends_on: [ControllerExtraConfigPre, NodeTLSData]
type: OS::TripleO::NodeExtraConfig type: OS::TripleO::NodeExtraConfig
# We have to use conditions here so that we don't break backwards
# compatibility with templates everywhere
condition: server_not_blacklisted
properties: properties:
server: {get_resource: Controller} server: {get_resource: Controller}
@ -617,11 +624,21 @@ resources:
update_identifier: update_identifier:
get_param: UpdateIdentifier get_param: UpdateIdentifier
DeploymentActions:
type: OS::Heat::Value
properties:
value:
if:
- server_not_blacklisted
- ['CREATE', 'UPDATE']
- []
SshHostPubKey: SshHostPubKey:
type: OS::TripleO::Ssh::HostPubKey type: OS::TripleO::Ssh::HostPubKey
depends_on: ControllerDeployment depends_on: ControllerDeployment
properties: properties:
server: {get_resource: Controller} server: {get_resource: Controller}
deployment_actions: {get_attr: [DeploymentActions, value]}
outputs: outputs:
ip_address: ip_address:

View File

@ -409,6 +409,7 @@ resources:
server: {get_resource: SwiftStorage} server: {get_resource: SwiftStorage}
RoleParameters: {get_param: RoleParameters} RoleParameters: {get_param: RoleParameters}
ServiceNames: {get_param: ServiceNames} ServiceNames: {get_param: ServiceNames}
deployment_actions: {get_attr: [DeploymentActions, value]}
NetworkDeployment: NetworkDeployment:
type: OS::TripleO::SoftwareDeployment type: OS::TripleO::SoftwareDeployment
@ -517,6 +518,9 @@ resources:
NodeExtraConfig: NodeExtraConfig:
depends_on: NodeTLSCAData depends_on: NodeTLSCAData
type: OS::TripleO::NodeExtraConfig type: OS::TripleO::NodeExtraConfig
# We have to use conditions here so that we don't break backwards
# compatibility with templates everywhere
condition: server_not_blacklisted
properties: properties:
server: {get_resource: SwiftStorage} server: {get_resource: SwiftStorage}
@ -538,11 +542,21 @@ resources:
- ['CREATE', 'UPDATE'] - ['CREATE', 'UPDATE']
- [] - []
DeploymentActions:
type: OS::Heat::Value
properties:
value:
if:
- server_not_blacklisted
- ['CREATE', 'UPDATE']
- []
SshHostPubKey: SshHostPubKey:
type: OS::TripleO::Ssh::HostPubKey type: OS::TripleO::Ssh::HostPubKey
depends_on: SwiftStorageHieraDeploy depends_on: SwiftStorageHieraDeploy
properties: properties:
server: {get_resource: SwiftStorage} server: {get_resource: SwiftStorage}
deployment_actions: {get_attr: [DeploymentActions, value]}
outputs: outputs:
ip_address: ip_address:

View File

@ -435,6 +435,7 @@ resources:
server: {get_resource: {{role.name}}} server: {get_resource: {{role.name}}}
RoleParameters: {get_param: RoleParameters} RoleParameters: {get_param: RoleParameters}
ServiceNames: {get_param: ServiceNames} ServiceNames: {get_param: ServiceNames}
deployment_actions: {get_attr: [DeploymentActions, value]}
NetworkDeployment: NetworkDeployment:
type: OS::TripleO::SoftwareDeployment type: OS::TripleO::SoftwareDeployment
@ -547,6 +548,9 @@ resources:
{{role.name}}ExtraConfigPre: {{role.name}}ExtraConfigPre:
depends_on: {{role.name}}Deployment depends_on: {{role.name}}Deployment
type: OS::TripleO::{{role.name}}ExtraConfigPre type: OS::TripleO::{{role.name}}ExtraConfigPre
# We have to use conditions here so that we don't break backwards
# compatibility with templates everywhere
condition: server_not_blacklisted
properties: properties:
server: {get_resource: {{role.name}}} server: {get_resource: {{role.name}}}
@ -555,6 +559,9 @@ resources:
NodeExtraConfig: NodeExtraConfig:
depends_on: [{{role.name}}ExtraConfigPre, NodeTLSCAData] depends_on: [{{role.name}}ExtraConfigPre, NodeTLSCAData]
type: OS::TripleO::NodeExtraConfig type: OS::TripleO::NodeExtraConfig
# We have to use conditions here so that we don't break backwards
# compatibility with templates everywhere
condition: server_not_blacklisted
properties: properties:
server: {get_resource: {{role.name}}} server: {get_resource: {{role.name}}}
@ -577,11 +584,21 @@ resources:
- ['CREATE', 'UPDATE'] - ['CREATE', 'UPDATE']
- [] - []
DeploymentActions:
type: OS::Heat::Value
properties:
value:
if:
- server_not_blacklisted
- ['CREATE', 'UPDATE']
- []
SshHostPubKey: SshHostPubKey:
type: OS::TripleO::Ssh::HostPubKey type: OS::TripleO::Ssh::HostPubKey
depends_on: {{role.name}}Deployment depends_on: {{role.name}}Deployment
properties: properties:
server: {get_resource: {{role.name}}} server: {get_resource: {{role.name}}}
deployment_actions: {get_attr: [DeploymentActions, value]}
outputs: outputs:
ip_address: ip_address: