summaryrefslogtreecommitdiffstats
path: root/examples/scale_map2_hot.yaml
blob: 1d7dc5fc9531ad10558c368b9db471196b01571d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
heat_template_version: 2014-10-16
parameters:
  AllHosts:
    type: string
  ComputeImage:
    type: string
resources:
  ComputeAccessPolicy:
    type: OS::Heat::AccessPolicy
    properties:
      AllowedResources: [ NovaCompute0 ]
  NovaCompute0Key:
    type: AWS::IAM::AccessKey
    properties:
      UserName:
        get_param: ComputeUser
  NovaCompute0CompletionCondition:
    type: AWS::CloudFormation::WaitCondition
    depends_on: notcompute
    properties:
      Handle: {get_resource: NovaCompute0CompletionHandle}
      Count: '1'
      Timeout: '1800'
  NovaCompute0CompletionHandle:
    type: AWS::CloudFormation::WaitConditionHandle
  NovaCompute0:
    type: OS::Nova::Server
    properties:
      image:
        get_param: ComputeImage
    metadata:
      os-collect-config:
        cfn:
          access_key_id:
            get_resource: NovaCompute0Key
          secret_access_key:
            get_attr: [ NovaCompute0Key, SecretAccessKey ]
          stack_name: {get_param: 'AWS::StackName'}
          path: NovaCompute0Config.Metadata
  NovaCompute0Config:
    type: AWS::AutoScaling::LaunchConfiguration
    metadata:
      completion-handle:
        get_resource: NovaCompute0CompletionHandle
      os-collect-config:
        cfn:
          access_key_id:
            get_resource: NovaCompute0Key
          secret_access_key:
            get_attr: [ NovaCompute0Key, SecretAccessKey ]
          stack_name: {get_param: 'AWS::StackName'}
          path: NovaCompute0Config.Metadata
      hosts:
        get_param: AllHosts