c034b0060e
Till now, for installing kuryr-kubernetes and one of the crucial service - kubernetes, there has been used manual method for installing it in specified version. Over time it became a burden to follow requirements and constraints, therefore decision has been made to use recommended way of installing Kubernetes - kubeadm. In this patch devstack installation of the kuryr-kubernetes and its dependences has been heavily reworked. Other than that, OpenShift related functions has been removed, since they were all outdated and non-working for the long time. Change-Id: Ife21874c0a71ba07723094c0f880aabcf5825b77
108 lines
3.9 KiB
YAML
108 lines
3.9 KiB
YAML
- hosts: all
|
|
tasks:
|
|
# NOTE(maysams): Revisit this package removal step
|
|
# once other operating systems are supported on the gates
|
|
- name: Remove old installation of Go
|
|
shell: |
|
|
apt remove -y --purge golang
|
|
apt autoremove -y
|
|
become: yes
|
|
ignore_errors: yes
|
|
|
|
- name: Download GO {{ gopkg }}
|
|
get_url:
|
|
url: https://dl.google.com/go/{{ gopkg }}
|
|
dest: /tmp/{{ gopkg }}
|
|
force: yes
|
|
|
|
- name: Unarchive GO
|
|
unarchive:
|
|
src: /tmp/{{ gopkg }}
|
|
dest: /usr/local
|
|
remote_src: yes
|
|
become: true
|
|
|
|
- name: Clone K8s test-infra repository
|
|
git:
|
|
repo: https://github.com/kubernetes/test-infra
|
|
dest: ~/test-infra
|
|
force: yes
|
|
|
|
- name: Install kubetest
|
|
shell: go install ./kubetest
|
|
args:
|
|
chdir: ~/test-infra
|
|
environment:
|
|
GO111MODULE: "on"
|
|
PATH: "{{ ansible_env.PATH }}:/usr/local/go/bin:{{ ansible_env.HOME }}/go/bin"
|
|
|
|
- name: Clone kubernetes repository
|
|
git:
|
|
repo: https://github.com/kubernetes/kubernetes.git
|
|
version: "{{ kubetest_version }}"
|
|
dest: ~/kubernetes
|
|
force: yes
|
|
|
|
- name: Patch e2e tests
|
|
shell: |
|
|
sed -i 's/podStartTimeout = .*/podStartTimeout = 2 * time.Minute/' test/e2e/framework/pod/wait.go
|
|
sed -i 's/for i in $(seq 1 5)/sleep {{ np_sleep }};for i in $(seq 1 300)/' test/e2e/network/network_policy.go
|
|
sed -i '/"add", "\/metadata\/labels\/isolated", nil)/a\\t\t\ttime.Sleep(60 * time.Second)' test/e2e/network/network_policy.go
|
|
sed -i '/f, f.Namespace, "client-a", service, 80, v1.ProtocolSCTP)/a \\t\t\ttime.Sleep(60 * time.Second)' test/e2e/network/network_policy.go
|
|
args:
|
|
chdir: ~/kubernetes
|
|
|
|
- name: Build e2e tests
|
|
block:
|
|
- name: Install make package
|
|
become: true
|
|
package:
|
|
name: "make"
|
|
state: present
|
|
- name: Build e2e tests
|
|
shell: |
|
|
make WHAT=cmd/kubectl
|
|
make WHAT=vendor/github.com/onsi/ginkgo/ginkgo
|
|
make WHAT=test/e2e/e2e.test
|
|
args:
|
|
chdir: ~/kubernetes
|
|
environment:
|
|
PATH: "{{ ansible_env.PATH }}:/usr/local/go/bin:{{ ansible_env.HOME }}/go/bin"
|
|
|
|
- name: Create .kube folder within BASE
|
|
file:
|
|
path: "{{ ansible_env.HOME }}/.kube"
|
|
state: directory
|
|
become: yes
|
|
|
|
- name: Copy kubeconfig file
|
|
shell: "cp /etc/kubernetes/admin.conf {{ ansible_env.HOME }}/.kube/config"
|
|
become: yes
|
|
|
|
- name: Change kubeconfig file permission
|
|
file:
|
|
path: "{{ ansible_env.HOME }}/.kube/config"
|
|
owner: zuul
|
|
group: zuul
|
|
become: yes
|
|
|
|
- name: Run Network Policy tests
|
|
block:
|
|
- name: Run Network Policy tests without SCTPConnectivity
|
|
shell: kubetest --provider=local --check-version-skew=false --test --ginkgo-parallel={{ np_parallel_number }} --test_args="--ginkgo.focus=\[Feature:NetworkPolicy --ginkgo.skip=\[Feature:SCTPConnectivity|should.enforce.policies.to.check.ingress.and.egress.policies.can.be.controlled.independently.based.on.PodSelector" --dump=/tmp > ~/np_kubetest.log
|
|
args:
|
|
chdir: ~/kubernetes
|
|
environment:
|
|
GINKGO_NO_COLOR: "y"
|
|
KUBECONFIG: "{{ ansible_env.HOME }}/.kube/config"
|
|
PATH: "{{ ansible_env.PATH }}:/usr/local/go/bin:{{ ansible_env.HOME }}/go/bin"
|
|
always:
|
|
- name: Run Network Policy SCTPConnectivity tests
|
|
shell: kubetest --provider=local --check-version-skew=false --test --ginkgo-parallel={{ np_parallel_number }} --test_args="--ginkgo.focus=NetworkPolicy.\[Feature:SCTPConnectivity" --dump=/tmp > ~/np_sctp_kubetest.log
|
|
args:
|
|
chdir: ~/kubernetes
|
|
environment:
|
|
GINKGO_NO_COLOR: "y"
|
|
KUBECONFIG: "{{ ansible_env.HOME }}/.kube/config"
|
|
PATH: "{{ ansible_env.PATH }}:/usr/local/go/bin:{{ ansible_env.HOME }}/go/bin"
|