Merge pull request #112294 from pohly/importaliases

E2E import aliases
This commit is contained in:
Kubernetes Prow Robot 2022-09-08 13:11:31 -07:00 committed by GitHub
commit a7a5bfaef4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 25 additions and 35 deletions

View File

@ -43,7 +43,7 @@ var (
regex = flag.String("include-path", "(test/e2e/|test/e2e_node)", "only files with paths matching this regex is touched") regex = flag.String("include-path", "(test/e2e/|test/e2e_node)", "only files with paths matching this regex is touched")
isTerminal = term.IsTerminal(int(os.Stdout.Fd())) isTerminal = term.IsTerminal(int(os.Stdout.Fd()))
logPrefix = "" logPrefix = ""
aliases map[string]string aliases = map[*regexp.Regexp]string{}
) )
type analyzer struct { type analyzer struct {
@ -95,7 +95,17 @@ func (a *analyzer) collect(dir string) {
if imp.Name != nil { if imp.Name != nil {
importName = imp.Name.Name importName = imp.Name.Name
} }
if alias, ok := aliases[importPath]; ok { for re, template := range aliases {
match := re.FindStringSubmatchIndex(importPath)
if match == nil {
// No match.
continue
}
if match[0] > 0 || match[1] < len(importPath) {
// Not a full match.
continue
}
alias := string(re.ExpandString(nil, template, importPath, match))
if alias != importName { if alias != importName {
if !*confirm { if !*confirm {
fmt.Fprintf(os.Stderr, "%sERROR wrong alias for import \"%s\" should be %s in file %s\n", logPrefix, importPath, alias, pathToFile) fmt.Fprintf(os.Stderr, "%sERROR wrong alias for import \"%s\" should be %s in file %s\n", logPrefix, importPath, alias, pathToFile)
@ -108,6 +118,7 @@ func (a *analyzer) collect(dir string) {
imp.Name = ast.NewIdent(alias) imp.Name = ast.NewIdent(alias)
} }
} }
break
} }
} }
@ -238,10 +249,18 @@ func main() {
if err != nil { if err != nil {
log.Fatalf("Error reading import aliases: %v", err) log.Fatalf("Error reading import aliases: %v", err)
} }
err = json.Unmarshal(bytes, &aliases) var stringAliases map[string]string
err = json.Unmarshal(bytes, &stringAliases)
if err != nil { if err != nil {
log.Fatalf("Error loading aliases: %v", err) log.Fatalf("Error loading aliases: %v", err)
} }
for pattern, name := range stringAliases {
re, err := regexp.Compile(pattern)
if err != nil {
log.Fatalf("Error parsing import path pattern %q as regular expression: %v", pattern, err)
}
aliases[re] = name
}
} }
if isTerminal { if isTerminal {
logPrefix = "\r" // clear status bar when printing logPrefix = "\r" // clear status bar when printing

View File

@ -55,34 +55,5 @@
"k8s.io/kubernetes/pkg/proxy/apis/config/v1alpha1": "proxyconfigv1alpha1", "k8s.io/kubernetes/pkg/proxy/apis/config/v1alpha1": "proxyconfigv1alpha1",
"k8s.io/kubernetes/pkg/scheduler/apis/config/v1beta1": "schedulerconfigv1beta1", "k8s.io/kubernetes/pkg/scheduler/apis/config/v1beta1": "schedulerconfigv1beta1",
"k8s.io/kubernetes/pkg/scheduler/apis/config/v1beta2": "schedulerconfigv1beta2", "k8s.io/kubernetes/pkg/scheduler/apis/config/v1beta2": "schedulerconfigv1beta2",
"k8s.io/kubernetes/test/e2e/framework/auth": "e2eauth", "k8s.io/kubernetes/test/e2e/framework/([^/]*)": "e2e$1"
"k8s.io/kubernetes/test/e2e/framework/autoscaling": "e2eautoscaling",
"k8s.io/kubernetes/test/e2e/framework/config": "e2econfig",
"k8s.io/kubernetes/test/e2e/framework/deployment": "e2edeployment",
"k8s.io/kubernetes/test/e2e/framework/endpoints": "e2eendpoints",
"k8s.io/kubernetes/test/e2e/framework/events": "e2eevents",
"k8s.io/kubernetes/test/e2e/framework/ginkgowrapper": "e2eginkgowrapper",
"k8s.io/kubernetes/test/e2e/framework/gpu": "e2egpu",
"k8s.io/kubernetes/test/e2e/framework/ingress": "e2eingress",
"k8s.io/kubernetes/test/e2e/framework/job": "e2ejob",
"k8s.io/kubernetes/test/e2e/framework/kubectl": "e2ekubectl",
"k8s.io/kubernetes/test/e2e/framework/kubelet": "e2ekubelet",
"k8s.io/kubernetes/test/e2e/framework/log": "e2elog",
"k8s.io/kubernetes/test/e2e/framework/metrics": "e2emetrics",
"k8s.io/kubernetes/test/e2e/framework/network": "e2enetwork",
"k8s.io/kubernetes/test/e2e/framework/node": "e2enode",
"k8s.io/kubernetes/test/e2e/framework/perf": "e2eperf",
"k8s.io/kubernetes/test/e2e/framework/pod": "e2epod",
"k8s.io/kubernetes/test/e2e/framework/pv": "e2epv",
"k8s.io/kubernetes/test/e2e/framework/rc": "e2erc",
"k8s.io/kubernetes/test/e2e/framework/replicaset": "e2ereplicaset",
"k8s.io/kubernetes/test/e2e/framework/resource": "e2eresource",
"k8s.io/kubernetes/test/e2e/framework/security": "e2esecurity",
"k8s.io/kubernetes/test/e2e/framework/service": "e2eservice",
"k8s.io/kubernetes/test/e2e/framework/skipper": "e2eskipper",
"k8s.io/kubernetes/test/e2e/framework/ssh": "e2essh",
"k8s.io/kubernetes/test/e2e/framework/statefulset": "e2estatefulset",
"k8s.io/kubernetes/test/e2e/framework/testfiles": "e2etestfiles",
"k8s.io/kubernetes/test/e2e/framework/timer": "e2etimer",
"k8s.io/kubernetes/test/e2e/framework/volume": "e2evolume"
} }

View File

@ -25,7 +25,7 @@ import (
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
clientset "k8s.io/client-go/kubernetes" clientset "k8s.io/client-go/kubernetes"
"k8s.io/kubernetes/test/e2e/framework" "k8s.io/kubernetes/test/e2e/framework"
"k8s.io/kubernetes/test/e2e/framework/daemonset" e2edaemonset "k8s.io/kubernetes/test/e2e/framework/daemonset"
e2epod "k8s.io/kubernetes/test/e2e/framework/pod" e2epod "k8s.io/kubernetes/test/e2e/framework/pod"
e2eskipper "k8s.io/kubernetes/test/e2e/framework/skipper" e2eskipper "k8s.io/kubernetes/test/e2e/framework/skipper"
imageutils "k8s.io/kubernetes/test/utils/image" imageutils "k8s.io/kubernetes/test/utils/image"
@ -75,7 +75,7 @@ var _ = SIGDescribe("[Feature:GPUDevicePlugin] Device Plugin", func() {
MountPath: mountPath, MountPath: mountPath,
}, },
} }
ds := daemonset.NewDaemonSet(dsName, image, labels, volumes, mounts, nil) ds := e2edaemonset.NewDaemonSet(dsName, image, labels, volumes, mounts, nil)
ds.Spec.Template.Spec.PriorityClassName = "system-node-critical" ds.Spec.Template.Spec.PriorityClassName = "system-node-critical"
ds.Spec.Template.Spec.Tolerations = []v1.Toleration{ ds.Spec.Template.Spec.Tolerations = []v1.Toleration{
{ {