Add hooks for extra post-deployment config
Adds optional hooks which can run operator defined additional config on nodes after the application deployment has completed. Change-Id: I3f99e648efad82ce2cd51e2d5168c716f0cee8fe
This commit is contained in:
parent
723db1317c
commit
b8b5ca12be
ceph-storage-post.yamlcinder-storage-post.yamlcompute-post.yamlcontroller-post.yaml
extraconfig/post_deploy
overcloud-resource-registry-puppet.yamlovercloud-resource-registry.yamlpuppet
ceph-storage-post-puppet.yamlcompute-post-puppet.yamlcontroller-post-puppet.yamlswift-storage-post.yaml
swift-storage-post.yaml@ -5,4 +5,14 @@ description: 'Ceph Storage Post Deployment'
|
|||||||
|
|
||||||
parameters:
|
parameters:
|
||||||
servers:
|
servers:
|
||||||
type: json
|
type: json
|
||||||
|
|
||||||
|
resources:
|
||||||
|
|
||||||
|
# Note, this should come last, so use depends_on to ensure
|
||||||
|
# this is created after any other resources.
|
||||||
|
ExtraConfig:
|
||||||
|
type: OS::TripleO::NodeExtraConfigPost
|
||||||
|
properties:
|
||||||
|
servers: {get_param: servers}
|
||||||
|
|
||||||
|
@ -6,3 +6,13 @@ description: 'Common Block Storage Post Deployment'
|
|||||||
parameters:
|
parameters:
|
||||||
servers:
|
servers:
|
||||||
type: json
|
type: json
|
||||||
|
|
||||||
|
resources:
|
||||||
|
|
||||||
|
# Note, this should come last, so use depends_on to ensure
|
||||||
|
# this is created after any other resources.
|
||||||
|
ExtraConfig:
|
||||||
|
type: OS::TripleO::NodeExtraConfigPost
|
||||||
|
properties:
|
||||||
|
servers: {get_param: servers}
|
||||||
|
|
||||||
|
@ -6,3 +6,14 @@ description: 'Compute Post Deployment'
|
|||||||
parameters:
|
parameters:
|
||||||
servers:
|
servers:
|
||||||
type: json
|
type: json
|
||||||
|
|
||||||
|
resources:
|
||||||
|
|
||||||
|
|
||||||
|
# Note, this should come last, so use depends_on to ensure
|
||||||
|
# this is created after any other resources.
|
||||||
|
ExtraConfig:
|
||||||
|
type: OS::TripleO::NodeExtraConfigPost
|
||||||
|
properties:
|
||||||
|
servers: {get_param: servers}
|
||||||
|
|
||||||
|
@ -6,3 +6,12 @@ description: 'Controller Post Deployment'
|
|||||||
parameters:
|
parameters:
|
||||||
servers:
|
servers:
|
||||||
type: json
|
type: json
|
||||||
|
|
||||||
|
resources:
|
||||||
|
|
||||||
|
# Note, this should come last, so use depends_on to ensure
|
||||||
|
# this is created after any other resources.
|
||||||
|
ExtraConfig:
|
||||||
|
type: OS::TripleO::NodeExtraConfigPost
|
||||||
|
properties:
|
||||||
|
servers: {get_param: servers}
|
||||||
|
5
extraconfig/post_deploy/default.yaml
Normal file
5
extraconfig/post_deploy/default.yaml
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
heat_template_version: 2014-10-16
|
||||||
|
description: 'Extra Post Deployment Config'
|
||||||
|
parameters:
|
||||||
|
servers:
|
||||||
|
type: json
|
27
extraconfig/post_deploy/example.yaml
Normal file
27
extraconfig/post_deploy/example.yaml
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
heat_template_version: 2014-10-16
|
||||||
|
|
||||||
|
description: >
|
||||||
|
Example extra config for post-deployment
|
||||||
|
|
||||||
|
# Note extra parameters can be defined, then passed data via the
|
||||||
|
# environment parameter_defaults, without modifying the parent template
|
||||||
|
parameters:
|
||||||
|
servers:
|
||||||
|
type: json
|
||||||
|
|
||||||
|
resources:
|
||||||
|
|
||||||
|
ExtraConfig:
|
||||||
|
type: OS::Heat::SoftwareConfig
|
||||||
|
properties:
|
||||||
|
group: script
|
||||||
|
config: |
|
||||||
|
#!/bin/sh
|
||||||
|
echo "extra" > /root/extra
|
||||||
|
|
||||||
|
ExtraDeployments:
|
||||||
|
type: OS::Heat::StructuredDeployments
|
||||||
|
properties:
|
||||||
|
servers: {get_param: servers}
|
||||||
|
config: {get_resource: ExtraConfig}
|
||||||
|
actions: ['CREATE'] # Only do this on CREATE
|
@ -16,6 +16,7 @@ resource_registry:
|
|||||||
OS::TripleO::AllNodes::SoftwareConfig: puppet/all-nodes-config.yaml
|
OS::TripleO::AllNodes::SoftwareConfig: puppet/all-nodes-config.yaml
|
||||||
OS::TripleO::BootstrapNode::SoftwareConfig: puppet/bootstrap-config.yaml
|
OS::TripleO::BootstrapNode::SoftwareConfig: puppet/bootstrap-config.yaml
|
||||||
OS::TripleO::NodeUserData: firstboot/userdata_default.yaml
|
OS::TripleO::NodeUserData: firstboot/userdata_default.yaml
|
||||||
|
OS::TripleO::NodeExtraConfigPost: extraconfig/post_deploy/default.yaml
|
||||||
|
|
||||||
parameter_defaults:
|
parameter_defaults:
|
||||||
EnablePackageInstall: false
|
EnablePackageInstall: false
|
||||||
|
@ -16,3 +16,4 @@ resource_registry:
|
|||||||
OS::TripleO::AllNodes::SoftwareConfig: all-nodes-config.yaml
|
OS::TripleO::AllNodes::SoftwareConfig: all-nodes-config.yaml
|
||||||
OS::TripleO::BootstrapNode::SoftwareConfig: bootstrap-config.yaml
|
OS::TripleO::BootstrapNode::SoftwareConfig: bootstrap-config.yaml
|
||||||
OS::TripleO::NodeUserData: firstboot/userdata_default.yaml
|
OS::TripleO::NodeUserData: firstboot/userdata_default.yaml
|
||||||
|
OS::TripleO::NodeExtraConfigPost: extraconfig/post_deploy/default.yaml
|
||||||
|
@ -22,3 +22,12 @@ resources:
|
|||||||
properties:
|
properties:
|
||||||
servers: {get_param: servers}
|
servers: {get_param: servers}
|
||||||
config: {get_resource: CephStoragePuppetConfig}
|
config: {get_resource: CephStoragePuppetConfig}
|
||||||
|
|
||||||
|
# Note, this should come last, so use depends_on to ensure
|
||||||
|
# this is created after any other resources.
|
||||||
|
ExtraConfig:
|
||||||
|
depends_on: CephStorageDeployment_Step1
|
||||||
|
type: OS::TripleO::NodeExtraConfigPost
|
||||||
|
properties:
|
||||||
|
servers: {get_param: servers}
|
||||||
|
|
||||||
|
@ -23,3 +23,12 @@ resources:
|
|||||||
properties:
|
properties:
|
||||||
servers: {get_param: servers}
|
servers: {get_param: servers}
|
||||||
config: {get_resource: ComputePuppetConfig}
|
config: {get_resource: ComputePuppetConfig}
|
||||||
|
|
||||||
|
# Note, this should come last, so use depends_on to ensure
|
||||||
|
# this is created after any other resources.
|
||||||
|
ExtraConfig:
|
||||||
|
depends_on: ComputePuppetDeployment
|
||||||
|
type: OS::TripleO::NodeExtraConfigPost
|
||||||
|
properties:
|
||||||
|
servers: {get_param: servers}
|
||||||
|
|
||||||
|
@ -71,3 +71,12 @@ resources:
|
|||||||
config: {get_resource: ControllerPuppetConfig}
|
config: {get_resource: ControllerPuppetConfig}
|
||||||
input_values:
|
input_values:
|
||||||
step: 3
|
step: 3
|
||||||
|
|
||||||
|
# Note, this should come last, so use depends_on to ensure
|
||||||
|
# this is created after any other resources.
|
||||||
|
ExtraConfig:
|
||||||
|
depends_on: ControllerDeploymentOvercloudServices_Step4
|
||||||
|
type: OS::TripleO::NodeExtraConfigPost
|
||||||
|
properties:
|
||||||
|
servers: {get_param: servers}
|
||||||
|
|
||||||
|
@ -37,3 +37,12 @@ resources:
|
|||||||
properties:
|
properties:
|
||||||
servers: {get_param: servers}
|
servers: {get_param: servers}
|
||||||
config: {get_resource: StorageRingbuilderPuppetConfig}
|
config: {get_resource: StorageRingbuilderPuppetConfig}
|
||||||
|
|
||||||
|
# Note, this should come last, so use depends_on to ensure
|
||||||
|
# this is created after any other resources.
|
||||||
|
ExtraConfig:
|
||||||
|
depends_on: StorageRingbuilderDeployment_Step2
|
||||||
|
type: OS::TripleO::NodeExtraConfigPost
|
||||||
|
properties:
|
||||||
|
servers: {get_param: servers}
|
||||||
|
|
||||||
|
@ -6,3 +6,13 @@ description: 'Swift Storage Post Deployment'
|
|||||||
parameters:
|
parameters:
|
||||||
servers:
|
servers:
|
||||||
type: json
|
type: json
|
||||||
|
|
||||||
|
resources:
|
||||||
|
|
||||||
|
# Note, this should come last, so use depends_on to ensure
|
||||||
|
# this is created after any other resources.
|
||||||
|
ExtraConfig:
|
||||||
|
type: OS::TripleO::NodeExtraConfigPost
|
||||||
|
properties:
|
||||||
|
servers: {get_param: servers}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user