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 }