...
1rules:
2 # The core E2E framework is meant to be a normal Kubernetes client,
3 # which means that it shouldn't depend on internal code.
4 # The following packages are okay to use:
5 #
6 # public API
7 - selectorRegexp: ^k8s[.]io/(api|apimachinery|client-go|component-base|klog|pod-security-admission|utils)
8 allowedPrefixes: [ "" ]
9
10 # stdlib
11 - selectorRegexp: ^[a-z]+(/|$)
12 allowedPrefixes: [ "" ]
13
14 # stdlib x and proto
15 - selectorRegexp: ^golang.org/x|^google.golang.org/protobuf
16 allowedPrefixes: [ "" ]
17
18 # Ginkgo + Gomega
19 - selectorRegexp: ^github.com/onsi/(ginkgo|gomega)
20 allowedPrefixes: [ "" ]
21
22 # kube-openapi
23 - selectorRegexp: ^k8s.io/kube-openapi
24 allowedPrefixes: [ "" ]
25
26 # Public SIG Repos
27 - selectorRegexp: ^sigs.k8s.io/(json|yaml|structured-merge-diff)
28 allowedPrefixes: [ "" ]
29
30 # some of the shared test helpers (but not E2E sub-packages!)
31 - selectorRegexp: ^k8s[.]io/kubernetes/test/(e2e/framework/internal/|utils)
32 allowedPrefixes: [ "" ]
33
34 # Third party deps
35 - selectorRegexp: ^github.com/|^gopkg.in
36 allowedPrefixes: [
37 "gopkg.in/inf.v0",
38 "gopkg.in/yaml.v2",
39 "github.com/blang/semver/",
40 "github.com/davecgh/go-spew/spew",
41 "github.com/evanphx/json-patch",
42 "github.com/go-logr/logr",
43 "github.com/gogo/protobuf/proto",
44 "github.com/gogo/protobuf/sortkeys",
45 "github.com/golang/protobuf/proto",
46 "github.com/google/gnostic-models/openapiv2",
47 "github.com/google/gnostic-models/openapiv3",
48 "github.com/google/go-cmp/cmp",
49 "github.com/google/go-cmp/cmp/cmpopts",
50 "github.com/google/gofuzz",
51 "github.com/google/uuid",
52 "github.com/imdario/mergo",
53 "github.com/prometheus/client_golang/",
54 "github.com/prometheus/client_model/",
55 "github.com/prometheus/common/",
56 "github.com/prometheus/procfs",
57 "github.com/spf13/cobra",
58 "github.com/spf13/pflag",
59 "github.com/stretchr/testify/assert",
60 "github.com/stretchr/testify/require"
61 ]
62
63 # Everything else isn't.
64 #
65 # In particular importing any test/e2e/framework/* package would be a
66 # violation (sub-packages get to use the framework, not the other way
67 # around).
68 - selectorRegexp: .
View as plain text