diff --git a/tests/drs-disabled/jenkins-drs-disabled-run.sh b/tests/drs-disabled/jenkins-drs-disabled-run.sh
new file mode 100755
index 0000000000..491d6332ae
--- /dev/null
+++ b/tests/drs-disabled/jenkins-drs-disabled-run.sh
@@ -0,0 +1,81 @@
+#!/bin/bash
+# Copyright 2018 VMware, Inc. All Rights Reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+input=$(gsutil ls -l gs://vic-engine-builds/vic_* | grep -v TOTAL | sort -k2 -r | head -n1 | xargs | cut -d ' ' -f 3 | cut -d '/' -f 4)
+
+n=0
+ until [ $n -ge 5 ]
+ do
+ echo "Retry.. $n"
+ echo "Downloading gcp file $input"
+ wget https://storage.googleapis.com/vic-engine-builds/$input
+ if [ -f "$input" ]
+ then
+ echo "File found.."
+ break
+ else
+ echo "File NOT found"
+ fi
+ n=$[$n+1]
+ sleep 15
+ done
+
+n=0
+ until [ $n -ge 5 ]
+ do
+ mkdir vic/bin
+ echo "Extracting .tar.gz"
+ tar xvzf $input -C vic/bin --strip 1
+ if [ -f "vic/bin/vic-machine-linux" ]
+ then
+ echo "tar extraction complete.."
+ canContinue="Yes"
+ break
+ else
+ echo "tar extraction failed"
+ canContinue="No"
+ rm -rf vic/bin
+ fi
+ n=$[$n+1]
+ sleep 15
+ done
+
+if [[ $canContinue = "No" ]]; then
+ echo "Tarball extraction failed..quitting the run"
+ break
+else
+ echo "Tarball extraction passed, Running nightlies test.."
+fi
+
+# Run the Robot tests in a container
+envfile="vic-internal/drs-disabled-secrets.list"
+image="gcr.io/eminent-nation-87317/vic-integration-test:1.48"
+cmd="pabot --processes 1 --removekeywords TAG:secret -d drs-disabled tests/manual-test-cases/Group19-DRS-Disabled"
+docker run --rm -v $PWD/vic:/go --env-file $envfile $image $cmd
+
+# Remove the VIC binary tar file
+rm $input
+
+cat vic/drs-disabled/pabot_results/*/stdout.txt | grep -E '::|\.\.\.' | grep -E 'PASS|FAIL' > console.log
+
+# Format the email output for Jenkins
+sed -i -e 's/^/
/g' console.log
+sed -i -e 's|PASS|PASS|g' console.log
+sed -i -e 's|FAIL|FAIL|g' console.log
+
+# Run the log upload script in a container
+cmd="tests/drs-disabled/upload-logs.sh"
+docker run --rm -e BUILD_TIMESTAMP -v $PWD/vic:/go --env-file $envfile $image $cmd
+
diff --git a/tests/drs-disabled/upload-logs.sh b/tests/drs-disabled/upload-logs.sh
new file mode 100755
index 0000000000..83f98a167e
--- /dev/null
+++ b/tests/drs-disabled/upload-logs.sh
@@ -0,0 +1,56 @@
+#!/bin/bash
+# Copyright 2016-2018 VMware, Inc. All Rights Reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+echo "Upload drs-disabled test logs"
+
+set -x
+gsutil version -l
+set +x
+
+outfile="vic_drs_disabled_logs_"$BUILD_TIMESTAMP".zip"
+echo $outfile
+
+/usr/bin/zip -9 -r $outfile drs-disabled *.zip *.log *.debug *.tgz
+
+# GC credentials
+keyfile=~/vic-drs-disabled-logs.key
+botofile=~/.boto
+if [ ! -f $keyfile ]; then
+ echo -en $GS_PRIVATE_KEY > $keyfile
+ chmod 400 $keyfile
+fi
+if [ ! -f $botofile ]; then
+ echo "[Credentials]" >> $botofile
+ echo "gs_service_key_file = $keyfile" >> $botofile
+ echo "gs_service_client_id = $GS_CLIENT_EMAIL" >> $botofile
+ echo "[GSUtil]" >> $botofile
+ echo "content_language = en" >> $botofile
+ echo "default_project_id = $GS_PROJECT_ID" >> $botofile
+fi
+
+if [ -f "$outfile" ]; then
+ gsutil cp $outfile gs://vic-drs-disabled-logs
+ echo "----------------------------------------------"
+ echo "Download test logs here:"
+ echo "https://console.cloud.google.com/m/cloudstorage/b/vic-drs-disabled-logs/o/$outfile?authuser=1"
+ echo "----------------------------------------------"
+else
+ echo "No log output file to upload"
+fi
+
+if [ -f "$keyfile" ]; then
+ rm -f $keyfile
+fi
diff --git a/tests/manual-test-cases/Group13-vMotion/13-1-vMotion-VCH-Appliance.robot b/tests/manual-test-cases/Group13-vMotion/13-1-vMotion-VCH-Appliance.robot
index bbea1af144..be87812278 100644
--- a/tests/manual-test-cases/Group13-vMotion/13-1-vMotion-VCH-Appliance.robot
+++ b/tests/manual-test-cases/Group13-vMotion/13-1-vMotion-VCH-Appliance.robot
@@ -15,7 +15,7 @@
*** Settings ***
Documentation Test 13-1 - vMotion VCH Appliance
Resource ../../resources/Util.robot
-Suite Setup Wait Until Keyword Succeeds 10x 10m Create a VSAN Cluster vic-vmotion-13-1
+Suite Setup Nimbus Suite Setup Create a VSAN Cluster vic-vmotion-13-1
Suite Teardown Run Keyword And Ignore Error Nimbus Cleanup ${list}
Test Teardown Run Keyword If Test Failed Gather All vSphere Logs
diff --git a/tests/manual-test-cases/Group13-vMotion/13-2-vMotion-Container.robot b/tests/manual-test-cases/Group13-vMotion/13-2-vMotion-Container.robot
index ab4b640dbf..7a8f4e103e 100644
--- a/tests/manual-test-cases/Group13-vMotion/13-2-vMotion-Container.robot
+++ b/tests/manual-test-cases/Group13-vMotion/13-2-vMotion-Container.robot
@@ -15,7 +15,7 @@
*** Settings ***
Documentation Test 13-2 - vMotion Container
Resource ../../resources/Util.robot
-Suite Setup Wait Until Keyword Succeeds 10x 10m Create a VSAN Cluster vic-vmotion-13-2
+Suite Setup Nimbus Suite Setup Create a VSAN Cluster vic-vmotion-13-2
Suite Teardown Run Keyword And Ignore Error Nimbus Cleanup ${list}
Test Teardown Run Keyword If Test Failed Gather All vSphere Logs
diff --git a/tests/manual-test-cases/Group19-DRS-Disabled/19-3-DRS-Disabled-Placement.robot b/tests/manual-test-cases/Group19-DRS-Disabled/19-3-DRS-Disabled-Placement.robot
index b077b0d839..e7d3a77038 100644
--- a/tests/manual-test-cases/Group19-DRS-Disabled/19-3-DRS-Disabled-Placement.robot
+++ b/tests/manual-test-cases/Group19-DRS-Disabled/19-3-DRS-Disabled-Placement.robot
@@ -49,13 +49,14 @@ Teardown VCH And Cleanup Nimbus
Run Keyword And Ignore Error Nimbus Cleanup ${list}
*** Test Cases ***
-
# TODO(jzt): we need to test against a single ESX host
Simple Placement
- Set Environment Variable GOVC_URL ${vc1-ip}
- Set Environment Variable TEST_URL_ARRAY ${vc1-ip}
- Set Environment Variable TEST_RESOURCE cls3
+ # TODO(anchal): these are currently set to the static testbed in the secrets file.
+ # Set Environment Variable GOVC_URL ${vc1-ip}
+ # Set Environment Variable TEST_URL_ARRAY ${vc1-ip}
+ # Set Environment Variable TEST_RESOURCE cls3
+
Set Environment Variable TEST_TIMEOUT 30m
Log To Console Deploy VIC to the VC cluster
diff --git a/tests/manual-test-cases/Group19-DRS-Disabled/19-4-DRS-Disabled-License-Features.md b/tests/manual-test-cases/Group19-DRS-Disabled/19-4-DRS-Disabled-License-Features.md
index 2167352e5e..824e7055bb 100644
--- a/tests/manual-test-cases/Group19-DRS-Disabled/19-4-DRS-Disabled-License-Features.md
+++ b/tests/manual-test-cases/Group19-DRS-Disabled/19-4-DRS-Disabled-License-Features.md
@@ -2,31 +2,26 @@ Test 19-4 - DRS Disabled License Features
=======
# Purpose:
-To verify that the license and feature checks required for a ROBO Advanced environment are displayed and updated on VCH Admin.
+To verify that vic-machine create checks for the DRS setting and command flags specific to resource pools in a vSphere environment without DRS, such as a ROBO deployment. If a VCH is being installed in a DRS-disabled environment, vic-machine create should warn that DRS is disabled and mention that any resource pool options supplied in the command will be ignored as they are not applicable in this environment.
# References:
1. [vSphere Remote Office and Branch Office](http://www.vmware.com/products/vsphere/remote-office-branch-office.html)
2. [Provide License and Feature Check](https://github.com/vmware/vic/issues/7277)
-3. [vic-admin to report on license and feature compliance](https://github.com/vmware/vic/issues/7276)
+3. [vic-machine to provide license and feature check](https://github.com/vmware/vic/issues/7275)
# Environment:
-This test requires access to VMware Nimbus cluster for dynamic ESXi and vCenter creation. This test should be executed in the following topologies and should have vSAN enabled.
-* 1 vCenter host with 3 clusters, where 1 cluster has 1 ESXi host and the other 2 clusters have 3 ESXi hosts each
-* 2 vCenter hosts connected with ELM, where each vCenter host has a cluster/host/datacenter topology that emulates a customer environment (exact topology TBD)
+This test requires access to VMware Nimbus cluster for dynamic ESXi and vCenter creation. This test should be executed in a vCenter environment with a cluster that has DRS turned off.
See https://confluence.eng.vmware.com/display/CNA/VIC+ROBO for more details.
# Test Steps:
-1. Deploy a ROBO Advanced vCenter testbed for both environments above
-2. Install a VCH on vCenter
-3. Visit the VCH Admin page and verify that the License and Feature Status sections show that required license and features are present
-4. Assign a more restrictive license such as ROBO Standard or Standard that does not have the required features (VDS, VSPC) to vCenter
-5. Assign the above license to each of the hosts within the vCenter cluster
-6. Refresh the VCH Admin page and verify that the License and Feature Status sections show that required license and features are not present
-7. Delete the VCH
+1. Deploy a vCenter testbed with DRS disabled
+2. Using vic-machine create, install a VCH with compute resource set to the cluster where DRS is off. Also supply options that are specific to resource pools: cpu, cpu-shares, cpu-reservation, memory, memory-shares and memory-reservation.
+3. Delete the VCH
# Expected Outcome:
* All test steps should complete without error
+* Step 2's output should contain a message stating that DRS is disabed and that the provided resource pool options will be ignored.
# Possible Problems:
None
diff --git a/tests/manual-test-cases/Group19-DRS-Disabled/19-4-DRS-Disabled-License-Features.robot b/tests/manual-test-cases/Group19-DRS-Disabled/19-4-DRS-Disabled-License-Features.robot
new file mode 100644
index 0000000000..2154d06d81
--- /dev/null
+++ b/tests/manual-test-cases/Group19-DRS-Disabled/19-4-DRS-Disabled-License-Features.robot
@@ -0,0 +1,31 @@
+# Copyright 2018 VMware, Inc. All Rights Reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License
+
+*** Settings ***
+Documentation Test 19-4 - DRS-Disabled-License-Features
+Resource ../../resources/Util.robot
+Suite Teardown Cleanup VIC Appliance On Test Server
+
+*** Test Cases ***
+vic-machine create checks DRS setting and RP options
+ Set Environment Variable TEST_TIMEOUT 30m
+
+ ${output}= Install VIC Appliance To Test Server additional-args=--memory 8000 --memory-reservation 512 --memory-shares 6000 --cpu 10000 --cpu-reservation 512 --cpu-shares high
+ Should Contain ${output} DRS is recommended, but is disabled
+ Should Contain ${output} Memory Limit
+ Should Contain ${output} Memory Reservation
+ Should Contain ${output} Memory Shares
+ Should Contain ${output} CPU Limit
+ Should Contain ${output} CPU Reservation
+ Should Contain ${output} CPU Shares
diff --git a/tests/manual-test-cases/Group21-Registries/21-1-Whitelist.robot b/tests/manual-test-cases/Group21-Registries/21-1-Whitelist.robot
index da714f460a..4476f7498a 100644
--- a/tests/manual-test-cases/Group21-Registries/21-1-Whitelist.robot
+++ b/tests/manual-test-cases/Group21-Registries/21-1-Whitelist.robot
@@ -16,7 +16,7 @@
Documentation Test 21-01 - Whitelist
Resource ../../resources/Util.robot
Resource ../../resources/Harbor-Util.robot
-Suite Setup Wait Until Keyword Succeeds 10x 10m Setup Harbor
+Suite Setup Nimbus Suite Setup Setup Harbor
Suite Teardown Nimbus Cleanup ${list} ${false}
Test Teardown Run Keyword If Test Failed Cleanup VIC Appliance On Test Server
@@ -42,6 +42,7 @@ Setup Harbor
Simple ESXi Setup
# Install a Harbor server with HTTPS a Harbor server with HTTP
+ Run Keyword and Ignore Error Remove File ${HARBOR_VERSION}.ova
Install Harbor To Test Server protocol=https name=harbor-https
Set Environment Variable HTTPS_HARBOR_IP %{HARBOR-IP}
diff --git a/tests/manual-test-cases/Group21-Registries/21-2-Artifactory.robot b/tests/manual-test-cases/Group21-Registries/21-2-Artifactory.robot
index c70fc900c4..b0974f6ba2 100644
--- a/tests/manual-test-cases/Group21-Registries/21-2-Artifactory.robot
+++ b/tests/manual-test-cases/Group21-Registries/21-2-Artifactory.robot
@@ -15,7 +15,7 @@
*** Settings ***
Documentation Test 21-2 - Artifactory
Resource ../../resources/Util.robot
-Suite Setup Wait Until Keyword Succeeds 10x 10m Artifactory Setup
+Suite Setup Nimbus Suite Setup Artifactory Setup
Suite Teardown Run Keyword And Ignore Error Nimbus Cleanup ${list}
*** Keywords ***
diff --git a/tests/manual-test-cases/Group5-Functional-Tests/5-1-Distributed-Switch.robot b/tests/manual-test-cases/Group5-Functional-Tests/5-1-Distributed-Switch.robot
index ba06059830..bdf0a92b19 100644
--- a/tests/manual-test-cases/Group5-Functional-Tests/5-1-Distributed-Switch.robot
+++ b/tests/manual-test-cases/Group5-Functional-Tests/5-1-Distributed-Switch.robot
@@ -15,7 +15,7 @@
*** Settings ***
Documentation Test 5-1 - Distributed Switch
Resource ../../resources/Util.robot
-Suite Setup Wait Until Keyword Succeeds 10x 10m Distributed Switch Setup
+Suite Setup Nimbus Suite Setup Distributed Switch Setup
Suite Teardown Run Keyword And Ignore Error Nimbus Cleanup ${list}
*** Variables ***
@@ -62,7 +62,7 @@ Distributed Switch Setup
:FOR ${IDX} IN RANGE ${esx_number}
\ ${out}= Run govc host.add -hostname=@{esx_ips}[${IDX}] -username=root -dc=${datacenter} -password=${NIMBUS_ESX_PASSWORD} -noverify=true
\ Should Contain ${out} OK
- \ Wait Until Keyword Succeeds 5x 15 seconds Add Host To Distributed Switch @{esx_ips}[${IDX}]
+ \ Add Host To Distributed Switch @{esx_ips}[${IDX}]
Log To Console Deploy VIC to the VC cluster
Set Environment Variable TEST_URL_ARRAY ${vc_ip}
diff --git a/tests/manual-test-cases/Group5-Functional-Tests/5-10-Multiple-Datacenter.robot b/tests/manual-test-cases/Group5-Functional-Tests/5-10-Multiple-Datacenter.robot
index e31246b970..1e929d2d1b 100644
--- a/tests/manual-test-cases/Group5-Functional-Tests/5-10-Multiple-Datacenter.robot
+++ b/tests/manual-test-cases/Group5-Functional-Tests/5-10-Multiple-Datacenter.robot
@@ -15,7 +15,7 @@
*** Settings ***
Documentation Test 5-10 - Multiple Datacenters
Resource ../../resources/Util.robot
-Suite Setup Wait Until Keyword Succeeds 10x 10m Multiple Datacenter Setup
+Suite Setup Nimbus Suite Setup Multiple Datacenter Setup
Suite Teardown Run Keyword And Ignore Error Nimbus Cleanup ${list}
*** Keywords ***
diff --git a/tests/manual-test-cases/Group5-Functional-Tests/5-11-Multiple-Cluster.robot b/tests/manual-test-cases/Group5-Functional-Tests/5-11-Multiple-Cluster.robot
index 92b50d1ec6..0951f3970c 100644
--- a/tests/manual-test-cases/Group5-Functional-Tests/5-11-Multiple-Cluster.robot
+++ b/tests/manual-test-cases/Group5-Functional-Tests/5-11-Multiple-Cluster.robot
@@ -15,66 +15,47 @@
*** Settings ***
Documentation Test 5-11 - Multiple Clusters
Resource ../../resources/Util.robot
-Suite Setup Wait Until Keyword Succeeds 10x 10m Multiple Cluster Setup
-Suite Teardown Run Keyword And Ignore Error Nimbus Cleanup ${list}
+Suite Setup Nimbus Suite Setup Multiple Cluster Setup
+Suite Teardown Run Keyword And Ignore Error Nimbus Cleanup Single VM '*5-11-multiple-cluster*' ${false}
+Test Teardown Cleanup VIC Appliance On Test Server
*** Keywords ***
-# Insert elements from dict2 into dict1, overwriting conflicts in dict1 & returning new dict
-Combine Dictionaries
- [Arguments] ${dict1} ${dict2}
- ${dict2keys}= Get Dictionary Keys ${dict2}
- :FOR ${key} IN @{dict2keys}
- \ ${elem}= Get From Dictionary ${dict2} ${key}
- \ Set To Dictionary ${dict1} ${key} ${elem}
- [Return] ${dict1}
-
Multiple Cluster Setup
[Timeout] 110 minutes
- Run Keyword And Ignore Error Nimbus Cleanup ${list} ${false}
- &{esxes}= Create Dictionary
- ${num_of_esxes}= Evaluate 2
- :FOR ${i} IN RANGE 3
- # Deploy some ESXi instances
- \ &{new_esxes}= Deploy Multiple Nimbus ESXi Servers in Parallel ${num_of_esxes} %{NIMBUS_USER} %{NIMBUS_PASSWORD}
- \ ${esxes}= Combine Dictionaries ${esxes} ${new_esxes}
-
- # Investigate to see how many were actually deployed
- \ ${len}= Get Length ${esxes}
- \ ${num_of_esxes}= Evaluate ${num_of_esxes} - ${len}
-
- # Exit if we've got enough & continue loop if we don't
- \ Exit For Loop If ${len} >= 2
- \ Log To Console Only got ${len} ESXi instance(s); Trying again
-
- @{esx-names}= Get Dictionary Keys ${esxes}
- @{esx-ips}= Get Dictionary Values ${esxes}
- ${esx1}= Get From List ${esx-names} 0
- ${esx2}= Get From List ${esx-names} 1
- ${esx1-ip}= Get From List ${esx-ips} 0
- ${esx2-ip}= Get From List ${esx-ips} 1
-
- ${esx3} ${esx4} ${esx5} ${vc} ${esx3-ip} ${esx4-ip} ${esx5-ip} ${vc-ip}= Create a Simple VC Cluster datacenter1 cls1
- Set Suite Variable @{list} ${esx1} ${esx2} ${esx3} ${esx4} ${esx5} %{NIMBUS_USER}-${vc}
-
- Log To Console Create cluster2 on the VC
- ${out}= Run govc cluster.create cls2
- Should Be Empty ${out}
- ${out}= Run govc cluster.add -hostname=${esx1-ip} -username=root -dc=datacenter1 -cluster=cls2 -password=e2eFunctionalTest -noverify=true
- Should Contain ${out} OK
-
- Log To Console Create cluster3 on the VC
- ${out}= Run govc cluster.create cls3
- Should Be Empty ${out}
- ${out}= Run govc cluster.add -hostname=${esx2-ip} -username=root -dc=datacenter1 -cluster=cls3 -password=e2eFunctionalTest -noverify=true
- Should Contain ${out} OK
+ Run Keyword And Ignore Error Nimbus Cleanup Single VM '*5-11-multiple-cluster*' ${false}
+ Log To Console \nStarting testbed deploy...
+ ${out}= Deploy Nimbus Testbed %{NIMBUS_USER} %{NIMBUS_PASSWORD} spec=vic-multiple-cluster.rb args=--noSupportBundles --plugin testng --vcvaBuild ${VC_VERSION} --esxBuild ${ESX_VERSION} --testbedName vic-multiple-cluster --runName 5-11-multiple-cluster
+ Log ${out}
+
+ Open Connection %{NIMBUS_GW}
+ Wait Until Keyword Succeeds 10 min 30 sec Login %{NIMBUS_USER} %{NIMBUS_PASSWORD}
+ ${vc-ip}= Get IP 5-11-multiple-cluster.vc.0
+ Close Connection
+
+ Log To Console Set environment variables up for GOVC
+ Set Environment Variable GOVC_URL ${vc-ip}
+ Set Environment Variable GOVC_USERNAME Administrator@vsphere.local
+ Set Environment Variable GOVC_PASSWORD Admin\!23
+
+ Log To Console Deploy VIC to the VC cluster
+ Set Environment Variable TEST_URL_ARRAY ${vc-ip}
+ Set Environment Variable TEST_USERNAME Administrator@vsphere.local
+ Set Environment Variable TEST_PASSWORD Admin\!23
+ Set Environment Variable BRIDGE_NETWORK bridge
+ Set Environment Variable PUBLIC_NETWORK vm-network
+ Remove Environment Variable TEST_DATACENTER
+ Set Environment Variable TEST_TIMEOUT 15m
+ Set Environment Variable TEST_RESOURCE cls
+
+ # Get one of the hosts in the cluster we want and make sure we use the correct local datastore
+ ${hosts}= Run govc ls -t HostSystem host/cls
+ @{hosts}= Split To Lines ${hosts}
+ ${datastore}= Get Name of First Local Storage For Host @{hosts}[0]
+ Set Environment Variable TEST_DATASTORE "${datastore}"
*** Test Cases ***
Test
Log To Console \nStarting test...
-
Install VIC Appliance To Test Server certs=${false} vol=default
-
Run Regression Tests
-
- Cleanup VIC Appliance On Test Server
diff --git a/tests/manual-test-cases/Group5-Functional-Tests/5-12-Multiple-VLAN.robot b/tests/manual-test-cases/Group5-Functional-Tests/5-12-Multiple-VLAN.robot
index 4f0cdac74a..6e15c602b9 100644
--- a/tests/manual-test-cases/Group5-Functional-Tests/5-12-Multiple-VLAN.robot
+++ b/tests/manual-test-cases/Group5-Functional-Tests/5-12-Multiple-VLAN.robot
@@ -15,7 +15,7 @@
*** Settings ***
Documentation Test 5-12 - Multiple VLAN
Resource ../../resources/Util.robot
-Suite Setup Wait Until Keyword Succeeds 10x 10m Multiple VLAN Setup
+Suite Setup Nimbus Suite Setup Multiple VLAN Setup
Suite Teardown Run Keyword And Ignore Error Nimbus Cleanup ${list}
Test Teardown Cleanup VIC Appliance On Test Server
diff --git a/tests/manual-test-cases/Group5-Functional-Tests/5-13-Invalid-ESXi-Install.robot b/tests/manual-test-cases/Group5-Functional-Tests/5-13-Invalid-ESXi-Install.robot
index 3fcae6b647..976ab77cc6 100644
--- a/tests/manual-test-cases/Group5-Functional-Tests/5-13-Invalid-ESXi-Install.robot
+++ b/tests/manual-test-cases/Group5-Functional-Tests/5-13-Invalid-ESXi-Install.robot
@@ -15,7 +15,7 @@
*** Settings ***
Documentation Test 5-13 - Invalid ESXi Install
Resource ../../resources/Util.robot
-Suite Setup Wait Until Keyword Succeeds 10x 10m Invalid ESXi Install Setup
+Suite Setup Nimbus Suite Setup Invalid ESXi Install Setup
Suite Teardown Run Keyword And Ignore Error Nimbus Cleanup ${list}
*** Keywords ***
diff --git a/tests/manual-test-cases/Group5-Functional-Tests/5-14-Remove-Container-OOB.robot b/tests/manual-test-cases/Group5-Functional-Tests/5-14-Remove-Container-OOB.robot
index 32afdfcf7b..18c41b84c7 100644
--- a/tests/manual-test-cases/Group5-Functional-Tests/5-14-Remove-Container-OOB.robot
+++ b/tests/manual-test-cases/Group5-Functional-Tests/5-14-Remove-Container-OOB.robot
@@ -15,7 +15,7 @@
*** Settings ***
Documentation Test 5-14 - Remove Container OOB
Resource ../../resources/Util.robot
-Suite Setup Wait Until Keyword Succeeds 10x 10m Remove Container OOB Setup
+Suite Setup Nimbus Suite Setup Remove Container OOB Setup
Suite Teardown Run Keyword And Ignore Error Nimbus Cleanup ${list}
*** Keywords ***
diff --git a/tests/manual-test-cases/Group5-Functional-Tests/5-15-NFS-Datastore.robot b/tests/manual-test-cases/Group5-Functional-Tests/5-15-NFS-Datastore.robot
index 466ae5194f..3a1b68cec9 100644
--- a/tests/manual-test-cases/Group5-Functional-Tests/5-15-NFS-Datastore.robot
+++ b/tests/manual-test-cases/Group5-Functional-Tests/5-15-NFS-Datastore.robot
@@ -15,23 +15,37 @@
*** Settings ***
Documentation Test 5-15 - NFS Datastore
Resource ../../resources/Util.robot
-Suite Setup Wait Until Keyword Succeeds 10x 10m NFS Datastore Setup
-Suite Teardown Run Keyword And Ignore Error Nimbus Cleanup ${list}
+Suite Setup Nimbus Suite Setup NFS Datastore Setup
+Suite Teardown Run Keyword And Ignore Error Nimbus Cleanup Single VM '*5-15-nfs-datastore*'
*** Keywords ***
NFS Datastore Setup
[Timeout] 110 minutes
- Run Keyword And Ignore Error Nimbus Cleanup ${list} ${false}
- ${esx1} ${esx2} ${esx3} ${vc} ${esx1-ip} ${esx2-ip} ${esx3-ip} ${vc-ip}= Create a Simple VC Cluster datacenter1 cls1
- Set Suite Variable @{list} ${esx1} ${esx2} ${esx3} %{NIMBUS_USER}-${vc}
-
- ${name} ${ip}= Deploy Nimbus NFS Datastore %{NIMBUS_USER} %{NIMBUS_PASSWORD}
- Append To List ${list} ${name}
-
- ${out}= Run govc datastore.create -mode readWrite -type nfs -name nfsDatastore -remote-host ${ip} -remote-path /store /datacenter1/host/cls1
- Should Be Empty ${out}
-
- Set Environment Variable TEST_DATASTORE nfsDatastore
+ Run Keyword And Ignore Error Nimbus Cleanup Single VM '*5-15-nfs-datastore*' ${false}
+ Log To Console \nStarting testbed deploy...
+ ${out}= Deploy Nimbus Testbed %{NIMBUS_USER} %{NIMBUS_PASSWORD} spec=vic-simple-cluster.rb args=--noSupportBundles --plugin testng --vcvaBuild ${VC_VERSION} --esxBuild ${ESX_VERSION} --testbedName vic-simple-cluster --runName 5-15-nfs-datastore
+ Log ${out}
+
+ Open Connection %{NIMBUS_GW}
+ Wait Until Keyword Succeeds 10 min 30 sec Login %{NIMBUS_USER} %{NIMBUS_PASSWORD}
+ ${vc-ip}= Get IP 5-15-nfs-datastore.vc.0
+ Close Connection
+
+ Log To Console Set environment variables up for GOVC
+ Set Environment Variable GOVC_URL ${vc-ip}
+ Set Environment Variable GOVC_USERNAME Administrator@vsphere.local
+ Set Environment Variable GOVC_PASSWORD Admin\!23
+
+ Log To Console Deploy VIC to the VC cluster
+ Set Environment Variable TEST_URL_ARRAY ${vc-ip}
+ Set Environment Variable TEST_USERNAME Administrator@vsphere.local
+ Set Environment Variable TEST_PASSWORD Admin\!23
+ Set Environment Variable BRIDGE_NETWORK bridge
+ Set Environment Variable PUBLIC_NETWORK vm-network
+ Remove Environment Variable TEST_DATACENTER
+ Set Environment Variable TEST_DATASTORE nfs0-1
+ Set Environment Variable TEST_RESOURCE cls
+ Set Environment Variable TEST_TIMEOUT 15m
*** Test Cases ***
Test
diff --git a/tests/manual-test-cases/Group5-Functional-Tests/5-17-FC-Datastore.robot b/tests/manual-test-cases/Group5-Functional-Tests/5-17-FC-Datastore.robot
index 319d19952a..8c8ae10963 100644
--- a/tests/manual-test-cases/Group5-Functional-Tests/5-17-FC-Datastore.robot
+++ b/tests/manual-test-cases/Group5-Functional-Tests/5-17-FC-Datastore.robot
@@ -15,7 +15,7 @@
*** Settings ***
Documentation Test 5-17 - FC Datastore
Resource ../../resources/Util.robot
-Suite Setup Wait Until Keyword Succeeds 10x 10m FC Datastore Setup
+Suite Setup Nimbus Suite Setup FC Datastore Setup
Suite Teardown Run Keyword And Ignore Error Nimbus Cleanup ${list}
*** Keywords ***
diff --git a/tests/manual-test-cases/Group5-Functional-Tests/5-18-Datastore-Cluster-SDRS.robot b/tests/manual-test-cases/Group5-Functional-Tests/5-18-Datastore-Cluster-SDRS.robot
index e5a864be4a..af6881d428 100644
--- a/tests/manual-test-cases/Group5-Functional-Tests/5-18-Datastore-Cluster-SDRS.robot
+++ b/tests/manual-test-cases/Group5-Functional-Tests/5-18-Datastore-Cluster-SDRS.robot
@@ -15,7 +15,7 @@
*** Settings ***
Documentation Test 5-18 - Datastore Cluster SDRS
Resource ../../resources/Util.robot
-#Suite Setup Wait Until Keyword Succeeds 10x 10m SDRS Datastore Setup
+#Suite Setup Nimbus Suite Setup SDRS Datastore Setup
#Test Teardown Run Keyword And Ignore Error Nimbus Cleanup ${list}
*** Keywords ***
diff --git a/tests/manual-test-cases/Group5-Functional-Tests/5-2-Cluster.robot b/tests/manual-test-cases/Group5-Functional-Tests/5-2-Cluster.robot
index a19fffa6a7..55e2120690 100644
--- a/tests/manual-test-cases/Group5-Functional-Tests/5-2-Cluster.robot
+++ b/tests/manual-test-cases/Group5-Functional-Tests/5-2-Cluster.robot
@@ -15,7 +15,7 @@
*** Settings ***
Documentation Test 5-2 - Cluster
Resource ../../resources/Util.robot
-Suite Setup Wait Until Keyword Succeeds 10x 10m Cluster Setup
+Suite Setup Nimbus Suite Setup Cluster Setup
Suite Teardown Run Keyword And Ignore Error Nimbus Cleanup ${list}
*** Keywords ***
@@ -69,9 +69,9 @@ Cluster Setup
Create Three Distributed Port Groups ha-datacenter
- Wait Until Keyword Succeeds 5x 1 minute Add Host To Distributed Switch /ha-datacenter/host/cls/@{esx_ips}[0]
- Wait Until Keyword Succeeds 5x 1 minute Add Host To Distributed Switch /ha-datacenter/host/cls/@{esx_ips}[1]
- Wait Until Keyword Succeeds 5x 1 minute Add Host To Distributed Switch /ha-datacenter/host/cls/@{esx_ips}[2]
+ Add Host To Distributed Switch /ha-datacenter/host/cls/@{esx_ips}[0]
+ Add Host To Distributed Switch /ha-datacenter/host/cls/@{esx_ips}[1]
+ Add Host To Distributed Switch /ha-datacenter/host/cls/@{esx_ips}[2]
Log To Console Enable DRS on the cluster
${out}= Run govc cluster.change -drs-enabled /ha-datacenter/host/cls
diff --git a/tests/manual-test-cases/Group5-Functional-Tests/5-21-Datastore-Path.robot b/tests/manual-test-cases/Group5-Functional-Tests/5-21-Datastore-Path.robot
index 32bf8bf5a0..a623de003a 100644
--- a/tests/manual-test-cases/Group5-Functional-Tests/5-21-Datastore-Path.robot
+++ b/tests/manual-test-cases/Group5-Functional-Tests/5-21-Datastore-Path.robot
@@ -1,4 +1,4 @@
-# Copyright 2016-2017 VMware, Inc. All Rights Reserved.
+# Copyright 2016-2018 VMware, Inc. All Rights Reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -15,7 +15,7 @@
*** Settings ***
Documentation Test 5-21 - Datastore-Path
Resource ../../resources/Util.robot
-Suite Setup Wait Until Keyword Succeeds 10x 10m Setup Suite ESX
+Suite Setup Nimbus Suite Setup Setup Suite ESX
Suite Teardown Run Keyword And Ignore Error Nimbus Cleanup ${list}
*** Variables ***
@@ -57,7 +57,7 @@ Datastore - DS Scheme Specified in Volume Store
Log To Console \nRunning custom vic-machine create - with DS Scheme in Volume Store
# Need to run custom vic-machine create to specify volume store with DS scheme
- ${output}= Run bin/vic-machine-linux create --debug 1 --name=%{VCH-NAME} --target=%{TEST_URL_ARRAY} --user=%{TEST_USERNAME} --bridge-network=%{BRIDGE_NETWORK} --public-network=%{PUBLIC_NETWORK} --image-store=%{TEST_DATASTORE} --volume-store=${dsScheme}%{TEST_DATASTORE}/images:default --password=%{TEST_PASSWORD} --appliance-iso=bin/appliance.iso --bootstrap-iso=bin/bootstrap.iso --insecure-registry harbor.ci.drone.local --force --kv
+ ${output}= Run bin/vic-machine-linux create --debug 1 --name=%{VCH-NAME} --target=%{TEST_URL_ARRAY} --user=%{TEST_USERNAME} --bridge-network=%{BRIDGE_NETWORK} --public-network=%{PUBLIC_NETWORK} --image-store=%{TEST_DATASTORE} --volume-store=${dsScheme}%{TEST_DATASTORE}/images:default --password=%{TEST_PASSWORD} --appliance-iso=bin/appliance.iso --bootstrap-iso=bin/bootstrap.iso --insecure-registry harbor.ci.drone.local --force --kv --timeout=%{TEST_TIMEOUT}
Should Contain ${output} Installer completed successfully
@@ -89,5 +89,5 @@ Datastore - Space in Path with Scheme
Log To Console \nRunning custom vic-machine create - with DS Scheme in Volume Store with space in path
# Need to run custom vic-machine create to specify volume store with DS scheme
- ${output}= Run bin/vic-machine-linux create --debug 1 --name=%{VCH-NAME} --target=%{TEST_URL_ARRAY} --user=%{TEST_USERNAME} --bridge-network=%{BRIDGE_NETWORK} --public-network=%{PUBLIC_NETWORK} --image-store=%{TEST_DATASTORE} --volume-store=${dsScheme}%{TEST_DATASTORE}/images:default --password=%{TEST_PASSWORD} --appliance-iso=bin/appliance.iso --bootstrap-iso=bin/bootstrap.iso --insecure-registry harbor.ci.drone.local --force --kv
+ ${output}= Run bin/vic-machine-linux create --debug 1 --name=%{VCH-NAME} --target=%{TEST_URL_ARRAY} --user=%{TEST_USERNAME} --bridge-network=%{BRIDGE_NETWORK} --public-network=%{PUBLIC_NETWORK} --image-store=%{TEST_DATASTORE} --volume-store=${dsScheme}%{TEST_DATASTORE}/images:default --password=%{TEST_PASSWORD} --appliance-iso=bin/appliance.iso --bootstrap-iso=bin/bootstrap.iso --insecure-registry harbor.ci.drone.local --force --kv --timeout=%{TEST_TIMEOUT}
Should Contain ${output} Installer completed successfully
diff --git a/tests/manual-test-cases/Group5-Functional-Tests/5-22-NFS-Volume.robot b/tests/manual-test-cases/Group5-Functional-Tests/5-22-NFS-Volume.robot
index 76f609b074..b076ab57e8 100644
--- a/tests/manual-test-cases/Group5-Functional-Tests/5-22-NFS-Volume.robot
+++ b/tests/manual-test-cases/Group5-Functional-Tests/5-22-NFS-Volume.robot
@@ -15,7 +15,7 @@
*** Settings ***
Documentation Test 5-22 - NFS Volume
Resource ../../resources/Util.robot
-Suite Setup Wait Until Keyword Succeeds 10x 10m Setup ESX And NFS Suite
+Suite Setup Nimbus Suite Setup Setup ESX And NFS Suite
Suite Teardown Run Keyword And Ignore Error NFS Volume Cleanup
Test Teardown Gather NFS Logs
@@ -38,23 +38,14 @@ Setup ESX And NFS Suite
Run Keyword And Ignore Error Nimbus Cleanup ${list} ${false}
Log To Console \nStarting test...
- ${esx1} ${esx1_ip}= Deploy Nimbus ESXi Server %{NIMBUS_USER} %{NIMBUS_PASSWORD}
- Open Connection %{NIMBUS_GW}
- Wait Until Keyword Succeeds 2 min 30 sec Login %{NIMBUS_USER} %{NIMBUS_PASSWORD}
- ${POD}= Fetch POD ${esx1}
- Log To Console ${POD}
- Close Connection
-
- ${nfs} ${nfs_ip}= Deploy Nimbus NFS Datastore %{NIMBUS_USER} %{NIMBUS_PASSWORD} additional-args=--nimbus ${POD}
-
- ${nfs_readonly} ${nfs_readonly_ip}= Deploy Nimbus NFS Datastore %{NIMBUS_USER} %{NIMBUS_PASSWORD} additional-args=--disk 5000000 --disk 5000000 --mountOpt ro --nfsOpt ro --mountPoint=storage1 --mountPoint=storage2 --nimbus ${POD}
+ ${nfs} ${nfs_ro} ${esx1} ${nfs_ip} ${nfs_ro_ip} ${esx1_ip}= Deploy Simple NFS Testbed %{NIMBUS_USER} %{NIMBUS_PASSWORD} spec=vic-nfs.rb args=--esxBuild ${ESX_VERSION} --esxPxeDir ${ESX_VERSION} --plugin testng
- Set Suite Variable @{list} ${esx1} ${nfs} ${nfs_readonly}
+ Set Suite Variable @{list} ${esx1} ${nfs} ${nfs_ro}
Set Suite Variable ${ESX1} ${esx1}
Set Suite Variable ${ESX1_IP} ${esx1_ip}
Set Suite Variable ${NFS_IP} ${nfs_ip}
Set Suite Variable ${NFS} ${nfs}
- Set Suite Variable ${NFS_READONLY_IP} ${nfs_readonly_ip}
+ Set Suite Variable ${NFS_READONLY_IP} ${nfs_ro_ip}
# Add the NFS servers to SSH known host list
${out}= Run Keyword And Ignore Error Run sshpass -p %{DEPLOYED_PASSWORD} ssh -o StrictHostKeyChecking\=no root@${NFS_IP} exit
@@ -69,7 +60,7 @@ Setup ESX And NFS Suite
${out}= Execute Command rpcdebug -m rpc -s all
${out}= Execute Command service rpcbind restart
Close Connection
-
+
Open Connection ${NFS_READONLY_IP}
Wait Until Keyword Succeeds 2 min 30 sec Login root ${strippedPW}
${out}= Execute Command rpcdebug -m nfsd -s all
@@ -84,7 +75,7 @@ Setup ENV Variables for VIC Appliance Install
Set Environment Variable TEST_URL ${ESX1_IP}
Set Environment Variable TEST_USERNAME root
Set Environment Variable TEST_PASSWORD ${NIMBUS_ESX_PASSWORD}
- Set Environment Variable TEST_DATASTORE datastore1
+ Set Environment Variable TEST_DATASTORE local-0
Set Environment Variable TEST_TIMEOUT 30m
Set Environment Variable HOST_TYPE ESXi
Remove Environment Variable TEST_DATACENTER
@@ -95,6 +86,8 @@ Setup ENV Variables for VIC Appliance Install
Verify NFS Volume Basic Setup
[Arguments] ${volumeName} ${containerName} ${nfsIP} ${rwORro}
+ Wait For NFS And VCH
+
${rc} ${output}= Run And Return Rc And Output docker %{VCH-PARAMS} run --name ${containerName} -v ${volumeName}:/mydata ${busybox} mount
Should Be Equal As Integers ${rc} 0
Should Contain ${output} ${nfsIP}:/store/volumes/${volumeName}
@@ -109,6 +102,8 @@ Verify NFS Volume Basic Setup
Verify NFS Volume Already Created
[Arguments] ${containerVolName}
+ Wait For NFS And VCH
+
${rc} ${output}= Run And Return Rc And Output docker %{VCH-PARAMS} volume create --name=${containerVolName} --opt VolumeStore=${nfsVolumeStore}
Should Be Equal As Integers ${rc} 1
Should Contain ${output} Error response from daemon: A volume named ${containerVolName} already exists. Choose a different volume name.
@@ -148,6 +143,10 @@ NFS Volume Cleanup
Gather NFS Logs
Nimbus Cleanup ${list}
+Wait For NFS And VCH
+ Wait Until Keyword Succeeds 20x 30s Ping Host Successfully ${NFS_READONLY_IP}
+ Wait Until Keyword Succeeds 20x 30s Ping Host Successfully %{VCH-IP}
+
*** Test Cases ***
VIC Appliance Install with Read Only NFS Volume
Setup ENV Variables for VIC Appliance Install
@@ -159,6 +158,8 @@ VIC Appliance Install with Read Only NFS Volume
Should Contain ${output} VolumeStore (${nfsReadOnlyVolumeStore}) cannot be brought online - check network, nfs server, and --volume-store configurations
Should Contain ${output} Not all configured volume stores are online - check port layer log via vicadmin
+ Wait For NFS And VCH
+
${rc} ${volumeOutput}= Run And Return Rc And Output docker %{VCH-PARAMS} volume create --opt VolumeStore=${nfsReadOnlyVolumeStore}
Should Be Equal As Integers ${rc} 1
Should Contain ${volumeOutput} Error response from daemon: No volume store named (${nfsReadOnlyVolumeStore}) exists
@@ -183,6 +184,8 @@ VIC Appliance Install With Correct NFS Server
Simple Docker Volume Create
#Pull image ${busybox}
+ Wait For NFS And VCH
+
${rc} ${volumeOutput}= Run And Return Rc And Output docker %{VCH-PARAMS} volume create --opt VolumeStore=${nfsVolumeStore}
Should Be Equal As Integers ${rc} 0
@@ -191,6 +194,8 @@ Simple Docker Volume Create
Verify NFS Volume Basic Setup ${nfsUnNamedVolume} ${unnamedNFSVolContainer} ${NFS_IP} rw
Docker Volume Create Named Volume
+ Wait For NFS And VCH
+
${rc} ${volumeOutput}= Run And Return Rc And Output docker %{VCH-PARAMS} volume create --name nfs-volume_%{VCH-NAME} --opt VolumeStore=${nfsVolumeStore}
Should Be Equal As Integers ${rc} 0
Should Be Equal As Strings ${volumeOutput} nfs-volume_%{VCH-NAME}
@@ -205,12 +210,16 @@ Docker Volume Create Already Named Volume
Run Keyword And Ignore Error Verify NFS Volume Already Created ${nfsNamedVolume}
Docker Volume Create with possibly Invalid Name
+ Wait For NFS And VCH
+
${rc} ${output}= Run And Return Rc And Output docker %{VCH-PARAMS} volume create --name="test!@\#$%^&*()" --opt VolumeStore=${nfsVolumeStore}
Should Be Equal As Integers ${rc} 1
Should Be Equal As Strings ${output} Error response from daemon: volume name "test!@\#$%^&*()" includes invalid characters, only "[a-zA-Z0-9][a-zA-Z0-9_.-]" are allowed
Docker Single Write and Read to/from File from one Container using NFS Volume
# Done with the same container for this test.
+ Wait For NFS And VCH
+
${rc} ${output}= Run And Return Rc And Output docker %{VCH-PARAMS} run --name ${createFileContainer} -d -v ${nfsNamedVolume}:/mydata ${busybox} /bin/top -d 600
Should Be Equal As Integers ${rc} 0
@@ -226,6 +235,8 @@ Docker Single Write and Read to/from File from one Container using NFS Volume
Should Contain ${output} The Texas and Chile flag look similar.
Docker Multiple Writes from Multiple Containers (one at a time) and Read from Another
+ Wait For NFS And VCH
+
${rc} ${output}= Run And Return Rc And Output docker %{VCH-PARAMS} run -v ${nfsNamedVolume}:/mydata ${busybox} sh -c "echo 'The Chad and Romania flag look the same.\n' >> /mydata/test_nfs_file.txt"
Should Be Equal As Integers ${rc} 0
@@ -243,6 +254,8 @@ Docker Multiple Writes from Multiple Containers (one at a time) and Read from An
Should Contain ${output} Norway and Iceland have flags that are basically inverses of each other.
Docker Read and Remove File
+ Wait For NFS And VCH
+
${rc} ${catID}= Run And Return Rc And Output docker %{VCH-PARAMS} run -d -v ${nfsNamedVolume}:/mydata ${busybox} sh -c "cat mydata/test_nfs_file.txt"
Should Be Equal As Integers ${rc} 0
${rc} ${output}= Run And Return Rc And Output docker %{VCH-PARAMS} logs ${catID}
@@ -285,6 +298,8 @@ Simultaneous Container Write to File
Simple Docker Volume Inspect
+ Wait For NFS And VCH
+
${rc} ${output}= Run And Return Rc And Output docker %{VCH-PARAMS} volume inspect ${nfsNamedVolume}
Should Be Equal As Integers ${rc} 0
${output}= Evaluate json.loads(r'''${output}''') json
@@ -314,6 +329,8 @@ Volume rm Tests
Should Contain ${output} Error response from daemon: volume ${nfsNamedVolume} in use by
Docker Inspect Mount Data after Reboot
+ Wait For NFS And VCH
+
${rc} ${container}= Run And Return Rc And Output docker %{VCH-PARAMS} create --name ${mntDataTestContainer} -v ${mntTest} -v ${nfsNamedVolume}:${mntNamed} ${busybox}
Should Be Equal As Integers ${rc} 0
@@ -329,8 +346,9 @@ Docker Inspect Mount Data after Reboot
Verify Volume Inspect Info After VM Reboot ${mntDataTestContainer} ${checkList}
-
Kill NFS Server
+ Wait For NFS And VCH
+
Sleep 5 minutes
${rc} ${runningContainer}= Run And Return Rc And Output docker %{VCH-PARAMS} run -d -v ${nfsNamedVolume}:/mydata ${busybox} sh -c "while true; do echo 'Still here...\n' >> /mydata/test_nfs_kill.txt; sleep 2; done"
Should Be Equal As Integers ${rc} 0
diff --git a/tests/manual-test-cases/Group5-Functional-Tests/5-24-Non-vSphere-Local-Cluster.robot b/tests/manual-test-cases/Group5-Functional-Tests/5-24-Non-vSphere-Local-Cluster.robot
index 98e71e1bb1..f2efb6fcd3 100644
--- a/tests/manual-test-cases/Group5-Functional-Tests/5-24-Non-vSphere-Local-Cluster.robot
+++ b/tests/manual-test-cases/Group5-Functional-Tests/5-24-Non-vSphere-Local-Cluster.robot
@@ -15,7 +15,7 @@
*** Settings ***
Documentation Test 5-24 - Non vSphere Local Cluster
Resource ../../resources/Util.robot
-Suite Setup Wait Until Keyword Succeeds 10x 10m Non vSphere Local Cluster Install Setup
+Suite Setup Nimbus Suite Setup Non vSphere Local Cluster Install Setup
Suite Teardown Run Keyword And Ignore Error Nimbus Cleanup ${list}
Test Teardown Cleanup VIC Appliance On Test Server
diff --git a/tests/manual-test-cases/Group5-Functional-Tests/5-25-OPS-User-Grant.md b/tests/manual-test-cases/Group5-Functional-Tests/5-25-OPS-User-Grant.md
index d31b8a6e6c..577fe59a89 100644
--- a/tests/manual-test-cases/Group5-Functional-Tests/5-25-OPS-User-Grant.md
+++ b/tests/manual-test-cases/Group5-Functional-Tests/5-25-OPS-User-Grant.md
@@ -17,7 +17,7 @@ This test requires access to VMware Nimbus cluster for dynamic ESXi and vCenter
7. Create a container
8. Use govc to attempt to out-of-band destroy the container from Step 7
9. Clean up the VCH
-10. Install version v1.3.0 of the VIC appliance into the cluster with the --ops-grant-perms option
+10. Install version v1.3.1 of the VIC appliance into the cluster with the --ops-grant-perms option
11. Perform a VCH upgrade to the current version
12. With the ops-user, use govc to attempt to create a resource pool
13. Run a variety of docker operations on the VCH
diff --git a/tests/manual-test-cases/Group5-Functional-Tests/5-25-OPS-User-Grant.robot b/tests/manual-test-cases/Group5-Functional-Tests/5-25-OPS-User-Grant.robot
index e3965a3765..b72667305c 100644
--- a/tests/manual-test-cases/Group5-Functional-Tests/5-25-OPS-User-Grant.robot
+++ b/tests/manual-test-cases/Group5-Functional-Tests/5-25-OPS-User-Grant.robot
@@ -15,10 +15,8 @@
*** Settings ***
Documentation Test 5-25 - OPS-User-Grant
Resource ../../resources/Util.robot
-Suite Setup Ops User Create
-#Suite Setup Wait Until Keyword Succeeds 10x 10m Ops User Create
-#Suite Teardown Run Keyword And Ignore Error Nimbus Cleanup ${list}
-#Test Teardown Run Keyword If Test Failed Gather vSphere Logs
+Suite Setup Nimbus Suite Setup Ops User Create
+Suite Teardown Run Keyword And Ignore Error Nimbus Cleanup ${list}
*** Keywords ***
Ops User Create
@@ -53,6 +51,7 @@ Ops User Create
Log Output, govc role.usage: ${out}
Run privilege-dependent docker operations
+ [Timeout] 15 minutes
# Run containers with volumes and container networks to test scenarios requiring containerVMs
# to have the highest privileges.
${rc} ${output}= Run And Return Rc And Output docker %{VCH-PARAMS} pull ${busybox}
@@ -140,10 +139,10 @@ vic-machine create grants ops-user perms
Run privilege-dependent docker operations
- Cleanup VIC Appliance On Test Server
+ [Teardown] Cleanup VIC Appliance On Test Server
granted ops-user perms work after upgrade
- Install VIC with version to Test Server v1.3.0 additional-args=--ops-user ${ops_user_name} --ops-password ${ops_user_password} --ops-grant-perms
+ Install VIC with version to Test Server v1.3.1 additional-args=--ops-user ${ops_user_name} --ops-password ${ops_user_password} --ops-grant-perms
Check Original Version
Upgrade
@@ -156,7 +155,7 @@ granted ops-user perms work after upgrade
Run privilege-dependent docker operations
- Cleanup VIC Appliance On Test Server
+ [Teardown] Cleanup VIC Appliance On Test Server
Test with VM-Host Affinity
Log To Console \nStarting test...
@@ -169,7 +168,7 @@ Test with VM-Host Affinity
Run privilege-dependent docker operations
- Cleanup VIC Appliance On Test Server
+ [Teardown] Cleanup VIC Appliance On Test Server
vic-machine configure grants ops-user perms
Install VIC Appliance To Test Server
@@ -181,4 +180,4 @@ vic-machine configure grants ops-user perms
Run privilege-dependent docker operations
- Cleanup VIC Appliance On Test Server
+ [Teardown] Cleanup VIC Appliance On Test Server
diff --git a/tests/manual-test-cases/Group5-Functional-Tests/5-26-Static-IP-Address.robot b/tests/manual-test-cases/Group5-Functional-Tests/5-26-Static-IP-Address.robot
index ae3571fb13..56e73b6786 100644
--- a/tests/manual-test-cases/Group5-Functional-Tests/5-26-Static-IP-Address.robot
+++ b/tests/manual-test-cases/Group5-Functional-Tests/5-26-Static-IP-Address.robot
@@ -15,52 +15,18 @@
*** Settings ***
Documentation Test 5-26 - Static IP Address
Resource ../../resources/Util.robot
-Suite Setup Wait Until Keyword Succeeds 10x 10m Static IP Address Create
+Suite Setup Setup VC With Static IP
Suite Teardown Run Keyword And Ignore Error Nimbus Cleanup ${list}
+
*** Keywords ***
-Static IP Address Create
- [Timeout] 110 minutes
- Log To Console Starting Static IP Address test...
- Set Suite Variable ${NIMBUS_LOCATION} NIMBUS_LOCATION=wdc
- Run Keyword And Ignore Error Nimbus Cleanup ${list} ${false}
+Setup VC With Static IP
${name}= Evaluate 'vic-5-26-' + str(random.randint(1000,9999)) modules=random
- ${out}= Deploy Nimbus Testbed %{NIMBUS_USER} %{NIMBUS_PASSWORD} --noSupportBundles --plugin testng --vcvaBuild ${VC_VERSION} --esxBuild ${ESX_VERSION} --testbedName vic-simple-cluster --testbedSpecRubyFile /dbc/pa-dbc1111/mhagen/nimbus-testbeds/testbeds/vic-simple-cluster.rb --runName ${name}
-
- Open Connection %{NIMBUS_GW}
- Wait Until Keyword Succeeds 10 min 30 sec Login %{NIMBUS_USER} %{NIMBUS_PASSWORD}
- ${vc-ip}= Get IP ${name}.vc.0
- ${pod}= Fetch POD ${name}.vc.0
- Set Suite Variable ${NIMBUS_POD} ${pod}
- Close Connection
-
- Set Suite Variable @{list} %{NIMBUS_USER}-${name}.esx.0 %{NIMBUS_USER}-${name}.esx.1 %{NIMBUS_USER}-${name}.esx.2 %{NIMBUS_USER}-${name}.nfs.0 %{NIMBUS_USER}-${name}.vc.0
- Log To Console Finished Creating Cluster ${name}
-
- ${out}= Get Static IP Address
- Set Suite Variable ${static} ${out}
- Append To List ${list} %{STATIC_WORKER_NAME}
+ Nimbus Suite Setup Create Simple VC Cluster With Static IP ${name}
- Log To Console Set environment variables up for GOVC
- Set Environment Variable GOVC_URL ${vc-ip}
- Set Environment Variable GOVC_USERNAME Administrator@vsphere.local
- Set Environment Variable GOVC_PASSWORD Admin\!23
-
- Log To Console Deploy VIC to the VC cluster
- Set Environment Variable TEST_URL_ARRAY ${vc-ip}
- Set Environment Variable TEST_USERNAME Administrator@vsphere.local
- Set Environment Variable TEST_PASSWORD Admin\!23
- Set Environment Variable BRIDGE_NETWORK bridge
- Set Environment Variable PUBLIC_NETWORK vm-network
- Remove Environment Variable TEST_DATACENTER
- Set Environment Variable TEST_DATASTORE nfs0-1
- Set Environment Variable TEST_RESOURCE cls
- Set Environment Variable TEST_TIMEOUT 15m
-
*** Test Cases ***
Test
Log To Console \nStarting test...
- Custom Testbed Keepalive /dbc/pa-dbc1111/mhagen
Install VIC Appliance To Test Server additional-args=--public-network-ip &{static}[ip]/&{static}[netmask] --public-network-gateway &{static}[gateway] --dns-server 10.170.16.48
Run Regression Tests
\ No newline at end of file
diff --git a/tests/manual-test-cases/Group5-Functional-Tests/5-27-Selenium-Grid.robot b/tests/manual-test-cases/Group5-Functional-Tests/5-27-Selenium-Grid.robot
index ac0fef639b..67933f6684 100644
--- a/tests/manual-test-cases/Group5-Functional-Tests/5-27-Selenium-Grid.robot
+++ b/tests/manual-test-cases/Group5-Functional-Tests/5-27-Selenium-Grid.robot
@@ -15,7 +15,7 @@
*** Settings ***
Documentation Test 5-27 - Selenium Grid
Resource ../../resources/Util.robot
-Suite Setup Wait Until Keyword Succeeds 10x 10m Selenium Grid Test Setup
+Suite Setup Nimbus Suite Setup Selenium Grid Test Setup
Suite Teardown Run Keyword And Ignore Error Nimbus Cleanup ${list}
*** Keywords ***
@@ -24,7 +24,7 @@ Selenium Grid Test Setup
Log To Console Starting testbed deployment...
Run Keyword And Ignore Error Nimbus Cleanup ${list} ${false}
${name}= Evaluate 'vic-5-27-' + str(random.randint(1000,9999)) modules=random
- ${out}= Deploy Nimbus Testbed %{NIMBUS_USER} %{NIMBUS_PASSWORD} --noSupportBundles --plugin testng --vcvaBuild ${VC_VERSION} --esxBuild ${ESX_VERSION} --testbedName vic-iscsi-cluster --testbedSpecRubyFile /dbc/pa-dbc1111/mhagen/nimbus-testbeds/testbeds/vic-iscsi-cluster.rb --runName ${name}
+ ${out}= Deploy Nimbus Testbed %{NIMBUS_USER} %{NIMBUS_PASSWORD} spec=vic-iscsi-cluster.rb args=--noSupportBundles --plugin testng --vcvaBuild ${VC_VERSION} --esxBuild ${ESX_VERSION} --testbedName vic-iscsi-cluster --runName ${name}
Log ${out}
Open Connection %{NIMBUS_GW}
@@ -71,7 +71,6 @@ Wait Until Selenium Node Is Ready
*** Test Cases ***
Test
Log To Console Starting Selenium Grid test...
- Custom Testbed Keepalive /dbc/pa-dbc1111/mhagen
Install VIC Appliance To Test Server
diff --git a/tests/manual-test-cases/Group5-Functional-Tests/5-28-VICAdmin-Isolated.md b/tests/manual-test-cases/Group5-Functional-Tests/5-28-VICAdmin-Isolated.md
new file mode 100644
index 0000000000..bb870c5b38
--- /dev/null
+++ b/tests/manual-test-cases/Group5-Functional-Tests/5-28-VICAdmin-Isolated.md
@@ -0,0 +1,50 @@
+Test 5-28 - VIC Admin Isolated
+=======
+
+# Purpose:
+Verify that VIC Admin can display logs on an isolated network with no wan connection.
+
+# Environment:
+This test requires that a vSphere environment be running and available, which dSwitch test-ds available.
+
+# Test Steps:
+
+1. Create a DVS Port Group that does not have internet connectivity by setting a random vlan id
+2. Deploy VIC appliance to the vSphere server using the no-wan port group
+3. Verify login functions properly
+4. Verify vic admin internet connectivity status is showing a warning icon
+5. Pull the VCH-Init log and verify that it contains valid data
+6. Pull the Docker Personality log and verify that it contains valid data
+7. Create a container via the appliance
+8. Pull the container log bundle from the appliance and verify that it contains the new container's logs
+
+# Test Cases:
+
+## Display HTML
+1. Log in
+2. Page displays vic-machine name in title
+
+## WAN Status Should Fail
+1. Log in
+2. Page displays warning symbols for wan connection status
+
+## Fail To Pull Docker Image
+1. Log in
+2. Pull docker busybox
+3. Fail to pull busybox
+
+## Get Portlayer Log
+1. Log in
+2. Portlayer Log access is allowed and logs are downloaded
+
+## Get VCH-Init Log
+1. Log in
+2. VCH-Init Log access is allowed and logs are downloaded
+
+## Get Docker Personality Log
+1. Log in
+2. Docker Personality Log access is allowed and logs are downloaded
+
+## Get VICAdmin Log
+1. Log in
+2. VICAdmin Log access is allowed and logs are downloaded
\ No newline at end of file
diff --git a/tests/manual-test-cases/Group5-Functional-Tests/5-28-VICAdmin-Isolated.robot b/tests/manual-test-cases/Group5-Functional-Tests/5-28-VICAdmin-Isolated.robot
new file mode 100644
index 0000000000..85ea8f63ee
--- /dev/null
+++ b/tests/manual-test-cases/Group5-Functional-Tests/5-28-VICAdmin-Isolated.robot
@@ -0,0 +1,99 @@
+# Copyright 2016-2018 VMware, Inc. All Rights Reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License
+*** Settings ***
+Documentation Test 5-28 - VICAdmin Isolated
+Resource ../../resources/Util.robot
+Suite Setup Deploy Testbed With Static IP
+Suite Teardown Teardown VCH With No WAN
+Default Tags
+
+*** Keywords ***
+Deploy Testbed With Static IP
+ Setup VC With No WAN
+ Deploy VCH With No WAN
+
+Setup VC With No WAN
+ ${name}= Evaluate 'vic-5-28-' + str(random.randint(1000,9999)) modules=random
+ Nimbus Suite Setup Create Simple VC Cluster With Static IP ${name}
+ Set Test Environment Variables
+
+ Log To Console Create a vch with a public network on a no-wan portgroup.
+
+ ${vlan}= Evaluate str(random.randint(1, 195)) modules=random
+
+ ${dvs}= Run govc find -type DistributedVirtualSwitch | head -n1
+ ${rc} ${output}= Run And Return Rc And Output govc dvs.portgroup.add -vlan=${vlan} -dvs ${dvs} dpg-no-wan
+ Should Be Equal As Integers ${rc} 0
+
+Deploy VCH With No WAN
+ ${out}= Deploy VCH With No WAN Secret
+ Log ${out}
+ Get Docker Params ${out} ${false}
+
+Deploy VCH With No WAN Secret
+ [Tags] secret
+ ${output}= Run bin/vic-machine-linux create --debug 1 --name=%{VCH-NAME} --target=%{TEST_URL}%{TEST_DATACENTER} --thumbprint=%{TEST_THUMBPRINT} --user=%{TEST_USERNAME} --image-store=%{TEST_DATASTORE} --password=%{TEST_PASSWORD} --force=true --compute-resource=%{TEST_RESOURCE} --no-tlsverify --bridge-network=%{BRIDGE_NETWORK} --management-network=%{PUBLIC_NETWORK} --client-network=%{PUBLIC_NETWORK} --client-network-ip &{static}[ip]/&{static}[netmask] --client-network-gateway 10.0.0.0/8:&{static}[gateway] --public-network dpg-no-wan --public-network-ip 192.168.100.2/24 --public-network-gateway 192.168.100.1 --dns-server 10.170.16.48 --insecure-registry wdc-harbor-ci.eng.vmware.com
+ [Return] ${output}
+
+Teardown VCH With No WAN
+ Run Keyword And Ignore Error Nimbus Cleanup ${list}
+
+Login And Save Cookies
+ [Tags] secret
+ ${rc} ${output}= Run And Return Rc And Output curl -sk %{VIC-ADMIN}/authentication -XPOST -F username=%{TEST_USERNAME} -F password=%{TEST_PASSWORD} -D /tmp/cookies-%{VCH-NAME}
+ Should Be Equal As Integers ${rc} 0
+
+*** Test Cases ***
+Display HTML
+ Login And Save Cookies
+ ${rc} ${output}= Run And Return Rc And Output curl -sk %{VIC-ADMIN} -b /tmp/cookies-%{VCH-NAME}
+ Log ${output}
+ Should contain ${output}