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
f2edba3b
Commit
f2edba3b
authored
Dec 10, 2015
by
Chao Xu
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
remove ServerAPIVersions from client
hard-code the groupVersion in SetKubernetesDefaults
parent
5fb94395
Show whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
26 additions
and
71 deletions
+26
-71
integration.go
cmd/integration/integration.go
+5
-3
client.go
pkg/client/unversioned/client.go
+0
-15
client_test.go
pkg/client/unversioned/client_test.go
+0
-23
extensions.go
pkg/client/unversioned/extensions.go
+0
-16
helper.go
pkg/client/unversioned/helper.go
+10
-5
helper_blackbox_test.go
pkg/client/unversioned/helper_blackbox_test.go
+1
-1
helper_test.go
pkg/client/unversioned/helper_test.go
+10
-8
No files found.
cmd/integration/integration.go
View file @
f2edba3b
...
@@ -463,19 +463,21 @@ func runReplicationControllerTest(c *client.Client) {
...
@@ -463,19 +463,21 @@ func runReplicationControllerTest(c *client.Client) {
}
}
func
runAPIVersionsTest
(
c
*
client
.
Client
)
{
func
runAPIVersionsTest
(
c
*
client
.
Client
)
{
v
,
err
:=
c
.
ServerAPIVersion
s
()
g
,
err
:=
c
.
ServerGroup
s
()
clientVersion
:=
c
.
APIVersion
()
.
String
()
clientVersion
:=
c
.
APIVersion
()
.
String
()
if
err
!=
nil
{
if
err
!=
nil
{
glog
.
Fatalf
(
"Failed to get api versions: %v"
,
err
)
glog
.
Fatalf
(
"Failed to get api versions: %v"
,
err
)
}
}
versions
:=
client
.
ExtractGroupVersions
(
g
)
// Verify that the server supports the API version used by the client.
// Verify that the server supports the API version used by the client.
for
_
,
version
:=
range
v
.
V
ersions
{
for
_
,
version
:=
range
versions
{
if
version
==
clientVersion
{
if
version
==
clientVersion
{
glog
.
Infof
(
"Version test passed"
)
glog
.
Infof
(
"Version test passed"
)
return
return
}
}
}
}
glog
.
Fatalf
(
"Server does not support APIVersion used by client. Server supported APIVersions: '%v', client APIVersion: '%v'"
,
v
.
V
ersions
,
clientVersion
)
glog
.
Fatalf
(
"Server does not support APIVersion used by client. Server supported APIVersions: '%v', client APIVersion: '%v'"
,
versions
,
clientVersion
)
}
}
func
runSelfLinkTestOnNamespace
(
c
*
client
.
Client
,
namespace
string
)
{
func
runSelfLinkTestOnNamespace
(
c
*
client
.
Client
,
namespace
string
)
{
...
...
pkg/client/unversioned/client.go
View file @
f2edba3b
...
@@ -116,7 +116,6 @@ func (c *Client) ComponentStatuses() ComponentStatusInterface {
...
@@ -116,7 +116,6 @@ func (c *Client) ComponentStatuses() ComponentStatusInterface {
// VersionInterface has a method to retrieve the server version.
// VersionInterface has a method to retrieve the server version.
type
VersionInterface
interface
{
type
VersionInterface
interface
{
ServerVersion
()
(
*
version
.
Info
,
error
)
ServerVersion
()
(
*
version
.
Info
,
error
)
ServerAPIVersions
()
(
*
unversioned
.
APIVersions
,
error
)
}
}
// Client is the implementation of a Kubernetes client.
// Client is the implementation of a Kubernetes client.
...
@@ -141,20 +140,6 @@ func (c *Client) ServerVersion() (*version.Info, error) {
...
@@ -141,20 +140,6 @@ func (c *Client) ServerVersion() (*version.Info, error) {
return
&
info
,
nil
return
&
info
,
nil
}
}
// ServerAPIVersions retrieves and parses the list of API versions the server supports.
func
(
c
*
Client
)
ServerAPIVersions
()
(
*
unversioned
.
APIVersions
,
error
)
{
body
,
err
:=
c
.
Get
()
.
AbsPath
(
"/api"
)
.
Do
()
.
Raw
()
if
err
!=
nil
{
return
nil
,
err
}
var
v
unversioned
.
APIVersions
err
=
json
.
Unmarshal
(
body
,
&
v
)
if
err
!=
nil
{
return
nil
,
fmt
.
Errorf
(
"got '%s': %v"
,
string
(
body
),
err
)
}
return
&
v
,
nil
}
// SwaggerSchemaInterface has a method to retrieve the swagger schema. Used in
// SwaggerSchemaInterface has a method to retrieve the swagger schema. Used in
// client.Interface
// client.Interface
type
SwaggerSchemaInterface
interface
{
type
SwaggerSchemaInterface
interface
{
...
...
pkg/client/unversioned/client_test.go
View file @
f2edba3b
...
@@ -235,29 +235,6 @@ func TestGetServerResources(t *testing.T) {
...
@@ -235,29 +235,6 @@ func TestGetServerResources(t *testing.T) {
}
}
}
}
func
TestGetServerAPIVersions
(
t
*
testing
.
T
)
{
versions
:=
[]
string
{
"v1"
,
"v2"
,
"v3"
}
expect
:=
unversioned
.
APIVersions
{
Versions
:
versions
}
server
:=
httptest
.
NewServer
(
http
.
HandlerFunc
(
func
(
w
http
.
ResponseWriter
,
req
*
http
.
Request
)
{
output
,
err
:=
json
.
Marshal
(
expect
)
if
err
!=
nil
{
t
.
Errorf
(
"unexpected encoding error: %v"
,
err
)
return
}
w
.
Header
()
.
Set
(
"Content-Type"
,
"application/json"
)
w
.
WriteHeader
(
http
.
StatusOK
)
w
.
Write
(
output
)
}))
client
:=
NewOrDie
(
&
Config
{
Host
:
server
.
URL
})
got
,
err
:=
client
.
ServerAPIVersions
()
if
err
!=
nil
{
t
.
Fatalf
(
"unexpected encoding error: %v"
,
err
)
}
if
e
,
a
:=
expect
,
*
got
;
!
reflect
.
DeepEqual
(
e
,
a
)
{
t
.
Errorf
(
"expected %v, got %v"
,
e
,
a
)
}
}
func
swaggerSchemaFakeServer
()
(
*
httptest
.
Server
,
error
)
{
func
swaggerSchemaFakeServer
()
(
*
httptest
.
Server
,
error
)
{
request
:=
1
request
:=
1
var
sErr
error
var
sErr
error
...
...
pkg/client/unversioned/extensions.go
View file @
f2edba3b
...
@@ -21,7 +21,6 @@ import (
...
@@ -21,7 +21,6 @@ import (
"fmt"
"fmt"
"k8s.io/kubernetes/pkg/api/latest"
"k8s.io/kubernetes/pkg/api/latest"
"k8s.io/kubernetes/pkg/api/unversioned"
"k8s.io/kubernetes/pkg/apis/extensions"
"k8s.io/kubernetes/pkg/apis/extensions"
"k8s.io/kubernetes/pkg/version"
"k8s.io/kubernetes/pkg/version"
)
)
...
@@ -63,21 +62,6 @@ func (c *ExtensionsClient) ServerVersion() (*version.Info, error) {
...
@@ -63,21 +62,6 @@ func (c *ExtensionsClient) ServerVersion() (*version.Info, error) {
return
&
info
,
nil
return
&
info
,
nil
}
}
// ServerAPIVersions retrieves and parses the list of experimental API versions the
// server supports.
func
(
c
*
ExtensionsClient
)
ServerAPIVersions
()
(
*
unversioned
.
APIVersions
,
error
)
{
body
,
err
:=
c
.
Get
()
.
AbsPath
(
"/apis/extensions"
)
.
Do
()
.
Raw
()
if
err
!=
nil
{
return
nil
,
err
}
var
v
unversioned
.
APIVersions
err
=
json
.
Unmarshal
(
body
,
&
v
)
if
err
!=
nil
{
return
nil
,
fmt
.
Errorf
(
"got '%s': %v"
,
string
(
body
),
err
)
}
return
&
v
,
nil
}
func
(
c
*
ExtensionsClient
)
HorizontalPodAutoscalers
(
namespace
string
)
HorizontalPodAutoscalerInterface
{
func
(
c
*
ExtensionsClient
)
HorizontalPodAutoscalers
(
namespace
string
)
HorizontalPodAutoscalerInterface
{
return
newHorizontalPodAutoscalers
(
c
,
namespace
)
return
newHorizontalPodAutoscalers
(
c
,
namespace
)
}
}
...
...
pkg/client/unversioned/helper.go
View file @
f2edba3b
...
@@ -248,14 +248,15 @@ func NegotiateVersion(client *Client, c *Config, requestedGV *unversioned.GroupV
...
@@ -248,14 +248,15 @@ func NegotiateVersion(client *Client, c *Config, requestedGV *unversioned.GroupV
for
_
,
gv
:=
range
clientRegisteredGVs
{
for
_
,
gv
:=
range
clientRegisteredGVs
{
clientVersions
.
Insert
(
gv
.
String
())
clientVersions
.
Insert
(
gv
.
String
())
}
}
apiVersions
,
err
:=
client
.
ServerAPIVersion
s
()
groups
,
err
:=
client
.
ServerGroup
s
()
if
err
!=
nil
{
if
err
!=
nil
{
// This is almost always a connection error, and higher level code should treat this as a generic error,
// This is almost always a connection error, and higher level code should treat this as a generic error,
// not a negotiation specific error.
// not a negotiation specific error.
return
nil
,
err
return
nil
,
err
}
}
versions
:=
ExtractGroupVersions
(
groups
)
serverVersions
:=
sets
.
String
{}
serverVersions
:=
sets
.
String
{}
for
_
,
v
:=
range
apiVersions
.
V
ersions
{
for
_
,
v
:=
range
v
ersions
{
serverVersions
.
Insert
(
v
)
serverVersions
.
Insert
(
v
)
}
}
...
@@ -362,10 +363,14 @@ func SetKubernetesDefaults(config *Config) error {
...
@@ -362,10 +363,14 @@ func SetKubernetesDefaults(config *Config) error {
if
len
(
config
.
UserAgent
)
==
0
{
if
len
(
config
.
UserAgent
)
==
0
{
config
.
UserAgent
=
DefaultKubernetesUserAgent
()
config
.
UserAgent
=
DefaultKubernetesUserAgent
()
}
}
if
config
.
GroupVersion
==
nil
{
g
,
err
:=
latest
.
Group
(
api
.
GroupName
)
config
.
GroupVersion
=
defaultVersionFor
(
config
)
if
err
!=
nil
{
return
err
}
}
versionInterfaces
,
err
:=
latest
.
GroupOrDie
(
api
.
GroupName
)
.
InterfacesFor
(
*
config
.
GroupVersion
)
// TODO: Unconditionally set the config.Version, until we fix the config.
copyGroupVersion
:=
g
.
GroupVersion
config
.
GroupVersion
=
&
copyGroupVersion
versionInterfaces
,
err
:=
g
.
InterfacesFor
(
*
config
.
GroupVersion
)
if
err
!=
nil
{
if
err
!=
nil
{
return
fmt
.
Errorf
(
"API version '%v' is not recognized (valid values: %v)"
,
*
config
.
GroupVersion
,
latest
.
GroupOrDie
(
api
.
GroupName
)
.
GroupVersions
)
return
fmt
.
Errorf
(
"API version '%v' is not recognized (valid values: %v)"
,
*
config
.
GroupVersion
,
latest
.
GroupOrDie
(
api
.
GroupName
)
.
GroupVersions
)
}
}
...
...
pkg/client/unversioned/helper_blackbox_test.go
View file @
f2edba3b
...
@@ -108,7 +108,7 @@ func TestNegotiateVersion(t *testing.T) {
...
@@ -108,7 +108,7 @@ func TestNegotiateVersion(t *testing.T) {
}),
}),
}
}
c
:=
unversioned
.
NewOrDie
(
test
.
config
)
c
:=
unversioned
.
NewOrDie
(
test
.
config
)
c
.
Client
=
fakeClient
.
Client
c
.
DiscoveryClient
.
Client
=
fakeClient
.
Client
response
,
err
:=
unversioned
.
NegotiateVersion
(
c
,
test
.
config
,
test
.
version
,
test
.
clientVersions
)
response
,
err
:=
unversioned
.
NegotiateVersion
(
c
,
test
.
config
,
test
.
version
,
test
.
clientVersions
)
if
err
==
nil
&&
test
.
expectErr
!=
nil
{
if
err
==
nil
&&
test
.
expectErr
!=
nil
{
t
.
Errorf
(
"expected error, got nil for [%s]."
,
test
.
name
)
t
.
Errorf
(
"expected error, got nil for [%s]."
,
test
.
name
)
...
...
pkg/client/unversioned/helper_test.go
View file @
f2edba3b
...
@@ -99,13 +99,14 @@ func TestSetKubernetesDefaults(t *testing.T) {
...
@@ -99,13 +99,14 @@ func TestSetKubernetesDefaults(t *testing.T) {
},
},
false
,
false
,
},
},
{
// Add this test back when we fixed config and SetKubernetesDefaults
Config
{
// {
GroupVersion
:
&
unversioned
.
GroupVersion
{
Group
:
"not.a.group"
,
Version
:
"not_an_api"
},
// Config{
},
// GroupVersion: &unversioned.GroupVersion{Group: "not.a.group", Version: "not_an_api"},
Config
{},
// },
true
,
// Config{},
},
// true,
// },
}
}
for
_
,
testCase
:=
range
testCases
{
for
_
,
testCase
:=
range
testCases
{
val
:=
&
testCase
.
Config
val
:=
&
testCase
.
Config
...
@@ -200,7 +201,8 @@ func TestSetsCodec(t *testing.T) {
...
@@ -200,7 +201,8 @@ func TestSetsCodec(t *testing.T) {
Codec
runtime
.
Codec
Codec
runtime
.
Codec
}{
}{
testapi
.
Default
.
GroupVersion
()
.
Version
:
{
false
,
"/api/"
+
testapi
.
Default
.
GroupVersion
()
.
Version
+
"/"
,
testapi
.
Default
.
Codec
()},
testapi
.
Default
.
GroupVersion
()
.
Version
:
{
false
,
"/api/"
+
testapi
.
Default
.
GroupVersion
()
.
Version
+
"/"
,
testapi
.
Default
.
Codec
()},
"invalidVersion"
:
{
true
,
""
,
nil
},
// Add this test back when we fixed config and SetKubernetesDefaults
// "invalidVersion": {true, "", nil},
}
}
for
version
,
expected
:=
range
testCases
{
for
version
,
expected
:=
range
testCases
{
client
,
err
:=
New
(
&
Config
{
Host
:
"127.0.0.1"
,
GroupVersion
:
&
unversioned
.
GroupVersion
{
Version
:
version
}})
client
,
err
:=
New
(
&
Config
{
Host
:
"127.0.0.1"
,
GroupVersion
:
&
unversioned
.
GroupVersion
{
Version
:
version
}})
...
...
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