X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=src%2Fvnfd%2Fping_vnf%2Fping_vnfd.yaml;h=8888f50631471046d4e9a78f9b15c82779ab3f87;hb=e2289705282b355254b75897e3611cc02acc5734;hp=dd162db34ef5395c07aca56bf5d399c06a3e4bac;hpb=bb492464a9a48c63426c023148598bc82923acb9;p=osm%2Fdevops.git diff --git a/src/vnfd/ping_vnf/ping_vnfd.yaml b/src/vnfd/ping_vnf/ping_vnfd.yaml index dd162db3..8888f506 100644 --- a/src/vnfd/ping_vnf/ping_vnfd.yaml +++ b/src/vnfd/ping_vnf/ping_vnfd.yaml @@ -17,23 +17,65 @@ vnfd:vnfd-catalog: vnfd:vnfd: - - vnfd:connection-point: + - vnfd:id: rift_ping_vnf + vnfd:name: ping_vnf + vnfd:short-name: ping_vnf + vnfd:logo: rift_logo.png + vnfd:vendor: RIFT.io + vnfd:version: '1.0' + vnfd:description: This is an example RIFT.ware VNF + vnfd:config-parameter: + vnfd:config-parameter-request: + - vnfd:description: IP on which Pong service is listening + vnfd:name: pong_ip + vnfd:parameter: + - vnfd:config-primitive-name-ref: set-server + vnfd:config-primitive-parameter-ref: server-ip + - vnfd:description: Port on which Pong service is listening + vnfd:name: pong_port + vnfd:parameter: + - vnfd:config-primitive-name-ref: set-server + vnfd:config-primitive-parameter-ref: server-port + vnfd:config-parameter-source: + - vnfd:attribute: ../../../mgmt-interface, ip-address + vnfd:description: Management IP address + vnfd:name: mgmt_ip + vnfd:parameter: + - vnfd:config-primitive-name-ref: config + vnfd:config-primitive-parameter-ref: ssh-hostname + - vnfd:description: SSH username + vnfd:name: username + vnfd:parameter: + - vnfd:config-primitive-name-ref: config + vnfd:config-primitive-parameter-ref: ssh-username + vnfd:value: fedora + - vnfd:attribute: ../../../mgmt-interface/ssh-key, private-key-file + vnfd:description: SSH private key file + vnfd:name: ssh_key + vnfd:parameter: + - vnfd:config-primitive-name-ref: config + vnfd:config-primitive-parameter-ref: ssh-private-key + - vnfd:description: Rate of packet generation + vnfd:name: rate + vnfd:parameter: + - vnfd:config-primitive-name-ref: set-rate + vnfd:config-primitive-parameter-ref: rate + vnfd:value: '5' + vnfd:connection-point: - vnfd:name: ping_vnfd/cp0 vnfd:type: VPORT - vnfd:name: ping_vnfd/cp1 vnfd:type: VPORT - vnfd:description: This is an example RIFT.ware VNF vnfd:http-endpoint: - vnfd:path: api/v1/ping/stats vnfd:polling_interval_secs: '2' vnfd:port: '18888' - vnfd:id: 8759e766-8b99-11e6-9664-02b76030c497 - vnfd:logo: rift_logo.png vnfd:mgmt-interface: vnfd:dashboard-params: vnfd:path: api/v1/ping/stats vnfd:port: '18888' vnfd:port: '18888' + vnfd:ssh-key: 'true' vnfd:vdu-id: iovdu_0 vnfd:monitoring-param: - vnfd:description: no of ping requests @@ -54,20 +96,18 @@ vnfd:vnfd-catalog: vnfd:units: packets vnfd:value-type: INT vnfd:widget-type: COUNTER - vnfd:name: ping_vnfd vnfd:placement-groups: - vnfd:member-vdus: - vnfd:member-vdu-ref: iovdu_0 vnfd:name: Eris vnfd:requirement: Place this VM on the Kuiper belt object Eris vnfd:strategy: COLOCATION - vnfd:short-name: ping_vnfd vnfd:vdu: - vnfd:count: '1' vnfd:external-interface: - vnfd:name: eth0 vnfd:virtual-interface: - vnfd:type: OM-MGMT + vnfd:type: VIRTIO vnfd:vnfd-connection-point-ref: ping_vnfd/cp0 - vnfd:name: eth1 vnfd:virtual-interface: @@ -81,30 +121,44 @@ vnfd:vnfd-catalog: vnfd:memory-mb: '512' vnfd:storage-gb: '4' vnfd:vcpu-count: '1' - vnfd:vendor: RIFT.io - vnfd:version: '1.0' vnfd:vnf-configuration: - vnfd:config-attributes: - vnfd:config-delay: '0' - vnfd:config-priority: '2' - vnfd:config-template: "\n#!/bin/bash\n\n# Rest API config\nping_mgmt_ip=''\n\ - ping_mgmt_port=18888\n\n# VNF specific configuration\npong_server_ip=''\nping_rate=5\nserver_port=5555\n\n# Make rest API\ - \ calls to configure VNF\ncurl -D /dev/stdout \\\n -H \"Accept:\ - \ application/vnd.yang.data+xml\" \\\n -H \"Content-Type: application/vnd.yang.data+json\"\ - \ \\\n -X POST \\\n -d \"{\\\"ip\\\":\\\"$pong_server_ip\\\"\ - , \\\"port\\\":$server_port}\" \\\n http://${ping_mgmt_ip}:${ping_mgmt_port}/api/v1/ping/server\n\ - rc=$?\nif [ $rc -ne 0 ]\nthen\n echo \"Failed to set server info\ - \ for ping!\"\n exit $rc\nfi\n\ncurl -D /dev/stdout \\\n -H\ - \ \"Accept: application/vnd.yang.data+xml\" \\\n -H \"Content-Type:\ - \ application/vnd.yang.data+json\" \\\n -X POST \\\n -d \"{\\\ - \"rate\\\":$ping_rate}\" \\\n http://${ping_mgmt_ip}:${ping_mgmt_port}/api/v1/ping/rate\n\ - rc=$?\nif [ $rc -ne 0 ]\nthen\n echo \"Failed to set ping rate!\"\ - \n exit $rc\nfi\n\n\noutput=$(curl -D /dev/stdout \\\n -H \"\ - Accept: application/vnd.yang.data+xml\" \\\n -H \"Content-Type:\ - \ application/vnd.yang.data+json\" \\\n -X POST \\\n -d \"{\\\ - \"enable\\\":true}\" \\\n http://${ping_mgmt_ip}:${ping_mgmt_port}/api/v1/ping/adminstatus/state)\n\ - if [[ $output == *\"Internal Server Error\"* ]]\nthen\n echo $output\n\ - \ exit 3\nelse\n echo $output\nfi\n\nexit 0\n" - vnfd:script: - vnfd:script-type: bash + vnfd:config-primitive: + - vnfd:name: start + - vnfd:name: stop + - vnfd:name: restart + - vnfd:name: config + vnfd:parameter: + - vnfd:data-type: STRING + vnfd:name: ssh-hostname + - vnfd:data-type: STRING + vnfd:name: ssh-username + - vnfd:data-type: STRING + vnfd:name: ssh-private-key + - vnfd:data-type: STRING + vnfd:default-value: ping + vnfd:name: mode + vnfd:read-only: 'true' + - vnfd:name: set-server + vnfd:parameter: + - vnfd:data-type: STRING + vnfd:name: server-ip + - vnfd:data-type: INTEGER + vnfd:name: server-port + - vnfd:name: set-rate + vnfd:parameter: + - vnfd:data-type: INTEGER + vnfd:default-value: '5' + vnfd:name: rate + - vnfd:name: start-traffic + - vnfd:name: stop-traffic + vnfd:initial-config-primitive: + - vnfd:config-primitive-ref: config + vnfd:seq: '1' + - vnfd:config-primitive-ref: start + vnfd:seq: '2' + - vnfd:config-primitive-ref: set-server + vnfd:seq: '3' + - vnfd:config-primitive-ref: set-rate + vnfd:seq: '4' + vnfd:juju: + vnfd:charm: pingpong