aboutsummaryrefslogtreecommitdiffstats
path: root/ice_validator/app_tests/preload_tests/sample_heat/nested_svc.yaml
blob: 2de465600bca9207231c9bf6d43ef8f44b3a6c6d (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
heat_template_version: 2015-04-30

description: Base Module of Sample VNF

parameters:

  # ONAP Assigned Parameters
  workload_context:
    type: string
    description: Unique ID for this VNF instance

  environment_context:
    type: string
    description: Unique ID for this VNF instance

  vnf_id:
    type: string
    description: Unique ID for this VNF instance

  vf_module_id:
    type: string
    description: Unique ID for this VNF module instance


  vnf_name:
    type: string
    description: Unique name for this VNF instance


  # Availability Zones
  availability_zone_0:
    type: string
    description: Primary Availability Zone


  # Server Inputs: Services
  svc_names:
    type: comma_delimited_list
    description: Service VM Names

  svc_image_name:
    type: string
    description: Service VM Image

  svc_flavor_name:
    type: string
    description: Service VM Flavor

  index:
    type: number
    description: Number of services to create
  
  int_private_net_id:
    type: string
    description: Network ID of internal private network

  int_private_subnet_id:
    type: string
    description: Subnet ID of internal private network

resources:

  svc_server_0:
    type: OS::Nova::Server
    properties:
      image: { get_param: svc_image_name }
      flavor: { get_param: svc_flavor_name }
      name: { get_param: [svc_names, {get_param: index}] }
      metadata:
        vnf_id: { get_param: vnf_id }
        vf_module_id: { get_param: vf_module_id }
        vnf_name: { get_param: vnf_name }
        workload_context: { get_param: workload_context }
        environment_context: { get_param: environment_context }
      networks:
        - port: {get_resource: svc_0_int_private_port_0}
      availability_zone: { get_param: availability_zone_0 }

  svc_0_int_private_port_0:
    type: OS::Neutron::Port
    properties:
      network: { get_param: int_private_net_id }
      fixed_ips: 
        - subnet: { get_param: int_private_subnet_id  }