From 7ee9ee4e4361fa31d4e565c1b7539006598c0223 Mon Sep 17 00:00:00 2001 From: Victor Morales Date: Thu, 13 Sep 2018 09:19:13 -0700 Subject: Refactor Functional tests The current implementation of Functional tests didn't allow to reuse some functionality. This change exposes common functions and methods to populated CSAR folders. Change-Id: I8f4daf9a0a12633f952677b3e15de42bea5226e6 Signed-off-by: Victor Morales Issue-ID: MULTICLOUD-301 --- vagrant/tests/integration_cFW.sh | 189 +++------------------------------------ 1 file changed, 14 insertions(+), 175 deletions(-) (limited to 'vagrant/tests/integration_cFW.sh') diff --git a/vagrant/tests/integration_cFW.sh b/vagrant/tests/integration_cFW.sh index e4b305f4..4a452599 100755 --- a/vagrant/tests/integration_cFW.sh +++ b/vagrant/tests/integration_cFW.sh @@ -12,183 +12,22 @@ set -o errexit set -o nounset set -o pipefail -rm -f $HOME/*.yaml -packetgen_deployment_name=packetgen -sink_deployment_name=sink -firewall_deployment_name=firewall +source _common.sh +source _functions.sh -cat << NET > $HOME/unprotected-private-net-cidr-network.yaml -apiVersion: "kubernetes.cni.cncf.io/v1" -kind: Network -metadata: - name: unprotected-private-net-cidr -spec: - config: '{ - "name": "unprotected", - "type": "bridge", - "ipam": { - "type": "host-local", - "subnet": "192.168.10.0/24" - } -}' -NET +csar_id=4f726e2a-b74a-11e8-ad7c-525400feed2 -cat << NET > $HOME/protected-private-net-cidr-network.yaml -apiVersion: "kubernetes.cni.cncf.io/v1" -kind: Network -metadata: - name: protected-private-net-cidr -spec: - config: '{ - "name": "protected", - "type": "bridge", - "ipam": { - "type": "host-local", - "subnet": "192.168.20.0/24" - } -}' -NET +# Setup +popule_CSAR_containers_vFW $csar_id -cat << NET > $HOME/onap-private-net-cidr-network.yaml -apiVersion: "kubernetes.cni.cncf.io/v1" -kind: Network -metadata: - name: onap-private-net-cidr -spec: - config: '{ - "name": "onap", - "type": "bridge", - "ipam": { - "type": "host-local", - "subnet": "10.10.0.0/16" - } -}' -NET +pushd ${CSAR_DIR}/${csar_id} +for network in unprotected-private-net-cidr-network protected-private-net-cidr-network onap-private-net-cidr-network; do + kubectl apply -f $network.yaml +done +setup $packetgen_deployment_name $firewall_deployment_name $sink_deployment_name -cat << DEPLOYMENT > $HOME/$packetgen_deployment_name.yaml -apiVersion: apps/v1 -kind: Deployment -metadata: - name: $packetgen_deployment_name - labels: - app: vFirewall -spec: - replicas: 1 - selector: - matchLabels: - app: vFirewall - template: - metadata: - labels: - app: vFirewall - annotations: - kubernetes.v1.cni.cncf.io/networks: '[ - { "name": "unprotected-private-net-cidr", "interfaceRequest": "eth1" }, - { "name": "onap-private-net-cidr", "interfaceRequest": "eth2" } - ]' - spec: - containers: - - name: $packetgen_deployment_name - image: electrocucaracha/packetgen - imagePullPolicy: IfNotPresent - tty: true - stdin: true - resources: - limits: - memory: 256Mi -DEPLOYMENT +# Test +popd -cat << DEPLOYMENT > $HOME/$firewall_deployment_name.yaml -apiVersion: apps/v1 -kind: Deployment -metadata: - name: $firewall_deployment_name - labels: - app: vFirewall -spec: - replicas: 1 - selector: - matchLabels: - app: vFirewall - template: - metadata: - labels: - app: vFirewall - annotations: - kubernetes.v1.cni.cncf.io/networks: '[ - { "name": "unprotected-private-net-cidr", "interfaceRequest": "eth1" }, - { "name": "protected-private-net-cidr", "interfaceRequest": "eth2" }, - { "name": "onap-private-net-cidr", "interfaceRequest": "eth3" } - ]' - spec: - containers: - - name: $firewall_deployment_name - image: electrocucaracha/firewall - imagePullPolicy: IfNotPresent - tty: true - stdin: true - resources: - limits: - memory: 160Mi -DEPLOYMENT - -cat << DEPLOYMENT > $HOME/$sink_deployment_name.yaml -apiVersion: apps/v1 -kind: Deployment -metadata: - name: $sink_deployment_name - labels: - app: vFirewall -spec: - replicas: 1 - selector: - matchLabels: - app: vFirewall - template: - metadata: - labels: - app: vFirewall - annotations: - kubernetes.v1.cni.cncf.io/networks: '[ - { "name": "protected-private-net-cidr", "interfaceRequest": "eth1" }, - { "name": "onap-private-net-cidr", "interfaceRequest": "eth2" } - ]' - spec: - containers: - - name: $sink_deployment_name - image: electrocucaracha/sink - imagePullPolicy: IfNotPresent - tty: true - stdin: true - resources: - limits: - memory: 160Mi -DEPLOYMENT - -if $(kubectl version &>/dev/null); then - kubectl apply -f $HOME/unprotected-private-net-cidr-network.yaml - kubectl apply -f $HOME/protected-private-net-cidr-network.yaml - kubectl apply -f $HOME/onap-private-net-cidr-network.yaml - - for deployment_name in $packetgen_deployment_name $firewall_deployment_name $sink_deployment_name; do - kubectl delete deployment $deployment_name --ignore-not-found=true --now - while kubectl get deployment $deployment_name &>/dev/null; do - sleep 5 - done - kubectl create -f $HOME/$deployment_name.yaml - done - - for deployment_name in $packetgen_deployment_name $firewall_deployment_name $sink_deployment_name; do - status_phase="" - while [[ $status_phase != "Running" ]]; do - new_phase=$(kubectl get pods | grep $deployment_name | awk '{print $3}') - if [[ $new_phase != $status_phase ]]; then - echo "$(date +%H:%M:%S) - $deployment_name : $new_phase" - status_phase=$new_phase - fi - if [[ $new_phase == "Err"* ]]; then - exit 1 - fi - done - done -fi +# Teardown +teardown $packetgen_deployment_name $firewall_deployment_name $sink_deployment_name -- cgit 1.2.3-korg