Sample input JSON

{
	"topology_name": "rhosp-c7",
	"topology_modules": [
		"hardware_preparation",
		"switch_automation",
		"image_service",
		"vim_deployment"
	],
	"topology_data": {
		"computes": {
			"vim": [
				{
					"undercloud": {
						"subscription": {
							"repo_url": "http://10.xx.xx.xx:8081",
							"docker_registry": "10.xx.xx.xx:8787",
							"proxy_ip": "NA",
							"proxy_port": "NA",
							"proxy_user": "NA",
							"proxy_password": "NA"
						},
						"root_pw": "*******",
						"stack_pw": "*******",
						"pxe_ip": "10.xx.xx.xx",
						"oam_ip": "10.xx.xx.xx",
						"dhcp_start_address": "10.xx.xx.xx",
						"dhcp_end_address": "10.xx.xx.xx",
						"inspection_start_address": "10.xx.xx.xx",
						"inspection_end_address": "10.xx.xx.xx"
					},
					"overcloud": {
						"can_start_address": "10.xx.xx.xx",
						"can_end_address": "10.xx.xx.xx",
						"internal_start_address": "10.xx.xx.xx",
						"internal_end_address": "10.xx.xx.xx",
						"storage_start_address": "10.xx.xx.xx",
						"storage_end_address": "10.xx.xx.xx",
						"password": "*******",
						"instanceha": "true",
						"storage_backend": [
							"ceph"
						]
					},
					"profiles": {
						"controller": {
							"type": "controller",
							"interfaces": {
								"ovs": [
									{
										"name": "br-data",
										"type": "bond",
										"physnet": "PROVIDER-VLAN",
										"bond_members": [
											"nic3",
											"nic4"
										],
										"bond_linux_options": "mode=4 lacp_rate=1 updelay=1000 miimon=100"
									}
								]
							}
						},
						"ceph-storage": {
							"type": "ceph",
							"disk_config": {
								"osd_objectstore": "bluestore",
								"osd_scenario": "lvm",
								"disk_type": {
									"osd": "hdd",
									"journal": "ssd"
								},
								"osds_per_device": "1"
							},
							"extra_config": {
								"osd_memory_target": "4294967296"
							},
							"replication_size": "3",
							"default_pgnum": "128"
						},
						"computeovsdpdksriov": {
							"type": "compute",
							"reserved_host_memory": "4096",
							"vcpu_pin_set": "6-13,30-37",
							"isolated_core_list": "6-23,30-47",
							"hugepg_count": "100",
							"interfaces": {
								"dpdk": [
									{
										"name": "br-data",
										"type": "bond",
										"rx_queue": "1",
										"physnet": "PROVIDER-VLAN",
										"bond_members": [
											"nic3",
											"nic4"
										],
										"bond_ovs_options": "bond-mode=active-backup lacp=active"
									}
								],
								"sriov": [
									{
										"name": "nic5",
										"physnet": "PROVIDER-VLAN",
										"vf": "4"
									},
									{
										"name": "nic6",
										"physnet": "PROVIDER-VLAN",
										"vf": "4"
									}
								]
							},
							"dpdk": {
								"core_list": "1-5,25-29",
								"socket_memory": "4096,4096",
								"pmd_core_list": "14-23,38-47",
								"memory_channels": "6"
							}
						}
					},
					"name": "RHOSP",
					"version": "13",
					"Infrastructure": "Baremetal",
					"description": "Redhat Openstack"
				}
			],
			"description": "Compute platforms and its configurations"
		},
		"networking": {
			"underlay": [
				{
					"name": "ILO-OOBM",
					"type": "ILO-OOBM",
					"cidr": "10.xx.xx.xx/24",
					"gateway": "10.xx.xx.xx",
					"ip_range_start": "NA",
					"ip_range_end": "NA",
					"vlan": "399",
					"vlan_range": "NA",
					"vxlan": "NA",
					"vxlan_range": "NA",
					"description": "Out of Band Management Network connecting all servers and switches[UnTagged]"
				},
				{
					"name": "BLS",
					"type": "BLS",
					"cidr": "10.xx.xx.xx/24",
					"gateway": "10.xx.xx.xx",
					"ip_range_start": "10.xx.xx.xx",
					"ip_range_end": "10.xx.xx.xx",
					"vlan": "323",
					"vlan_range": "NA",
					"vxlan": "100323",
					"vxlan_range": "NA",
					"description": "Block Storage network"
				},
				{
					"name": "OAM",
					"type": "OAM",
					"cidr": "10.xx.xx.xx/24",
					"gateway": "10.xx.xx.xx",
					"ip_range_start": "NA",
					"ip_range_end": "NA",
					"vlan": "990",
					"vlan_range": "NA",
					"vxlan": "100990",
					"vxlan_range": "NA",
					"description": "Data Center management network"
				},
				{
					"name": "VIM-PXE",
					"type": "VIM-PXE",
					"cidr": "10.xx.xx.xx/24",
					"gateway": "10.xx.xx.xx",
					"ip_range_start": "10.xx.xx.xx",
					"ip_range_end": "10.xx.xx.xx",
					"vlan": "321",
					"vlan_range": "NA",
					"vxlan": "100321",
					"vxlan_range": "NA",
					"description": "PXE Network for Image Service"
				},
				{
					"name": "CLM",
					"type": "CLM",
					"cidr": "10.xx.xx.xx/24",
					"gateway": "10.xx.xx.xx",
					"ip_range_start": "10.xx.xx.xx",
					"ip_range_end": "10.xx.xx.xx",
					"vlan": "322",
					"vlan_range": "NA",
					"vxlan": "100322",
					"vxlan_range": "NA",
					"description": "Cloud Management network"
				},
				{
					"name": "CAN",
					"type": "CAN",
					"cidr": "10.xx.xx.xx/24",
					"gateway": "10.xx.xx.xx",
					"ip_range_start": "NA",
					"ip_range_end": "NA",
					"vlan": "325",
					"vlan_range": "NA",
					"vxlan": "100325",
					"vxlan_range": "NA",
					"description": "Consumer Access network"
				},
				{
					"name": "PROVIDER-VLAN",
					"type": "PROVIDER-VLAN",
					"cidr": "NA",
					"gateway": "NA",
					"ip_range_start": "NA",
					"ip_range_end": "NA",
					"vlan": "NA",
					"vlan_range": "340-350",
					"vxlan": "NA",
					"vxlan_range": "100340-100350",
					"description": "Range of VLAN's alloted for OpenStack Tenant networks"
				},
				{
					"name": "L3-VNI",
					"type": "L3-ROUTED-VNI",
					"cidr": "NA",
					"gateway": "NA",
					"ip_range_start": "NA",
					"ip_range_end": "NA",
					"vlan": "4005",
					"vlan_range": "NA",
					"vxlan": "104005",
					"vxlan_range": "NA",
					"description": "L3 Routed VNI"
				}
			],
			"description": "List of all networking information configured"
		},
		"infra": {
			"description": "List of all physical infrastructure elements configured by code",
			"servers": [
				{
					"description": "undercloud",
					"hostname": "undercloud",
					"hw_profile": "default_undercloud_profile",
					"role": "baremetal",
					"ilo": "10.xx.xx.xx",
					"user": "admin",
					"password": "*******",
					"model": "DL360"
				},
				{
					"description": "controller1",
					"hostname": "controller1",
					"hw_profile": "default_controller_profile",
					"role": "controller",
					"ilo": "10.xx.xx.xx",
					"user": "admin",
					"password": "*******",
					"model": "DL360"
				},
				{
					"description": "controller2",
					"hostname": "controller2",
					"hw_profile": "default_controller_profile",
					"role": "controller",
					"ilo": "10.xx.xx.xx",
					"user": "admin",
					"password": "*******",
					"model": "DL360"
				},
				{
					"description": "controller3",
					"hostname": "controller3",
					"hw_profile": "default_controller_profile",
					"role": "controller",
					"ilo": "10.xx.xx.xx",
					"user": "admin",
					"password": "*******",
					"model": "DL360"
				},
				{
					"description": "ceph1",
					"hostname": "ceph1",
					"hw_profile": "default_storage_profile",
					"role": "ceph-storage",
					"ilo": "10.xx.xx.xx",
					"user": "admin",
					"password": "*******",
					"model": "DL380"
				},
				{
					"description": "ceph2",
					"hostname": "ceph2",
					"hw_profile": "default_storage_profile",
					"role": "ceph-storage",
					"ilo": "10.xx.xx.xx",
					"user": "admin",
					"password": "*******",
					"model": "DL380"
				},
				{
					"description": "ceph3",
					"hostname": "ceph3",
					"hw_profile": "default_storage_profile",
					"role": "ceph-storage",
					"ilo": "10.xx.xx.xx",
					"user": "admin",
					"password": "*******",
					"model": "DL380"
				},
				{
					"description": "compute1",
					"hostname": "compute1",
					"hw_profile": "default_compute_profile",
					"role": "computeovsdpdksriov",
					"ilo": "10.xx.xx.xx",
					"user": "admin",
					"password": "*******",
					"model": "DL360"
				},
				{
					"description": "compute2",
					"hostname": "compute2",
					"hw_profile": "default_compute_profile",
					"role": "computeovsdpdksriov",
					"ilo": "10.xx.xx.xx",
					"user": "admin",
					"password": "*******",
					"model": "DL360"
				}
			],
			"switches": [
				{
					"description": "data1",
					"type": "data",
					"oob_mgmt_ip": "10.xx.xx.xx",
					"name": "data-1",
					"user": "cumulus",
					"password": "*******",
					"loopback_address": "10.xx.xx.xx",
					"anycast_ip": "10.xx.xx.xx",
					"bgp_autonomous_system_num": "65001",
					"protocol": "vxlan"
				},
				{
					"description": "data2",
					"type": "data",
					"oob_mgmt_ip": "10.xx.xx.xx",
					"name": "data-2",
					"user": "cumulus",
					"password": "*******",
					"loopback_address": "10.xx.xx.xx",
					"anycast_ip": "10.xx.xx.xx",
					"bgp_autonomous_system_num": "65002",
					"protocol": "vxlan"
				}
			]
		},
		"platform_management": {
			"operations_node": [
				{
					"hostname": "undercloudhost",
					"root_pw": "*******",
					"oam_ip": "10.xx.xx.xx",
					"customer_network_cidr": "10.xx.xx.xx/24",
					"customer_network_gw": "10.xx.xx.xx",
					"customer_network_ip": "10.xx.xx.xx",
					"dhcp_range": "10.xx.xx.xx-10.xx.xx.xx",
					"os_type_with_version": "RHEL 7.6",
					"iso_filepath": "/root/rhel-server-7.6-x86_64-dvd.iso"
				}
			],
			"dns_servers": [
				"10.xx.xx.xx"
			],
			"ntp_servers": [
				"10.xx.xx.xx",
				"10.xx.xx.xx"
			],
			"description": "Management elements configured",
			"timezone": "Asia/Kolkata",
			"custom_data": {
				"vim_version": "13",
				"vim_type": "rhosp"
			}
		}
	}
}