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: .