parameters:

  ##############################################
  #                                            #
  # Parameters used across all ONAP components #
  #                                            #
  ##############################################

  public_net_id: 3a6247f1-fac6-4167-a49f-33cc8415ccf4

  public_net_name: provider

  ubuntu_1404_image: trusty

  ubuntu_1604_image: xenial

  flavor_small: m1.small

  flavor_medium: m1.medium

  flavor_large: m1.large

  flavor_xlarge: m1.xlarge

  flavor_xxlarge: m1.2xlarge

  vm_base_name: onap

  key_name: onap_key

  pub_key: ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDKXDgoo3+WOqcUG8/5uUbk81+yczgwC4Y8ywTmuQqbNxlY1oQ0YxdMUqUnhitSXs5S/yRuAVOYHwGg2mCs20oAINrP+mxBI544AMIb9itPjCtgqtE2EWo6MmnFGbHB4Sx3XioE7F4VPsh7japsIwzOjbrQe+Mua1TGQ5d4nfEOQaaglXLLPFfuc7WbhbJbK6Q7rHqZfRcOwAMXgDoBqlyqKeiKwnumddo2RyNT8ljYmvB6buz7KnMinzo7qB0uktVT05FH9Rg0CTWH5norlG5qXgP2aukL0gk1ph8iAt7uYLf1ktp+LJI2gaF6L0/qli9EmVCSLr1uJ38Q8CBflhkh

  nexus_repo: https://nexus.onap.org/content/sites/raw

  nexus_docker_repo: docker-proxy.neo.futurewei.com:5000

  nexus_username: anonymous

  nexus_password: anonymous

  dmaap_topic: AUTO

  artifacts_version: 1.1.1

  openstack_tenant_id: ${OS_PROJECT_ID}

  openstack_tenant_name: ${OS_PROJECT_NAME}

  openstack_username: ${OS_USERNAME}

  openstack_api_key: ${OS_PASSWORD}

  openstack_auth_method: password

  openstack_region: RegionOne

  horizon_url: http://controller.neo.futurewei.com/horizon

  keystone_url: http://controller.neo.futurewei.com:5000

  cloud_env: RegionOne


  ######################
  #                    #
  # Network parameters #
  #                    #
  ######################

  dns_list: ["10.145.122.117", "10.145.122.118"]
  external_dns: 10.145.122.118
  dns_forwarder: 10.145.122.117
  oam_network_cidr: 172.16.0.0/16

  ### Private IP addresses ###

  aai1_ip_addr: 172.16.1.1
  aai2_ip_addr: 172.16.1.2
  appc_ip_addr: 172.16.2.1
  dcae_ip_addr: 172.16.4.1
  dns_ip_addr: 172.16.100.1
  so_ip_addr: 172.16.5.1
  mr_ip_addr: 172.16.11.1
  policy_ip_addr: 172.16.6.1
  portal_ip_addr: 172.16.9.1
  robot_ip_addr: 172.16.10.1
  sdc_ip_addr: 172.16.3.1
  sdnc_ip_addr: 172.16.7.1
  vid_ip_addr: 172.16.8.1
  clamp_ip_addr: 172.16.12.1
  openo_ip_addr: 172.16.14.1

  ###########################
  #                         #
  # Parameters used by DCAE #
  #                         #
  ###########################

  dnsaas_config_enabled: true
  dnsaas_region: RegionOne
  dnsaas_keystone_url: http://10.12.25.5:5000/v3
  dnsaas_tenant_name: ${OS_PROJECT_NAME}
  dnsaas_username: ${OS_USERNAME}
  dnsaas_password: ${OS_PASSWORD}
  dcae_keystone_url: "http://172.16.14.1/api/multicloud-titanium_cloud/v0/pod25_RegionOne/identity/v2.0"
  dcae_centos_7_image: centos7
  dcae_domain: dcaeg2.onap.org
  dcae_public_key: ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDKXDgoo3+WOqcUG8/5uUbk81+yczgwC4Y8ywTmuQqbNxlY1oQ0YxdMUqUnhitSXs5S/yRuAVOYHwGg2mCs20oAINrP+mxBI544AMIb9itPjCtgqtE2EWo6MmnFGbHB4Sx3XioE7F4VPsh7japsIwzOjbrQe+Mua1TGQ5d4nfEOQaaglXLLPFfuc7WbhbJbK6Q7rHqZfRcOwAMXgDoBqlyqKeiKwnumddo2RyNT8ljYmvB6buz7KnMinzo7qB0uktVT05FH9Rg0CTWH5norlG5qXgP2aukL0gk1ph8iAt7uYLf1ktp+LJI2gaF6L0/qli9EmVCSLr1uJ38Q8CBflhkh
  dcae_private_key: '-----BEGIN RSA PRIVATE KEY-----\n
