From 1a40722cd446af5416029dc0f3b371a835fa444c Mon Sep 17 00:00:00 2001 From: Morgan Richomme Date: Tue, 26 Jan 2016 15:03:44 +0100 Subject: Patch ODL scenario to support joid (different keystone and neutron API IP) JIRA: FUNCTEST-124 Change-Id: I84834fcb78e652f3b39696f0e17bf54cb5804559 Signed-off-by: Morgan Richomme --- .../CI/custom_tests/neutron/010__networks.robot | 56 ++++++++++++++++++++++ .../ODL/CI/custom_tests/neutron/020__subnets.robot | 56 ++++++++++++++++++++++ .../ODL/CI/custom_tests/neutron/030__ports.robot | 56 ++++++++++++++++++++++ .../CI/custom_tests/neutron/040__delete_ports.txt | 2 +- .../custom_tests/neutron/050__delete_subnets.txt | 2 +- .../custom_tests/neutron/060__delete_networks.txt | 2 +- testcases/Controllers/ODL/CI/start_tests.sh | 3 +- 7 files changed, 173 insertions(+), 4 deletions(-) create mode 100644 testcases/Controllers/ODL/CI/custom_tests/neutron/010__networks.robot create mode 100644 testcases/Controllers/ODL/CI/custom_tests/neutron/020__subnets.robot create mode 100644 testcases/Controllers/ODL/CI/custom_tests/neutron/030__ports.robot (limited to 'testcases') diff --git a/testcases/Controllers/ODL/CI/custom_tests/neutron/010__networks.robot b/testcases/Controllers/ODL/CI/custom_tests/neutron/010__networks.robot new file mode 100644 index 000000000..583a6a153 --- /dev/null +++ b/testcases/Controllers/ODL/CI/custom_tests/neutron/010__networks.robot @@ -0,0 +1,56 @@ +*** Settings *** +Documentation Checking Network created in OpenStack are pushed to OpenDaylight +Suite Setup Create Session OSSession http://${NEUTRON}:9696 headers=${X-AUTH} +Suite Teardown Delete All Sessions +Library SSHLibrary +Library Collections +Library OperatingSystem +Library RequestsLibrary +Library ../../../libraries/Common.py +Variables ../../../variables/Variables.py + +*** Variables *** +${ODLREST} /controller/nb/v2/neutron/networks +${OSREST} /v2.0/networks +${postNet} {"network":{"name":"odl_network","admin_state_up":true}} + +*** Test Cases *** +Check OpenStack Networks + [Documentation] Checking OpenStack Neutron for known networks + [Tags] Network Neutron OpenStack + Log ${X-AUTH} + ${resp} get OSSession ${OSREST} + Should be Equal As Strings ${resp.status_code} 200 + ${OSResult} To Json ${resp.content} + Set Suite Variable ${OSResult} + Log ${OSResult} + +Check OpenDaylight Networks + [Documentation] Checking OpenDaylight Neutron API for Known Networks + [Tags] Network Neutron OpenDaylight + Create Session ODLSession http://${CONTROLLER}:${PORT} headers=${HEADERS} auth=${AUTH} + ${resp} get ODLSession ${ODLREST} + Should be Equal As Strings ${resp.status_code} 200 + ${ODLResult} To Json ${resp.content} + Set Suite Variable ${ODLResult} + Log ${ODLResult} + +Create Network + [Documentation] Create new network in OpenStack + [Tags] Create Network OpenStack Neutron + Log ${postNet} + ${resp} post OSSession ${OSREST} data=${postNet} + Should be Equal As Strings ${resp.status_code} 201 + ${result} To JSON ${resp.content} + ${result} Get From Dictionary ${result} network + ${NETID} Get From Dictionary ${result} id + Log ${result} + Log ${NETID} + Set Global Variable ${NETID} + sleep 2 + +Check Network + [Documentation] Check Network created in OpenDaylight + [Tags] Check Network OpenDaylight + ${resp} get ODLSession ${ODLREST}/${NetID} + Should be Equal As Strings ${resp.status_code} 200 diff --git a/testcases/Controllers/ODL/CI/custom_tests/neutron/020__subnets.robot b/testcases/Controllers/ODL/CI/custom_tests/neutron/020__subnets.robot new file mode 100644 index 000000000..5f5b82440 --- /dev/null +++ b/testcases/Controllers/ODL/CI/custom_tests/neutron/020__subnets.robot @@ -0,0 +1,56 @@ +*** Settings *** +Documentation Checking Subnets created in OpenStack are pushed to OpenDaylight +Suite Setup Create Session OSSession http://${NEUTRON}:9696 headers=${X-AUTH} +Suite Teardown Delete All Sessions +Library SSHLibrary +Library Collections +Library OperatingSystem +Library RequestsLibrary +Library ../../../libraries/Common.py +Variables ../../../variables/Variables.py + +*** Variables *** +${ODLREST} /controller/nb/v2/neutron/subnets +${OSREST} /v2.0/subnets +${data} {"subnet":{"network_id":"${NETID}","ip_version":4,"cidr":"172.16.64.0/24","allocation_pools":[{"start":"172.16.64.20","end":"172.16.64.120"}]}} + +*** Test Cases *** +Check OpenStack Subnets + [Documentation] Checking OpenStack Neutron for known Subnets + [Tags] Subnets Neutron OpenStack + Log ${X-AUTH} + ${resp} get OSSession ${OSREST} + Should be Equal As Strings ${resp.status_code} 200 + ${OSResult} To Json ${resp.content} + Set Suite Variable ${OSResult} + Log ${OSResult} + +Check OpenDaylight subnets + [Documentation] Checking OpenDaylight Neutron API for Known Subnets + [Tags] Subnets Neutron OpenDaylight + Create Session ODLSession http://${CONTROLLER}:${PORT} headers=${HEADERS} auth=${AUTH} + ${resp} get ODLSession ${ODLREST} + Should be Equal As Strings ${resp.status_code} 200 + ${ODLResult} To Json ${resp.content} + Set Suite Variable ${ODLResult} + Log ${ODLResult} + +Create New subnet + [Documentation] Create new subnet in OpenStack + [Tags] Create Subnet OpenStack Neutron + Log ${data} + ${resp} post OSSession ${OSREST} data=${data} + Should be Equal As Strings ${resp.status_code} 201 + ${result} To JSON ${resp.content} + ${result} Get From Dictionary ${result} subnet + ${SUBNETID} Get From Dictionary ${result} id + Log ${result} + Log ${SUBNETID} + Set Global Variable ${SUBNETID} + sleep 2 + +Check New subnet + [Documentation] Check new subnet created in OpenDaylight + [Tags] Check subnet OpenDaylight + ${resp} get ODLSession ${ODLREST}/${SUBNETID} + Should be Equal As Strings ${resp.status_code} 200 diff --git a/testcases/Controllers/ODL/CI/custom_tests/neutron/030__ports.robot b/testcases/Controllers/ODL/CI/custom_tests/neutron/030__ports.robot new file mode 100644 index 000000000..8b75733b7 --- /dev/null +++ b/testcases/Controllers/ODL/CI/custom_tests/neutron/030__ports.robot @@ -0,0 +1,56 @@ +*** Settings *** +Documentation Checking Port created in OpenStack are pushed to OpenDaylight +Suite Setup Create Session OSSession http://${NEUTRON}:9696 headers=${X-AUTH} +Suite Teardown Delete All Sessions +Library SSHLibrary +Library Collections +Library OperatingSystem +Library RequestsLibrary +Library ../../../libraries/Common.py +Variables ../../../variables/Variables.py + +*** Variables *** +${ODLREST} /controller/nb/v2/neutron/ports +${OSREST} /v2.0/ports +${data} {"port":{"network_id":"${NETID}","admin_state_up": true}} + +*** Test Cases *** +Check OpenStack ports + [Documentation] Checking OpenStack Neutron for known ports + [Tags] Ports Neutron OpenStack + Log ${X-AUTH} + ${resp} get OSSession ${OSREST} + Should be Equal As Strings ${resp.status_code} 200 + ${OSResult} To Json ${resp.content} + Set Suite Variable ${OSResult} + Log ${OSResult} + +Check OpenDaylight ports + [Documentation] Checking OpenDaylight Neutron API for Known Ports + [Tags] Ports Neutron OpenDaylight + Create Session ODLSession http://${CONTROLLER}:${PORT} headers=${HEADERS} auth=${AUTH} + ${resp} get ODLSession ${ODLREST} + Should be Equal As Strings ${resp.status_code} 200 + ${ODLResult} To Json ${resp.content} + Set Suite Variable ${ODLResult} + Log ${ODLResult} + +Create New Port + [Documentation] Create new port in OpenStack + [Tags] Create port OpenStack Neutron + Log ${data} + ${resp} post OSSession ${OSREST} data=${data} + Should be Equal As Strings ${resp.status_code} 201 + ${result} To JSON ${resp.content} + ${result} Get From Dictionary ${result} port + ${PORTID} Get From Dictionary ${result} id + Log ${result} + Log ${PORTID} + Set Global Variable ${PORTID} + sleep 2 + +Check New Port + [Documentation] Check new subnet created in OpenDaylight + [Tags] Check subnet OpenDaylight + ${resp} get ODLSession ${ODLREST}/${PORTID} + Should be Equal As Strings ${resp.status_code} 200 diff --git a/testcases/Controllers/ODL/CI/custom_tests/neutron/040__delete_ports.txt b/testcases/Controllers/ODL/CI/custom_tests/neutron/040__delete_ports.txt index 02c90c37c..f10298839 100644 --- a/testcases/Controllers/ODL/CI/custom_tests/neutron/040__delete_ports.txt +++ b/testcases/Controllers/ODL/CI/custom_tests/neutron/040__delete_ports.txt @@ -1,6 +1,6 @@ *** Settings *** Documentation Checking Port deleted in OpenStack are deleted also in OpenDaylight -Suite Setup Create Session OSSession http://${OPENSTACK}:9696 headers=${X-AUTH} +Suite Setup Create Session OSSession http://${NEUTRON}:9696 headers=${X-AUTH} Suite Teardown Delete All Sessions Library SSHLibrary Library Collections diff --git a/testcases/Controllers/ODL/CI/custom_tests/neutron/050__delete_subnets.txt b/testcases/Controllers/ODL/CI/custom_tests/neutron/050__delete_subnets.txt index 4121c98fe..fb619825b 100644 --- a/testcases/Controllers/ODL/CI/custom_tests/neutron/050__delete_subnets.txt +++ b/testcases/Controllers/ODL/CI/custom_tests/neutron/050__delete_subnets.txt @@ -1,6 +1,6 @@ *** Settings *** Documentation Checking Subnets deleted in OpenStack are deleted also in OpenDaylight -Suite Setup Create Session OSSession http://${OPENSTACK}:9696 headers=${X-AUTH} +Suite Setup Create Session OSSession http://${NEUTRON}:9696 headers=${X-AUTH} Suite Teardown Delete All Sessions Library SSHLibrary Library Collections diff --git a/testcases/Controllers/ODL/CI/custom_tests/neutron/060__delete_networks.txt b/testcases/Controllers/ODL/CI/custom_tests/neutron/060__delete_networks.txt index fc823fa4b..528fbfca2 100644 --- a/testcases/Controllers/ODL/CI/custom_tests/neutron/060__delete_networks.txt +++ b/testcases/Controllers/ODL/CI/custom_tests/neutron/060__delete_networks.txt @@ -1,6 +1,6 @@ *** Settings *** Documentation Checking Network deleted in OpenStack are deleted also in OpenDaylight -Suite Setup Create Session OSSession http://${OPENSTACK}:9696 headers=${X-AUTH} +Suite Setup Create Session OSSession http://${NEUTRON}:9696 headers=${X-AUTH} Suite Teardown Delete All Sessions Library SSHLibrary Library Collections diff --git a/testcases/Controllers/ODL/CI/start_tests.sh b/testcases/Controllers/ODL/CI/start_tests.sh index 4d600224e..5b45a2e92 100755 --- a/testcases/Controllers/ODL/CI/start_tests.sh +++ b/testcases/Controllers/ODL/CI/start_tests.sh @@ -51,6 +51,7 @@ ODL_PORT=${ODL_PORT:-8081} USR_NAME=${USR_NAME:-'neutron'} PASS=${PASS:-'octopus'} NEUTRON_IP=${NEUTRON_IP:-192.168.0.68} +KEYSTONE_IP=${NEUTRON_IP:-192.168.0.69} set +x init_file=${REPO_DIR}/test/csit/suites/openstack/neutron/__init__.robot @@ -80,7 +81,7 @@ do ((test_num++)) echo -e "${light_green}Starting test: $line ${nc}" - pybot -v OPENSTACK:${NEUTRON_IP} -v PORT:${ODL_PORT} -v CONTROLLER:${ODL_IP} ${REPO_DIR}/$line + pybot -v OPENSTACK:${KEYSTONE_IP} -v NEUTRON:${NEUTRON_IP} -v PORT:${ODL_PORT} -v CONTROLLER:${ODL_IP} ${REPO_DIR}/$line mkdir -p $RESULTS_DIR/logs/${test_num} mv log.html $RESULTS_DIR/logs/${test_num}/ mv report.html $RESULTS_DIR/logs/${test_num}/ -- cgit 1.2.3-korg