Skip to content

Commit ec68497

Browse files
committed
Run e2e node slice tests separately
Node slice is still experimental. Its tests should not block regular CI. Signed-off-by: Marcelo <[email protected]>
1 parent 3a72065 commit ec68497

File tree

3 files changed

+41
-10
lines changed

3 files changed

+41
-10
lines changed

.github/workflows/test.yml

Lines changed: 33 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ jobs:
4141
#run: diff -u <(echo -n) <(gofmt -d -s .)
4242

4343
- name: Run go vet
44-
run: go vet --tags=test ./...
44+
run: go vet --tags=test $(go list ./... | grep -v /e2e)
4545

4646
- name: Install static check
4747
run: go install honnef.co/go/tools/cmd/staticcheck@latest
@@ -80,10 +80,39 @@ jobs:
8080
- name: Clear test-cache
8181
run: go clean -testcache
8282

83-
- name: Execute golang based E2E tests
83+
- name: Execute golang based E2E tests (excluding node_slice)
8484
env:
8585
KUBECONFIG: /home/runner/.kube/config
8686
NUMBER_OF_THRASH_ITER: 20
8787
FILL_PERCENT_CAPACITY: 20
88-
run: pushd e2e; go test -v . -timeout 1h; popd
89-
88+
run: pushd e2e; go test -v $(go list ./... | grep -v /e2e_node_slice) -timeout 1h; popd
89+
90+
e2e-test-node_slice:
91+
name: e2e test (node_slice)
92+
runs-on: ubuntu-latest
93+
env:
94+
NUMBER_OF_COMPUTE_NODES: 5
95+
steps:
96+
- name: Checkout code into the Go module directory
97+
uses: actions/checkout@v4
98+
99+
- name: Set up Go version
100+
uses: actions/setup-go@v5
101+
with:
102+
go-version-file: go.mod
103+
104+
- name: Install requirements
105+
run: sudo apt-get install nmap jq && ./hack/build-go.sh
106+
107+
- name: Get tools, setup KinD cluster test environment
108+
run: source hack/e2e-get-test-tools.sh && ./hack/e2e-setup-kind-cluster.sh --number-of-compute $NUMBER_OF_COMPUTE_NODES
109+
110+
- name: Clear test-cache
111+
run: go clean -testcache
112+
113+
- name: Execute golang based E2E tests (only node_slice)
114+
env:
115+
KUBECONFIG: /home/runner/.kube/config
116+
NUMBER_OF_THRASH_ITER: 20
117+
FILL_PERCENT_CAPACITY: 20
118+
run: pushd e2e; go test -v ./e2e_node_slice/... -timeout 1h; popd

e2e/e2e_node_slice/e2e_node_slice.go renamed to e2e/e2e_node_slice/e2e_node_slice_test.go

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ package e2e_node_slice
33

44
import (
55
"context"
6-
"github.com/k8snetworkplumbingwg/whereabouts/pkg/api/whereabouts.cni.cncf.io/v1alpha1"
6+
"testing"
77
"time"
88

99
. "github.com/onsi/ginkgo"
@@ -22,11 +22,17 @@ import (
2222
"github.com/k8snetworkplumbingwg/whereabouts/e2e/retrievers"
2323
testenv "github.com/k8snetworkplumbingwg/whereabouts/e2e/testenvironment"
2424
"github.com/k8snetworkplumbingwg/whereabouts/e2e/util"
25+
"github.com/k8snetworkplumbingwg/whereabouts/pkg/api/whereabouts.cni.cncf.io/v1alpha1"
2526
"github.com/k8snetworkplumbingwg/whereabouts/pkg/storage"
2627
wbstorage "github.com/k8snetworkplumbingwg/whereabouts/pkg/storage/kubernetes"
2728
"github.com/k8snetworkplumbingwg/whereabouts/pkg/types"
2829
)
2930

31+
func TestWhereaboutsE2ENodeSlice(t *testing.T) {
32+
RegisterFailHandler(Fail)
33+
RunSpecs(t, "whereabouts-e2e-node-slice")
34+
}
35+
3036
var _ = Describe("Whereabouts node slice functionality", func() {
3137
Context("Test setup", func() {
3238
const (

e2e/e2e_test.go

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,6 @@ import (
1010
"testing"
1111
"time"
1212

13-
"github.com/k8snetworkplumbingwg/whereabouts/e2e/util"
14-
1513
. "github.com/onsi/ginkgo"
1614
"github.com/onsi/ginkgo/extensions/table"
1715
. "github.com/onsi/gomega"
@@ -28,13 +26,11 @@ import (
2826
"github.com/k8snetworkplumbingwg/whereabouts/e2e/poolconsistency"
2927
"github.com/k8snetworkplumbingwg/whereabouts/e2e/retrievers"
3028
testenv "github.com/k8snetworkplumbingwg/whereabouts/e2e/testenvironment"
29+
"github.com/k8snetworkplumbingwg/whereabouts/e2e/util"
3130
"github.com/k8snetworkplumbingwg/whereabouts/pkg/api/whereabouts.cni.cncf.io/v1alpha1"
3231
"github.com/k8snetworkplumbingwg/whereabouts/pkg/iphelpers"
3332
wbstorage "github.com/k8snetworkplumbingwg/whereabouts/pkg/storage/kubernetes"
3433
"github.com/k8snetworkplumbingwg/whereabouts/pkg/types"
35-
36-
// Import node slice tests to execute in the suite
37-
_ "github.com/k8snetworkplumbingwg/whereabouts/e2e/e2e_node_slice"
3834
)
3935

4036
const (

0 commit comments

Comments
 (0)