vendorless path for informer-gen
This commit is contained in:
		| @@ -68,8 +68,8 @@ func (g *factoryGenerator) GenerateType(c *generator.Context, t *types.Type, w i | |||||||
| 	gvInterfaces := make(map[string]*types.Type) | 	gvInterfaces := make(map[string]*types.Type) | ||||||
| 	gvNewFuncs := make(map[string]*types.Type) | 	gvNewFuncs := make(map[string]*types.Type) | ||||||
| 	for groupName := range g.groupVersions { | 	for groupName := range g.groupVersions { | ||||||
| 		gvInterfaces[groupName] = c.Universe.Type(types.Name{Package: packageForGroup(g.outputPackage, g.groupVersions[groupName].Group), Name: "Interface"}) | 		gvInterfaces[groupName] = c.Universe.Type(types.Name{Package: packageForGroup(vendorless(g.outputPackage), g.groupVersions[groupName].Group), Name: "Interface"}) | ||||||
| 		gvNewFuncs[groupName] = c.Universe.Function(types.Name{Package: packageForGroup(g.outputPackage, g.groupVersions[groupName].Group), Name: "New"}) | 		gvNewFuncs[groupName] = c.Universe.Function(types.Name{Package: packageForGroup(vendorless(g.outputPackage), g.groupVersions[groupName].Group), Name: "New"}) | ||||||
| 	} | 	} | ||||||
| 	m := map[string]interface{}{ | 	m := map[string]interface{}{ | ||||||
| 		"cacheSharedIndexInformer":   c.Universe.Type(cacheSharedIndexInformer), | 		"cacheSharedIndexInformer":   c.Universe.Type(cacheSharedIndexInformer), | ||||||
|   | |||||||
| @@ -99,6 +99,13 @@ func packageForInternalInterfaces(base string) string { | |||||||
| 	return filepath.Join(base, "internalinterfaces") | 	return filepath.Join(base, "internalinterfaces") | ||||||
| } | } | ||||||
|  |  | ||||||
|  | func vendorless(p string) string { | ||||||
|  | 	if pos := strings.LastIndex(p, "/vendor/"); pos != -1 { | ||||||
|  | 		return p[pos+len("/vendor/"):] | ||||||
|  | 	} | ||||||
|  | 	return p | ||||||
|  | } | ||||||
|  |  | ||||||
| // Packages makes the client package definition. | // Packages makes the client package definition. | ||||||
| func Packages(context *generator.Context, arguments *args.GeneratorArgs) generator.Packages { | func Packages(context *generator.Context, arguments *args.GeneratorArgs) generator.Packages { | ||||||
| 	boilerplate, err := arguments.LoadGoBoilerplate() | 	boilerplate, err := arguments.LoadGoBoilerplate() | ||||||
| @@ -122,7 +129,7 @@ func Packages(context *generator.Context, arguments *args.GeneratorArgs) generat | |||||||
| 	externalGroupVersions := make(map[string]clientgentypes.GroupVersions) | 	externalGroupVersions := make(map[string]clientgentypes.GroupVersions) | ||||||
| 	internalGroupVersions := make(map[string]clientgentypes.GroupVersions) | 	internalGroupVersions := make(map[string]clientgentypes.GroupVersions) | ||||||
| 	for _, inputDir := range arguments.InputDirs { | 	for _, inputDir := range arguments.InputDirs { | ||||||
| 		p := context.Universe.Package(inputDir) | 		p := context.Universe.Package(vendorless(inputDir)) | ||||||
|  |  | ||||||
| 		objectMeta, internal, err := objectMetaForPackage(p) | 		objectMeta, internal, err := objectMetaForPackage(p) | ||||||
| 		if err != nil { | 		if err != nil { | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 Chao Xu
					Chao Xu