aboutsummaryrefslogtreecommitdiffstats
path: root/puppet
diff options
context:
space:
mode:
authorSteven Hardy <shardy@redhat.com>2015-04-02 09:52:18 -0400
committerSteven Hardy <shardy@redhat.com>2015-04-24 10:18:31 +0100
commit723db1317cd62a8772c764847c80a339eae4c03f (patch)
treedc1161fb6db10d4317702366c9c903d5cd5c14c0 /puppet
parent1781c64bfc9cc929355b28344d0e34b2347e6ffe (diff)
Enable passing optional first-boot user-data
Currently all the OS::Nova::Server resource created don't pass any user-data. It's possible to pass user-data as well as using heat SoftwareConfig/SoftwareDeployment resources, and this can be useful when you have simple "first boot" tasks which are possible either via cloud-init, or via simple run-once scripts. This enables passing such data by implementing a new provider resource OS::TripleO::NodeUserData, which defaults to passing an empty mime archive (thus it's a no-op). An example of non no-op usage is also provided. Change-Id: Id0caba69768630e3a10439ba1fc2547a609c0cfe
Diffstat (limited to 'puppet')
-rw-r--r--puppet/ceph-storage-puppet.yaml5
-rw-r--r--puppet/cinder-storage-puppet.yaml6
-rw-r--r--puppet/compute-puppet.yaml4
-rw-r--r--puppet/controller-puppet.yaml4
-rw-r--r--puppet/swift-storage-puppet.yaml6
5 files changed, 23 insertions, 2 deletions
diff --git a/puppet/ceph-storage-puppet.yaml b/puppet/ceph-storage-puppet.yaml
index e9f82c2e..4ce16225 100644
--- a/puppet/ceph-storage-puppet.yaml
+++ b/puppet/ceph-storage-puppet.yaml
@@ -40,6 +40,11 @@ resources:
networks:
- network: ctlplane
user_data_format: SOFTWARE_CONFIG
+ user_data: {get_resource: NodeUserData}
+
+ NodeUserData:
+ type: OS::TripleO::NodeUserData
+
CephStorageDeployment:
type: OS::Heat::StructuredDeployment
properties:
diff --git a/puppet/cinder-storage-puppet.yaml b/puppet/cinder-storage-puppet.yaml
index ecea763b..3e55ec85 100644
--- a/puppet/cinder-storage-puppet.yaml
+++ b/puppet/cinder-storage-puppet.yaml
@@ -115,9 +115,13 @@ resources:
{get_param: Image}
flavor: {get_param: Flavor}
key_name: {get_param: KeyName}
- user_data_format: SOFTWARE_CONFIG
networks:
- network: ctlplane
+ user_data_format: SOFTWARE_CONFIG
+ user_data: {get_resource: NodeUserData}
+
+ NodeUserData:
+ type: OS::TripleO::NodeUserData
BlockStorageDeployment:
type: OS::Heat::StructuredDeployment
diff --git a/puppet/compute-puppet.yaml b/puppet/compute-puppet.yaml
index 382a6b53..11910d79 100644
--- a/puppet/compute-puppet.yaml
+++ b/puppet/compute-puppet.yaml
@@ -262,6 +262,10 @@ resources:
networks:
- network: ctlplane
user_data_format: SOFTWARE_CONFIG
+ user_data: {get_resource: NodeUserData}
+
+ NodeUserData:
+ type: OS::TripleO::NodeUserData
NetworkConfig:
type: OS::TripleO::Net::SoftwareConfig
diff --git a/puppet/controller-puppet.yaml b/puppet/controller-puppet.yaml
index d3955467..a904e041 100644
--- a/puppet/controller-puppet.yaml
+++ b/puppet/controller-puppet.yaml
@@ -425,6 +425,10 @@ resources:
networks:
- network: ctlplane
user_data_format: SOFTWARE_CONFIG
+ user_data: {get_resource: NodeUserData}
+
+ NodeUserData:
+ type: OS::TripleO::NodeUserData
NetworkConfig:
type: OS::TripleO::Net::SoftwareConfig
diff --git a/puppet/swift-storage-puppet.yaml b/puppet/swift-storage-puppet.yaml
index eba44e6c..6f861d88 100644
--- a/puppet/swift-storage-puppet.yaml
+++ b/puppet/swift-storage-puppet.yaml
@@ -60,9 +60,13 @@ resources:
image: {get_param: Image}
flavor: {get_param: Flavor}
key_name: {get_param: KeyName}
- user_data_format: SOFTWARE_CONFIG
networks:
- network: ctlplane
+ user_data_format: SOFTWARE_CONFIG
+ user_data: {get_resource: NodeUserData}
+
+ NodeUserData:
+ type: OS::TripleO::NodeUserData
SwiftStorageHieraConfig:
type: OS::Heat::StructuredConfig