diff --git a/pkg/controller/.import-restrictions b/pkg/controller/.import-restrictions index c45988ec9b8..6dd2ce4cc4c 100644 --- a/pkg/controller/.import-restrictions +++ b/pkg/controller/.import-restrictions @@ -11,8 +11,357 @@ "ForbiddenPrefixes": [ "k8s.io/kubernetes/pkg/client/unversioned/testclient" ] + }, + { + "SelectorRegexp": "k8s[.]io/(api/|apimachinery/|apiextensions-apiserver/|apiserver/)", + "AllowedPrefixes": [ + "k8s.io/api/apps/v1", + "k8s.io/api/apps/v1beta1", + "k8s.io/api/authentication/v1", + "k8s.io/api/authorization/v1beta1", + "k8s.io/api/autoscaling/v1", + "k8s.io/api/autoscaling/v2beta1", + "k8s.io/api/autoscaling/v2beta2", + "k8s.io/api/batch/v1", + "k8s.io/api/batch/v1beta1", + "k8s.io/api/certificates/v1beta1", + "k8s.io/api/core/v1", + "k8s.io/api/coordination/v1beta1", + "k8s.io/api/extensions/v1beta1", + "k8s.io/api/policy/v1beta1", + "k8s.io/api/rbac/v1", + "k8s.io/api/storage/v1", + "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1", + "k8s.io/apiextensions-apiserver/pkg/client/clientset/clientset", + "k8s.io/apiextensions-apiserver/pkg/client/clientset/clientset/fake", + "k8s.io/apimachinery/pkg/api/equality", + "k8s.io/apimachinery/pkg/api/errors", + "k8s.io/apimachinery/pkg/api/meta", + "k8s.io/apimachinery/pkg/api/meta/testrestmapper", + "k8s.io/apimachinery/pkg/api/resource", + "k8s.io/apimachinery/pkg/apis/config", + "k8s.io/apimachinery/pkg/apis/config/v1alpha1", + "k8s.io/apimachinery/pkg/apis/meta/v1", + "k8s.io/apimachinery/pkg/apis/meta/v1/unstructured", + "k8s.io/apimachinery/pkg/conversion", + "k8s.io/apimachinery/pkg/fields", + "k8s.io/apimachinery/pkg/labels", + "k8s.io/apimachinery/pkg/runtime", + "k8s.io/apimachinery/pkg/runtime/schema", + "k8s.io/apimachinery/pkg/runtime/serializer", + "k8s.io/apimachinery/pkg/types", + "k8s.io/apimachinery/pkg/util/clock", + "k8s.io/apimachinery/pkg/util/diff", + "k8s.io/apimachinery/pkg/util/errors", + "k8s.io/apimachinery/pkg/util/intstr", + "k8s.io/apimachinery/pkg/util/json", + "k8s.io/apimachinery/pkg/util/rand", + "k8s.io/apimachinery/pkg/util/runtime", + "k8s.io/apimachinery/pkg/util/sets", + "k8s.io/apimachinery/pkg/util/strategicpatch", + "k8s.io/apimachinery/pkg/util/uuid", + "k8s.io/apimachinery/pkg/util/wait", + "k8s.io/apimachinery/pkg/util/version", + "k8s.io/apimachinery/pkg/watch", + "k8s.io/apiserver/pkg/apis/config", + "k8s.io/apiserver/pkg/apis/config/v1alpha1", + "k8s.io/apiserver/pkg/authentication/serviceaccount", + "k8s.io/apiserver/pkg/storage/names", + "k8s.io/apiserver/pkg/util/feature", + "k8s.io/apiextensions-apiserver/pkg/features", + "k8s.io/apimachinery/pkg/api/validation", + "k8s.io/apimachinery/pkg/apis/meta/internalversion", + "k8s.io/apimachinery/pkg/selection", + "k8s.io/apimachinery/pkg/util/validation", + "k8s.io/apimachinery/pkg/util/validation/field", + "k8s.io/apiserver/pkg/authentication/authenticator", + "k8s.io/apiserver/pkg/authentication/user", + "k8s.io/apiserver/pkg/features", + "k8s.io/apiserver/pkg/registry/generic", + "k8s.io/apimachinery/pkg/version", + "k8s.io/api/imagepolicy/v1alpha1", + "k8s.io/apiserver/pkg/admission", + "k8s.io/apiserver/pkg/storage", + "k8s.io/api/batch/v2alpha1", + "k8s.io/apiserver/pkg/registry/rest", + "k8s.io/apimachinery/pkg/util/initialization", + "k8s.io/api/scheduling/v1alpha1", + "k8s.io/api/admissionregistration/v1beta1", + "k8s.io/api/authorization/v1", + "k8s.io/api/settings/v1alpha1", + "k8s.io/api/admission/v1beta1", + "k8s.io/api/networking/v1", + "k8s.io/api/admissionregistration/v1alpha1" + ] + }, + { + "SelectorRegexp": "github[.]com/", + "AllowedPrefixes": [ + "github.com/Azure/go-autorest/autorest/to", + "github.com/cloudflare/cfssl/config", + "github.com/cloudflare/cfssl/helpers", + "github.com/cloudflare/cfssl/signer", + "github.com/cloudflare/cfssl/signer/local", + "github.com/davecgh/go-spew/spew", + "github.com/evanphx/json-patch", + "github.com/golang/glog", + "github.com/golang/groupcache/lru", + "github.com/prometheus/client_golang/prometheus", + "github.com/robfig/cron", + "github.com/spf13/pflag", + "github.com/stretchr/testify/assert", + "github.com/stretchr/testify/require", + "github.com/docker/distribution/reference", + "github.com/google/gofuzz" + ] + }, + { + "SelectorRegexp": "k8s[.]io/client-go/", + "AllowedPrefixes": [ + "k8s.io/client-go/discovery", + "k8s.io/client-go/dynamic", + "k8s.io/client-go/informers", + "k8s.io/client-go/informers/apps/v1", + "k8s.io/client-go/informers/apps/v1beta1", + "k8s.io/client-go/informers/autoscaling/v1", + "k8s.io/client-go/informers/batch/v1", + "k8s.io/client-go/informers/certificates/v1beta1", + "k8s.io/client-go/informers/core/v1", + "k8s.io/client-go/informers/extensions/v1beta1", + "k8s.io/client-go/informers/policy/v1beta1", + "k8s.io/client-go/informers/rbac/v1", + "k8s.io/client-go/informers/storage/v1", + "k8s.io/client-go/kubernetes", + "k8s.io/client-go/kubernetes/fake", + "k8s.io/client-go/kubernetes/scheme", + "k8s.io/client-go/kubernetes/typed/apps/v1", + "k8s.io/client-go/kubernetes/typed/authentication/v1", + "k8s.io/client-go/kubernetes/typed/autoscaling/v1", + "k8s.io/client-go/kubernetes/typed/certificates/v1beta1", + "k8s.io/client-go/kubernetes/typed/core/v1", + "k8s.io/client-go/kubernetes/typed/policy/v1beta1", + "k8s.io/client-go/kubernetes/typed/rbac/v1", + "k8s.io/client-go/listers/apps/v1", + "k8s.io/client-go/listers/apps/v1beta1", + "k8s.io/client-go/listers/autoscaling/v1", + "k8s.io/client-go/listers/batch/v1", + "k8s.io/client-go/listers/certificates/v1beta1", + "k8s.io/client-go/listers/core/v1", + "k8s.io/client-go/listers/coordination/v1beta1", + "k8s.io/client-go/listers/extensions/v1beta1", + "k8s.io/client-go/listers/policy/v1beta1", + "k8s.io/client-go/listers/rbac/v1", + "k8s.io/client-go/listers/storage/v1", + "k8s.io/client-go/rest", + "k8s.io/client-go/scale", + "k8s.io/client-go/scale/fake", + "k8s.io/client-go/testing", + "k8s.io/client-go/tools/bootstrap/token/api", + "k8s.io/client-go/tools/cache", + "k8s.io/client-go/tools/leaderelection/resourcelock", + "k8s.io/client-go/tools/record", + "k8s.io/client-go/tools/reference", + "k8s.io/client-go/tools/watch", + "k8s.io/client-go/util/cert", + "k8s.io/client-go/util/flowcontrol", + "k8s.io/client-go/util/integer", + "k8s.io/client-go/util/retry", + "k8s.io/client-go/util/testing", + "k8s.io/client-go/util/workqueue" + ] + }, + { + "SelectorRegexp": "k8s[.]io/kubernetes/pkg", + "AllowedPrefixes": [ + "k8s.io/kubernetes/pkg/api/legacyscheme", + "k8s.io/kubernetes/pkg/api/testapi", + "k8s.io/kubernetes/pkg/api/v1/endpoints", + "k8s.io/kubernetes/pkg/api/v1/node", + "k8s.io/kubernetes/pkg/api/v1/pod", + "k8s.io/kubernetes/pkg/apis/apps/install", + "k8s.io/kubernetes/pkg/apis/apps/v1", + "k8s.io/kubernetes/pkg/apis/authentication/install", + "k8s.io/kubernetes/pkg/apis/authorization/install", + "k8s.io/kubernetes/pkg/apis/autoscaling", + "k8s.io/kubernetes/pkg/apis/autoscaling/install", + "k8s.io/kubernetes/pkg/apis/batch/install", + "k8s.io/kubernetes/pkg/apis/certificates/install", + "k8s.io/kubernetes/pkg/apis/certificates/v1beta1", + "k8s.io/kubernetes/pkg/apis/core", + "k8s.io/kubernetes/pkg/apis/core/helper", + "k8s.io/kubernetes/pkg/apis/core/install", + "k8s.io/kubernetes/pkg/apis/core/v1", + "k8s.io/kubernetes/pkg/apis/core/v1/helper", + "k8s.io/kubernetes/pkg/apis/core/validation", + "k8s.io/kubernetes/pkg/apis/extensions", + "k8s.io/kubernetes/pkg/apis/extensions/install", + "k8s.io/kubernetes/pkg/apis/policy/install", + "k8s.io/kubernetes/pkg/apis/rbac/install", + "k8s.io/kubernetes/pkg/apis/settings/install", + "k8s.io/kubernetes/pkg/apis/storage/install", + "k8s.io/kubernetes/pkg/client/unversioned", + "k8s.io/kubernetes/pkg/client/unversioned/testclient", + "k8s.io/kubernetes/pkg/cloudprovider", + "k8s.io/kubernetes/pkg/cloudprovider/providers/fake", + "k8s.io/kubernetes/pkg/cloudprovider/providers/gce", + "k8s.io/kubernetes/pkg/controller", + "k8s.io/kubernetes/pkg/controller/apis/config", + "k8s.io/kubernetes/pkg/controller/apis/config/scheme", + "k8s.io/kubernetes/pkg/controller/apis/config/v1alpha1", + "k8s.io/kubernetes/pkg/controller/bootstrap", + "k8s.io/kubernetes/pkg/controller/certificates", + "k8s.io/kubernetes/pkg/controller/certificates/approver", + "k8s.io/kubernetes/pkg/controller/certificates/cleaner", + "k8s.io/kubernetes/pkg/controller/certificates/signer", + "k8s.io/kubernetes/pkg/controller/cloud", + "k8s.io/kubernetes/pkg/controller/clusterroleaggregation", + "k8s.io/kubernetes/pkg/controller/cronjob", + "k8s.io/kubernetes/pkg/controller/daemon", + "k8s.io/kubernetes/pkg/controller/daemon/util", + "k8s.io/kubernetes/pkg/controller/deployment", + "k8s.io/kubernetes/pkg/controller/deployment/util", + "k8s.io/kubernetes/pkg/controller/disruption", + "k8s.io/kubernetes/pkg/controller/endpoint", + "k8s.io/kubernetes/pkg/controller/garbagecollector", + "k8s.io/kubernetes/pkg/controller/garbagecollector/metaonly", + "k8s.io/kubernetes/pkg/controller/history", + "k8s.io/kubernetes/pkg/controller/job", + "k8s.io/kubernetes/pkg/controller/namespace", + "k8s.io/kubernetes/pkg/controller/namespace/deletion", + "k8s.io/kubernetes/pkg/controller/nodeipam", + "k8s.io/kubernetes/pkg/controller/nodeipam/ipam", + "k8s.io/kubernetes/pkg/controller/nodeipam/ipam/cidrset", + "k8s.io/kubernetes/pkg/controller/nodeipam/ipam/sync", + "k8s.io/kubernetes/pkg/controller/nodeipam/ipam/test", + "k8s.io/kubernetes/pkg/controller/nodelifecycle", + "k8s.io/kubernetes/pkg/controller/nodelifecycle/scheduler", + "k8s.io/kubernetes/pkg/controller/podautoscaler", + "k8s.io/kubernetes/pkg/controller/podautoscaler/metrics", + "k8s.io/kubernetes/pkg/controller/podgc", + "k8s.io/kubernetes/pkg/controller/replicaset", + "k8s.io/kubernetes/pkg/controller/replicaset/options", + "k8s.io/kubernetes/pkg/controller/replication", + "k8s.io/kubernetes/pkg/controller/resourcequota", + "k8s.io/kubernetes/pkg/controller/route", + "k8s.io/kubernetes/pkg/controller/service", + "k8s.io/kubernetes/pkg/controller/serviceaccount", + "k8s.io/kubernetes/pkg/controller/statefulset", + "k8s.io/kubernetes/pkg/controller/testutil", + "k8s.io/kubernetes/pkg/controller/ttl", + "k8s.io/kubernetes/pkg/controller/ttlafterfinished", + "k8s.io/kubernetes/pkg/controller/util/node", + "k8s.io/kubernetes/pkg/controller/volume/attachdetach", + "k8s.io/kubernetes/pkg/controller/volume/attachdetach/cache", + "k8s.io/kubernetes/pkg/controller/volume/attachdetach/metrics", + "k8s.io/kubernetes/pkg/controller/volume/attachdetach/populator", + "k8s.io/kubernetes/pkg/controller/volume/attachdetach/reconciler", + "k8s.io/kubernetes/pkg/controller/volume/attachdetach/statusupdater", + "k8s.io/kubernetes/pkg/controller/volume/attachdetach/testing", + "k8s.io/kubernetes/pkg/controller/volume/attachdetach/util", + "k8s.io/kubernetes/pkg/controller/volume/events", + "k8s.io/kubernetes/pkg/controller/volume/expand", + "k8s.io/kubernetes/pkg/controller/volume/expand/cache", + "k8s.io/kubernetes/pkg/controller/volume/persistentvolume", + "k8s.io/kubernetes/pkg/controller/volume/persistentvolume/metrics", + "k8s.io/kubernetes/pkg/controller/volume/persistentvolume/options", + "k8s.io/kubernetes/pkg/controller/volume/pvcprotection", + "k8s.io/kubernetes/pkg/controller/volume/pvprotection", + "k8s.io/kubernetes/pkg/features", + "k8s.io/kubernetes/pkg/kubectl/scheme", + "k8s.io/kubernetes/pkg/kubelet/apis", + "k8s.io/kubernetes/pkg/kubelet/events", + "k8s.io/kubernetes/pkg/kubelet/types", + "k8s.io/kubernetes/pkg/kubelet/util/format", + "k8s.io/kubernetes/pkg/quota", + "k8s.io/kubernetes/pkg/quota/evaluator/core", + "k8s.io/kubernetes/pkg/quota/generic", + "k8s.io/kubernetes/pkg/quota/install", + "k8s.io/kubernetes/pkg/registry/core/secret", + "k8s.io/kubernetes/pkg/scheduler/algorithm", + "k8s.io/kubernetes/pkg/scheduler/algorithm/predicates", + "k8s.io/kubernetes/pkg/scheduler/cache", + "k8s.io/kubernetes/pkg/securitycontext", + "k8s.io/kubernetes/pkg/serviceaccount", + "k8s.io/kubernetes/pkg/util/goroutinemap", + "k8s.io/kubernetes/pkg/util/goroutinemap/exponentialbackoff", + "k8s.io/kubernetes/pkg/util/hash", + "k8s.io/kubernetes/pkg/util/labels", + "k8s.io/kubernetes/pkg/util/metrics", + "k8s.io/kubernetes/pkg/util/mount", + "k8s.io/kubernetes/pkg/util/node", + "k8s.io/kubernetes/pkg/util/reflector/prometheus", + "k8s.io/kubernetes/pkg/util/slice", + "k8s.io/kubernetes/pkg/util/strings", + "k8s.io/kubernetes/pkg/util/system", + "k8s.io/kubernetes/pkg/util/taints", + "k8s.io/kubernetes/pkg/util/workqueue/prometheus", + "k8s.io/kubernetes/pkg/volume", + "k8s.io/kubernetes/pkg/volume/testing", + "k8s.io/kubernetes/pkg/volume/util", + "k8s.io/kubernetes/pkg/volume/util/operationexecutor", + "k8s.io/kubernetes/pkg/volume/util/recyclerclient", + "k8s.io/kubernetes/pkg/volume/util/types", + "k8s.io/kubernetes/pkg/volume/util/volumepathhandler", + "k8s.io/kubernetes/pkg/api/service", + "k8s.io/kubernetes/pkg/api/v1/service", + "k8s.io/kubernetes/pkg/apis/networking", + "k8s.io/kubernetes/pkg/apis/policy", + "k8s.io/kubernetes/pkg/apis/scheduling", + "k8s.io/kubernetes/pkg/capabilities", + "k8s.io/kubernetes/pkg/master/ports", + "k8s.io/kubernetes/pkg/scheduler/api", + "k8s.io/kubernetes/pkg/scheduler/util", + "k8s.io/kubernetes/pkg/security/apparmor", + "k8s.io/kubernetes/pkg/util/file", + "k8s.io/kubernetes/pkg/util/net/sets", + "k8s.io/kubernetes/pkg/util/parsers", + "k8s.io/kubernetes/pkg/fieldpath", + "k8s.io/kubernetes/pkg/kubeapiserver/admission/util", + "k8s.io/kubernetes/pkg/scheduler/volumebinder", + "k8s.io/kubernetes/pkg/scheduler/internal/cache", + "k8s.io/kubernetes/pkg/util/nsenter", + "k8s.io/kubernetes/pkg/util/resizefs", + "k8s.io/kubernetes/pkg/util/version", + "k8s.io/kubernetes/pkg/apis/apps", + "k8s.io/kubernetes/pkg/version", + "k8s.io/kubernetes/pkg/util/io" + ] + }, + { + "SelectorRegexp": "k8s[.]io/(metrics/|utils/|csi-api/|heapster/|kube-controller-manager/)", + "AllowedPrefixes": [ + "k8s.io/csi-api/pkg/apis/csi/v1alpha1", + "k8s.io/csi-api/pkg/client/clientset/versioned", + "k8s.io/heapster/metrics/api/v1/types", + "k8s.io/kube-controller-manager/config/v1alpha1", + "k8s.io/metrics/pkg/apis/custom_metrics/v1beta2", + "k8s.io/metrics/pkg/apis/external_metrics/v1beta1", + "k8s.io/metrics/pkg/apis/metrics/v1alpha1", + "k8s.io/metrics/pkg/apis/metrics/v1beta1", + "k8s.io/metrics/pkg/client/clientset/versioned/fake", + "k8s.io/metrics/pkg/client/clientset/versioned/scheme", + "k8s.io/metrics/pkg/client/clientset/versioned/typed/metrics/v1beta1", + "k8s.io/metrics/pkg/client/custom_metrics", + "k8s.io/metrics/pkg/client/custom_metrics/fake", + "k8s.io/metrics/pkg/client/external_metrics", + "k8s.io/metrics/pkg/client/external_metrics/fake", + "k8s.io/utils/pointer", + "k8s.io/utils/exec" + ] + }, + { + "SelectorRegexp": "golang[.]org/", + "AllowedPrefixes": [ + "golang.org/x/time/rate", + "golang.org/x/sys/unix", + "golang.org/x/oauth2", + "google.golang.org/api/compute/v1", + "google.golang.org/api/googleapi", + "google.golang.org/api/compute/v0.alpha", + "google.golang.org/api/container/v1", + "google.golang.org/api/compute/v0.beta", + "google.golang.org/api/tpu/v1" + ] } - ] } -