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
dd357ed8
Commit
dd357ed8
authored
Jan 28, 2016
by
Chao Xu
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
include DiscoveryClient in the generated clientset
parent
76f8a800
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
148 additions
and
8 deletions
+148
-8
generator-for-clientset.go
...s/go2idl/client-gen/generators/generator-for-clientset.go
+24
-5
clientset.go
...toutput/clientset_generated/test_release_1_1/clientset.go
+13
-0
clientset.go
pkg/client/clientset_generated/release_1_1/clientset.go
+13
-0
clientset.go
pkg/client/testing/fake/clientset.go
+5
-0
discovery.go
pkg/client/testing/fake/discovery.go
+74
-0
discovery_client.go
pkg/client/unversioned/discovery_client.go
+18
-2
helper.go
pkg/client/unversioned/helper.go
+1
-1
No files found.
cmd/libs/go2idl/client-gen/generators/generator-for-clientset.go
View file @
dd357ed8
...
@@ -97,16 +97,22 @@ func (g *genClientset) GenerateType(c *generator.Context, t *types.Type, w io.Wr
...
@@ -97,16 +97,22 @@ func (g *genClientset) GenerateType(c *generator.Context, t *types.Type, w io.Wr
}
}
m
:=
map
[
string
]
interface
{}{
m
:=
map
[
string
]
interface
{}{
"allGroups"
:
allGroups
,
"allGroups"
:
allGroups
,
"Config"
:
c
.
Universe
.
Type
(
types
.
Name
{
Package
:
pkgUnversioned
,
Name
:
"Config"
}),
"Config"
:
c
.
Universe
.
Type
(
types
.
Name
{
Package
:
pkgUnversioned
,
Name
:
"Config"
}),
"DefaultKubernetesUserAgent"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
pkgUnversioned
,
Name
:
"DefaultKubernetesUserAgent"
}),
"DefaultKubernetesUserAgent"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
pkgUnversioned
,
Name
:
"DefaultKubernetesUserAgent"
}),
"RESTClient"
:
c
.
Universe
.
Type
(
types
.
Name
{
Package
:
pkgUnversioned
,
Name
:
"RESTClient"
}),
"RESTClient"
:
c
.
Universe
.
Type
(
types
.
Name
{
Package
:
pkgUnversioned
,
Name
:
"RESTClient"
}),
"DiscoveryInterface"
:
c
.
Universe
.
Type
(
types
.
Name
{
Package
:
pkgUnversioned
,
Name
:
"DiscoveryInterface"
}),
"DiscoveryClient"
:
c
.
Universe
.
Type
(
types
.
Name
{
Package
:
pkgUnversioned
,
Name
:
"DiscoveryClient"
}),
"NewDiscoveryClientForConfig"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
pkgUnversioned
,
Name
:
"NewDiscoveryClientForConfig"
}),
"NewDiscoveryClientForConfigOrDie"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
pkgUnversioned
,
Name
:
"NewDiscoveryClientForConfigOrDie"
}),
"NewDiscoveryClient"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
pkgUnversioned
,
Name
:
"NewDiscoveryClient"
}),
}
}
sw
.
Do
(
clientsetInterfaceTemplate
,
m
)
sw
.
Do
(
clientsetInterfaceTemplate
,
m
)
sw
.
Do
(
clientsetTemplate
,
m
)
sw
.
Do
(
clientsetTemplate
,
m
)
for
_
,
g
:=
range
allGroups
{
for
_
,
g
:=
range
allGroups
{
sw
.
Do
(
clientsetInterfaceImplTemplate
,
g
)
sw
.
Do
(
clientsetInterfaceImplTemplate
,
g
)
}
}
sw
.
Do
(
getDiscoveryTemplate
,
m
)
sw
.
Do
(
newClientsetForConfigTemplate
,
m
)
sw
.
Do
(
newClientsetForConfigTemplate
,
m
)
sw
.
Do
(
newClientsetForConfigOrDieTemplate
,
m
)
sw
.
Do
(
newClientsetForConfigOrDieTemplate
,
m
)
sw
.
Do
(
newClientsetForRESTClientTemplate
,
m
)
sw
.
Do
(
newClientsetForRESTClientTemplate
,
m
)
...
@@ -116,6 +122,7 @@ func (g *genClientset) GenerateType(c *generator.Context, t *types.Type, w io.Wr
...
@@ -116,6 +122,7 @@ func (g *genClientset) GenerateType(c *generator.Context, t *types.Type, w io.Wr
var
clientsetInterfaceTemplate
=
`
var
clientsetInterfaceTemplate
=
`
type Interface interface {
type Interface interface {
Discovery() $.DiscoveryInterface|raw$
$range .allGroups$$.Group$() $.PackageName$.$.Group$Interface
$range .allGroups$$.Group$() $.PackageName$.$.Group$Interface
$end$
$end$
}
}
...
@@ -125,6 +132,7 @@ var clientsetTemplate = `
...
@@ -125,6 +132,7 @@ var clientsetTemplate = `
// Clientset contains the clients for groups. Each group has exactly one
// Clientset contains the clients for groups. Each group has exactly one
// version included in a Clientset.
// version included in a Clientset.
type Clientset struct {
type Clientset struct {
*$.DiscoveryClient|raw$
$range .allGroups$*$.PackageName$.$.Group$Client
$range .allGroups$*$.PackageName$.$.Group$Client
$end$
$end$
}
}
...
@@ -136,6 +144,12 @@ func (c *Clientset) $.Group$() $.PackageName$.$.Group$Interface {
...
@@ -136,6 +144,12 @@ func (c *Clientset) $.Group$() $.PackageName$.$.Group$Interface {
return c.$.Group$Client
return c.$.Group$Client
}
}
`
`
var
getDiscoveryTemplate
=
`
// Discovery retrieves the DiscoveryClient
func (c *Clientset) Discovery() $.DiscoveryInterface|raw$ {
return c.DiscoveryClient
}
`
var
newClientsetForConfigTemplate
=
`
var
newClientsetForConfigTemplate
=
`
// NewForConfig creates a new Clientset for the given config.
// NewForConfig creates a new Clientset for the given config.
...
@@ -147,6 +161,10 @@ $range .allGroups$ clientset.$.Group$Client, err =$.PackageName$.NewForConfig
...
@@ -147,6 +161,10 @@ $range .allGroups$ clientset.$.Group$Client, err =$.PackageName$.NewForConfig
return nil, err
return nil, err
}
}
$end$
$end$
clientset.DiscoveryClient, err = $.NewDiscoveryClientForConfig|raw$(c)
if err!=nil {
return nil, err
}
return &clientset, nil
return &clientset, nil
}
}
`
`
...
@@ -158,6 +176,7 @@ func NewForConfigOrDie(c *$.Config|raw$) *Clientset {
...
@@ -158,6 +176,7 @@ func NewForConfigOrDie(c *$.Config|raw$) *Clientset {
var clientset Clientset
var clientset Clientset
$range .allGroups$ clientset.$.Group$Client =$.PackageName$.NewForConfigOrDie(c)
$range .allGroups$ clientset.$.Group$Client =$.PackageName$.NewForConfigOrDie(c)
$end$
$end$
clientset.DiscoveryClient = $.NewDiscoveryClientForConfigOrDie|raw$(c)
return &clientset
return &clientset
}
}
`
`
...
@@ -168,7 +187,7 @@ func New(c *$.RESTClient|raw$) *Clientset {
...
@@ -168,7 +187,7 @@ func New(c *$.RESTClient|raw$) *Clientset {
var clientset Clientset
var clientset Clientset
$range .allGroups$ clientset.$.Group$Client =$.PackageName$.New(c)
$range .allGroups$ clientset.$.Group$Client =$.PackageName$.New(c)
$end$
$end$
clientset.DiscoveryClient = $.NewDiscoveryClient|raw$(c)
return &clientset
return &clientset
}
}
`
`
cmd/libs/go2idl/client-gen/testoutput/clientset_generated/test_release_1_1/clientset.go
View file @
dd357ed8
...
@@ -22,12 +22,14 @@ import (
...
@@ -22,12 +22,14 @@ import (
)
)
type
Interface
interface
{
type
Interface
interface
{
Discovery
()
unversioned
.
DiscoveryInterface
Testgroup
()
testgroup_unversioned
.
TestgroupInterface
Testgroup
()
testgroup_unversioned
.
TestgroupInterface
}
}
// Clientset contains the clients for groups. Each group has exactly one
// Clientset contains the clients for groups. Each group has exactly one
// version included in a Clientset.
// version included in a Clientset.
type
Clientset
struct
{
type
Clientset
struct
{
*
unversioned
.
DiscoveryClient
*
testgroup_unversioned
.
TestgroupClient
*
testgroup_unversioned
.
TestgroupClient
}
}
...
@@ -36,6 +38,11 @@ func (c *Clientset) Testgroup() testgroup_unversioned.TestgroupInterface {
...
@@ -36,6 +38,11 @@ func (c *Clientset) Testgroup() testgroup_unversioned.TestgroupInterface {
return
c
.
TestgroupClient
return
c
.
TestgroupClient
}
}
// Discovery retrieves the DiscoveryClient
func
(
c
*
Clientset
)
Discovery
()
unversioned
.
DiscoveryInterface
{
return
c
.
DiscoveryClient
}
// NewForConfig creates a new Clientset for the given config.
// NewForConfig creates a new Clientset for the given config.
func
NewForConfig
(
c
*
unversioned
.
Config
)
(
*
Clientset
,
error
)
{
func
NewForConfig
(
c
*
unversioned
.
Config
)
(
*
Clientset
,
error
)
{
var
clientset
Clientset
var
clientset
Clientset
...
@@ -45,6 +52,10 @@ func NewForConfig(c *unversioned.Config) (*Clientset, error) {
...
@@ -45,6 +52,10 @@ func NewForConfig(c *unversioned.Config) (*Clientset, error) {
return
nil
,
err
return
nil
,
err
}
}
clientset
.
DiscoveryClient
,
err
=
unversioned
.
NewDiscoveryClientForConfig
(
c
)
if
err
!=
nil
{
return
nil
,
err
}
return
&
clientset
,
nil
return
&
clientset
,
nil
}
}
...
@@ -54,6 +65,7 @@ func NewForConfigOrDie(c *unversioned.Config) *Clientset {
...
@@ -54,6 +65,7 @@ func NewForConfigOrDie(c *unversioned.Config) *Clientset {
var
clientset
Clientset
var
clientset
Clientset
clientset
.
TestgroupClient
=
testgroup_unversioned
.
NewForConfigOrDie
(
c
)
clientset
.
TestgroupClient
=
testgroup_unversioned
.
NewForConfigOrDie
(
c
)
clientset
.
DiscoveryClient
=
unversioned
.
NewDiscoveryClientForConfigOrDie
(
c
)
return
&
clientset
return
&
clientset
}
}
...
@@ -62,5 +74,6 @@ func New(c *unversioned.RESTClient) *Clientset {
...
@@ -62,5 +74,6 @@ func New(c *unversioned.RESTClient) *Clientset {
var
clientset
Clientset
var
clientset
Clientset
clientset
.
TestgroupClient
=
testgroup_unversioned
.
New
(
c
)
clientset
.
TestgroupClient
=
testgroup_unversioned
.
New
(
c
)
clientset
.
DiscoveryClient
=
unversioned
.
NewDiscoveryClient
(
c
)
return
&
clientset
return
&
clientset
}
}
pkg/client/clientset_generated/release_1_1/clientset.go
View file @
dd357ed8
...
@@ -23,6 +23,7 @@ import (
...
@@ -23,6 +23,7 @@ import (
)
)
type
Interface
interface
{
type
Interface
interface
{
Discovery
()
unversioned
.
DiscoveryInterface
Legacy
()
legacy_unversioned
.
LegacyInterface
Legacy
()
legacy_unversioned
.
LegacyInterface
Extensions
()
extensions_unversioned
.
ExtensionsInterface
Extensions
()
extensions_unversioned
.
ExtensionsInterface
}
}
...
@@ -30,6 +31,7 @@ type Interface interface {
...
@@ -30,6 +31,7 @@ type Interface interface {
// Clientset contains the clients for groups. Each group has exactly one
// Clientset contains the clients for groups. Each group has exactly one
// version included in a Clientset.
// version included in a Clientset.
type
Clientset
struct
{
type
Clientset
struct
{
*
unversioned
.
DiscoveryClient
*
legacy_unversioned
.
LegacyClient
*
legacy_unversioned
.
LegacyClient
*
extensions_unversioned
.
ExtensionsClient
*
extensions_unversioned
.
ExtensionsClient
}
}
...
@@ -44,6 +46,11 @@ func (c *Clientset) Extensions() extensions_unversioned.ExtensionsInterface {
...
@@ -44,6 +46,11 @@ func (c *Clientset) Extensions() extensions_unversioned.ExtensionsInterface {
return
c
.
ExtensionsClient
return
c
.
ExtensionsClient
}
}
// Discovery retrieves the DiscoveryClient
func
(
c
*
Clientset
)
Discovery
()
unversioned
.
DiscoveryInterface
{
return
c
.
DiscoveryClient
}
// NewForConfig creates a new Clientset for the given config.
// NewForConfig creates a new Clientset for the given config.
func
NewForConfig
(
c
*
unversioned
.
Config
)
(
*
Clientset
,
error
)
{
func
NewForConfig
(
c
*
unversioned
.
Config
)
(
*
Clientset
,
error
)
{
var
clientset
Clientset
var
clientset
Clientset
...
@@ -57,6 +64,10 @@ func NewForConfig(c *unversioned.Config) (*Clientset, error) {
...
@@ -57,6 +64,10 @@ func NewForConfig(c *unversioned.Config) (*Clientset, error) {
return
nil
,
err
return
nil
,
err
}
}
clientset
.
DiscoveryClient
,
err
=
unversioned
.
NewDiscoveryClientForConfig
(
c
)
if
err
!=
nil
{
return
nil
,
err
}
return
&
clientset
,
nil
return
&
clientset
,
nil
}
}
...
@@ -67,6 +78,7 @@ func NewForConfigOrDie(c *unversioned.Config) *Clientset {
...
@@ -67,6 +78,7 @@ func NewForConfigOrDie(c *unversioned.Config) *Clientset {
clientset
.
LegacyClient
=
legacy_unversioned
.
NewForConfigOrDie
(
c
)
clientset
.
LegacyClient
=
legacy_unversioned
.
NewForConfigOrDie
(
c
)
clientset
.
ExtensionsClient
=
extensions_unversioned
.
NewForConfigOrDie
(
c
)
clientset
.
ExtensionsClient
=
extensions_unversioned
.
NewForConfigOrDie
(
c
)
clientset
.
DiscoveryClient
=
unversioned
.
NewDiscoveryClientForConfigOrDie
(
c
)
return
&
clientset
return
&
clientset
}
}
...
@@ -76,5 +88,6 @@ func New(c *unversioned.RESTClient) *Clientset {
...
@@ -76,5 +88,6 @@ func New(c *unversioned.RESTClient) *Clientset {
clientset
.
LegacyClient
=
legacy_unversioned
.
New
(
c
)
clientset
.
LegacyClient
=
legacy_unversioned
.
New
(
c
)
clientset
.
ExtensionsClient
=
extensions_unversioned
.
New
(
c
)
clientset
.
ExtensionsClient
=
extensions_unversioned
.
New
(
c
)
clientset
.
DiscoveryClient
=
unversioned
.
NewDiscoveryClient
(
c
)
return
&
clientset
return
&
clientset
}
}
pkg/client/testing/fake/clientset.go
View file @
dd357ed8
...
@@ -24,6 +24,7 @@ import (
...
@@ -24,6 +24,7 @@ import (
extensions_unversioned_fake
"k8s.io/kubernetes/pkg/client/typed/generated/extensions/unversioned/fake"
extensions_unversioned_fake
"k8s.io/kubernetes/pkg/client/typed/generated/extensions/unversioned/fake"
legacy_unversioned
"k8s.io/kubernetes/pkg/client/typed/generated/legacy/unversioned"
legacy_unversioned
"k8s.io/kubernetes/pkg/client/typed/generated/legacy/unversioned"
legacy_unversioned_fake
"k8s.io/kubernetes/pkg/client/typed/generated/legacy/unversioned/fake"
legacy_unversioned_fake
"k8s.io/kubernetes/pkg/client/typed/generated/legacy/unversioned/fake"
"k8s.io/kubernetes/pkg/client/unversioned"
"k8s.io/kubernetes/pkg/runtime"
"k8s.io/kubernetes/pkg/runtime"
"k8s.io/kubernetes/pkg/watch"
"k8s.io/kubernetes/pkg/watch"
)
)
...
@@ -61,3 +62,7 @@ func (c *Clientset) Legacy() legacy_unversioned.LegacyInterface {
...
@@ -61,3 +62,7 @@ func (c *Clientset) Legacy() legacy_unversioned.LegacyInterface {
func
(
c
*
Clientset
)
Extensions
()
extensions_unversioned
.
ExtensionsInterface
{
func
(
c
*
Clientset
)
Extensions
()
extensions_unversioned
.
ExtensionsInterface
{
return
&
extensions_unversioned_fake
.
FakeExtensions
{
&
c
.
Fake
}
return
&
extensions_unversioned_fake
.
FakeExtensions
{
&
c
.
Fake
}
}
}
func
(
c
*
Clientset
)
Discovery
()
unversioned
.
DiscoveryInterface
{
return
&
FakeDiscovery
{
&
c
.
Fake
}
}
pkg/client/testing/fake/discovery.go
0 → 100644
View file @
dd357ed8
/*
Copyright 2016 The Kubernetes Authors All rights reserved.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/
package
fake
import
(
"github.com/emicklei/go-restful/swagger"
"k8s.io/kubernetes/pkg/api/unversioned"
"k8s.io/kubernetes/pkg/api/v1"
"k8s.io/kubernetes/pkg/client/testing/core"
"k8s.io/kubernetes/pkg/version"
)
type
FakeDiscovery
struct
{
*
core
.
Fake
}
func
(
c
*
FakeDiscovery
)
ServerResourcesForGroupVersion
(
groupVersion
string
)
(
*
unversioned
.
APIResourceList
,
error
)
{
action
:=
core
.
ActionImpl
{
Verb
:
"get"
,
Resource
:
"resource"
,
}
c
.
Invokes
(
action
,
nil
)
return
c
.
Resources
[
groupVersion
],
nil
}
func
(
c
*
FakeDiscovery
)
ServerResources
()
(
map
[
string
]
*
unversioned
.
APIResourceList
,
error
)
{
action
:=
core
.
ActionImpl
{
Verb
:
"get"
,
Resource
:
"resource"
,
}
c
.
Invokes
(
action
,
nil
)
return
c
.
Resources
,
nil
}
func
(
c
*
FakeDiscovery
)
ServerGroups
()
(
*
unversioned
.
APIGroupList
,
error
)
{
return
nil
,
nil
}
func
(
c
*
FakeDiscovery
)
ServerVersion
()
(
*
version
.
Info
,
error
)
{
action
:=
core
.
ActionImpl
{}
action
.
Verb
=
"get"
action
.
Resource
=
"version"
c
.
Invokes
(
action
,
nil
)
versionInfo
:=
version
.
Get
()
return
&
versionInfo
,
nil
}
func
(
c
*
FakeDiscovery
)
SwaggerSchema
(
version
unversioned
.
GroupVersion
)
(
*
swagger
.
ApiDeclaration
,
error
)
{
action
:=
core
.
ActionImpl
{}
action
.
Verb
=
"get"
if
version
==
v1
.
SchemeGroupVersion
{
action
.
Resource
=
"/swaggerapi/api/"
+
version
.
Version
}
else
{
action
.
Resource
=
"/swaggerapi/apis/"
+
version
.
Group
+
"/"
+
version
.
Version
}
c
.
Invokes
(
action
,
nil
)
return
&
swagger
.
ApiDeclaration
{},
nil
}
pkg/client/unversioned/discovery_client.go
View file @
dd357ed8
...
@@ -214,9 +214,9 @@ func setDiscoveryDefaults(config *Config) error {
...
@@ -214,9 +214,9 @@ func setDiscoveryDefaults(config *Config) error {
return
nil
return
nil
}
}
// NewDiscoveryClient creates a new DiscoveryClient for the given config. This client
// NewDiscoveryClient
ForConfig
creates a new DiscoveryClient for the given config. This client
// can be used to discover supported resources in the API server.
// can be used to discover supported resources in the API server.
func
NewDiscoveryClient
(
c
*
Config
)
(
*
DiscoveryClient
,
error
)
{
func
NewDiscoveryClient
ForConfig
(
c
*
Config
)
(
*
DiscoveryClient
,
error
)
{
config
:=
*
c
config
:=
*
c
if
err
:=
setDiscoveryDefaults
(
&
config
);
err
!=
nil
{
if
err
:=
setDiscoveryDefaults
(
&
config
);
err
!=
nil
{
return
nil
,
err
return
nil
,
err
...
@@ -224,3 +224,19 @@ func NewDiscoveryClient(c *Config) (*DiscoveryClient, error) {
...
@@ -224,3 +224,19 @@ func NewDiscoveryClient(c *Config) (*DiscoveryClient, error) {
client
,
err
:=
UnversionedRESTClientFor
(
&
config
)
client
,
err
:=
UnversionedRESTClientFor
(
&
config
)
return
&
DiscoveryClient
{
client
},
err
return
&
DiscoveryClient
{
client
},
err
}
}
// NewDiscoveryClientForConfig creates a new DiscoveryClient for the given config. If
// there is an error, it panics.
func
NewDiscoveryClientForConfigOrDie
(
c
*
Config
)
*
DiscoveryClient
{
client
,
err
:=
NewDiscoveryClientForConfig
(
c
)
if
err
!=
nil
{
panic
(
err
)
}
return
client
}
// New creates a new DiscoveryClient for the given RESTClient.
func
NewDiscoveryClient
(
c
*
RESTClient
)
*
DiscoveryClient
{
return
&
DiscoveryClient
{
c
}
}
pkg/client/unversioned/helper.go
View file @
dd357ed8
...
@@ -150,7 +150,7 @@ func New(c *Config) (*Client, error) {
...
@@ -150,7 +150,7 @@ func New(c *Config) (*Client, error) {
}
}
discoveryConfig
:=
*
c
discoveryConfig
:=
*
c
discoveryClient
,
err
:=
NewDiscoveryClient
(
&
discoveryConfig
)
discoveryClient
,
err
:=
NewDiscoveryClient
ForConfig
(
&
discoveryConfig
)
if
err
!=
nil
{
if
err
!=
nil
{
return
nil
,
err
return
nil
,
err
}
}
...
...
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