1 description: Heat template that deploys PnP PNF simulator
2 heat_template_version: '2013-05-23'
4 flavor_name: {description: Type of instance (flavor) to be used, label: Flavor,
6 image_name: {description: Image to be used for compute instance, label: Image name
8 key_name: {description: Public/Private key pair name, label: Key pair name, type: string}
9 public_net_id: {description: Public network that enables remote connection to VNF,
10 label: Public network name or ID, type: string}
11 private_net_id: {type: string, description: Private network id, label: Private network name or ID}
12 private_subnet_id: {type: string, description: Private subnet id, label: Private subnetwork name or ID}
13 proxy: {type: string, description: Proxy, label: Proxy, default: ""}
16 type: OS::Nova::Server
18 key_name: { get_param: key_name }
19 image: { get_param: image_name }
20 flavor: { get_param: flavor_name }
22 - port: { get_resource: PNF_PnP_simualtor_port0 }
30 DOCKER_COMPOSE_VERSION=1.22.0
35 sed -i 's/PermitRootLogin.*/PermitRootLogin yes/' /etc/ssh/sshd_config
36 sed -i 's/PasswordAuthentication.*/PasswordAuthentication yes/' /etc/ssh/sshd_config
38 echo -e "arthur\narthur" | passwd root
42 dnf -y install fedora-upgrade
46 dnf -y remove docker \
48 docker-client-latest \
51 docker-latest-logrotate \
54 docker-engine-selinux \
58 docker_install_and_configure () {
59 dnf -y install dnf-plugins-core
62 https://download.docker.com/linux/fedora/docker-ce.repo
63 dnf -y install docker-ce
64 systemctl start docker
65 mkdir -p /etc/systemd/system/docker.service.d/
66 cat > /etc/systemd/system/docker.service.d/override.conf<< EOF
68 Environment="HTTP_PROXY=$proxy"
69 Environment="HTTPS_PROXY=$proxy"
71 systemctl daemon-reload
72 systemctl restart docker
74 docker_compose_install () {
75 curl -L https://github.com/docker/compose/releases/download/$DOCKER_COMPOSE_VERSION/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-compose
76 chmod +x /usr/local/bin/docker-compose
78 pnf_sim_file_checkout () {
79 cd /root; git clone https://gerrit.onap.org/r/integration
80 printf "{\n "simulatorParams": {\n "vesServerUrl": "http://VES-HOST:VES-PORT/eventListener/v7",\n "testDuration": "10",\n "messageInterval": "1"\n },\n "commonEventHeaderParams": {\n "eventName": "pnfRegistration_Nokia_5gDu",\n "nfNamingCode": "gNB",\n "nfcNamingCode": "oam",\n "sourceName": "NOK6061ZW3",\n "sourceId": "val13",\n "reportingEntityName": "NOK6061ZW3"\n },\n "pnfRegistrationParams": {\n "serialNumber": "6061ZW3",\n "vendorName": "Nokia",\n "oamV4IpAddress": "val3",\n "oamV6IpAddress": "val4",\n "unitFamily": "BBU",\n "modelNumber": "val6",\n "softwareVersion": "val7",\n "unitType": "val8"\n }\n}" > integration/test/mocks/pnfsimulator/config/config.json
84 docker login -u docker -p docker nexus3.onap.org:10003
85 cd ~/integration/test/mocks/pnfsimulator
93 docker_install_and_configure
94 docker_compose_install
98 $proxy: { get_param: proxy }
99 PNF_PnP_simualtor_port0:
100 type: OS::Neutron::Port
102 network_id: { get_param: private_net_id }
106 - subnet_id: { get_param: private_subnet_id }
107 PNF_PnP_simualtor_public:
108 type: OS::Neutron::FloatingIP
110 floating_network_id: { get_param: public_net_id }
111 port_id: { get_resource: PNF_PnP_simualtor_port0 }
113 PNF_PnP_simualtor_private_ip:
114 description: IP address of PNF_PnP_simualtor in private network
115 value: { get_attr: [ PNF_PnP_simualtor, first_address ] }
116 PNF_PnP_simualtor_public_ip:
117 description: Floating IP address of PNF_PnP_simualtor in public network
118 value: { get_attr: [ PNF_PnP_simualtor_public, floating_ip_address ] }