Unverified Commit fd8481a2 authored by ShylajaDevadiga's avatar ShylajaDevadiga Committed by GitHub

Adjust e2e test run script and fixes (#6718)

parent a298bfdb
...@@ -8,7 +8,7 @@ RELEASE_VERSION = (ENV['E2E_RELEASE_VERSION'] || "") ...@@ -8,7 +8,7 @@ RELEASE_VERSION = (ENV['E2E_RELEASE_VERSION'] || "")
EXTERNAL_DB = (ENV['E2E_EXTERNAL_DB'] || "etcd") EXTERNAL_DB = (ENV['E2E_EXTERNAL_DB'] || "etcd")
HARDENED = (ENV['E2E_HARDENED'] || "") HARDENED = (ENV['E2E_HARDENED'] || "")
NODE_CPUS = (ENV['E2E_NODE_CPUS'] || 2).to_i NODE_CPUS = (ENV['E2E_NODE_CPUS'] || 2).to_i
NODE_MEMORY = (ENV['E2E_NODE_MEMORY'] || 1024).to_i NODE_MEMORY = (ENV['E2E_NODE_MEMORY'] || 2048).to_i
# Virtualbox >= 6.1.28 require `/etc/vbox/network.conf` for expanded private networks # Virtualbox >= 6.1.28 require `/etc/vbox/network.conf` for expanded private networks
NETWORK_PREFIX = "10.10.10" NETWORK_PREFIX = "10.10.10"
install_type = "" install_type = ""
......
...@@ -67,7 +67,7 @@ var _ = Describe("Verify Create", Ordered, func() { ...@@ -67,7 +67,7 @@ var _ = Describe("Verify Create", Ordered, func() {
for _, node := range nodes { for _, node := range nodes {
g.Expect(node.Status).Should(Equal("Ready")) g.Expect(node.Status).Should(Equal("Ready"))
} }
}, "420s", "5s").Should(Succeed()) }, "620s", "5s").Should(Succeed())
_, _ = e2e.ParseNodes(kubeConfigFile, true) _, _ = e2e.ParseNodes(kubeConfigFile, true)
fmt.Printf("\nFetching Pods status\n") fmt.Printf("\nFetching Pods status\n")
...@@ -81,7 +81,7 @@ var _ = Describe("Verify Create", Ordered, func() { ...@@ -81,7 +81,7 @@ var _ = Describe("Verify Create", Ordered, func() {
g.Expect(pod.Status).Should(Equal("Running"), pod.Name) g.Expect(pod.Status).Should(Equal("Running"), pod.Name)
} }
} }
}, "420s", "5s").Should(Succeed()) }, "620s", "5s").Should(Succeed())
_, _ = e2e.ParsePods(kubeConfigFile, true) _, _ = e2e.ParsePods(kubeConfigFile, true)
}) })
......
ENV['VAGRANT_NO_PARALLEL'] = 'no' ENV['VAGRANT_NO_PARALLEL'] = 'no'
NODE_ROLES = (ENV['NODE_ROLES'] || NODE_ROLES = (ENV['E2E_NODE_ROLES'] ||
["server-0", "agent-0"]) ["server-0", "agent-0"])
NODE_BOXES = (ENV['NODE_BOXES'] || NODE_BOXES = (ENV['E2E_NODE_BOXES'] ||
['generic/ubuntu2004', 'generic/ubuntu2004', 'generic/ubuntu2004']) ['generic/ubuntu2004', 'generic/ubuntu2004', 'generic/ubuntu2004'])
GITHUB_BRANCH = (ENV['GITHUB_BRANCH'] || "master") GITHUB_BRANCH = (ENV['E2E_GITHUB_BRANCH'] || "master")
RELEASE_VERSION = (ENV['RELEASE_VERSION'] || "") RELEASE_VERSION = (ENV['E2E_RELEASE_VERSION'] || "")
NODE_CPUS = (ENV['NODE_CPUS'] || 2).to_i NODE_CPUS = (ENV['E2E_NODE_CPUS'] || 2).to_i
NODE_MEMORY = (ENV['NODE_MEMORY'] || 1024).to_i NODE_MEMORY = (ENV['E2E_NODE_MEMORY'] || 2048).to_i
# Virtualbox >= 6.1.28 require `/etc/vbox/network.conf` for expanded private networks # Virtualbox >= 6.1.28 require `/etc/vbox/network.conf` for expanded private networks
NETWORK_PREFIX = "10.10.10" NETWORK_PREFIX = "10.10.10"
install_type = "" install_type = ""
......
...@@ -16,6 +16,7 @@ import ( ...@@ -16,6 +16,7 @@ import (
var nodeOS = flag.String("nodeOS", "generic/ubuntu2004", "VM operating system") var nodeOS = flag.String("nodeOS", "generic/ubuntu2004", "VM operating system")
var serverCount = flag.Int("serverCount", 1, "number of server nodes") var serverCount = flag.Int("serverCount", 1, "number of server nodes")
var agentCount = flag.Int("agentCount", 1, "number of agent nodes") var agentCount = flag.Int("agentCount", 1, "number of agent nodes")
var ci = flag.Bool("ci", false, "running on CI")
// Environment Variables Info: // Environment Variables Info:
// E2E_RELEASE_VERSION=v1.23.1+k3s2 or nil for latest commit from master // E2E_RELEASE_VERSION=v1.23.1+k3s2 or nil for latest commit from master
...@@ -57,7 +58,7 @@ var _ = Describe("Verify CRI-Dockerd", Ordered, func() { ...@@ -57,7 +58,7 @@ var _ = Describe("Verify CRI-Dockerd", Ordered, func() {
for _, node := range nodes { for _, node := range nodes {
g.Expect(node.Status).Should(Equal("Ready")) g.Expect(node.Status).Should(Equal("Ready"))
} }
}, "420s", "5s").Should(Succeed()) }, "620s", "5s").Should(Succeed())
_, _ = e2e.ParseNodes(kubeConfigFile, true) _, _ = e2e.ParseNodes(kubeConfigFile, true)
fmt.Printf("\nFetching pods status\n") fmt.Printf("\nFetching pods status\n")
...@@ -71,7 +72,7 @@ var _ = Describe("Verify CRI-Dockerd", Ordered, func() { ...@@ -71,7 +72,7 @@ var _ = Describe("Verify CRI-Dockerd", Ordered, func() {
g.Expect(pod.Status).Should(Equal("Running"), pod.Name) g.Expect(pod.Status).Should(Equal("Running"), pod.Name)
} }
} }
}, "420s", "5s").Should(Succeed()) }, "620s", "5s").Should(Succeed())
_, _ = e2e.ParsePods(kubeConfigFile, true) _, _ = e2e.ParsePods(kubeConfigFile, true)
}) })
}) })
...@@ -83,7 +84,7 @@ var _ = AfterEach(func() { ...@@ -83,7 +84,7 @@ var _ = AfterEach(func() {
}) })
var _ = AfterSuite(func() { var _ = AfterSuite(func() {
if failed { if failed && !*ci {
fmt.Println("FAILED!") fmt.Println("FAILED!")
} else { } else {
Expect(e2e.DestroyCluster()).To(Succeed()) Expect(e2e.DestroyCluster()).To(Succeed())
......
...@@ -17,6 +17,7 @@ var nodeOS = flag.String("nodeOS", "generic/ubuntu2004", "VM operating system") ...@@ -17,6 +17,7 @@ var nodeOS = flag.String("nodeOS", "generic/ubuntu2004", "VM operating system")
var serverCount = flag.Int("serverCount", 3, "number of server nodes") var serverCount = flag.Int("serverCount", 3, "number of server nodes")
var agentCount = flag.Int("agentCount", 1, "number of agent nodes") var agentCount = flag.Int("agentCount", 1, "number of agent nodes")
var hardened = flag.Bool("hardened", false, "true or false") var hardened = flag.Bool("hardened", false, "true or false")
var ci = flag.Bool("ci", false, "running on CI")
func Test_E2EDualStack(t *testing.T) { func Test_E2EDualStack(t *testing.T) {
flag.Parse() flag.Parse()
...@@ -54,7 +55,7 @@ var _ = Describe("Verify DualStack Configuration", Ordered, func() { ...@@ -54,7 +55,7 @@ var _ = Describe("Verify DualStack Configuration", Ordered, func() {
for _, node := range nodes { for _, node := range nodes {
g.Expect(node.Status).Should(Equal("Ready")) g.Expect(node.Status).Should(Equal("Ready"))
} }
}, "420s", "5s").Should(Succeed()) }, "620s", "5s").Should(Succeed())
_, err := e2e.ParseNodes(kubeConfigFile, true) _, err := e2e.ParseNodes(kubeConfigFile, true)
Expect(err).NotTo(HaveOccurred()) Expect(err).NotTo(HaveOccurred())
}) })
...@@ -70,7 +71,7 @@ var _ = Describe("Verify DualStack Configuration", Ordered, func() { ...@@ -70,7 +71,7 @@ var _ = Describe("Verify DualStack Configuration", Ordered, func() {
g.Expect(pod.Status).Should(Equal("Running"), pod.Name) g.Expect(pod.Status).Should(Equal("Running"), pod.Name)
} }
} }
}, "420s", "5s").Should(Succeed()) }, "620s", "5s").Should(Succeed())
_, err := e2e.ParsePods(kubeConfigFile, true) _, err := e2e.ParsePods(kubeConfigFile, true)
Expect(err).NotTo(HaveOccurred()) Expect(err).NotTo(HaveOccurred())
}) })
...@@ -189,7 +190,7 @@ var _ = AfterEach(func() { ...@@ -189,7 +190,7 @@ var _ = AfterEach(func() {
}) })
var _ = AfterSuite(func() { var _ = AfterSuite(func() {
if failed { if failed && !*ci {
fmt.Println("FAILED!") fmt.Println("FAILED!")
} else { } else {
Expect(e2e.DestroyCluster()).To(Succeed()) Expect(e2e.DestroyCluster()).To(Succeed())
......
...@@ -22,6 +22,7 @@ var nodeOS = flag.String("nodeOS", "generic/ubuntu2004", "VM operating system") ...@@ -22,6 +22,7 @@ var nodeOS = flag.String("nodeOS", "generic/ubuntu2004", "VM operating system")
var serverCount = flag.Int("serverCount", 1, "number of server nodes") var serverCount = flag.Int("serverCount", 1, "number of server nodes")
var agentCount = flag.Int("agentCount", 1, "number of agent nodes") var agentCount = flag.Int("agentCount", 1, "number of agent nodes")
var hardened = flag.Bool("hardened", false, "true or false") var hardened = flag.Bool("hardened", false, "true or false")
var ci = flag.Bool("ci", false, "running on CI")
// getLBServiceIPs returns the externalIP configured for flannel // getLBServiceIPs returns the externalIP configured for flannel
func getExternalIPs(kubeConfigFile string) ([]string, error) { func getExternalIPs(kubeConfigFile string) ([]string, error) {
...@@ -82,7 +83,7 @@ var _ = Describe("Verify External-IP config", Ordered, func() { ...@@ -82,7 +83,7 @@ var _ = Describe("Verify External-IP config", Ordered, func() {
for _, node := range nodes { for _, node := range nodes {
g.Expect(node.Status).Should(Equal("Ready")) g.Expect(node.Status).Should(Equal("Ready"))
} }
}, "420s", "5s").Should(Succeed()) }, "620s", "5s").Should(Succeed())
_, err := e2e.ParseNodes(kubeConfigFile, true) _, err := e2e.ParseNodes(kubeConfigFile, true)
Expect(err).NotTo(HaveOccurred()) Expect(err).NotTo(HaveOccurred())
}) })
...@@ -98,7 +99,7 @@ var _ = Describe("Verify External-IP config", Ordered, func() { ...@@ -98,7 +99,7 @@ var _ = Describe("Verify External-IP config", Ordered, func() {
g.Expect(pod.Status).Should(Equal("Running"), pod.Name) g.Expect(pod.Status).Should(Equal("Running"), pod.Name)
} }
} }
}, "420s", "5s").Should(Succeed()) }, "620s", "5s").Should(Succeed())
_, err := e2e.ParsePods(kubeConfigFile, true) _, err := e2e.ParsePods(kubeConfigFile, true)
Expect(err).NotTo(HaveOccurred()) Expect(err).NotTo(HaveOccurred())
}) })
...@@ -159,7 +160,7 @@ var _ = AfterEach(func() { ...@@ -159,7 +160,7 @@ var _ = AfterEach(func() {
}) })
var _ = AfterSuite(func() { var _ = AfterSuite(func() {
if failed { if failed && !*ci {
fmt.Println("FAILED!") fmt.Println("FAILED!")
} else { } else {
Expect(e2e.DestroyCluster()).To(Succeed()) Expect(e2e.DestroyCluster()).To(Succeed())
......
ENV['VAGRANT_NO_PARALLEL'] = 'no' ENV['VAGRANT_NO_PARALLEL'] = 'no'
NODE_ROLES = (ENV['NODE_ROLES'] || NODE_ROLES = (ENV['E2E_NODE_ROLES'] ||
["server-0", "agent-0"]) ["server-0", "agent-0"])
NODE_BOXES = (ENV['NODE_BOXES'] || NODE_BOXES = (ENV['E2E_NODE_BOXES'] ||
['generic/ubuntu2004', 'generic/ubuntu2004', 'generic/ubuntu2004']) ['generic/ubuntu2004', 'generic/ubuntu2004', 'generic/ubuntu2004'])
GITHUB_BRANCH = (ENV['GITHUB_BRANCH'] || "master") GITHUB_BRANCH = (ENV['E2E_GITHUB_BRANCH'] || "master")
RELEASE_VERSION = (ENV['RELEASE_VERSION'] || "") RELEASE_VERSION = (ENV['E2E_RELEASE_VERSION'] || "")
NODE_CPUS = (ENV['NODE_CPUS'] || 2).to_i NODE_CPUS = (ENV['E2E_NODE_CPUS'] || 2).to_i
NODE_MEMORY = (ENV['NODE_MEMORY'] || 1024).to_i NODE_MEMORY = (ENV['E2E_NODE_MEMORY'] || 2048).to_i
# Virtualbox >= 6.1.28 require `/etc/vbox/network.conf` for expanded private networks # Virtualbox >= 6.1.28 require `/etc/vbox/network.conf` for expanded private networks
NETWORK_PREFIX = "10.10.10" NETWORK_PREFIX = "10.10.10"
install_type = "" install_type = ""
def provision(vm, role, role_num, node_num) def provision(vm, role, role_num, node_num)
vm.box = NODE_BOXES[node_num] vm.box = NODE_BOXES[node_num]
vm.hostname = role vm.hostname = role
......
...@@ -16,6 +16,7 @@ import ( ...@@ -16,6 +16,7 @@ import (
var nodeOS = flag.String("nodeOS", "generic/ubuntu2004", "VM operating system") var nodeOS = flag.String("nodeOS", "generic/ubuntu2004", "VM operating system")
var serverCount = flag.Int("serverCount", 1, "number of server nodes") var serverCount = flag.Int("serverCount", 1, "number of server nodes")
var agentCount = flag.Int("agentCount", 1, "number of agent nodes") var agentCount = flag.Int("agentCount", 1, "number of agent nodes")
var ci = flag.Bool("ci", false, "running on CI")
// Environment Variables Info: // Environment Variables Info:
// E2E_RELEASE_VERSION=v1.23.1+k3s2 or nil for latest commit from master // E2E_RELEASE_VERSION=v1.23.1+k3s2 or nil for latest commit from master
...@@ -57,7 +58,7 @@ var _ = Describe("Verify prefer-bundled-bin flag", Ordered, func() { ...@@ -57,7 +58,7 @@ var _ = Describe("Verify prefer-bundled-bin flag", Ordered, func() {
for _, node := range nodes { for _, node := range nodes {
g.Expect(node.Status).Should(Equal("Ready")) g.Expect(node.Status).Should(Equal("Ready"))
} }
}, "420s", "5s").Should(Succeed()) }, "620s", "5s").Should(Succeed())
_, _ = e2e.ParseNodes(kubeConfigFile, true) _, _ = e2e.ParseNodes(kubeConfigFile, true)
fmt.Printf("\nFetching pods status\n") fmt.Printf("\nFetching pods status\n")
...@@ -71,7 +72,7 @@ var _ = Describe("Verify prefer-bundled-bin flag", Ordered, func() { ...@@ -71,7 +72,7 @@ var _ = Describe("Verify prefer-bundled-bin flag", Ordered, func() {
g.Expect(pod.Status).Should(Equal("Running"), pod.Name) g.Expect(pod.Status).Should(Equal("Running"), pod.Name)
} }
} }
}, "420s", "5s").Should(Succeed()) }, "620s", "5s").Should(Succeed())
_, _ = e2e.ParsePods(kubeConfigFile, true) _, _ = e2e.ParsePods(kubeConfigFile, true)
}) })
}) })
...@@ -83,7 +84,7 @@ var _ = AfterEach(func() { ...@@ -83,7 +84,7 @@ var _ = AfterEach(func() {
}) })
var _ = AfterSuite(func() { var _ = AfterSuite(func() {
if failed { if failed && !*ci {
fmt.Println("FAILED!") fmt.Println("FAILED!")
} else { } else {
Expect(e2e.DestroyCluster()).To(Succeed()) Expect(e2e.DestroyCluster()).To(Succeed())
......
#!/bin/bash #!/bin/bash
servercount=${5:-3}
agentcount=${6:-1} nodeOS=${1:-"generic/ubuntu2004"}
db=${7:-"etcd"} servercount=${2:-3}
agentcount=${3:-1}
db=${4:-"etcd"}
hardened=${5:-""}
k3s_version=${k3s_version} k3s_version=${k3s_version}
k3s_channel=${k3s_channel:-"commit"} k3s_channel=${k3s_channel:-"commit"}
hardened=${8:-""}
E2E_EXTERNAL_DB=$db && export E2E_EXTERNAL_DB E2E_EXTERNAL_DB=$db && export E2E_EXTERNAL_DB
E2E_REGISTRY=true && export E2E_REGISTRY E2E_REGISTRY=true && export E2E_REGISTRY
eval openvpn --daemon --config external.ovpn &>/dev/null & cd
sleep 10 cd k3s && git pull --rebase origin master
/usr/local/go/bin/go mod tidy
cd tests/e2e
OS=$(echo "$nodeOS"|cut -d'/' -f2)
echo "$OS"
# create directory if it does not exists
# create directory if it does not exists
if [ ! -d createreport ]
then
mkdir createreport
fi
count=0
run_tests() {
vagrant global-status | awk '/running/'|cut -c1-7| xargs -r -d '\n' -n 1 -- vagrant destroy -f
echo 'RUNNING DUALSTACK TEST'
E2E_HARDENED="$hardened" /usr/local/go/bin/go test -v dualstack/dualstack_test.go -nodeOS="$nodeOS" -serverCount=1 -agentCount=1 -timeout=30m -json -ci |tee createreport/k3s_"$OS".log
ssh -i "$1" -o "StrictHostKeyChecking no" $2@$3 'cd k3s && git pull --rebase origin master' echo 'RUNNING CLUSTER VALIDATION TEST'
ssh -i "$1" -o "StrictHostKeyChecking no" $2@$3 'cd k3s && /usr/local/go/bin/go mod tidy' E2E_REGISTRY=true E2E_HARDENED="$hardened" /usr/local/go/bin/go test -v validatecluster/validatecluster_test.go -nodeOS="$nodeOS" -serverCount=$((servercount)) -agentCount=$((agentcount)) -timeout=30m -json -ci | tee -a createreport/k3s_"$OS".log
ssh -i "$1" -o "StrictHostKeyChecking no" $2@$3 "cd k3s/tests/e2e/dualstack && vagrant global-status | awk '/running/'|cut -c1-7| xargs -r -d '\n' -n 1 -- vagrant destroy -f" echo 'RUNNING SECRETS ENCRYPTION TEST'
/usr/local/go/bin/go test -v secretsencryption/secretsencryption_test.go -nodeOS="$nodeOS" -serverCount=$((servercount)) -timeout=1h -json -ci | tee -a createreport/k3s_"$OS".log
echo 'RUNNING DUALSTACK VALIDATION TEST' echo 'RUN CLUSTER RESET TEST'
ssh -i "$1" -o "StrictHostKeyChecking no" $2@$3 "cd k3s/tests/e2e && E2E_HARDENED="$hardened" /usr/local/go/bin/go test -v dualstack/dualstack_test.go -nodeOS="$4" -serverCount=$((servercount)) -agentCount=$((agentcount)) -timeout=30m -json" | tee -a testreport.log /usr/local/go/bin/go test -v clusterreset/clusterreset_test.go -nodeOS="$nodeOS" -serverCount=3 -agentCount=1 -timeout=30m -json -ci | tee -a createreport/k3s_"$OS".log
ssh -i "$1" -o "StrictHostKeyChecking no" $2@$3 'cd k3s/tests/e2e/dualstack && vagrant destroy -f'
echo 'RUNNING CLUSTER VALIDATION TEST' echo 'RUNNING SPLIT SERVER VALIDATION TEST'
ssh -i "$1" -o "StrictHostKeyChecking no" $2@$3 "cd k3s/tests/e2e && E2E_REGISTRY=true E2E_HARDENED="$hardened" /usr/local/go/bin/go test -v validatecluster/validatecluster_test.go -nodeOS="$4" -serverCount=$((servercount)) -agentCount=$((agentcount)) -timeout=30m -json" | tee -a testreport.log E2E_HARDENED="$hardened" /usr/local/go/bin/go test -v splitserver/splitserver_test.go -nodeOS="$nodeOS" -timeout=30m -json -ci | tee -a createreport/k3s_"$OS".log
ssh -i "$1" -o "StrictHostKeyChecking no" $2@$3 'cd k3s/tests/e2e/validatecluster && vagrant destroy -f'
echo 'RUNNING SECRETS ENCRYPTION TEST' echo 'RUNNING DOCKER CRI VALIDATION TEST'
ssh -i "$1" -o "StrictHostKeyChecking no" $2@$3 "cd k3s/tests/e2e && /usr/local/go/bin/go test -v secretsencryption/secretsencryption_test.go -nodeOS="$4" -serverCount=$((servercount)) -timeout=30m -json" | tee -a testreport.log /usr/local/go/bin/go test -v docker/docker_test.go -nodeOS="$nodeOS" -serverCount=1 -agentCount=1 -timeout=30m -json -ci | tee -a createreport/k3s_"$OS".log
ssh -i "$1" -o "StrictHostKeyChecking no" $2@$3 'cd k3s/tests/e2e/secretsencryption && vagrant destroy -f'
echo 'RUNNING SNAPSHOT RESTORE TEST' echo 'RUNNING EXTERNAL IP TEST'
ssh -i "$1" -o "StrictHostKeyChecking no" $2@$3 "cd k3s/tests/e2e && /usr/local/go/bin/go test -v snapshotrestore/snapshotrestore_test.go -nodeOS="$4" -serverCount=$((servercount)) -agentCount=$((agentcount)) -timeout=30m -json" | tee -a testreport.log /usr/local/go/bin/go test -v externalip/externalip_test.go -nodeOS="$nodeOS" -serverCount=1 -agentCount=1 -timeout=30m -json -ci | tee -a createreport/k3s_"$OS".log
ssh -i "$1" -o "StrictHostKeyChecking no" $2@$3 'cd k3s/tests/e2e/secretsencryption && vagrant destroy -f'
echo 'RUNNING SPLIT SERVER VALIDATION TEST' echo 'RUNNING PRE-BUNDLED-BIN IP TEST'
ssh -i "$1" -o "StrictHostKeyChecking no" $2@$3 "cd k3s/tests/e2e && E2E_HARDENED="$hardened" /usr/local/go/bin/go test -v splitserver/splitserver_test.go -nodeOS="$4" -timeout=30m -json" | tee -a testreport.log /usr/local/go/bin/go test -v preferbundled/preferbundled_test.go -nodeOS="$nodeOS" -serverCount=1 -agentCount=1 -timeout=30m -json -ci | tee -a createreport/k3s_"$OS".log
ssh -i "$1" -o "StrictHostKeyChecking no" $2@$3 'cd k3s/tests/e2e/splitserver && vagrant destroy -f'
E2E_RELEASE_VERSION=$k3s_version && export E2E_RELEASE_VERSION echo 'RUNNING SNAPSHOT AND RESTORE TEST'
E2E_RELEASE_CHANNEL=$k3s_channel && export E2E_RELEASE_CHANNEL /usr/local/go/bin/go test -v snapshotrestore/snapshotrestore_test.go -nodeOS="$nodeOS" -serverCount=1 -agentCount=1 -timeout=30m -json -ci | tee -a createreport/k3s_"$OS".log
echo 'RUNNING CLUSTER UPGRADE TEST' E2E_RELEASE_VERSION=$k3s_version && export E2E_RELEASE_VERSION
ssh -i "$1" -o "StrictHostKeyChecking no" $2@$3 "cd k3s/tests/e2e && E2E_REGISTRY=true /usr/local/go/bin/go test -v upgradecluster/upgradecluster_test.go -nodeOS="$4" -serverCount=$((servercount)) -agentCount=$((agentcount)) -timeout=30m -json" | tee -a testreport.log E2E_RELEASE_CHANNEL=$k3s_channel && export E2E_RELEASE_CHANNEL
ssh -i "$1" -o "StrictHostKeyChecking no" $2@$3 'cd k3s/tests/e2e/upgradecluster && vagrant destroy -f'
echo 'RUN CLUSTER RESET TEST' echo 'RUNNING CLUSTER UPGRADE TEST'
ssh -i "$1" -o "StrictHostKeyChecking no" $2@$3 "cd k3s/tests/e2e && /usr/local/go/bin/go test -v clusterreset/clusterreset_test.go -nodeOS="$4" -serverCount=$((servercount)) -agentCount=$((agentcount)) -timeout=30m -json" | tee -a testreport.log E2E_REGISTRY=true /usr/local/go/bin/go test -v upgradecluster/upgradecluster_test.go -nodeOS="$nodeOS" -serverCount=$((servercount)) -agentCount=$((agentcount)) -timeout=1h -json -ci | tee -a createreport/k3s_"$OS".log
ssh -i "$1" -o "StrictHostKeyChecking no" $2@$3 'cd k3s/tests/e2e/clusterreset && vagrant destroy -f' }
echo 'RUNNING DOCKER CRI VALIDATION TEST' ls createreport/k3s_"$OS".log 2>/dev/null && rm createreport/k3s_"$OS".log
ssh -i "$1" -o "StrictHostKeyChecking no" $2@$3 "cd k3s/tests/e2e && /usr/local/go/bin/go test -v docker/docker_test.go -nodeOS="$4" -serverCount=1 -agentCount=1 -timeout=30m -json" | tee -a testreport.log run_tests
ssh -i "$1" -o "StrictHostKeyChecking no" $2@$3 'cd k3s/tests/e2e/docker && vagrant destroy -f'
echo 'RUNNING EXTERNALIP VALIDATION TEST' while [ -f createreport/k3s_"$OS".log ] && grep -w ":\"fail" createreport/k3s_"$OS".log >>data && [ $count -le 2 ]
ssh -i "$1" -o "StrictHostKeyChecking no" $2@$3 "cd k3s/tests/e2e && E2E_HARDENED="$hardened" /usr/local/go/bin/go test -v externalip/externalip_test.go -nodeOS="$4" -serverCount=1 -agentCount=1 -timeout=30m -json" | tee -a testreport.log do
ssh -i "$1" -o "StrictHostKeyChecking no" $2@$3 'cd k3s/tests/e2e/dualstack && vagrant destroy -f' echo "Re-running tests"
cp createreport/k3s_"$OS".log createreport/k3s_"$OS"_"$count".log
run_tests
done
\ No newline at end of file
...@@ -6,7 +6,7 @@ NODE_BOXES = (ENV['E2E_NODE_BOXES'] || ...@@ -6,7 +6,7 @@ NODE_BOXES = (ENV['E2E_NODE_BOXES'] ||
GITHUB_BRANCH = (ENV['E2E_GITHUB_BRANCH'] || "master") GITHUB_BRANCH = (ENV['E2E_GITHUB_BRANCH'] || "master")
RELEASE_VERSION = (ENV['E2E_RELEASE_VERSION'] || "") RELEASE_VERSION = (ENV['E2E_RELEASE_VERSION'] || "")
NODE_CPUS = (ENV['E2E_NODE_CPUS'] || 2).to_i NODE_CPUS = (ENV['E2E_NODE_CPUS'] || 2).to_i
NODE_MEMORY = (ENV['E2E_NODE_MEMORY'] || 1024).to_i NODE_MEMORY = (ENV['E2E_NODE_MEMORY'] || 2048).to_i
# Virtualbox >= 6.1.28 require `/etc/vbox/network.conf` for expanded private networks # Virtualbox >= 6.1.28 require `/etc/vbox/network.conf` for expanded private networks
NETWORK_PREFIX = "10.10.10" NETWORK_PREFIX = "10.10.10"
install_type = "" install_type = ""
......
...@@ -16,6 +16,7 @@ import ( ...@@ -16,6 +16,7 @@ import (
var nodeOS = flag.String("nodeOS", "generic/ubuntu2004", "VM operating system") var nodeOS = flag.String("nodeOS", "generic/ubuntu2004", "VM operating system")
var serverCount = flag.Int("serverCount", 3, "number of server nodes") var serverCount = flag.Int("serverCount", 3, "number of server nodes")
var hardened = flag.Bool("hardened", false, "true or false") var hardened = flag.Bool("hardened", false, "true or false")
var ci = flag.Bool("ci", false, "running on CI")
// Environment Variables Info: // Environment Variables Info:
// E2E_RELEASE_VERSION=v1.23.1+k3s2 or nil for latest commit from master // E2E_RELEASE_VERSION=v1.23.1+k3s2 or nil for latest commit from master
...@@ -55,7 +56,7 @@ var _ = Describe("Verify Secrets Encryption Rotation", Ordered, func() { ...@@ -55,7 +56,7 @@ var _ = Describe("Verify Secrets Encryption Rotation", Ordered, func() {
for _, node := range nodes { for _, node := range nodes {
g.Expect(node.Status).Should(Equal("Ready")) g.Expect(node.Status).Should(Equal("Ready"))
} }
}, "420s", "5s").Should(Succeed()) }, "620s", "5s").Should(Succeed())
_, _ = e2e.ParseNodes(kubeConfigFile, true) _, _ = e2e.ParseNodes(kubeConfigFile, true)
fmt.Printf("\nFetching pods status\n") fmt.Printf("\nFetching pods status\n")
...@@ -69,7 +70,7 @@ var _ = Describe("Verify Secrets Encryption Rotation", Ordered, func() { ...@@ -69,7 +70,7 @@ var _ = Describe("Verify Secrets Encryption Rotation", Ordered, func() {
g.Expect(pod.Status).Should(Equal("Running"), pod.Name) g.Expect(pod.Status).Should(Equal("Running"), pod.Name)
} }
} }
}, "420s", "5s").Should(Succeed()) }, "620s", "5s").Should(Succeed())
_, _ = e2e.ParsePods(kubeConfigFile, true) _, _ = e2e.ParsePods(kubeConfigFile, true)
}) })
...@@ -295,7 +296,7 @@ var _ = AfterEach(func() { ...@@ -295,7 +296,7 @@ var _ = AfterEach(func() {
}) })
var _ = AfterSuite(func() { var _ = AfterSuite(func() {
if failed { if failed && !*ci {
fmt.Println("FAILED!") fmt.Println("FAILED!")
} else { } else {
Expect(e2e.DestroyCluster()).To(Succeed()) Expect(e2e.DestroyCluster()).To(Succeed())
......
...@@ -7,7 +7,7 @@ GITHUB_BRANCH = (ENV['E2E_GITHUB_BRANCH'] || "master") ...@@ -7,7 +7,7 @@ GITHUB_BRANCH = (ENV['E2E_GITHUB_BRANCH'] || "master")
RELEASE_VERSION = (ENV['E2E_RELEASE_VERSION'] || "") RELEASE_VERSION = (ENV['E2E_RELEASE_VERSION'] || "")
EXTERNAL_DB = (ENV['E2E_EXTERNAL_DB'] || "etcd") EXTERNAL_DB = (ENV['E2E_EXTERNAL_DB'] || "etcd")
NODE_CPUS = (ENV['E2E_NODE_CPUS'] || 2).to_i NODE_CPUS = (ENV['E2E_NODE_CPUS'] || 2).to_i
NODE_MEMORY = (ENV['E2E_NODE_MEMORY'] || 1024).to_i NODE_MEMORY = (ENV['E2E_NODE_MEMORY'] || 2048).to_i
# Virtualbox >= 6.1.28 require `/etc/vbox/network.conf` for expanded private networks # Virtualbox >= 6.1.28 require `/etc/vbox/network.conf` for expanded private networks
NETWORK_PREFIX = "10.10.10" NETWORK_PREFIX = "10.10.10"
install_type = "" install_type = ""
......
...@@ -69,7 +69,7 @@ var _ = Describe("Verify Create", Ordered, func() { ...@@ -69,7 +69,7 @@ var _ = Describe("Verify Create", Ordered, func() {
for _, node := range nodes { for _, node := range nodes {
g.Expect(node.Status).Should(Equal("Ready")) g.Expect(node.Status).Should(Equal("Ready"))
} }
}, "420s", "5s").Should(Succeed()) }, "620s", "5s").Should(Succeed())
_, _ = e2e.ParseNodes(kubeConfigFile, true) _, _ = e2e.ParseNodes(kubeConfigFile, true)
fmt.Printf("\nFetching Pods status\n") fmt.Printf("\nFetching Pods status\n")
......
...@@ -6,7 +6,7 @@ NODE_BOXES = (ENV['E2E_NODE_BOXES'] || ...@@ -6,7 +6,7 @@ NODE_BOXES = (ENV['E2E_NODE_BOXES'] ||
GITHUB_BRANCH = (ENV['E2E_GITHUB_BRANCH'] || "master") GITHUB_BRANCH = (ENV['E2E_GITHUB_BRANCH'] || "master")
RELEASE_VERSION = (ENV['E2E_RELEASE_VERSION'] || "") RELEASE_VERSION = (ENV['E2E_RELEASE_VERSION'] || "")
NODE_CPUS = (ENV['E2E_NODE_CPUS'] || 2).to_i NODE_CPUS = (ENV['E2E_NODE_CPUS'] || 2).to_i
NODE_MEMORY = (ENV['E2E_NODE_MEMORY'] || 1024).to_i NODE_MEMORY = (ENV['E2E_NODE_MEMORY'] || 2048).to_i
# Virtualbox >= 6.1.28 require `/etc/vbox/network.conf` for expanded private networks # Virtualbox >= 6.1.28 require `/etc/vbox/network.conf` for expanded private networks
NETWORK_PREFIX = "10.10.10" NETWORK_PREFIX = "10.10.10"
......
...@@ -18,6 +18,7 @@ var nodeOS = flag.String("nodeOS", "generic/ubuntu2004", "VM operating system") ...@@ -18,6 +18,7 @@ var nodeOS = flag.String("nodeOS", "generic/ubuntu2004", "VM operating system")
var etcdCount = flag.Int("etcdCount", 1, "number of server nodes only deploying etcd") var etcdCount = flag.Int("etcdCount", 1, "number of server nodes only deploying etcd")
var controlPlaneCount = flag.Int("controlPlaneCount", 1, "number of server nodes acting as control plane") var controlPlaneCount = flag.Int("controlPlaneCount", 1, "number of server nodes acting as control plane")
var agentCount = flag.Int("agentCount", 1, "number of agent nodes") var agentCount = flag.Int("agentCount", 1, "number of agent nodes")
var ci = flag.Bool("ci", false, "running on CI")
var hardened = flag.Bool("hardened", false, "true or false") var hardened = flag.Bool("hardened", false, "true or false")
// Environment Variables Info: // Environment Variables Info:
...@@ -96,7 +97,7 @@ var _ = Describe("Verify Create", Ordered, func() { ...@@ -96,7 +97,7 @@ var _ = Describe("Verify Create", Ordered, func() {
for _, node := range nodes { for _, node := range nodes {
g.Expect(node.Status).Should(Equal("Ready")) g.Expect(node.Status).Should(Equal("Ready"))
} }
}, "420s", "5s").Should(Succeed()) }, "620s", "5s").Should(Succeed())
_, _ = e2e.ParseNodes(kubeConfigFile, true) _, _ = e2e.ParseNodes(kubeConfigFile, true)
fmt.Printf("\nFetching Pods status\n") fmt.Printf("\nFetching Pods status\n")
...@@ -110,7 +111,7 @@ var _ = Describe("Verify Create", Ordered, func() { ...@@ -110,7 +111,7 @@ var _ = Describe("Verify Create", Ordered, func() {
g.Expect(pod.Status).Should(Equal("Running"), pod.Name) g.Expect(pod.Status).Should(Equal("Running"), pod.Name)
} }
} }
}, "420s", "5s").Should(Succeed()) }, "620s", "5s").Should(Succeed())
_, _ = e2e.ParsePods(kubeConfigFile, true) _, _ = e2e.ParsePods(kubeConfigFile, true)
}) })
...@@ -228,7 +229,7 @@ var _ = AfterEach(func() { ...@@ -228,7 +229,7 @@ var _ = AfterEach(func() {
}) })
var _ = AfterSuite(func() { var _ = AfterSuite(func() {
if failed { if failed && !*ci {
fmt.Println("FAILED!") fmt.Println("FAILED!")
} else { } else {
Expect(e2e.DestroyCluster()).To(Succeed()) Expect(e2e.DestroyCluster()).To(Succeed())
......
...@@ -8,7 +8,7 @@ RELEASE_VERSION = (ENV['E2E_RELEASE_VERSION'] || "") ...@@ -8,7 +8,7 @@ RELEASE_VERSION = (ENV['E2E_RELEASE_VERSION'] || "")
EXTERNAL_DB = (ENV['E2E_EXTERNAL_DB'] || "etcd") EXTERNAL_DB = (ENV['E2E_EXTERNAL_DB'] || "etcd")
REGISTRY = (ENV['E2E_REGISTRY'] || "") REGISTRY = (ENV['E2E_REGISTRY'] || "")
NODE_CPUS = (ENV['E2E_NODE_CPUS'] || 2).to_i NODE_CPUS = (ENV['E2E_NODE_CPUS'] || 2).to_i
NODE_MEMORY = (ENV['E2E_NODE_MEMORY'] || 1024).to_i NODE_MEMORY = (ENV['E2E_NODE_MEMORY'] || 2048).to_i
# Virtualbox >= 6.1.28 require `/etc/vbox/network.conf` for expanded private networks # Virtualbox >= 6.1.28 require `/etc/vbox/network.conf` for expanded private networks
NETWORK_PREFIX = "10.10.10" NETWORK_PREFIX = "10.10.10"
install_type = "" install_type = ""
......
...@@ -65,7 +65,7 @@ var _ = Describe("Verify Upgrade", Ordered, func() { ...@@ -65,7 +65,7 @@ var _ = Describe("Verify Upgrade", Ordered, func() {
for _, node := range nodes { for _, node := range nodes {
g.Expect(node.Status).Should(Equal("Ready")) g.Expect(node.Status).Should(Equal("Ready"))
} }
}, "420s", "5s").Should(Succeed()) }, "620s", "5s").Should(Succeed())
_, _ = e2e.ParseNodes(kubeConfigFile, true) _, _ = e2e.ParseNodes(kubeConfigFile, true)
fmt.Printf("\nFetching Pods status\n") fmt.Printf("\nFetching Pods status\n")
...@@ -79,7 +79,7 @@ var _ = Describe("Verify Upgrade", Ordered, func() { ...@@ -79,7 +79,7 @@ var _ = Describe("Verify Upgrade", Ordered, func() {
g.Expect(pod.Status).Should(Equal("Running"), pod.Name) g.Expect(pod.Status).Should(Equal("Running"), pod.Name)
} }
} }
}, "420s", "5s").Should(Succeed()) }, "620s", "5s").Should(Succeed())
_, _ = e2e.ParsePods(kubeConfigFile, true) _, _ = e2e.ParsePods(kubeConfigFile, true)
}) })
......
...@@ -10,7 +10,7 @@ HARDENED = (ENV['E2E_HARDENED'] || "") ...@@ -10,7 +10,7 @@ HARDENED = (ENV['E2E_HARDENED'] || "")
REGISTRY = (ENV['E2E_REGISTRY'] || "") REGISTRY = (ENV['E2E_REGISTRY'] || "")
RANCHER = (ENV['E2E_RANCHER'] || "") RANCHER = (ENV['E2E_RANCHER'] || "")
NODE_CPUS = (ENV['E2E_NODE_CPUS'] || 2).to_i NODE_CPUS = (ENV['E2E_NODE_CPUS'] || 2).to_i
NODE_MEMORY = (ENV['E2E_NODE_MEMORY'] || 1024).to_i NODE_MEMORY = (ENV['E2E_NODE_MEMORY'] || 2048).to_i
# Virtualbox >= 6.1.28 require `/etc/vbox/network.conf` for expanded private networks # Virtualbox >= 6.1.28 require `/etc/vbox/network.conf` for expanded private networks
NETWORK_PREFIX = "10.10.10" NETWORK_PREFIX = "10.10.10"
install_type = "" install_type = ""
......
...@@ -68,7 +68,7 @@ var _ = Describe("Verify Create", Ordered, func() { ...@@ -68,7 +68,7 @@ var _ = Describe("Verify Create", Ordered, func() {
for _, node := range nodes { for _, node := range nodes {
g.Expect(node.Status).Should(Equal("Ready")) g.Expect(node.Status).Should(Equal("Ready"))
} }
}, "420s", "5s").Should(Succeed()) }, "620s", "5s").Should(Succeed())
_, _ = e2e.ParseNodes(kubeConfigFile, true) _, _ = e2e.ParseNodes(kubeConfigFile, true)
fmt.Printf("\nFetching Pods status\n") fmt.Printf("\nFetching Pods status\n")
...@@ -82,7 +82,7 @@ var _ = Describe("Verify Create", Ordered, func() { ...@@ -82,7 +82,7 @@ var _ = Describe("Verify Create", Ordered, func() {
g.Expect(pod.Status).Should(Equal("Running"), pod.Name) g.Expect(pod.Status).Should(Equal("Running"), pod.Name)
} }
} }
}, "420s", "5s").Should(Succeed()) }, "620s", "5s").Should(Succeed())
_, _ = e2e.ParsePods(kubeConfigFile, true) _, _ = e2e.ParsePods(kubeConfigFile, true)
}) })
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment