Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
K
k3s
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Jacklull
k3s
Commits
49c536ba
Commit
49c536ba
authored
Feb 19, 2017
by
Dr. Stefan Schimanski
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
client-gen: general cleanup
parent
0834ff79
Hide whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
143 additions
and
146 deletions
+143
-146
client_generator.go
cmd/libs/go2idl/client-gen/generators/client_generator.go
+18
-18
fake_client_generator.go
...o2idl/client-gen/generators/fake/fake_client_generator.go
+19
-19
generator_fake_for_clientset.go
...lient-gen/generators/fake/generator_fake_for_clientset.go
+14
-14
generator_fake_for_group.go
...dl/client-gen/generators/fake/generator_fake_for_group.go
+11
-11
generator_fake_for_type.go
...idl/client-gen/generators/fake/generator_fake_for_type.go
+22
-22
generator_for_clientset.go
...s/go2idl/client-gen/generators/generator_for_clientset.go
+18
-20
generator_for_expansion.go
...s/go2idl/client-gen/generators/generator_for_expansion.go
+2
-2
generator_for_group.go
cmd/libs/go2idl/client-gen/generators/generator_for_group.go
+37
-38
helpers.go
cmd/libs/go2idl/client-gen/types/helpers.go
+1
-1
install_test.go
federation/apis/federation/install/install_test.go
+1
-1
No files found.
cmd/libs/go2idl/client-gen/generators/client_generator.go
View file @
49c536ba
...
@@ -61,11 +61,11 @@ func generatedBy(customArgs clientgenargs.Args) string {
...
@@ -61,11 +61,11 @@ func generatedBy(customArgs clientgenargs.Args) string {
return
fmt
.
Sprintf
(
"
\n
// This package is generated by client-gen with the default arguments.
\n\n
"
)
return
fmt
.
Sprintf
(
"
\n
// This package is generated by client-gen with the default arguments.
\n\n
"
)
}
}
func
packageForGroup
(
gv
clientgentypes
.
GroupVersion
,
typeList
[]
*
types
.
Type
,
packageBasePath
string
,
apiPath
string
,
srcTreePath
string
,
inputPath
string
,
boilerplate
[]
byte
,
generatedBy
string
)
generator
.
Package
{
func
packageForGroup
(
gv
clientgentypes
.
GroupVersion
,
typeList
[]
*
types
.
Type
,
clientsetPackage
string
,
apiPath
string
,
srcTreePath
string
,
inputPackage
string
,
boilerplate
[]
byte
,
generatedBy
string
)
generator
.
Package
{
outputPackagePath
:=
strings
.
ToLower
(
filepath
.
Join
(
packageBasePath
,
gv
.
Group
.
NonEmpty
(),
gv
.
Version
.
NonEmpty
()))
groupVersionClientPackage
:=
strings
.
ToLower
(
filepath
.
Join
(
clientsetPackage
,
"typed"
,
gv
.
Group
.
NonEmpty
(),
gv
.
Version
.
NonEmpty
()))
return
&
generator
.
DefaultPackage
{
return
&
generator
.
DefaultPackage
{
PackageName
:
strings
.
ToLower
(
gv
.
Version
.
NonEmpty
()),
PackageName
:
strings
.
ToLower
(
gv
.
Version
.
NonEmpty
()),
PackagePath
:
outputPackagePath
,
PackagePath
:
groupVersionClientPackage
,
HeaderText
:
boilerplate
,
HeaderText
:
boilerplate
,
PackageDocumentation
:
[]
byte
(
PackageDocumentation
:
[]
byte
(
generatedBy
+
generatedBy
+
...
@@ -85,7 +85,7 @@ func packageForGroup(gv clientgentypes.GroupVersion, typeList []*types.Type, pac
...
@@ -85,7 +85,7 @@ func packageForGroup(gv clientgentypes.GroupVersion, typeList []*types.Type, pac
DefaultGen
:
generator
.
DefaultGen
{
DefaultGen
:
generator
.
DefaultGen
{
OptionalName
:
strings
.
ToLower
(
c
.
Namers
[
"private"
]
.
Name
(
t
)),
OptionalName
:
strings
.
ToLower
(
c
.
Namers
[
"private"
]
.
Name
(
t
)),
},
},
outputPackage
:
outputPackagePath
,
outputPackage
:
groupVersionClientPackage
,
group
:
gv
.
Group
.
NonEmpty
(),
group
:
gv
.
Group
.
NonEmpty
(),
version
:
gv
.
Version
.
String
(),
version
:
gv
.
Version
.
String
(),
typeToMatch
:
t
,
typeToMatch
:
t
,
...
@@ -97,8 +97,8 @@ func packageForGroup(gv clientgentypes.GroupVersion, typeList []*types.Type, pac
...
@@ -97,8 +97,8 @@ func packageForGroup(gv clientgentypes.GroupVersion, typeList []*types.Type, pac
DefaultGen
:
generator
.
DefaultGen
{
DefaultGen
:
generator
.
DefaultGen
{
OptionalName
:
gv
.
Group
.
NonEmpty
()
+
"_client"
,
OptionalName
:
gv
.
Group
.
NonEmpty
()
+
"_client"
,
},
},
outputPackage
:
outputPackagePath
,
outputPackage
:
groupVersionClientPackage
,
inputPac
akge
:
inputPath
,
inputPac
kage
:
inputPackage
,
group
:
gv
.
Group
.
NonEmpty
(),
group
:
gv
.
Group
.
NonEmpty
(),
version
:
gv
.
Version
.
String
(),
version
:
gv
.
Version
.
String
(),
apiPath
:
apiPath
,
apiPath
:
apiPath
,
...
@@ -108,7 +108,7 @@ func packageForGroup(gv clientgentypes.GroupVersion, typeList []*types.Type, pac
...
@@ -108,7 +108,7 @@ func packageForGroup(gv clientgentypes.GroupVersion, typeList []*types.Type, pac
expansionFileName
:=
"generated_expansion"
expansionFileName
:=
"generated_expansion"
generators
=
append
(
generators
,
&
genExpansion
{
generators
=
append
(
generators
,
&
genExpansion
{
groupPa
th
:
filepath
.
Join
(
srcTreePath
,
outputPackagePath
),
groupPa
ckagePath
:
filepath
.
Join
(
srcTreePath
,
groupVersionClientPackage
),
DefaultGen
:
generator
.
DefaultGen
{
DefaultGen
:
generator
.
DefaultGen
{
OptionalName
:
expansionFileName
,
OptionalName
:
expansionFileName
,
},
},
...
@@ -123,10 +123,10 @@ func packageForGroup(gv clientgentypes.GroupVersion, typeList []*types.Type, pac
...
@@ -123,10 +123,10 @@ func packageForGroup(gv clientgentypes.GroupVersion, typeList []*types.Type, pac
}
}
}
}
func
packageForClientset
(
customArgs
clientgenargs
.
Args
,
typedClientBasePath
string
,
boilerplate
[]
byte
,
generatedBy
string
)
generator
.
Package
{
func
packageForClientset
(
customArgs
clientgenargs
.
Args
,
clientsetPackage
string
,
boilerplate
[]
byte
,
generatedBy
string
)
generator
.
Package
{
return
&
generator
.
DefaultPackage
{
return
&
generator
.
DefaultPackage
{
PackageName
:
customArgs
.
ClientsetName
,
PackageName
:
customArgs
.
ClientsetName
,
PackagePath
:
filepath
.
Join
(
customArgs
.
ClientsetOutputPath
,
customArgs
.
ClientsetName
)
,
PackagePath
:
clientsetPackage
,
HeaderText
:
boilerplate
,
HeaderText
:
boilerplate
,
PackageDocumentation
:
[]
byte
(
PackageDocumentation
:
[]
byte
(
generatedBy
+
generatedBy
+
...
@@ -143,10 +143,10 @@ func packageForClientset(customArgs clientgenargs.Args, typedClientBasePath stri
...
@@ -143,10 +143,10 @@ func packageForClientset(customArgs clientgenargs.Args, typedClientBasePath stri
DefaultGen
:
generator
.
DefaultGen
{
DefaultGen
:
generator
.
DefaultGen
{
OptionalName
:
"clientset"
,
OptionalName
:
"clientset"
,
},
},
groups
:
customArgs
.
Groups
,
groups
:
customArgs
.
Groups
,
typedClientPath
:
typedClientBasePath
,
clientsetPackage
:
clientsetPackage
,
outputPackage
:
customArgs
.
ClientsetName
,
outputPackage
:
customArgs
.
ClientsetName
,
imports
:
generator
.
NewImportTracker
(),
imports
:
generator
.
NewImportTracker
(),
},
},
}
}
return
generators
return
generators
...
@@ -201,11 +201,11 @@ func Packages(context *generator.Context, arguments *args.GeneratorArgs) generat
...
@@ -201,11 +201,11 @@ func Packages(context *generator.Context, arguments *args.GeneratorArgs) generat
}
}
var
packageList
[]
generator
.
Package
var
packageList
[]
generator
.
Package
typedClientBasePath
:=
filepath
.
Join
(
customArgs
.
ClientsetOutputPath
,
customArgs
.
ClientsetName
,
"typed"
)
clientsetPackage
:=
filepath
.
Join
(
customArgs
.
ClientsetOutputPath
,
customArgs
.
ClientsetName
)
packageList
=
append
(
packageList
,
packageForClientset
(
customArgs
,
typedClientBasePath
,
boilerplate
,
generatedBy
))
packageList
=
append
(
packageList
,
packageForClientset
(
customArgs
,
clientsetPackage
,
boilerplate
,
generatedBy
))
if
customArgs
.
FakeClient
{
if
customArgs
.
FakeClient
{
packageList
=
append
(
packageList
,
fake
.
PackageForClientset
(
customArgs
,
typedClientBasePath
,
boilerplate
,
generatedBy
))
packageList
=
append
(
packageList
,
fake
.
PackageForClientset
(
customArgs
,
clientsetPackage
,
boilerplate
,
generatedBy
))
}
}
// If --clientset-only=true, we don't regenerate the individual typed clients.
// If --clientset-only=true, we don't regenerate the individual typed clients.
...
@@ -219,9 +219,9 @@ func Packages(context *generator.Context, arguments *args.GeneratorArgs) generat
...
@@ -219,9 +219,9 @@ func Packages(context *generator.Context, arguments *args.GeneratorArgs) generat
gv
:=
clientgentypes
.
GroupVersion
{
Group
:
group
.
Group
,
Version
:
version
}
gv
:=
clientgentypes
.
GroupVersion
{
Group
:
group
.
Group
,
Version
:
version
}
types
:=
gvToTypes
[
gv
]
types
:=
gvToTypes
[
gv
]
inputPath
:=
customArgs
.
GroupVersionToInputPath
[
gv
]
inputPath
:=
customArgs
.
GroupVersionToInputPath
[
gv
]
packageList
=
append
(
packageList
,
packageForGroup
(
gv
,
orderer
.
OrderTypes
(
types
),
typedClientBasePath
,
customArgs
.
ClientsetAPIPath
,
arguments
.
OutputBase
,
inputPath
,
boilerplate
,
generatedBy
))
packageList
=
append
(
packageList
,
packageForGroup
(
gv
,
orderer
.
OrderTypes
(
types
),
clientsetPackage
,
customArgs
.
ClientsetAPIPath
,
arguments
.
OutputBase
,
inputPath
,
boilerplate
,
generatedBy
))
if
customArgs
.
FakeClient
{
if
customArgs
.
FakeClient
{
packageList
=
append
(
packageList
,
fake
.
PackageForGroup
(
gv
,
orderer
.
OrderTypes
(
types
),
typedClientBasePath
,
arguments
.
OutputBas
e
,
inputPath
,
boilerplate
,
generatedBy
))
packageList
=
append
(
packageList
,
fake
.
PackageForGroup
(
gv
,
orderer
.
OrderTypes
(
types
),
clientsetPackag
e
,
inputPath
,
boilerplate
,
generatedBy
))
}
}
}
}
}
}
...
...
cmd/libs/go2idl/client-gen/generators/fake/fake_client_generator.go
View file @
49c536ba
...
@@ -28,13 +28,13 @@ import (
...
@@ -28,13 +28,13 @@ import (
clientgentypes
"k8s.io/kubernetes/cmd/libs/go2idl/client-gen/types"
clientgentypes
"k8s.io/kubernetes/cmd/libs/go2idl/client-gen/types"
)
)
func
PackageForGroup
(
gv
clientgentypes
.
GroupVersion
,
typeList
[]
*
types
.
Type
,
packageBasePath
string
,
srcTreePath
string
,
inputPath
string
,
boilerplate
[]
byte
,
generatedBy
string
)
generator
.
Package
{
func
PackageForGroup
(
gv
clientgentypes
.
GroupVersion
,
typeList
[]
*
types
.
Type
,
clientsetPackage
string
,
inputPackage
string
,
boilerplate
[]
byte
,
generatedBy
string
)
generator
.
Package
{
outputPackage
Path
:=
strings
.
ToLower
(
filepath
.
Join
(
packageBasePath
,
gv
.
Group
.
NonEmpty
(),
gv
.
Version
.
NonEmpty
(),
"fake"
))
outputPackage
:=
strings
.
ToLower
(
filepath
.
Join
(
clientsetPackage
,
"typed"
,
gv
.
Group
.
NonEmpty
(),
gv
.
Version
.
NonEmpty
(),
"fake"
))
// TODO: should make this a function, called by here and in client-generator.go
// TODO: should make this a function, called by here and in client-generator.go
realClientPa
th
:=
filepath
.
Join
(
packageBasePath
,
gv
.
Group
.
NonEmpty
(),
gv
.
Version
.
NonEmpty
())
realClientPa
ckage
:=
filepath
.
Join
(
clientsetPackage
,
"typed"
,
gv
.
Group
.
NonEmpty
(),
gv
.
Version
.
NonEmpty
())
return
&
generator
.
DefaultPackage
{
return
&
generator
.
DefaultPackage
{
PackageName
:
"fake"
,
PackageName
:
"fake"
,
PackagePath
:
outputPackage
Path
,
PackagePath
:
outputPackage
,
HeaderText
:
boilerplate
,
HeaderText
:
boilerplate
,
PackageDocumentation
:
[]
byte
(
PackageDocumentation
:
[]
byte
(
generatedBy
+
generatedBy
+
...
@@ -54,10 +54,10 @@ func PackageForGroup(gv clientgentypes.GroupVersion, typeList []*types.Type, pac
...
@@ -54,10 +54,10 @@ func PackageForGroup(gv clientgentypes.GroupVersion, typeList []*types.Type, pac
DefaultGen
:
generator
.
DefaultGen
{
DefaultGen
:
generator
.
DefaultGen
{
OptionalName
:
"fake_"
+
strings
.
ToLower
(
c
.
Namers
[
"private"
]
.
Name
(
t
)),
OptionalName
:
"fake_"
+
strings
.
ToLower
(
c
.
Namers
[
"private"
]
.
Name
(
t
)),
},
},
outputPackage
:
outputPackagePath
,
outputPackage
:
outputPackage
,
inputPackage
:
inputPackage
,
group
:
gv
.
Group
.
NonEmpty
(),
group
:
gv
.
Group
.
NonEmpty
(),
version
:
gv
.
Version
.
String
(),
version
:
gv
.
Version
.
String
(),
inputPackage
:
inputPath
,
typeToMatch
:
t
,
typeToMatch
:
t
,
imports
:
generator
.
NewImportTracker
(),
imports
:
generator
.
NewImportTracker
(),
})
})
...
@@ -67,12 +67,12 @@ func PackageForGroup(gv clientgentypes.GroupVersion, typeList []*types.Type, pac
...
@@ -67,12 +67,12 @@ func PackageForGroup(gv clientgentypes.GroupVersion, typeList []*types.Type, pac
DefaultGen
:
generator
.
DefaultGen
{
DefaultGen
:
generator
.
DefaultGen
{
OptionalName
:
"fake_"
+
gv
.
Group
.
NonEmpty
()
+
"_client"
,
OptionalName
:
"fake_"
+
gv
.
Group
.
NonEmpty
()
+
"_client"
,
},
},
outputPackage
:
outputPackagePath
,
outputPackage
:
outputPackage
,
realClientPa
th
:
realClientPath
,
realClientPa
ckage
:
realClientPackage
,
group
:
gv
.
Group
.
NonEmpty
(),
group
:
gv
.
Group
.
NonEmpty
(),
version
:
gv
.
Version
.
String
(),
version
:
gv
.
Version
.
String
(),
types
:
typeList
,
types
:
typeList
,
imports
:
generator
.
NewImportTracker
(),
imports
:
generator
.
NewImportTracker
(),
})
})
return
generators
return
generators
},
},
...
@@ -90,12 +90,12 @@ func extractBoolTagOrDie(key string, lines []string) bool {
...
@@ -90,12 +90,12 @@ func extractBoolTagOrDie(key string, lines []string) bool {
return
val
return
val
}
}
func
PackageForClientset
(
customArgs
clientgenargs
.
Args
,
typedClientBasePath
string
,
boilerplate
[]
byte
,
generatedBy
string
)
generator
.
Package
{
func
PackageForClientset
(
customArgs
clientgenargs
.
Args
,
fakeClientsetPackage
string
,
boilerplate
[]
byte
,
generatedBy
string
)
generator
.
Package
{
return
&
generator
.
DefaultPackage
{
return
&
generator
.
DefaultPackage
{
// TODO: we'll generate fake clientset for different release in the future.
// TODO: we'll generate fake clientset for different release in the future.
// Package name and path are hard coded for now.
// Package name and path are hard coded for now.
PackageName
:
"fake"
,
PackageName
:
"fake"
,
PackagePath
:
filepath
.
Join
(
customArgs
.
ClientsetOutputPath
,
customArgs
.
ClientsetNam
e
,
"fake"
),
PackagePath
:
filepath
.
Join
(
fakeClientsetPackag
e
,
"fake"
),
HeaderText
:
boilerplate
,
HeaderText
:
boilerplate
,
PackageDocumentation
:
[]
byte
(
PackageDocumentation
:
[]
byte
(
generatedBy
+
generatedBy
+
...
@@ -112,11 +112,11 @@ func PackageForClientset(customArgs clientgenargs.Args, typedClientBasePath stri
...
@@ -112,11 +112,11 @@ func PackageForClientset(customArgs clientgenargs.Args, typedClientBasePath stri
DefaultGen
:
generator
.
DefaultGen
{
DefaultGen
:
generator
.
DefaultGen
{
OptionalName
:
"clientset_generated"
,
OptionalName
:
"clientset_generated"
,
},
},
groups
:
customArgs
.
Groups
,
groups
:
customArgs
.
Groups
,
typedClientPath
:
typedClientBasePath
,
fakeClientsetPackage
:
fakeClientsetPackage
,
outputPackage
:
"fake"
,
outputPackage
:
"fake"
,
imports
:
generator
.
NewImportTracker
(),
imports
:
generator
.
NewImportTracker
(),
clientsetPath
:
filepath
.
Join
(
customArgs
.
ClientsetOutputPath
,
customArgs
.
ClientsetName
),
realClientsetPackage
:
filepath
.
Join
(
customArgs
.
ClientsetOutputPath
,
customArgs
.
ClientsetName
),
},
},
}
}
return
generators
return
generators
...
...
cmd/libs/go2idl/client-gen/generators/fake/generator_fake_for_clientset.go
View file @
49c536ba
...
@@ -31,13 +31,13 @@ import (
...
@@ -31,13 +31,13 @@ import (
// genClientset generates a package for a clientset.
// genClientset generates a package for a clientset.
type
genClientset
struct
{
type
genClientset
struct
{
generator
.
DefaultGen
generator
.
DefaultGen
groups
[]
clientgentypes
.
GroupVersions
groups
[]
clientgentypes
.
GroupVersions
typedClientPath
string
fakeClientsetPackage
string
outputPackage
string
outputPackage
string
imports
namer
.
ImportTracker
imports
namer
.
ImportTracker
clientsetGenerated
bool
clientsetGenerated
bool
// the import path of the generated real clientset.
// the import path of the generated real clientset.
clientsetPath
string
realClientsetPackage
string
}
}
var
_
generator
.
Generator
=
&
genClientset
{}
var
_
generator
.
Generator
=
&
genClientset
{}
...
@@ -59,14 +59,15 @@ func (g *genClientset) Imports(c *generator.Context) (imports []string) {
...
@@ -59,14 +59,15 @@ func (g *genClientset) Imports(c *generator.Context) (imports []string) {
imports
=
append
(
imports
,
g
.
imports
.
ImportLines
()
...
)
imports
=
append
(
imports
,
g
.
imports
.
ImportLines
()
...
)
for
_
,
group
:=
range
g
.
groups
{
for
_
,
group
:=
range
g
.
groups
{
for
_
,
version
:=
range
group
.
Versions
{
for
_
,
version
:=
range
group
.
Versions
{
typedClientPath
:=
filepath
.
Join
(
g
.
typedClientPath
,
group
.
Group
.
NonEmpty
(),
version
.
NonEmpty
())
groupClientPackage
:=
filepath
.
Join
(
g
.
fakeClientsetPackage
,
"typed"
,
group
.
Group
.
NonEmpty
(),
version
.
NonEmpty
())
imports
=
append
(
imports
,
strings
.
ToLower
(
fmt
.
Sprintf
(
"%s%s
\"
%s
\"
"
,
version
.
NonEmpty
(),
group
.
Group
.
NonEmpty
(),
typedClientPath
)))
fakeGroupClientPackage
:=
filepath
.
Join
(
groupClientPackage
,
"fake"
)
fakeTypedClientPath
:=
filepath
.
Join
(
typedClientPath
,
"fake"
)
imports
=
append
(
imports
,
strings
.
ToLower
(
fmt
.
Sprintf
(
"fake%s%s
\"
%s
\"
"
,
version
.
NonEmpty
(),
group
.
Group
.
NonEmpty
(),
fakeTypedClientPath
)))
imports
=
append
(
imports
,
strings
.
ToLower
(
fmt
.
Sprintf
(
"%s%s
\"
%s
\"
"
,
group
.
Group
.
NonEmpty
(),
version
.
NonEmpty
(),
groupClientPackage
)))
imports
=
append
(
imports
,
strings
.
ToLower
(
fmt
.
Sprintf
(
"fake%s%s
\"
%s
\"
"
,
group
.
Group
.
NonEmpty
(),
version
.
NonEmpty
(),
fakeGroupClientPackage
)))
}
}
}
}
// the package that has the clientset Interface
// the package that has the clientset Interface
imports
=
append
(
imports
,
fmt
.
Sprintf
(
"clientset
\"
%s
\"
"
,
g
.
clientsetPath
))
imports
=
append
(
imports
,
fmt
.
Sprintf
(
"clientset
\"
%s
\"
"
,
g
.
realClientsetPackage
))
// imports for the code in commonTemplate
// imports for the code in commonTemplate
imports
=
append
(
imports
,
imports
=
append
(
imports
,
"k8s.io/kubernetes/pkg/api"
,
"k8s.io/kubernetes/pkg/api"
,
...
@@ -85,12 +86,11 @@ func (g *genClientset) GenerateType(c *generator.Context, t *types.Type, w io.Wr
...
@@ -85,12 +86,11 @@ func (g *genClientset) GenerateType(c *generator.Context, t *types.Type, w io.Wr
// perhaps we can adapt the go2ild framework to this kind of usage.
// perhaps we can adapt the go2ild framework to this kind of usage.
sw
:=
generator
.
NewSnippetWriter
(
w
,
c
,
"$"
,
"$"
)
sw
:=
generator
.
NewSnippetWriter
(
w
,
c
,
"$"
,
"$"
)
sw
.
Do
(
common
,
nil
)
allGroups
:=
clientgentypes
.
ToGroupVersionPackages
(
g
.
groups
)
sw
.
Do
(
common
,
nil
)
sw
.
Do
(
checkImpl
,
nil
)
sw
.
Do
(
checkImpl
,
nil
)
allGroups
:=
clientgentypes
.
ToGroupVersionPackages
(
g
.
groups
)
for
_
,
g
:=
range
allGroups
{
for
_
,
g
:=
range
allGroups
{
sw
.
Do
(
clientsetInterfaceImplTemplate
,
g
)
sw
.
Do
(
clientsetInterfaceImplTemplate
,
g
)
// don't generated the default method if generating internalversion clientset
// don't generated the default method if generating internalversion clientset
...
...
cmd/libs/go2idl/client-gen/generators/fake/generator_fake_for_group.go
View file @
49c536ba
...
@@ -30,10 +30,10 @@ import (
...
@@ -30,10 +30,10 @@ import (
// genFakeForGroup produces a file for a group client, e.g. ExtensionsClient for the extension group.
// genFakeForGroup produces a file for a group client, e.g. ExtensionsClient for the extension group.
type
genFakeForGroup
struct
{
type
genFakeForGroup
struct
{
generator
.
DefaultGen
generator
.
DefaultGen
outputPackage
string
outputPackage
string
realClientPa
th
string
realClientPa
ckage
string
group
string
group
string
version
string
version
string
// types in this group
// types in this group
types
[]
*
types
.
Type
types
[]
*
types
.
Type
imports
namer
.
ImportTracker
imports
namer
.
ImportTracker
...
@@ -53,27 +53,27 @@ func (g *genFakeForGroup) Namers(c *generator.Context) namer.NameSystems {
...
@@ -53,27 +53,27 @@ func (g *genFakeForGroup) Namers(c *generator.Context) namer.NameSystems {
}
}
func
(
g
*
genFakeForGroup
)
Imports
(
c
*
generator
.
Context
)
(
imports
[]
string
)
{
func
(
g
*
genFakeForGroup
)
Imports
(
c
*
generator
.
Context
)
(
imports
[]
string
)
{
imports
=
append
(
g
.
imports
.
ImportLines
(),
strings
.
ToLower
(
fmt
.
Sprintf
(
"%s
\"
%s
\"
"
,
filepath
.
Base
(
g
.
realClientPa
th
),
g
.
realClientPath
)))
imports
=
append
(
g
.
imports
.
ImportLines
(),
strings
.
ToLower
(
fmt
.
Sprintf
(
"%s
\"
%s
\"
"
,
filepath
.
Base
(
g
.
realClientPa
ckage
),
g
.
realClientPackage
)))
return
imports
return
imports
}
}
func
(
g
*
genFakeForGroup
)
GenerateType
(
c
*
generator
.
Context
,
t
*
types
.
Type
,
w
io
.
Writer
)
error
{
func
(
g
*
genFakeForGroup
)
GenerateType
(
c
*
generator
.
Context
,
t
*
types
.
Type
,
w
io
.
Writer
)
error
{
sw
:=
generator
.
NewSnippetWriter
(
w
,
c
,
"$"
,
"$"
)
sw
:=
generator
.
NewSnippetWriter
(
w
,
c
,
"$"
,
"$"
)
const
pkgTestingCore
=
"k8s.io/client-go/testing"
const
pkgRESTClient
=
"k8s.io/client-go/rest"
m
:=
map
[
string
]
interface
{}{
m
:=
map
[
string
]
interface
{}{
"group"
:
g
.
group
,
"group"
:
g
.
group
,
"GroupVersion"
:
namer
.
IC
(
g
.
group
)
+
namer
.
IC
(
g
.
version
),
"GroupVersion"
:
namer
.
IC
(
g
.
group
)
+
namer
.
IC
(
g
.
version
),
"Fake"
:
c
.
Universe
.
Type
(
types
.
Name
{
Package
:
pkgTestingCore
,
Name
:
"Fake"
}),
"Fake"
:
c
.
Universe
.
Type
(
types
.
Name
{
Package
:
"k8s.io/client-go/testing"
,
Name
:
"Fake"
}),
"RESTClientInterface"
:
c
.
Universe
.
Type
(
types
.
Name
{
Package
:
pkgRESTClient
,
Name
:
"Interface"
}),
"RESTClientInterface"
:
c
.
Universe
.
Type
(
types
.
Name
{
Package
:
"k8s.io/client-go/rest"
,
Name
:
"Interface"
}),
"RESTClient"
:
c
.
Universe
.
Type
(
types
.
Name
{
Package
:
pkgRESTClient
,
Name
:
"RESTClient"
}),
"RESTClient"
:
c
.
Universe
.
Type
(
types
.
Name
{
Package
:
"k8s.io/client-go/rest"
,
Name
:
"RESTClient"
}),
}
}
sw
.
Do
(
groupClientTemplate
,
m
)
sw
.
Do
(
groupClientTemplate
,
m
)
for
_
,
t
:=
range
g
.
types
{
for
_
,
t
:=
range
g
.
types
{
wrapper
:=
map
[
string
]
interface
{}{
wrapper
:=
map
[
string
]
interface
{}{
"type"
:
t
,
"type"
:
t
,
"GroupVersion"
:
namer
.
IC
(
g
.
group
)
+
namer
.
IC
(
g
.
version
),
"GroupVersion"
:
namer
.
IC
(
g
.
group
)
+
namer
.
IC
(
g
.
version
),
"realClientPackage"
:
strings
.
ToLower
(
filepath
.
Base
(
g
.
realClientPa
th
)),
"realClientPackage"
:
strings
.
ToLower
(
filepath
.
Base
(
g
.
realClientPa
ckage
)),
}
}
namespaced
:=
!
extractBoolTagOrDie
(
"nonNamespaced"
,
t
.
SecondClosestCommentLines
)
namespaced
:=
!
extractBoolTagOrDie
(
"nonNamespaced"
,
t
.
SecondClosestCommentLines
)
if
namespaced
{
if
namespaced
{
...
...
cmd/libs/go2idl/client-gen/generators/fake/generator_fake_for_type.go
View file @
49c536ba
...
@@ -87,7 +87,6 @@ func hasObjectMeta(t *types.Type) bool {
...
@@ -87,7 +87,6 @@ func hasObjectMeta(t *types.Type) bool {
func
(
g
*
genFakeForType
)
GenerateType
(
c
*
generator
.
Context
,
t
*
types
.
Type
,
w
io
.
Writer
)
error
{
func
(
g
*
genFakeForType
)
GenerateType
(
c
*
generator
.
Context
,
t
*
types
.
Type
,
w
io
.
Writer
)
error
{
sw
:=
generator
.
NewSnippetWriter
(
w
,
c
,
"$"
,
"$"
)
sw
:=
generator
.
NewSnippetWriter
(
w
,
c
,
"$"
,
"$"
)
pkg
:=
filepath
.
Base
(
t
.
Name
.
Package
)
pkg
:=
filepath
.
Base
(
t
.
Name
.
Package
)
const
pkgTestingCore
=
"k8s.io/client-go/testing"
namespaced
:=
!
extractBoolTagOrDie
(
"nonNamespaced"
,
t
.
SecondClosestCommentLines
)
namespaced
:=
!
extractBoolTagOrDie
(
"nonNamespaced"
,
t
.
SecondClosestCommentLines
)
canonicalGroup
:=
g
.
group
canonicalGroup
:=
g
.
group
if
canonicalGroup
==
"core"
{
if
canonicalGroup
==
"core"
{
...
@@ -105,6 +104,7 @@ func (g *genFakeForType) GenerateType(c *generator.Context, t *types.Type, w io.
...
@@ -105,6 +104,7 @@ func (g *genFakeForType) GenerateType(c *generator.Context, t *types.Type, w io.
groupName
=
override
[
0
]
groupName
=
override
[
0
]
}
}
const
pkgClientGoTesting
=
"k8s.io/client-go/testing"
m
:=
map
[
string
]
interface
{}{
m
:=
map
[
string
]
interface
{}{
"type"
:
t
,
"type"
:
t
,
"package"
:
pkg
,
"package"
:
pkg
,
...
@@ -123,27 +123,27 @@ func (g *genFakeForType) GenerateType(c *generator.Context, t *types.Type, w io.
...
@@ -123,27 +123,27 @@ func (g *genFakeForType) GenerateType(c *generator.Context, t *types.Type, w io.
"PatchType"
:
c
.
Universe
.
Type
(
types
.
Name
{
Package
:
"k8s.io/apimachinery/pkg/types"
,
Name
:
"PatchType"
}),
"PatchType"
:
c
.
Universe
.
Type
(
types
.
Name
{
Package
:
"k8s.io/apimachinery/pkg/types"
,
Name
:
"PatchType"
}),
"watchInterface"
:
c
.
Universe
.
Type
(
types
.
Name
{
Package
:
"k8s.io/apimachinery/pkg/watch"
,
Name
:
"Interface"
}),
"watchInterface"
:
c
.
Universe
.
Type
(
types
.
Name
{
Package
:
"k8s.io/apimachinery/pkg/watch"
,
Name
:
"Interface"
}),
"NewRootListAction"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
pkg
TestingCore
,
Name
:
"NewRootListAction"
}),
"NewRootListAction"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
pkg
ClientGoTesting
,
Name
:
"NewRootListAction"
}),
"NewListAction"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
pkg
TestingCore
,
Name
:
"NewListAction"
}),
"NewListAction"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
pkg
ClientGoTesting
,
Name
:
"NewListAction"
}),
"NewRootGetAction"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
pkg
TestingCore
,
Name
:
"NewRootGetAction"
}),
"NewRootGetAction"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
pkg
ClientGoTesting
,
Name
:
"NewRootGetAction"
}),
"NewGetAction"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
pkg
TestingCore
,
Name
:
"NewGetAction"
}),
"NewGetAction"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
pkg
ClientGoTesting
,
Name
:
"NewGetAction"
}),
"NewRootDeleteAction"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
pkg
TestingCore
,
Name
:
"NewRootDeleteAction"
}),
"NewRootDeleteAction"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
pkg
ClientGoTesting
,
Name
:
"NewRootDeleteAction"
}),
"NewDeleteAction"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
pkg
TestingCore
,
Name
:
"NewDeleteAction"
}),
"NewDeleteAction"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
pkg
ClientGoTesting
,
Name
:
"NewDeleteAction"
}),
"NewRootDeleteCollectionAction"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
pkg
TestingCore
,
Name
:
"NewRootDeleteCollectionAction"
}),
"NewRootDeleteCollectionAction"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
pkg
ClientGoTesting
,
Name
:
"NewRootDeleteCollectionAction"
}),
"NewDeleteCollectionAction"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
pkg
TestingCore
,
Name
:
"NewDeleteCollectionAction"
}),
"NewDeleteCollectionAction"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
pkg
ClientGoTesting
,
Name
:
"NewDeleteCollectionAction"
}),
"NewRootUpdateAction"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
pkg
TestingCore
,
Name
:
"NewRootUpdateAction"
}),
"NewRootUpdateAction"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
pkg
ClientGoTesting
,
Name
:
"NewRootUpdateAction"
}),
"NewUpdateAction"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
pkg
TestingCore
,
Name
:
"NewUpdateAction"
}),
"NewUpdateAction"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
pkg
ClientGoTesting
,
Name
:
"NewUpdateAction"
}),
"NewRootCreateAction"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
pkg
TestingCore
,
Name
:
"NewRootCreateAction"
}),
"NewRootCreateAction"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
pkg
ClientGoTesting
,
Name
:
"NewRootCreateAction"
}),
"NewCreateAction"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
pkg
TestingCore
,
Name
:
"NewCreateAction"
}),
"NewCreateAction"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
pkg
ClientGoTesting
,
Name
:
"NewCreateAction"
}),
"NewRootWatchAction"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
pkg
TestingCore
,
Name
:
"NewRootWatchAction"
}),
"NewRootWatchAction"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
pkg
ClientGoTesting
,
Name
:
"NewRootWatchAction"
}),
"NewWatchAction"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
pkg
TestingCore
,
Name
:
"NewWatchAction"
}),
"NewWatchAction"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
pkg
ClientGoTesting
,
Name
:
"NewWatchAction"
}),
"NewUpdateSubresourceAction"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
pkg
TestingCore
,
Name
:
"NewUpdateSubresourceAction"
}),
"NewUpdateSubresourceAction"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
pkg
ClientGoTesting
,
Name
:
"NewUpdateSubresourceAction"
}),
"NewRootUpdateSubresourceAction"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
pkg
TestingCore
,
Name
:
"NewRootUpdateSubresourceAction"
}),
"NewRootUpdateSubresourceAction"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
pkg
ClientGoTesting
,
Name
:
"NewRootUpdateSubresourceAction"
}),
"NewRootPatchAction"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
pkg
TestingCore
,
Name
:
"NewRootPatchAction"
}),
"NewRootPatchAction"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
pkg
ClientGoTesting
,
Name
:
"NewRootPatchAction"
}),
"NewPatchAction"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
pkg
TestingCore
,
Name
:
"NewPatchAction"
}),
"NewPatchAction"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
pkg
ClientGoTesting
,
Name
:
"NewPatchAction"
}),
"NewRootPatchSubresourceAction"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
pkg
TestingCore
,
Name
:
"NewRootPatchSubresourceAction"
}),
"NewRootPatchSubresourceAction"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
pkg
ClientGoTesting
,
Name
:
"NewRootPatchSubresourceAction"
}),
"NewPatchSubresourceAction"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
pkg
TestingCore
,
Name
:
"NewPatchSubresourceAction"
}),
"NewPatchSubresourceAction"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
pkg
ClientGoTesting
,
Name
:
"NewPatchSubresourceAction"
}),
"ExtractFromListOptions"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
pkg
TestingCore
,
Name
:
"ExtractFromListOptions"
}),
"ExtractFromListOptions"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
pkg
ClientGoTesting
,
Name
:
"ExtractFromListOptions"
}),
}
}
noMethods
:=
extractBoolTagOrDie
(
"noMethods"
,
t
.
SecondClosestCommentLines
)
==
true
noMethods
:=
extractBoolTagOrDie
(
"noMethods"
,
t
.
SecondClosestCommentLines
)
==
true
...
...
cmd/libs/go2idl/client-gen/generators/generator_for_clientset.go
View file @
49c536ba
...
@@ -32,7 +32,7 @@ import (
...
@@ -32,7 +32,7 @@ import (
type
genClientset
struct
{
type
genClientset
struct
{
generator
.
DefaultGen
generator
.
DefaultGen
groups
[]
clientgentypes
.
GroupVersions
groups
[]
clientgentypes
.
GroupVersions
typedClientPath
string
clientsetPackage
string
outputPackage
string
outputPackage
string
imports
namer
.
ImportTracker
imports
namer
.
ImportTracker
clientsetGenerated
bool
clientsetGenerated
bool
...
@@ -57,12 +57,10 @@ func (g *genClientset) Imports(c *generator.Context) (imports []string) {
...
@@ -57,12 +57,10 @@ func (g *genClientset) Imports(c *generator.Context) (imports []string) {
imports
=
append
(
imports
,
g
.
imports
.
ImportLines
()
...
)
imports
=
append
(
imports
,
g
.
imports
.
ImportLines
()
...
)
for
_
,
group
:=
range
g
.
groups
{
for
_
,
group
:=
range
g
.
groups
{
for
_
,
version
:=
range
group
.
Versions
{
for
_
,
version
:=
range
group
.
Versions
{
typedClientPath
:=
filepath
.
Join
(
g
.
typedClientPath
,
group
.
Group
.
NonEmpty
(),
version
.
NonEmpty
())
typedClientPath
:=
filepath
.
Join
(
g
.
clientsetPackage
,
"typed"
,
group
.
Group
.
NonEmpty
(),
version
.
NonEmpty
())
imports
=
append
(
imports
,
strings
.
ToLower
(
fmt
.
Sprintf
(
"%s%s
\"
%s
\"
"
,
version
.
NonEmpty
(),
group
.
Group
.
NonEmpty
(),
typedClientPath
)))
imports
=
append
(
imports
,
strings
.
ToLower
(
fmt
.
Sprintf
(
"%s%s
\"
%s
\"
"
,
group
.
Group
.
NonEmpty
(),
version
.
NonEmpty
(),
typedClientPath
)))
}
}
}
}
imports
=
append
(
imports
,
"github.com/golang/glog"
)
imports
=
append
(
imports
,
"k8s.io/client-go/util/flowcontrol"
)
return
return
}
}
...
@@ -70,21 +68,21 @@ func (g *genClientset) GenerateType(c *generator.Context, t *types.Type, w io.Wr
...
@@ -70,21 +68,21 @@ func (g *genClientset) GenerateType(c *generator.Context, t *types.Type, w io.Wr
// TODO: We actually don't need any type information to generate the clientset,
// TODO: We actually don't need any type information to generate the clientset,
// perhaps we can adapt the go2ild framework to this kind of usage.
// perhaps we can adapt the go2ild framework to this kind of usage.
sw
:=
generator
.
NewSnippetWriter
(
w
,
c
,
"$"
,
"$"
)
sw
:=
generator
.
NewSnippetWriter
(
w
,
c
,
"$"
,
"$"
)
const
pkgDiscovery
=
"k8s.io/client-go/discovery"
const
pkgRESTClient
=
"k8s.io/client-go/rest"
allGroups
:=
clientgentypes
.
ToGroupVersionPackages
(
g
.
groups
)
allGroups
:=
clientgentypes
.
ToGroupVersionPackages
(
g
.
groups
)
m
:=
map
[
string
]
interface
{}{
m
:=
map
[
string
]
interface
{}{
"allGroups"
:
allGroups
,
"allGroups"
:
allGroups
,
"Config"
:
c
.
Universe
.
Type
(
types
.
Name
{
Package
:
pkgRESTClient
,
Name
:
"Config"
}),
"Config"
:
c
.
Universe
.
Type
(
types
.
Name
{
Package
:
"k8s.io/client-go/rest"
,
Name
:
"Config"
}),
"DefaultKubernetesUserAgent"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
pkgRESTClient
,
Name
:
"DefaultKubernetesUserAgent"
}),
"DefaultKubernetesUserAgent"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
"k8s.io/client-go/rest"
,
Name
:
"DefaultKubernetesUserAgent"
}),
"RESTClientInterface"
:
c
.
Universe
.
Type
(
types
.
Name
{
Package
:
pkgRESTClient
,
Name
:
"Interface"
}),
"RESTClientInterface"
:
c
.
Universe
.
Type
(
types
.
Name
{
Package
:
"k8s.io/client-go/rest"
,
Name
:
"Interface"
}),
"DiscoveryInterface"
:
c
.
Universe
.
Type
(
types
.
Name
{
Package
:
pkgDiscovery
,
Name
:
"DiscoveryInterface"
}),
"DiscoveryInterface"
:
c
.
Universe
.
Type
(
types
.
Name
{
Package
:
"k8s.io/client-go/discovery"
,
Name
:
"DiscoveryInterface"
}),
"DiscoveryClient"
:
c
.
Universe
.
Type
(
types
.
Name
{
Package
:
pkgDiscovery
,
Name
:
"DiscoveryClient"
}),
"DiscoveryClient"
:
c
.
Universe
.
Type
(
types
.
Name
{
Package
:
"k8s.io/client-go/discovery"
,
Name
:
"DiscoveryClient"
}),
"NewDiscoveryClientForConfig"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
pkgDiscovery
,
Name
:
"NewDiscoveryClientForConfig"
}),
"NewDiscoveryClientForConfig"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
"k8s.io/client-go/discovery"
,
Name
:
"NewDiscoveryClientForConfig"
}),
"NewDiscoveryClientForConfigOrDie"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
pkgDiscovery
,
Name
:
"NewDiscoveryClientForConfigOrDie"
}),
"NewDiscoveryClientForConfigOrDie"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
"k8s.io/client-go/discovery"
,
Name
:
"NewDiscoveryClientForConfigOrDie"
}),
"NewDiscoveryClient"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
pkgDiscovery
,
Name
:
"NewDiscoveryClient"
}),
"NewDiscoveryClient"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
"k8s.io/client-go/discovery"
,
Name
:
"NewDiscoveryClient"
}),
"flowcontrolNewTokenBucketRateLimiter"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
"k8s.io/client-go/util/flowcontrol"
,
Name
:
"NewTokenBucketRateLimiter"
}),
"glogErrorf"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
"github.com/golang/glog"
,
Name
:
"Errorf"
}),
}
}
sw
.
Do
(
clientsetInterface
,
m
)
sw
.
Do
(
clientsetInterface
,
m
)
sw
.
Do
(
clientsetTemplate
,
m
)
sw
.
Do
(
clientsetTemplate
,
m
)
...
@@ -108,8 +106,8 @@ type Interface interface {
...
@@ -108,8 +106,8 @@ type Interface interface {
Discovery() $.DiscoveryInterface|raw$
Discovery() $.DiscoveryInterface|raw$
$range .allGroups$$.GroupVersion$() $.PackageName$.$.GroupVersion$Interface
$range .allGroups$$.GroupVersion$() $.PackageName$.$.GroupVersion$Interface
$if .IsDefaultVersion$// Deprecated: please explicitly pick a version if possible.
$if .IsDefaultVersion$// Deprecated: please explicitly pick a version if possible.
$.Group$() $.PackageName$.$.GroupVersion$Interface
$end$
$.Group$() $.PackageName$.$.GroupVersion$Interface
$end$
$end$
$end$
}
}
`
`
...
@@ -159,7 +157,7 @@ var newClientsetForConfigTemplate = `
...
@@ -159,7 +157,7 @@ var newClientsetForConfigTemplate = `
func NewForConfig(c *$.Config|raw$) (*Clientset, error) {
func NewForConfig(c *$.Config|raw$) (*Clientset, error) {
configShallowCopy := *c
configShallowCopy := *c
if configShallowCopy.RateLimiter == nil && configShallowCopy.QPS > 0 {
if configShallowCopy.RateLimiter == nil && configShallowCopy.QPS > 0 {
configShallowCopy.RateLimiter =
flowcontrol.NewTokenBucketRateLimiter
(configShallowCopy.QPS, configShallowCopy.Burst)
configShallowCopy.RateLimiter =
$.flowcontrolNewTokenBucketRateLimiter|raw$
(configShallowCopy.QPS, configShallowCopy.Burst)
}
}
var cs Clientset
var cs Clientset
var err error
var err error
...
@@ -170,7 +168,7 @@ $range .allGroups$ cs.$.GroupVersion$Client, err =$.PackageName$.NewForConfig
...
@@ -170,7 +168,7 @@ $range .allGroups$ cs.$.GroupVersion$Client, err =$.PackageName$.NewForConfig
$end$
$end$
cs.DiscoveryClient, err = $.NewDiscoveryClientForConfig|raw$(&configShallowCopy)
cs.DiscoveryClient, err = $.NewDiscoveryClientForConfig|raw$(&configShallowCopy)
if err!=nil {
if err!=nil {
glog.Errorf
("failed to create the DiscoveryClient: %v", err)
$.glogErrorf|raw$
("failed to create the DiscoveryClient: %v", err)
return nil, err
return nil, err
}
}
return &cs, nil
return &cs, nil
...
...
cmd/libs/go2idl/client-gen/generators/generator_for_expansion.go
View file @
49c536ba
...
@@ -29,7 +29,7 @@ import (
...
@@ -29,7 +29,7 @@ import (
// genExpansion produces a file for a group client, e.g. ExtensionsClient for the extension group.
// genExpansion produces a file for a group client, e.g. ExtensionsClient for the extension group.
type
genExpansion
struct
{
type
genExpansion
struct
{
generator
.
DefaultGen
generator
.
DefaultGen
groupPath
string
groupPa
ckagePa
th
string
// types in a group
// types in a group
types
[]
*
types
.
Type
types
[]
*
types
.
Type
}
}
...
@@ -42,7 +42,7 @@ func (g *genExpansion) Filter(c *generator.Context, t *types.Type) bool {
...
@@ -42,7 +42,7 @@ func (g *genExpansion) Filter(c *generator.Context, t *types.Type) bool {
func
(
g
*
genExpansion
)
GenerateType
(
c
*
generator
.
Context
,
t
*
types
.
Type
,
w
io
.
Writer
)
error
{
func
(
g
*
genExpansion
)
GenerateType
(
c
*
generator
.
Context
,
t
*
types
.
Type
,
w
io
.
Writer
)
error
{
sw
:=
generator
.
NewSnippetWriter
(
w
,
c
,
"$"
,
"$"
)
sw
:=
generator
.
NewSnippetWriter
(
w
,
c
,
"$"
,
"$"
)
for
_
,
t
:=
range
g
.
types
{
for
_
,
t
:=
range
g
.
types
{
if
_
,
err
:=
os
.
Stat
(
filepath
.
Join
(
g
.
groupPath
,
strings
.
ToLower
(
t
.
Name
.
Name
+
"_expansion.go"
)));
os
.
IsNotExist
(
err
)
{
if
_
,
err
:=
os
.
Stat
(
filepath
.
Join
(
g
.
groupPa
ckagePa
th
,
strings
.
ToLower
(
t
.
Name
.
Name
+
"_expansion.go"
)));
os
.
IsNotExist
(
err
)
{
sw
.
Do
(
expansionInterfaceTemplate
,
t
)
sw
.
Do
(
expansionInterfaceTemplate
,
t
)
}
}
}
}
...
...
cmd/libs/go2idl/client-gen/generators/generator_for_group.go
View file @
49c536ba
...
@@ -34,7 +34,7 @@ type genGroup struct {
...
@@ -34,7 +34,7 @@ type genGroup struct {
// types in this group
// types in this group
types
[]
*
types
.
Type
types
[]
*
types
.
Type
imports
namer
.
ImportTracker
imports
namer
.
ImportTracker
inputPac
ak
ge
string
inputPac
ka
ge
string
}
}
var
_
generator
.
Generator
=
&
genGroup
{}
var
_
generator
.
Generator
=
&
genGroup
{}
...
@@ -57,11 +57,6 @@ func (g *genGroup) Imports(c *generator.Context) (imports []string) {
...
@@ -57,11 +57,6 @@ func (g *genGroup) Imports(c *generator.Context) (imports []string) {
func
(
g
*
genGroup
)
GenerateType
(
c
*
generator
.
Context
,
t
*
types
.
Type
,
w
io
.
Writer
)
error
{
func
(
g
*
genGroup
)
GenerateType
(
c
*
generator
.
Context
,
t
*
types
.
Type
,
w
io
.
Writer
)
error
{
sw
:=
generator
.
NewSnippetWriter
(
w
,
c
,
"$"
,
"$"
)
sw
:=
generator
.
NewSnippetWriter
(
w
,
c
,
"$"
,
"$"
)
const
pkgRESTClient
=
"k8s.io/client-go/rest"
const
pkgAPI
=
"k8s.io/kubernetes/pkg/api"
const
pkgSerializer
=
"k8s.io/apimachinery/pkg/runtime/serializer"
const
pkgUnversioned
=
"k8s.io/kubernetes/pkg/api/unversioned"
const
pkgSchema
=
"k8s.io/apimachinery/pkg/runtime/schema"
apiPath
:=
func
(
group
string
)
string
{
apiPath
:=
func
(
group
string
)
string
{
if
len
(
g
.
apiPath
)
>
0
{
if
len
(
g
.
apiPath
)
>
0
{
...
@@ -78,27 +73,29 @@ func (g *genGroup) GenerateType(c *generator.Context, t *types.Type, w io.Writer
...
@@ -78,27 +73,29 @@ func (g *genGroup) GenerateType(c *generator.Context, t *types.Type, w io.Writer
groupName
=
""
groupName
=
""
}
}
// allow user to define a group name that's different from the one parsed from the directory.
// allow user to define a group name that's different from the one parsed from the directory.
p
:=
c
.
Universe
.
Package
(
g
.
inputPac
ak
ge
)
p
:=
c
.
Universe
.
Package
(
g
.
inputPac
ka
ge
)
if
override
:=
types
.
ExtractCommentTags
(
"+"
,
p
.
DocComments
)[
"groupName"
];
override
!=
nil
{
if
override
:=
types
.
ExtractCommentTags
(
"+"
,
p
.
DocComments
)[
"groupName"
];
override
!=
nil
{
groupName
=
override
[
0
]
groupName
=
override
[
0
]
}
}
m
:=
map
[
string
]
interface
{}{
m
:=
map
[
string
]
interface
{}{
"group"
:
g
.
group
,
"group"
:
g
.
group
,
"version"
:
g
.
version
,
"version"
:
g
.
version
,
"GroupVersion"
:
namer
.
IC
(
g
.
group
)
+
namer
.
IC
(
g
.
version
),
"GroupVersion"
:
namer
.
IC
(
g
.
group
)
+
namer
.
IC
(
g
.
version
),
"groupName"
:
groupName
,
"groupName"
:
groupName
,
"types"
:
g
.
types
,
"types"
:
g
.
types
,
"Config"
:
c
.
Universe
.
Type
(
types
.
Name
{
Package
:
pkgRESTClient
,
Name
:
"Config"
}),
"apiPath"
:
apiPath
(
g
.
group
),
"DefaultKubernetesUserAgent"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
pkgRESTClient
,
Name
:
"DefaultKubernetesUserAgent"
}),
"fmtErrorf"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
"fmt"
,
Name
:
"Errorf"
}),
"RESTClientInterface"
:
c
.
Universe
.
Type
(
types
.
Name
{
Package
:
pkgRESTClient
,
Name
:
"Interface"
}),
"runtimeAPIVersionInternal"
:
c
.
Universe
.
Variable
(
types
.
Name
{
Package
:
"k8s.io/apimachinery/pkg/runtime"
,
Name
:
"APIVersionInternal"
}),
"RESTClientFor"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
pkgRESTClient
,
Name
:
"RESTClientFor"
}),
"schemaGroupVersion"
:
c
.
Universe
.
Type
(
types
.
Name
{
Package
:
"k8s.io/apimachinery/pkg/runtime/schema"
,
Name
:
"GroupVersion"
}),
"ParseGroupVersion"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
pkgSchema
,
Name
:
"ParseGroupVersion"
}),
"schemaParseGroupVersion"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
"k8s.io/apimachinery/pkg/runtime/schema"
,
Name
:
"ParseGroupVersion"
}),
"apiPath"
:
apiPath
(
g
.
group
),
"serializerDirectCodecFactory"
:
c
.
Universe
.
Type
(
types
.
Name
{
Package
:
"k8s.io/apimachinery/pkg/runtime/serializer"
,
Name
:
"DirectCodecFactory"
}),
"apiRegistry"
:
c
.
Universe
.
Variable
(
types
.
Name
{
Package
:
pkgAPI
,
Name
:
"Registry"
}),
"restConfig"
:
c
.
Universe
.
Type
(
types
.
Name
{
Package
:
"k8s.io/client-go/rest"
,
Name
:
"Config"
}),
"codecs"
:
c
.
Universe
.
Variable
(
types
.
Name
{
Package
:
pkgAPI
,
Name
:
"Codecs"
}),
"restDefaultKubernetesUserAgent"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
"k8s.io/client-go/rest"
,
Name
:
"DefaultKubernetesUserAgent"
}),
"directCodecFactory"
:
c
.
Universe
.
Variable
(
types
.
Name
{
Package
:
pkgSerializer
,
Name
:
"DirectCodecFactory"
}),
"restRESTClientInterface"
:
c
.
Universe
.
Type
(
types
.
Name
{
Package
:
"k8s.io/client-go/rest"
,
Name
:
"Interface"
}),
"Errorf"
:
c
.
Universe
.
Variable
(
types
.
Name
{
Package
:
"fmt"
,
Name
:
"Errorf"
}),
"restRESTClientFor"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
"k8s.io/client-go/rest"
,
Name
:
"RESTClientFor"
}),
"apiCodecs"
:
c
.
Universe
.
Variable
(
types
.
Name
{
Package
:
"k8s.io/kubernetes/pkg/api"
,
Name
:
"Codecs"
}),
"apiRegistry"
:
c
.
Universe
.
Variable
(
types
.
Name
{
Package
:
"k8s.io/kubernetes/pkg/api"
,
Name
:
"Registry"
}),
}
}
sw
.
Do
(
groupInterfaceTemplate
,
m
)
sw
.
Do
(
groupInterfaceTemplate
,
m
)
sw
.
Do
(
groupClientTemplate
,
m
)
sw
.
Do
(
groupClientTemplate
,
m
)
...
@@ -112,7 +109,6 @@ func (g *genGroup) GenerateType(c *generator.Context, t *types.Type, w io.Writer
...
@@ -112,7 +109,6 @@ func (g *genGroup) GenerateType(c *generator.Context, t *types.Type, w io.Writer
sw
.
Do
(
getterImplNamespaced
,
wrapper
)
sw
.
Do
(
getterImplNamespaced
,
wrapper
)
}
else
{
}
else
{
sw
.
Do
(
getterImplNonNamespaced
,
wrapper
)
sw
.
Do
(
getterImplNonNamespaced
,
wrapper
)
}
}
}
}
sw
.
Do
(
newClientForConfigTemplate
,
m
)
sw
.
Do
(
newClientForConfigTemplate
,
m
)
...
@@ -130,7 +126,7 @@ func (g *genGroup) GenerateType(c *generator.Context, t *types.Type, w io.Writer
...
@@ -130,7 +126,7 @@ func (g *genGroup) GenerateType(c *generator.Context, t *types.Type, w io.Writer
var
groupInterfaceTemplate
=
`
var
groupInterfaceTemplate
=
`
type $.GroupVersion$Interface interface {
type $.GroupVersion$Interface interface {
RESTClient() $.RESTClientInterface|raw$
RESTClient() $.
rest
RESTClientInterface|raw$
$range .types$ $.|publicPlural$Getter
$range .types$ $.|publicPlural$Getter
$end$
$end$
}
}
...
@@ -139,7 +135,7 @@ type $.GroupVersion$Interface interface {
...
@@ -139,7 +135,7 @@ type $.GroupVersion$Interface interface {
var
groupClientTemplate
=
`
var
groupClientTemplate
=
`
// $.GroupVersion$Client is used to interact with features provided by the $.groupName$ group.
// $.GroupVersion$Client is used to interact with features provided by the $.groupName$ group.
type $.GroupVersion$Client struct {
type $.GroupVersion$Client struct {
restClient $.RESTClientInterface|raw$
restClient $.
rest
RESTClientInterface|raw$
}
}
`
`
...
@@ -157,12 +153,12 @@ func (c *$.GroupVersion$Client) $.type|publicPlural$() $.type|public$Interface {
...
@@ -157,12 +153,12 @@ func (c *$.GroupVersion$Client) $.type|publicPlural$() $.type|public$Interface {
var
newClientForConfigTemplate
=
`
var
newClientForConfigTemplate
=
`
// NewForConfig creates a new $.GroupVersion$Client for the given config.
// NewForConfig creates a new $.GroupVersion$Client for the given config.
func NewForConfig(c *$.Config|raw$) (*$.GroupVersion$Client, error) {
func NewForConfig(c *$.
rest
Config|raw$) (*$.GroupVersion$Client, error) {
config := *c
config := *c
if err := setConfigDefaults(&config); err != nil {
if err := setConfigDefaults(&config); err != nil {
return nil, err
return nil, err
}
}
client, err := $.RESTClientFor|raw$(&config)
client, err := $.
rest
RESTClientFor|raw$(&config)
if err != nil {
if err != nil {
return nil, err
return nil, err
}
}
...
@@ -173,7 +169,7 @@ func NewForConfig(c *$.Config|raw$) (*$.GroupVersion$Client, error) {
...
@@ -173,7 +169,7 @@ func NewForConfig(c *$.Config|raw$) (*$.GroupVersion$Client, error) {
var
newClientForConfigOrDieTemplate
=
`
var
newClientForConfigOrDieTemplate
=
`
// NewForConfigOrDie creates a new $.GroupVersion$Client for the given config and
// NewForConfigOrDie creates a new $.GroupVersion$Client for the given config and
// panics if there is an error in the config.
// panics if there is an error in the config.
func NewForConfigOrDie(c *$.Config|raw$) *$.GroupVersion$Client {
func NewForConfigOrDie(c *$.
rest
Config|raw$) *$.GroupVersion$Client {
client, err := NewForConfig(c)
client, err := NewForConfig(c)
if err != nil {
if err != nil {
panic(err)
panic(err)
...
@@ -185,7 +181,7 @@ func NewForConfigOrDie(c *$.Config|raw$) *$.GroupVersion$Client {
...
@@ -185,7 +181,7 @@ func NewForConfigOrDie(c *$.Config|raw$) *$.GroupVersion$Client {
var
getRESTClient
=
`
var
getRESTClient
=
`
// RESTClient returns a RESTClient that is used to communicate
// RESTClient returns a RESTClient that is used to communicate
// with API server by this client implementation.
// with API server by this client implementation.
func (c *$.GroupVersion$Client) RESTClient() $.RESTClientInterface|raw$ {
func (c *$.GroupVersion$Client) RESTClient() $.
rest
RESTClientInterface|raw$ {
if c == nil {
if c == nil {
return nil
return nil
}
}
...
@@ -195,26 +191,28 @@ func (c *$.GroupVersion$Client) RESTClient() $.RESTClientInterface|raw$ {
...
@@ -195,26 +191,28 @@ func (c *$.GroupVersion$Client) RESTClient() $.RESTClientInterface|raw$ {
var
newClientForRESTClientTemplate
=
`
var
newClientForRESTClientTemplate
=
`
// New creates a new $.GroupVersion$Client for the given RESTClient.
// New creates a new $.GroupVersion$Client for the given RESTClient.
func New(c $.RESTClientInterface|raw$) *$.GroupVersion$Client {
func New(c $.
rest
RESTClientInterface|raw$) *$.GroupVersion$Client {
return &$.GroupVersion$Client{c}
return &$.GroupVersion$Client{c}
}
}
`
`
var
setInternalVersionClientDefaultsTemplate
=
`
var
setInternalVersionClientDefaultsTemplate
=
`
func setConfigDefaults(config *$.Config|raw$) error {
func setConfigDefaults(config *$.
rest
Config|raw$) error {
// if $.group$ group is not registered, return an error
// if $.group$ group is not registered, return an error
g, err := $.apiRegistry|raw$.Group("$.groupName$")
g, err := $.apiRegistry|raw$.Group("$.groupName$")
if err != nil {
if err != nil {
return err
return err
}
}
config.APIPath = $.apiPath$
config.APIPath = $.apiPath$
if config.UserAgent == "" {
if config.UserAgent == "" {
config.UserAgent = $.DefaultKubernetesUserAgent|raw$()
config.UserAgent = $.
rest
DefaultKubernetesUserAgent|raw$()
}
}
if config.GroupVersion == nil || config.GroupVersion.Group != g.GroupVersion.Group {
if config.GroupVersion == nil || config.GroupVersion.Group != g.GroupVersion.Group {
copyGroupVersion := g.GroupVersion
copyGroupVersion := g.GroupVersion
config.GroupVersion = ©GroupVersion
config.GroupVersion = ©GroupVersion
}
}
config.NegotiatedSerializer = $.
c
odecs|raw$
config.NegotiatedSerializer = $.
apiC
odecs|raw$
if config.QPS == 0 {
if config.QPS == 0 {
config.QPS = 5
config.QPS = 5
...
@@ -222,28 +220,29 @@ func setConfigDefaults(config *$.Config|raw$) error {
...
@@ -222,28 +220,29 @@ func setConfigDefaults(config *$.Config|raw$) error {
if config.Burst == 0 {
if config.Burst == 0 {
config.Burst = 10
config.Burst = 10
}
}
return nil
return nil
}
}
`
`
var
setClientDefaultsTemplate
=
`
var
setClientDefaultsTemplate
=
`
func setConfigDefaults(config *$.Config|raw$) error {
func setConfigDefaults(config *$.
rest
Config|raw$) error {
gv, err := $.ParseGroupVersion|raw$("$.groupName$/$.version$")
gv, err := $.
schema
ParseGroupVersion|raw$("$.groupName$/$.version$")
if err != nil {
if err != nil {
return err
return err
}
}
// if $.groupName$/$.version$ is not enabled, return an error
// if $.groupName$/$.version$ is not enabled, return an error
if ! $.apiRegistry|raw$.IsEnabledVersion(gv) {
if ! $.apiRegistry|raw$.IsEnabledVersion(gv) {
return $.Errorf|raw$("$.groupName$/$.version$ is not enabled")
return $.
fmt
Errorf|raw$("$.groupName$/$.version$ is not enabled")
}
}
config.APIPath = $.apiPath$
config.APIPath = $.apiPath$
if config.UserAgent == "" {
if config.UserAgent == "" {
config.UserAgent = $.DefaultKubernetesUserAgent|raw$()
config.UserAgent = $.
rest
DefaultKubernetesUserAgent|raw$()
}
}
copyGroupVersion := gv
copyGroupVersion := gv
config.GroupVersion = ©GroupVersion
config.GroupVersion = ©GroupVersion
config.NegotiatedSerializer = $.
directCodecFactory|raw${CodecFactory: $.c
odecs|raw$}
config.NegotiatedSerializer = $.
serializerDirectCodecFactory|raw${CodecFactory: $.apiC
odecs|raw$}
return nil
return nil
}
}
...
...
cmd/libs/go2idl/client-gen/types/helpers.go
View file @
49c536ba
...
@@ -94,7 +94,7 @@ func ToGroupVersionPackages(groups []GroupVersions) []GroupVersionPackage {
...
@@ -94,7 +94,7 @@ func ToGroupVersionPackages(groups []GroupVersions) []GroupVersionPackage {
Group
:
Group
(
namer
.
IC
(
group
.
Group
.
NonEmpty
())),
Group
:
Group
(
namer
.
IC
(
group
.
Group
.
NonEmpty
())),
Version
:
Version
(
namer
.
IC
(
version
.
String
())),
Version
:
Version
(
namer
.
IC
(
version
.
String
())),
GroupVersion
:
namer
.
IC
(
group
.
Group
.
NonEmpty
())
+
namer
.
IC
(
version
.
String
()),
GroupVersion
:
namer
.
IC
(
group
.
Group
.
NonEmpty
())
+
namer
.
IC
(
version
.
String
()),
PackageName
:
strings
.
ToLower
(
version
.
NonEmpty
()
+
group
.
Group
.
NonEmpty
()),
PackageName
:
strings
.
ToLower
(
group
.
Group
.
NonEmpty
()
+
version
.
NonEmpty
()),
IsDefaultVersion
:
version
==
defaultVersion
&&
version
!=
""
,
IsDefaultVersion
:
version
==
defaultVersion
&&
version
!=
""
,
})
})
}
}
...
...
federation/apis/federation/install/install_test.go
View file @
49c536ba
...
@@ -20,12 +20,12 @@ import (
...
@@ -20,12 +20,12 @@ import (
"encoding/json"
"encoding/json"
"testing"
"testing"
"k8s.io/apimachinery/pkg/api/meta"
metav1
"k8s.io/apimachinery/pkg/apis/meta/v1"
metav1
"k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/runtime"
"k8s.io/apimachinery/pkg/runtime"
"k8s.io/kubernetes/federation/apis/federation"
"k8s.io/kubernetes/federation/apis/federation"
"k8s.io/kubernetes/federation/apis/federation/v1beta1"
"k8s.io/kubernetes/federation/apis/federation/v1beta1"
"k8s.io/kubernetes/pkg/api"
"k8s.io/kubernetes/pkg/api"
"k8s.io/apimachinery/pkg/api/meta"
)
)
func
TestResourceVersioner
(
t
*
testing
.
T
)
{
func
TestResourceVersioner
(
t
*
testing
.
T
)
{
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment