k8s.io/kubernetes@v1.29.3/test/e2e/framework/.import-restrictions (about) 1 rules: 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: .