diff options
-rw-r--r-- | kud/demo/firewall/charts/packetgen/templates/deployment.yaml | 4 | ||||
-rw-r--r-- | kud/demo/firewall/charts/sink/templates/deployment.yaml | 4 | ||||
-rw-r--r-- | kud/demo/firewall/templates/deployment.yaml | 4 | ||||
-rw-r--r-- | kud/demo/firewall/templates/onap-private-net.yaml | 11 | ||||
-rw-r--r-- | kud/demo/firewall/templates/protected-private-net.yaml | 11 | ||||
-rw-r--r-- | kud/demo/firewall/templates/unprotected-private-net.yaml | 11 | ||||
-rw-r--r-- | kud/deployment_infra/images/nfn.yml | 322 | ||||
-rw-r--r-- | kud/deployment_infra/playbooks/configure-ovn4nfv.yml | 101 | ||||
-rw-r--r-- | kud/deployment_infra/playbooks/kud-vars.yml | 6 | ||||
-rwxr-xr-x | kud/tests/_common.sh | 82 | ||||
-rwxr-xr-x | kud/tests/integration_vcFW.sh | 6 | ||||
-rwxr-xr-x | kud/tests/ovn4nfv.sh | 10 |
12 files changed, 409 insertions, 163 deletions
diff --git a/kud/demo/firewall/charts/packetgen/templates/deployment.yaml b/kud/demo/firewall/charts/packetgen/templates/deployment.yaml index 3538a6e7..63b10ea7 100644 --- a/kud/demo/firewall/charts/packetgen/templates/deployment.yaml +++ b/kud/demo/firewall/charts/packetgen/templates/deployment.yaml @@ -44,10 +44,10 @@ spec: - wget -O - https://git.onap.org/multicloud/k8s/plain/kud/tests/vFW/packetgen | sudo -E bash VirtletRootVolumeSize: 5Gi k8s.v1.cni.cncf.io/networks: '[{"name": {{ .Values.global.ovnMultusNetworkName | quote }}, "namespace": "default"}]' - ovnNetwork: '[ + k8s.plugin.opnfv.org/nfn-network: '{ "type": "ovn4nfv", "interface":[ { "name": {{ .Values.global.unprotectedNetworkName | quote }}, "ipAddress": {{ .Values.global.vpgPrivateIp0 | quote }}, "interface": "eth1" , "defaultGateway": "false"}, { "name": {{ .Values.global.onapPrivateNetworkName | quote }}, "ipAddress": {{ .Values.global.vpgPrivateIp1 | quote }}, "interface": "eth2" , "defaultGateway": "false"} - ]' + ]}' kubernetes.io/target-runtime: virtlet.cloud spec: affinity: diff --git a/kud/demo/firewall/charts/sink/templates/deployment.yaml b/kud/demo/firewall/charts/sink/templates/deployment.yaml index 57894010..b2119c10 100644 --- a/kud/demo/firewall/charts/sink/templates/deployment.yaml +++ b/kud/demo/firewall/charts/sink/templates/deployment.yaml @@ -19,10 +19,10 @@ spec: release: {{ .Release.Name }} annotations: k8s.v1.cni.cncf.io/networks: '[{"name": {{ .Values.global.ovnMultusNetworkName | quote }}, "namespace": "default"}]' - ovnNetwork: '[ + k8s.plugin.opnfv.org/nfn-network: '{ "type": "ovn4nfv", "interface": [ { "name": {{ .Values.global.protectedNetworkName | quote }}, "ipAddress": {{ .Values.global.vsnPrivateIp0 | quote }}, "interface": "eth1", "defaultGateway": "false" }, { "name": {{ .Values.global.onapPrivateNetworkName | quote }}, "ipAddress": {{ .Values.global.vsnPrivateIp1 | quote }}, "interface": "eth2" , "defaultGateway": "false"} - ]' + ]}' spec: containers: - name: {{ .Chart.Name }} diff --git a/kud/demo/firewall/templates/deployment.yaml b/kud/demo/firewall/templates/deployment.yaml index b273d287..060f6cd2 100644 --- a/kud/demo/firewall/templates/deployment.yaml +++ b/kud/demo/firewall/templates/deployment.yaml @@ -42,11 +42,11 @@ spec: - wget -O - https://git.onap.org/multicloud/k8s/plain/kud/tests/vFW/firewall | sudo -E bash VirtletRootVolumeSize: 5Gi k8s.v1.cni.cncf.io/networks: '[{"name": {{ .Values.global.ovnMultusNetworkName | quote }}, "namespace": "default"}]' - ovnNetwork: '[ + k8s.plugin.opnfv.org/nfn-network: '{ "type": "ovn4nfv", "interface": [ { "name": {{ .Values.global.unprotectedNetworkName | quote }}, "ipAddress": {{ .Values.global.vfwPrivateIp0 | quote }}, "interface": "eth1" , "defaultGateway": "false"}, { "name": {{ .Values.global.protectedNetworkName | quote }}, "ipAddress": {{ .Values.global.vfwPrivateIp1 | quote }}, "interface": "eth2", "defaultGateway": "false" }, { "name": {{ .Values.global.onapPrivateNetworkName | quote }}, "ipAddress": {{ .Values.global.vfwPrivateIp2 | quote }}, "interface": "eth3" , "defaultGateway": "false"} - ]' + ]}' kubernetes.io/target-runtime: virtlet.cloud spec: affinity: diff --git a/kud/demo/firewall/templates/onap-private-net.yaml b/kud/demo/firewall/templates/onap-private-net.yaml index e4079e2c..245466cf 100644 --- a/kud/demo/firewall/templates/onap-private-net.yaml +++ b/kud/demo/firewall/templates/onap-private-net.yaml @@ -1,9 +1,10 @@ -apiVersion: v1 +apiVersion: k8s.plugin.opnfv.org/v1alpha1 kind: Network metadata: name: {{ .Values.global.onapPrivateNetworkName }} spec: - cnitype : ovn4nfvk8s - name: {{ .Values.global.onapPrivateNetworkName }} - subnet: {{ .Values.global.onapPrivateNetCidr }} - gateway: {{ .Values.global.onapPrivateNetGw }} + cniType : ovn4nfv + ipv4Subnets: + - name: subnet1 + subnet: {{ .Values.global.onapPrivateNetCidr }} + gateway: {{ .Values.global.onapPrivateNetGw }} diff --git a/kud/demo/firewall/templates/protected-private-net.yaml b/kud/demo/firewall/templates/protected-private-net.yaml index 33724472..dcac386a 100644 --- a/kud/demo/firewall/templates/protected-private-net.yaml +++ b/kud/demo/firewall/templates/protected-private-net.yaml @@ -1,9 +1,10 @@ -apiVersion: v1 +apiVersion: k8s.plugin.opnfv.org/v1alpha1 kind: Network metadata: name: {{ .Values.global.protectedNetworkName }} spec: - cnitype : ovn4nfvk8s - name: {{ .Values.global.protectedNetworkName }} - subnet: {{ .Values.global.protectedNetCidr }} - gateway: {{ .Values.global.protectedNetGw }} + cniType : ovn4nfv + ipv4Subnets: + - name: subnet1 + subnet: {{ .Values.global.protectedNetCidr }} + gateway: {{ .Values.global.protectedNetGw }} diff --git a/kud/demo/firewall/templates/unprotected-private-net.yaml b/kud/demo/firewall/templates/unprotected-private-net.yaml index 2c192598..3bdc3381 100644 --- a/kud/demo/firewall/templates/unprotected-private-net.yaml +++ b/kud/demo/firewall/templates/unprotected-private-net.yaml @@ -1,9 +1,10 @@ -apiVersion: v1 +apiVersion: k8s.plugin.opnfv.org/v1alpha1 kind: Network metadata: name: {{ .Values.global.unprotectedNetworkName }} spec: - cnitype : ovn4nfvk8s - name: {{ .Values.global.unprotectedNetworkName }} - subnet: {{ .Values.global.protectedPrivateNetCidr }} - gateway: {{ .Values.global.protectedPrivateNetGw }} + cniType : ovn4nfv + ipv4Subnets: + - name: subnet1 + subnet: {{ .Values.global.protectedPrivateNetCidr }} + gateway: {{ .Values.global.protectedPrivateNetGw }} diff --git a/kud/deployment_infra/images/nfn.yml b/kud/deployment_infra/images/nfn.yml new file mode 100644 index 00000000..6e583b95 --- /dev/null +++ b/kud/deployment_infra/images/nfn.yml @@ -0,0 +1,322 @@ + +--- + +apiVersion: apiextensions.k8s.io/v1beta1 +kind: CustomResourceDefinition +metadata: + name: networks.k8s.plugin.opnfv.org +spec: + group: k8s.plugin.opnfv.org + names: + kind: Network + listKind: NetworkList + plural: networks + singular: network + scope: Namespaced + subresources: + status: {} + validation: + openAPIV3Schema: + properties: + apiVersion: + description: 'APIVersion defines the versioned schema of this representation + of an object. Servers should convert recognized schemas to the latest + internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#resources' + type: string + kind: + description: 'Kind is a string value representing the REST resource this + object represents. Servers may infer this from the endpoint the client + submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds' + type: string + metadata: + type: object + spec: + properties: + cniType: + description: 'INSERT ADDITIONAL SPEC FIELDS - desired state of cluster + Important: Run "operator-sdk generate k8s" to regenerate code after + modifying this file Add custom validation using kubebuilder tags: + https://book-v1.book.kubebuilder.io/beyond_basics/generating_crd.html' + type: string + dns: + properties: + domain: + type: string + nameservers: + items: + type: string + type: array + options: + items: + type: string + type: array + search: + items: + type: string + type: array + type: object + ipv4Subnets: + items: + properties: + excludeIps: + type: string + gateway: + type: string + name: + type: string + subnet: + type: string + required: + - name + - subnet + type: object + type: array + ipv6Subnets: + items: + properties: + excludeIps: + type: string + gateway: + type: string + name: + type: string + subnet: + type: string + required: + - name + - subnet + type: object + type: array + routes: + items: + properties: + dst: + type: string + gw: + type: string + required: + - dst + type: object + type: array + required: + - cniType + - ipv4Subnets + type: object + status: + properties: + state: + description: 'INSERT ADDITIONAL STATUS FIELD - define observed state + of cluster Important: Run "operator-sdk generate k8s" to regenerate + code after modifying this file Add custom validation using kubebuilder + tags: https://book-v1.book.kubebuilder.io/beyond_basics/generating_crd.html' + type: string + required: + - state + type: object + version: v1alpha1 + versions: + - name: v1alpha1 + served: true + storage: true + +--- + +apiVersion: v1 +kind: ServiceAccount +metadata: + name: k8s-nfn-sa + namespace: operator + +--- + +apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRole +metadata: + creationTimestamp: null + name: k8s-nfn-cr +rules: +- apiGroups: + - "" + resources: + - pods + - services + - endpoints + - persistentvolumeclaims + - events + - configmaps + - secrets + verbs: + - '*' +- apiGroups: + - apps + resources: + - deployments + - daemonsets + - replicasets + - statefulsets + verbs: + - '*' +- apiGroups: + - monitoring.coreos.com + resources: + - servicemonitors + verbs: + - get + - create +- apiGroups: + - apps + resourceNames: + - nfn-operator + resources: + - deployments/finalizers + verbs: + - update +- apiGroups: + - k8s.plugin.opnfv.org + resources: + - '*' + - providernetworks + verbs: + - '*' + +--- + +kind: ClusterRoleBinding +apiVersion: rbac.authorization.k8s.io/v1 +metadata: + name: k8s-nfn-crb +subjects: +- kind: Group + name: system:serviceaccounts + apiGroup: rbac.authorization.k8s.io +roleRef: + kind: ClusterRole + name: k8s-nfn-cr + apiGroup: rbac.authorization.k8s.io + +--- + +apiVersion: apps/v1 +kind: Deployment +metadata: + name: nfn-operator + namespace: operator +spec: + replicas: 1 + selector: + matchLabels: + name: nfn-operator + template: + metadata: + labels: + name: nfn-operator + spec: + affinity: + nodeAffinity: + requiredDuringSchedulingIgnoredDuringExecution: + nodeSelectorTerms: + - matchExpressions: + - key: nfnType + operator: In + values: + - operator + tolerations: + - key: "node-role.kubernetes.io/master" + effect: "NoSchedule" + operator: "Exists" + serviceAccountName: k8s-nfn-sa + containers: + - name: nfn-operator + image: rtsood/nfn-operator:latest + command: ["/usr/local/bin/entrypoint", "operator"] + imagePullPolicy: IfNotPresent + env: + - name: HOST_IP + valueFrom: + fieldRef: + fieldPath: status.hostIP + - name: POD_NAME + valueFrom: + fieldRef: + fieldPath: metadata.name + - name: OPERATOR_NAME + value: "nfn-operator" + +--- +kind: ConfigMap +apiVersion: v1 +metadata: + name: ovn4nfv-cni-config + namespace: operator + labels: + app: ovn4nfv +data: + ovn4nfv_k8s.conf: | + [logging] + loglevel=5 + logfile=/var/log/openvswitch/ovn4k8s.log + + [cni] + conf-dir=/etc/cni/net.d + plugin=ovn4nfvk8s-cni + + [kubernetes] + kubeconfig=/etc/kubernetes/admin.conf + +--- +apiVersion: extensions/v1beta1 +kind: DaemonSet +metadata: + name: ovn4nfv-cni + namespace: operator + labels: + app: ovn4nfv +spec: + updateStrategy: + type: RollingUpdate + template: + metadata: + labels: + app: ovn4nfv + spec: + hostNetwork: true + nodeSelector: + beta.kubernetes.io/arch: amd64 + tolerations: + - operator: Exists + effect: NoSchedule + containers: + - name: ovn4nfv + image: rtsood/nfn-operator:latest + command: ["/usr/local/bin/entrypoint", "cni"] + resources: + requests: + cpu: "100m" + memory: "50Mi" + limits: + cpu: "100m" + memory: "50Mi" + securityContext: + privileged: true + volumeMounts: + - name: cnibin + mountPath: /host/opt/cni/bin + - name: cniconf + mountPath: /host/etc/openvswitch + - name: ovn4nfv-cfg + mountPath: /tmp/ovn4nfv-conf + volumes: + - name: cnibin + hostPath: + path: /opt/cni/bin + - name: cniconf + hostPath: + path: /etc/openvswitch + - name: ovn4nfv-cfg + configMap: + name: ovn4nfv-cni-config + items: + - key: ovn4nfv_k8s.conf + path: ovn4nfv_k8s.conf + + diff --git a/kud/deployment_infra/playbooks/configure-ovn4nfv.yml b/kud/deployment_infra/playbooks/configure-ovn4nfv.yml index 2084c95d..b335f8c8 100644 --- a/kud/deployment_infra/playbooks/configure-ovn4nfv.yml +++ b/kud/deployment_infra/playbooks/configure-ovn4nfv.yml @@ -10,95 +10,6 @@ - import_playbook: configure-ovn.yml - import_playbook: configure-multus.yml -- hosts: kube-master:kube-node - environment: - PATH: "{{ ansible_env.PATH }}:/usr/local/go/bin/" - pre_tasks: - - name: Load kud variables - include_vars: - file: kud-vars.yml - roles: - - role: andrewrothstein.go - go_ver: "{{ go_version }}" - tasks: - - name: clone ovn4nfv-k8s-plugin repo - git: - repo: "{{ ovn4nfv_url }}" - dest: "{{ ovn4nfv_dest }}" - version: "{{ ovn4nfv_version }}" - force: yes - when: ovn4nfv_source_type == "source" - - name: clean ovn4nfvk8s left over files - make: - chdir: "{{ ovn4nfv_dest }}" - target: clean - - name: build ovn4nfvk8s-cni - make: - chdir: "{{ ovn4nfv_dest }}" - target: ovn4nfvk8s-cni - become: yes - environment: - GOPATH: "{{ go_path }}" - - name: copy ovn4nfvk8s-cni to cni folder - command: "mv {{ ovn4nfv_dest }}/ovn4nfvk8s-cni /opt/cni/bin/ovn4nfvk8s-cni" - become: yes - - name: create ovn4k8s config file - become: yes - blockinfile: - path: /etc/openvswitch/ovn4nfv_k8s.conf - create: yes - block: | - [logging] - loglevel=5 - logfile=/var/log/openvswitch/ovn4k8s.log - - [cni] - conf-dir=/etc/cni/net.d - plugin=ovn4nfvk8s-cni - - [kubernetes] - kubeconfig=/etc/kubernetes/admin.conf - - name: create ovnkube logging directory - file: - path: /var/log/openvswitch - state: directory - -- hosts: kube-master - environment: - PATH: "{{ ansible_env.PATH }}:/usr/local/go/bin/" - become: yes - tasks: - - name: Load kud variables - include_vars: - file: kud-vars.yml - - name: build ovn4nfvk8s - make: - chdir: "{{ ovn4nfv_dest }}" - target: ovn4nfvk8s - environment: - GOPATH: "{{ go_path }}" - - name: copy ovn4nfvk8s to /usr/bin folder - command: "mv {{ ovn4nfv_dest }}/ovn4nfvk8s /usr/bin/ovn4nfvk8s" - - name: create ovn4nfvk8s systemd service - blockinfile: - path: /etc/systemd/system/ovn4nfvk8s.service - create: yes - block: | - [Unit] - Description=OVN4NFV Kubernetes Daemon - - [Service] - ExecStart=/usr/bin/ovn4nfvk8s \ - -k8s-kubeconfig=/etc/kubernetes/admin.conf - - [Install] - WantedBy=multi-user.target - - name: start ovn4nfvk8s systemd service - service: - name: ovn4nfvk8s - state: started - enabled: yes - - hosts: localhost pre_tasks: - name: Load kud variables @@ -124,3 +35,15 @@ - name: create network objects shell: "/usr/local/bin/kubectl apply -f /tmp/ovn4nfvnetwork.yml" ignore_errors: True + + - name: create operator namespace + shell: "/usr/local/bin/kubectl create namespace operator" + ignore_errors: True + + - name: apply nfn operator label + command: "/usr/local/bin/kubectl label node {{ item }} nfnType=operator --overwrite" + with_inventory_hostnames: ovn-central + + - name: Apply NFN operator, operator roles, CRD's and ovn4nfv Daemonset + shell: "/usr/local/bin/kubectl apply -f {{ playbook_dir }}/../images/nfn.yml" + ignore_errors: True diff --git a/kud/deployment_infra/playbooks/kud-vars.yml b/kud/deployment_infra/playbooks/kud-vars.yml index c2bd2c84..ca382eae 100644 --- a/kud/deployment_infra/playbooks/kud-vars.yml +++ b/kud/deployment_infra/playbooks/kud-vars.yml @@ -51,12 +51,6 @@ istio_source_type: "tarball" istio_version: 1.0.3 istio_url: "https://github.com/istio/istio/releases/download/{{ istio_version }}/istio-{{ istio_version }}-linux.tar.gz" -go_path: "{{ base_dest }}/go" -ovn4nfv_dest: "{{ go_path }}/src/ovn4nfv-k8s-plugin" -ovn4nfv_source_type: "source" -ovn4nfv_version: adc7b2d430c44aa4137ac7f9420e14cfce3fa354 -ovn4nfv_url: "https://git.opnfv.org/ovn4nfv-k8s-plugin/" - go_version: '1.12.5' kubespray_version: 2.10.4 helm_client_version: 2.9.1 diff --git a/kud/tests/_common.sh b/kud/tests/_common.sh index 044891dd..92c09b0d 100755 --- a/kud/tests/_common.sh +++ b/kud/tests/_common.sh @@ -277,39 +277,43 @@ spec: MULTUS_NET cat << NET > $unprotected_private_net.yaml -apiVersion: v1 -kind: onapNetwork +apiVersion: k8s.plugin.opnfv.org/v1alpha1 +kind: Network + metadata: name: $unprotected_private_net - cnitype : ovn4nfvk8s spec: - name: $unprotected_private_net - subnet: $protected_private_net_cidr - gateway: 192.168.10.1/24 + cniType : ovn4nfv + ipv4Subnets: + - subnet: $protected_private_net_cidr + name: subnet1 + gateway: 192.168.10.1/24 NET cat << NET > $protected_private_net.yaml -apiVersion: v1 -kind: onapNetwork +apiVersion: k8s.plugin.opnfv.org/v1alpha1 +kind: Network metadata: name: $protected_private_net - cnitype : ovn4nfvk8s spec: - name: $protected_private_net - subnet: $protected_net_cidr - gateway: $protected_net_gw/24 + cniType : ovn4nfv + ipv4Subnets: + - subnet: $protected_net_cidr + name: subnet1 + gateway: $protected_net_gw/24 NET cat << NET > $onap_private_net.yaml -apiVersion: v1 -kind: onapNetwork +apiVersion: k8s.plugin.opnfv.org/v1alpha1 +kind: Network metadata: name: $onap_private_net - cnitype : ovn4nfvk8s spec: - name: $onap_private_net - subnet: $onap_private_net_cidr - gateway: 10.10.0.1/16 + cniType : ovn4nfv + ipv4Subnets: + - subnet: $onap_private_net_cidr + name: subnet1 + gateway: 10.10.0.1/16 NET proxy="apt:" @@ -381,10 +385,10 @@ spec: $ssh_key VirtletRootVolumeSize: 5Gi k8s.v1.cni.cncf.io/networks: '[{ "name": "$ovn_multus_network_name"}]' - ovnNetwork: '[ + k8s.plugin.opnfv.org/nfn-network: '{ "type": "ovn4nfv", "interface": [ { "name": "$unprotected_private_net", "ipAddress": "$vpg_private_ip_0", "interface": "eth1" , "defaultGateway": "false"}, { "name": "$onap_private_net", "ipAddress": "$vpg_private_ip_1", "interface": "eth2" , "defaultGateway": "false"} - ]' + ]}' kubernetes.io/target-runtime: virtlet.cloud spec: affinity: @@ -449,11 +453,11 @@ spec: $ssh_key VirtletRootVolumeSize: 5Gi k8s.v1.cni.cncf.io/networks: '[{ "name": "$ovn_multus_network_name"}]' - ovnNetwork: '[ + k8s.plugin.opnfv.org/nfn-network: '{ "type": "ovn4nfv", "interface": [ { "name": "$unprotected_private_net", "ipAddress": "$vfw_private_ip_0", "interface": "eth1" , "defaultGateway": "false"}, { "name": "$protected_private_net", "ipAddress": "$vfw_private_ip_1", "interface": "eth2", "defaultGateway": "false" }, { "name": "$onap_private_net", "ipAddress": "$vfw_private_ip_2", "interface": "eth3" , "defaultGateway": "false"} - ]' + ]}' kubernetes.io/target-runtime: virtlet.cloud spec: affinity: @@ -506,10 +510,10 @@ spec: context: darkstat annotations: k8s.v1.cni.cncf.io/networks: '[{ "name": "$ovn_multus_network_name"}]' - ovnNetwork: '[ + k8s.plugin.opnfv.org/nfn-network: '{ "type": "ovn4nfv", "interface": [ { "name": "$protected_private_net", "ipAddress": "$vsn_private_ip_0", "interface": "eth1", "defaultGateway": "false" }, { "name": "$onap_private_net", "ipAddress": "$vsn_private_ip_1", "interface": "eth2" , "defaultGateway": "false"} - ]' + ]}' spec: containers: - name: $sink_deployment_name @@ -1060,27 +1064,29 @@ spec: MULTUS_NET cat << NETWORK > ovn-port-net.yaml -apiVersion: v1 -kind: onapNetwork +apiVersion: k8s.plugin.opnfv.org/v1alpha1 +kind: Network metadata: name: ovn-port-net - cnitype : ovn4nfvk8s spec: - name: ovn-port-net - subnet: 172.16.33.0/24 - gateway: 172.16.33.1/24 + cniType : ovn4nfv + ipv4Subnets: + - subnet: 172.16.33.0/24 + name: subnet1 + gateway: 172.16.33.1/24 NETWORK cat << NETWORK > ovn-priv-net.yaml -apiVersion: v1 -kind: onapNetwork +apiVersion: k8s.plugin.opnfv.org/v1alpha1 +kind: Network metadata: name: ovn-priv-net - cnitype : ovn4nfvk8s spec: - name: ovn-priv-net - subnet: 172.16.44.0/24 - gateway: 172.16.44.1/24 + cniType : ovn4nfv + ipv4Subnets: + - subnet: 172.16.44.0/24 + name: subnet1 + gateway: 172.16.44.1/24 NETWORK cat << DEPLOYMENT > $ovn4nfv_deployment_name.yaml @@ -1101,8 +1107,8 @@ spec: app: ovn4nfv annotations: k8s.v1.cni.cncf.io/networks: '[{ "name": "$ovn_multus_network_name"}]' - ovnNetwork: '[{ "name": "ovn-port-net", "interface": "net0" , "defaultGateway": "false"}, - { "name": "ovn-priv-net", "interface": "net1" , "defaultGateway": "false"}]' + k8s.plugin.opnfv.org/nfn-network: '{ "type": "ovn4nfv", "interface": [{ "name": "ovn-port-net", "interface": "net0" , "defaultGateway": "false"}, + { "name": "ovn-priv-net", "interface": "net1" , "defaultGateway": "false"}]}' spec: containers: - name: $ovn4nfv_deployment_name diff --git a/kud/tests/integration_vcFW.sh b/kud/tests/integration_vcFW.sh index a4035207..af8039c4 100755 --- a/kud/tests/integration_vcFW.sh +++ b/kud/tests/integration_vcFW.sh @@ -19,7 +19,6 @@ source _functions.sh csar_id=aa443e7e-c8ba-11e8-8877-525400b164ff # Setup -install_ovn_deps if [[ ! -f $HOME/.ssh/id_rsa.pub ]]; then echo -e "\n\n\n" | ssh-keygen -t rsa -N "" fi @@ -27,9 +26,8 @@ populate_CSAR_vms_containers_vFW $csar_id pushd ${CSAR_DIR}/${csar_id} for net in $unprotected_private_net $protected_private_net $onap_private_net; do - cleanup_network $net.yaml echo "Create OVN Network $net network" - init_network $net.yaml + kubectl apply -f $net.yaml done for resource in onap-ovn4nfvk8s-network sink-service sink_configmap; do kubectl apply -f $resource.yaml @@ -51,6 +49,6 @@ done # Teardown #teardown $packetgen_deployment_name $firewall_deployment_name $sink_deployment_name #for net in $unprotected_private_net $protected_private_net $onap_private_net; do -# cleanup_network $net.yaml +# kubectl delete -f $net.yaml #done popd diff --git a/kud/tests/ovn4nfv.sh b/kud/tests/ovn4nfv.sh index 6be6aae8..cd2664ad 100755 --- a/kud/tests/ovn4nfv.sh +++ b/kud/tests/ovn4nfv.sh @@ -18,14 +18,12 @@ source _functions.sh csar_id=a1c5b53e-d7ab-11e8-85b7-525400e8c29a # Setup -install_ovn_deps populate_CSAR_ovn4nfv $csar_id pushd ${CSAR_DIR}/${csar_id} for net in ovn-priv-net ovn-port-net; do - cleanup_network $net.yaml echo "Create OVN Network $net network" - init_network $net.yaml + kubectl apply -f $net.yaml done kubectl apply -f onap-ovn4nfvk8s-network.yaml setup $ovn4nfv_deployment_name @@ -45,6 +43,8 @@ fi # Teardown teardown $ovn4nfv_deployment_name -cleanup_network ovn-priv-net.yaml -cleanup_network ovn-port-net.yaml +for net in ovn-priv-net ovn-port-net; do + echo "Delete OVN Network $net network" + kubectl delete -f $net.yaml +done popd |