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
2746b5e4
Commit
2746b5e4
authored
Feb 01, 2016
by
k8s-merge-robot
Browse files
Options
Browse Files
Download
Plain Diff
Merge pull request #20320 from caesarxuchao/add-discovery
Auto commit by PR queue bot
parents
feb4b485
dd357ed8
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 @
2746b5e4
...
...
@@ -97,16 +97,22 @@ func (g *genClientset) GenerateType(c *generator.Context, t *types.Type, w io.Wr
}
m
:=
map
[
string
]
interface
{}{
"allGroups"
:
allGroups
,
"Config"
:
c
.
Universe
.
Type
(
types
.
Name
{
Package
:
pkgUnversioned
,
Name
:
"Config"
}),
"DefaultKubernetesUserAgent"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
pkgUnversioned
,
Name
:
"DefaultKubernetesUserAgent"
}),
"RESTClient"
:
c
.
Universe
.
Type
(
types
.
Name
{
Package
:
pkgUnversioned
,
Name
:
"RESTClient"
}),
"allGroups"
:
allGroups
,
"Config"
:
c
.
Universe
.
Type
(
types
.
Name
{
Package
:
pkgUnversioned
,
Name
:
"Config"
}),
"DefaultKubernetesUserAgent"
:
c
.
Universe
.
Function
(
types
.
Name
{
Package
:
pkgUnversioned
,
Name
:
"DefaultKubernetesUserAgent"
}),
"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
(
clientsetTemplate
,
m
)
for
_
,
g
:=
range
allGroups
{
sw
.
Do
(
clientsetInterfaceImplTemplate
,
g
)
}
sw
.
Do
(
getDiscoveryTemplate
,
m
)
sw
.
Do
(
newClientsetForConfigTemplate
,
m
)
sw
.
Do
(
newClientsetForConfigOrDieTemplate
,
m
)
sw
.
Do
(
newClientsetForRESTClientTemplate
,
m
)
...
...
@@ -116,6 +122,7 @@ func (g *genClientset) GenerateType(c *generator.Context, t *types.Type, w io.Wr
var
clientsetInterfaceTemplate
=
`
type Interface interface {
Discovery() $.DiscoveryInterface|raw$
$range .allGroups$$.Group$() $.PackageName$.$.Group$Interface
$end$
}
...
...
@@ -125,6 +132,7 @@ var clientsetTemplate = `
// Clientset contains the clients for groups. Each group has exactly one
// version included in a Clientset.
type Clientset struct {
*$.DiscoveryClient|raw$
$range .allGroups$*$.PackageName$.$.Group$Client
$end$
}
...
...
@@ -136,6 +144,12 @@ func (c *Clientset) $.Group$() $.PackageName$.$.Group$Interface {
return c.$.Group$Client
}
`
var
getDiscoveryTemplate
=
`
// Discovery retrieves the DiscoveryClient
func (c *Clientset) Discovery() $.DiscoveryInterface|raw$ {
return c.DiscoveryClient
}
`
var
newClientsetForConfigTemplate
=
`
// NewForConfig creates a new Clientset for the given config.
...
...
@@ -147,6 +161,10 @@ $range .allGroups$ clientset.$.Group$Client, err =$.PackageName$.NewForConfig
return nil, err
}
$end$
clientset.DiscoveryClient, err = $.NewDiscoveryClientForConfig|raw$(c)
if err!=nil {
return nil, err
}
return &clientset, nil
}
`
...
...
@@ -158,6 +176,7 @@ func NewForConfigOrDie(c *$.Config|raw$) *Clientset {
var clientset Clientset
$range .allGroups$ clientset.$.Group$Client =$.PackageName$.NewForConfigOrDie(c)
$end$
clientset.DiscoveryClient = $.NewDiscoveryClientForConfigOrDie|raw$(c)
return &clientset
}
`
...
...
@@ -168,7 +187,7 @@ func New(c *$.RESTClient|raw$) *Clientset {
var clientset Clientset
$range .allGroups$ clientset.$.Group$Client =$.PackageName$.New(c)
$end$
clientset.DiscoveryClient = $.NewDiscoveryClient|raw$(c)
return &clientset
}
`
cmd/libs/go2idl/client-gen/testoutput/clientset_generated/test_release_1_1/clientset.go
View file @
2746b5e4
...
...
@@ -22,12 +22,14 @@ import (
)
type
Interface
interface
{
Discovery
()
unversioned
.
DiscoveryInterface
Testgroup
()
testgroup_unversioned
.
TestgroupInterface
}
// Clientset contains the clients for groups. Each group has exactly one
// version included in a Clientset.
type
Clientset
struct
{
*
unversioned
.
DiscoveryClient
*
testgroup_unversioned
.
TestgroupClient
}
...
...
@@ -36,6 +38,11 @@ func (c *Clientset) Testgroup() testgroup_unversioned.TestgroupInterface {
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.
func
NewForConfig
(
c
*
unversioned
.
Config
)
(
*
Clientset
,
error
)
{
var
clientset
Clientset
...
...
@@ -45,6 +52,10 @@ func NewForConfig(c *unversioned.Config) (*Clientset, error) {
return
nil
,
err
}
clientset
.
DiscoveryClient
,
err
=
unversioned
.
NewDiscoveryClientForConfig
(
c
)
if
err
!=
nil
{
return
nil
,
err
}
return
&
clientset
,
nil
}
...
...
@@ -54,6 +65,7 @@ func NewForConfigOrDie(c *unversioned.Config) *Clientset {
var
clientset
Clientset
clientset
.
TestgroupClient
=
testgroup_unversioned
.
NewForConfigOrDie
(
c
)
clientset
.
DiscoveryClient
=
unversioned
.
NewDiscoveryClientForConfigOrDie
(
c
)
return
&
clientset
}
...
...
@@ -62,5 +74,6 @@ func New(c *unversioned.RESTClient) *Clientset {
var
clientset
Clientset
clientset
.
TestgroupClient
=
testgroup_unversioned
.
New
(
c
)
clientset
.
DiscoveryClient
=
unversioned
.
NewDiscoveryClient
(
c
)
return
&
clientset
}
pkg/client/clientset_generated/release_1_1/clientset.go
View file @
2746b5e4
...
...
@@ -23,6 +23,7 @@ import (
)
type
Interface
interface
{
Discovery
()
unversioned
.
DiscoveryInterface
Legacy
()
legacy_unversioned
.
LegacyInterface
Extensions
()
extensions_unversioned
.
ExtensionsInterface
}
...
...
@@ -30,6 +31,7 @@ type Interface interface {
// Clientset contains the clients for groups. Each group has exactly one
// version included in a Clientset.
type
Clientset
struct
{
*
unversioned
.
DiscoveryClient
*
legacy_unversioned
.
LegacyClient
*
extensions_unversioned
.
ExtensionsClient
}
...
...
@@ -44,6 +46,11 @@ func (c *Clientset) Extensions() extensions_unversioned.ExtensionsInterface {
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.
func
NewForConfig
(
c
*
unversioned
.
Config
)
(
*
Clientset
,
error
)
{
var
clientset
Clientset
...
...
@@ -57,6 +64,10 @@ func NewForConfig(c *unversioned.Config) (*Clientset, error) {
return
nil
,
err
}
clientset
.
DiscoveryClient
,
err
=
unversioned
.
NewDiscoveryClientForConfig
(
c
)
if
err
!=
nil
{
return
nil
,
err
}
return
&
clientset
,
nil
}
...
...
@@ -67,6 +78,7 @@ func NewForConfigOrDie(c *unversioned.Config) *Clientset {
clientset
.
LegacyClient
=
legacy_unversioned
.
NewForConfigOrDie
(
c
)
clientset
.
ExtensionsClient
=
extensions_unversioned
.
NewForConfigOrDie
(
c
)
clientset
.
DiscoveryClient
=
unversioned
.
NewDiscoveryClientForConfigOrDie
(
c
)
return
&
clientset
}
...
...
@@ -76,5 +88,6 @@ func New(c *unversioned.RESTClient) *Clientset {
clientset
.
LegacyClient
=
legacy_unversioned
.
New
(
c
)
clientset
.
ExtensionsClient
=
extensions_unversioned
.
New
(
c
)
clientset
.
DiscoveryClient
=
unversioned
.
NewDiscoveryClient
(
c
)
return
&
clientset
}
pkg/client/testing/fake/clientset.go
View file @
2746b5e4
...
...
@@ -24,6 +24,7 @@ import (
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_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/watch"
)
...
...
@@ -61,3 +62,7 @@ func (c *Clientset) Legacy() legacy_unversioned.LegacyInterface {
func
(
c
*
Clientset
)
Extensions
()
extensions_unversioned
.
ExtensionsInterface
{
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 @
2746b5e4
/*
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 @
2746b5e4
...
...
@@ -214,9 +214,9 @@ func setDiscoveryDefaults(config *Config) error {
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.
func
NewDiscoveryClient
(
c
*
Config
)
(
*
DiscoveryClient
,
error
)
{
func
NewDiscoveryClient
ForConfig
(
c
*
Config
)
(
*
DiscoveryClient
,
error
)
{
config
:=
*
c
if
err
:=
setDiscoveryDefaults
(
&
config
);
err
!=
nil
{
return
nil
,
err
...
...
@@ -224,3 +224,19 @@ func NewDiscoveryClient(c *Config) (*DiscoveryClient, error) {
client
,
err
:=
UnversionedRESTClientFor
(
&
config
)
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 @
2746b5e4
...
...
@@ -150,7 +150,7 @@ func New(c *Config) (*Client, error) {
}
discoveryConfig
:=
*
c
discoveryClient
,
err
:=
NewDiscoveryClient
(
&
discoveryConfig
)
discoveryClient
,
err
:=
NewDiscoveryClient
ForConfig
(
&
discoveryConfig
)
if
err
!=
nil
{
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