summaryrefslogtreecommitdiffstats
path: root/asdc-controller/src/test/resources/resource-examples/multipleModules/pxmc_mmn.yaml
blob: d1b0ce883bce27b22a01e8d98b7eb78e0bffdaf7 (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
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
heat_template_version: 2015-04-30

description: HOT creates Nimbus vMSP MMN stack.

parameters:
  mmn_name_0:
    type: string
    label: MSP MMN server names
    description: name of the MSP MMN instances
  mmn_flavor_name:
    type: string
    label: MSP MMN flavor name
    description: MSP MMN flavor name
#  mmn_image_name:
#    type: string
#    label: MSP MMN image name
#    description: MSP MMN image name
#  availability_zone_0:
#    type: string
#    label: MSP MMN availability zones
#    description: MSP MMN availability zones
  sec_grp_msp_id:
    type: string
    label: security group id
    description: the id of security group
  mmn_oam_protected_ip_0:
    type: string
    label: MSP MMN OAM IP Addresses
    description: MSP MMN OAM IP Addresses
  oam_protected_net_name:
    type: string
    label: MSP MMN OAM net name
    description: MSP MMN OAM net name
  mmn_volume_name_0:
    type: string
    label: Mobisupport MSP MMN Cinder Volume names
    description: Mobisupport MSP MMN Cinder Volume names
  mmn_volume_size_0:
    type: number
    label: Mobisupport MSP MMN Cinder Volume sizes
    description: Mobisupport MSP MMN Cinder Volume sizes
  mmn_volume_image_name_0:
    type: string
    label: Mobisupport MSP MMN Cinder Volume image name
    description: Mobisupport MSP MMN Cinder Volume image name
  mmn_data_volume_id_1:
    type: string
    label: MSP MMN Volume id 1
    description: MSP MMN Volume id 1
  mmn_arch_volume_id_2:
    type: string
    label: MSP MMN Volume id 2
    description: MSP MMN Volume id 2
  mmn_backup_volume_id_3:
    type: string
    label: MSP MMN Volume id 3
    description: MSP MMN Volume id 3
  mmn_misc_volume_id_4:
    type: string
    label: MSP MMN Volume id 4
    description: MSP MMN Volume id 4
  mmn_block_device_names:
    type: comma_delimited_list
    label: MSP MMN Block Device Names
    description: MSP MMN Block Device Names
  cinder_delete_on_termination_true:
    type: boolean
    description: delete cinder volume upon instances termination
  cinder_delete_on_termination_false:
    type: boolean
    description: keep cinder volume upon instances termination
  vnf_id:
    type: string
    label: MSP MMN VNF ID
    description: MSP MMN VNF ID
  vf_module_id:
    type: string
    description: Unique ID for this VF module instance

resources:
################ Cinder Volume ########################
  mmn_volume_0:
    type: OS::Cinder::Volume
    properties:
      name: {get_param: mmn_volume_name_0}
      size: {get_param: mmn_volume_size_0}
      image: {get_param: mmn_volume_image_name_0}

################ Server ##############################
  mmn_zrdm5bpxmc02mmn_0:
    type: OS::Nova::Server
    properties:
      name: {get_param: mmn_name_0}
#      image: {get_param: mmn_image_name}
      flavor: {get_param: mmn_flavor_name}
#      availability_zone: {get_param: availability_zone_0}
      block_device_mapping_v2:
        - device_name: { get_param: [mmn_block_device_names, 0] }
          volume_id: { get_resource: mmn_volume_0 }
          delete_on_termination: {get_param: cinder_delete_on_termination_true}
      networks:
        - port: { get_resource: mmn_oam_protected_0_port }
      config_drive: "True"
      user_data_format: RAW
      user_data:
        get_file: user_data_zrdm5bpxmc02mmn001.txt
      metadata:
        vnf_id: {get_param: vnf_id}
        vf_module_id {get_param: vf_module_id}
        "evacuation_policy": "Evacuation"

################ Ports ##############################
  mmn_oam_protected_0_port:
    type: OS::Neutron::Port
    properties:
      network: {get_param: oam_protected_net_name}
      fixed_ips: [{"ip_address": {get_param: mmn_oam_protected_ip_0}}]
      security_groups: [{ get_param: sec_grp_msp_id }]
      replacement_policy: AUTO

################ Volume Attachment ##############################
  volume_attachment_vdb:
    type: OS::Cinder::VolumeAttachment
    depends_on: mmn_zrdm5bpxmc02mmn_0
    properties:
      volume_id: { get_param: mmn_data_volume_id_1 }
      instance_uuid: { get_resource: mmn_zrdm5bpxmc02mmn_0}
      mountpoint: /dev/vdb

  volume_attachment_vdc:
    type: OS::Cinder::VolumeAttachment
    depends_on: volume_attachment_vdb
    properties:
      volume_id: { get_param: mmn_arch_volume_id_2 }
      instance_uuid: { get_resource: mmn_zrdm5bpxmc02mmn_0}
      mountpoint: /dev/vdc

  volume_attachment_vdd:
    type: OS::Cinder::VolumeAttachment
    depends_on: volume_attachment_vdc
    properties:
      volume_id: { get_param: mmn_backup_volume_id_3 }
      instance_uuid: { get_resource: mmn_zrdm5bpxmc02mmn_0}
      mountpoint: /dev/vdd

  volume_attachment_vde:
    type: OS::Cinder::VolumeAttachment
    depends_on: volume_attachment_vdd
    properties:
      volume_id: { get_param: mmn_misc_volume_id_4 }
      instance_uuid: { get_resource:  mmn_zrdm5bpxmc02mmn_0}
      mountpoint: /dev/vde