MIIEpQIBAAKCAQEAylw4KKN/ljqnFBvP+blG5PNfsnM4MAuGPMsE5rkKmzcZWNaE\n
NGMXTFKlJ4YrUl7OUv8kbgFTmB8BoNpgrNtKACDaz/psQSOeOADCG/YrT4wrYKrR\n
NhFqOjJpxRmxweEsd14qBOxeFT7Ie42qbCMMzo260HvjLmtUxkOXeJ3xDkGmoJVy\n
yzxX7nO1m4WyWyukO6x6mX0XDsADF4A6AapcqinoisJ7pnXaNkcjU/JY2Jrwem7s\n
+ypzIp86O6gdLpLVU9ORR/UYNAk1h+Z6K5Rual4D9mrpC9IJNaYfIgLe7mC39ZLa\n
fiySNoGhei9P6pYvRJlQki69bid/EPAgX5YZIQIDAQABAoIBAQClDekkhI9ZqseC\n
qFjPuKaxsizZMg+faJb6WSHLSxzyk1OSWY6F6FklgLeC8HW/fuLNYZyGOYDEsG20\n
lMqL02Wdiy7OutS3oOS5iyzIf9a90HfFJi706el6RIpvINETcaXCS0T8tQrcS1Rd\n
KqTaBRC6HXJGAPbBcvw3pwQSdskatU6a/Kt2a3x6DsqqinQcgEB/SbrDaJCUX9sb\n
F2HVUwdq7aZK1Lk0ozr1FID9mrhjwWuQ6XC+vjG0FqtyXeMpR5iaQ73hex3FXQ8z\n
OjkFbMwuHWSh1DSx70r5yFrrBqwQKnMsBqx4QDRf3fIENUnWviaL+n+gwcXA07af\n
4kaNUFUtAoGBAPuNNRAGhZnyZ9zguns9PM56nmeMUikV5dPN2DTbQb79cpfV+7pC\n
6PeSH/dTKFLz62d6qAM2EsNXQvewf8fipBVBRPsRqKOv+uepd01dHNy62I5B+zRm\n
be9Kbe+EN60qdzvyPM+2hV6CnvGv1dirimS9pu6RrxD2Rmz1ectnJE+rAoGBAM3w\n
UbSEemyZ6EKjck2RfdipzY0MNBnIZ2cUqHh8mmPXjdTLzpXb9vmPbHb01Qwo8MP+\n
gMnTbTBOzyNAaHdIrCO9FHW6C85j3ot5Yzcr+EcBVcua+7KHU0Sgn44JNH8DisJ7\n
Y63UP/1Xb4d1/QvHfxYy3WOvvRdVZ7pPo8JNX95jAoGAIe5CIg8/JizUZa7KeKUh\n
9pgDleQPkQsrHQ6/AyIwFBsLwf9THSS5V+uV9D57SfUs46Bf2U8J6N90YQSlt8iS\n
aWuManFPVgT+yxDIzt6obf2mCEpOIBtQ6N4ZRh2HhQwdWTCrkzkDdGQaHG+jYL6C\n
xGPwiG2ON7OAfGIAM7eN5lECgYEAhoRLWlaOgRGnHKAWsYQvZ67CjTdDcPPuVu6v\n
fMQnNMA/7JeTwV+E205L0wfpgZ/cZKmBBlQMJlnUA3q2wfO+PTnse1mjDJU/cGtB\n
22/lJLxChlQdxGeQhGtGzUhF+hEeOhrO6WSSx7CtMRZoy6Dr6lwfMFZCdVNcBd6v\n
YOOZk3ECgYEAseUKGb6E80XTVVNziyuiVbQCsI0ZJuRfqMZ2IIDQJU9u6AnGAway\n
itqHbkGsmDT+4HUz01+1JKnnw42RdSrHdU/LaOonD+RIGqe2x800QXzqASKLdCXr\n
y7RoiFqJtkdFQykzJemA+xOXvHLgKi/MXFsU90PCD0VJKLj8vwpX78Y=\n
-----END RSA PRIVATE KEY-----'

  ################################
  #                              #
  # Docker versions and branches #
  # Rest of the file will be autogenerated from demo repo
  #                              #
  ################################
