aboutsummaryrefslogtreecommitdiffstats
path: root/puppet
diff options
context:
space:
mode:
authorSteven Hardy <shardy@redhat.com>2015-09-24 11:52:06 +0100
committerSteven Hardy <shardy@redhat.com>2015-10-01 09:13:31 +0100
commit1b70744623eb9b65a762aed9ce67c74dcd054cd3 (patch)
tree1a69f4d95e725464a169733ed27bea97abbe387b /puppet
parent9e918a4a517f62d4417909311041e3e54a726462 (diff)
Wire in NodeExtraConfig interface
It's become apparent that some actions are required in the pre-deploy phase for all nodes, for example applying common hieradata overrides, or also as a place to hook in logic which must happen for all nodes prior to their removal on scale down (such as unregistration from a satellite server, which currently doesn't work via the *NodesPostDeployment for scale-down usage). So, add a new interface that enables ExtraConfig per-node (inside the scaled unit, vs AllNodes which is used for the cluster-wide config outside of the ResourceGroup) Change-Id: Ic865908e97483753e58bc18e360ebe50557ab93c
Diffstat (limited to 'puppet')
-rw-r--r--puppet/ceph-storage.yaml8
-rw-r--r--puppet/cinder-storage.yaml8
-rw-r--r--puppet/compute.yaml8
-rw-r--r--puppet/controller.yaml8
-rw-r--r--puppet/swift-storage.yaml8
5 files changed, 40 insertions, 0 deletions
diff --git a/puppet/ceph-storage.yaml b/puppet/ceph-storage.yaml
index 87957052..478cbf27 100644
--- a/puppet/ceph-storage.yaml
+++ b/puppet/ceph-storage.yaml
@@ -179,6 +179,14 @@ resources:
properties:
server: {get_resource: CephStorage}
+ # Hook for site-specific additional pre-deployment config,
+ # applying to all nodes, e.g node registration/unregistration
+ NodeExtraConfig:
+ depends_on: CephStorageExtraConfigPre
+ type: OS::TripleO::NodeExtraConfig
+ properties:
+ server: {get_resource: CephStorage}
+
UpdateConfig:
type: OS::TripleO::Tasks::PackageUpdate
diff --git a/puppet/cinder-storage.yaml b/puppet/cinder-storage.yaml
index 1cc300cc..bf024aa8 100644
--- a/puppet/cinder-storage.yaml
+++ b/puppet/cinder-storage.yaml
@@ -261,6 +261,14 @@ resources:
snmpd_readonly_user_name: {get_input: snmpd_readonly_user_name}
snmpd_readonly_user_password: {get_input: snmpd_readonly_user_password}
+ # Hook for site-specific additional pre-deployment config,
+ # applying to all nodes, e.g node registration/unregistration
+ NodeExtraConfig:
+ depends_on: BlockStorageDeployment
+ type: OS::TripleO::NodeExtraConfig
+ properties:
+ server: {get_resource: BlockStorage}
+
UpdateConfig:
type: OS::TripleO::Tasks::PackageUpdate
diff --git a/puppet/compute.yaml b/puppet/compute.yaml
index a7c1c8c9..cac37d71 100644
--- a/puppet/compute.yaml
+++ b/puppet/compute.yaml
@@ -552,6 +552,14 @@ resources:
properties:
server: {get_resource: NovaCompute}
+ # Hook for site-specific additional pre-deployment config,
+ # applying to all nodes, e.g node registration/unregistration
+ NodeExtraConfig:
+ depends_on: ComputeExtraConfigPre
+ type: OS::TripleO::NodeExtraConfig
+ properties:
+ server: {get_resource: NovaCompute}
+
UpdateConfig:
type: OS::TripleO::Tasks::PackageUpdate
diff --git a/puppet/controller.yaml b/puppet/controller.yaml
index a68ece2b..bd9cfadf 100644
--- a/puppet/controller.yaml
+++ b/puppet/controller.yaml
@@ -1204,6 +1204,14 @@ resources:
properties:
server: {get_resource: Controller}
+ # Hook for site-specific additional pre-deployment config,
+ # applying to all nodes, e.g node registration/unregistration
+ NodeExtraConfig:
+ depends_on: ControllerExtraConfigPre
+ type: OS::TripleO::NodeExtraConfig
+ properties:
+ server: {get_resource: Controller}
+
UpdateConfig:
type: OS::TripleO::Tasks::PackageUpdate
diff --git a/puppet/swift-storage.yaml b/puppet/swift-storage.yaml
index c09b4e45..5b7c28bf 100644
--- a/puppet/swift-storage.yaml
+++ b/puppet/swift-storage.yaml
@@ -214,6 +214,14 @@ resources:
enable_package_install: {get_param: EnablePackageInstall}
swift_management_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, SwiftMgmtNetwork]}]}
+ # Hook for site-specific additional pre-deployment config,
+ # applying to all nodes, e.g node registration/unregistration
+ NodeExtraConfig:
+ depends_on: SwiftStorageHieraDeploy
+ type: OS::TripleO::NodeExtraConfig
+ properties:
+ server: {get_resource: SwiftStorage}
+
UpdateConfig:
type: OS::TripleO::Tasks::PackageUpdate