summaryrefslogtreecommitdiffstats
path: root/examples/scale_map.yaml
diff options
context:
space:
mode:
authorRobert Collins <rbtcollins@hp.com>2014-02-20 17:14:43 +1300
committerRobert Collins <rbtcollins@hp.com>2014-02-21 11:13:10 +1300
commit70494ab2cb75e7f7ca83a169eac823b22eb6e180 (patch)
treea39f0002c980c07f8b5b283bde414d2720f8a95e /examples/scale_map.yaml
parent8403b8ae9fd7eef452fe7cd96df814e195fea916 (diff)
Add a Merge::Map feature.
We need to scatter gather in a few situations - determining rabbit cluster membership, galera membership and configuring hosts for Nova to permit live migration (which requires host->host communication). This patch is a proof of concept for an eventual heat feature, expressed in merge.py. The example given should work for actual use, but I'll deliver that change separately. Change-Id: I68e9b2471866810cc698ca3ea28ddf5bb1688d7b
Diffstat (limited to 'examples/scale_map.yaml')
-rw-r--r--examples/scale_map.yaml55
1 files changed, 55 insertions, 0 deletions
diff --git a/examples/scale_map.yaml b/examples/scale_map.yaml
new file mode 100644
index 00000000..7c79ad57
--- /dev/null
+++ b/examples/scale_map.yaml
@@ -0,0 +1,55 @@
+Resources:
+ ComputeUser:
+ Type: AWS::IAM::User
+ Properties:
+ Policies: [ { Ref: ComputeAccessPolicy } ]
+ GlobalAccessPolicy:
+ Type: OS::Heat::AccessPolicy
+ NovaCompute0Key:
+ Type: FileInclude
+ Path: examples/scale_map2.yaml
+ SubKey: Resources.NovaCompute0Key
+ NovaCompute0CompletionCondition:
+ Type: FileInclude
+ Path: examples/scale_map2.yaml
+ SubKey: Resources.NovaCompute0CompletionCondition
+ NovaCompute0CompletionHandle:
+ Type: FileInclude
+ Path: examples/scale_map2.yaml
+ SubKey: Resources.NovaCompute0CompletionHandle
+ NovaCompute0Config:
+ Type: FileInclude
+ Path: examples/scale_map2.yaml
+ SubKey: Resources.NovaCompute0Config
+ Parameters:
+ AllHosts:
+ Fn::Join:
+ - "\n"
+ - Merge::Map:
+ NovaCompute0:
+ Fn::Join:
+ - ' '
+ - - Fn::Select:
+ - 0
+ - Fn::Select:
+ - ctlplane
+ - Fn::GetAtt:
+ - NovaCompute0
+ - networks
+ - Fn::Select:
+ - name
+ - Fn::GetAtt:
+ - NovaCompute0
+ - show
+ - Fn::Join:
+ - '.'
+ - - Fn::Select:
+ - name
+ - Fn::GetAtt:
+ - NovaCompute0
+ - show
+ - 'local'
+ NovaCompute0:
+ Type: FileInclude
+ Path: examples/scale_map2.yaml
+ SubKey: Resources.NovaCompute0