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
308fdcd1
Unverified
Commit
308fdcd1
authored
Feb 19, 2017
by
Jordan Liggitt
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Pass typed options to dynamic client
parent
3a73d23e
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
16 additions
and
16 deletions
+16
-16
garbagecollector.go
pkg/controller/garbagecollector/garbagecollector.go
+2
-2
namespaced_resources_deleter.go
...roller/namespace/deletion/namespaced_resources_deleter.go
+2
-2
client.go
staging/src/k8s.io/client-go/dynamic/client.go
+6
-6
client_test.go
staging/src/k8s.io/client-go/dynamic/client_test.go
+3
-3
util.go
test/e2e/framework/util.go
+2
-2
dynamic_client_test.go
test/integration/client/dynamic_client_test.go
+1
-1
No files found.
pkg/controller/garbagecollector/garbagecollector.go
View file @
308fdcd1
...
...
@@ -460,7 +460,7 @@ func gcListWatcher(client *dynamic.Client, resource schema.GroupVersionResource)
apiResource
:=
metav1
.
APIResource
{
Name
:
resource
.
Resource
}
return
client
.
ParameterCodec
(
dynamic
.
VersionedParameterEncoderWithV1Fallback
)
.
Resource
(
&
apiResource
,
metav1
.
NamespaceAll
)
.
List
(
&
options
)
List
(
options
)
},
WatchFunc
:
func
(
options
metav1
.
ListOptions
)
(
watch
.
Interface
,
error
)
{
// APIResource.Kind is not used by the dynamic client, so
...
...
@@ -470,7 +470,7 @@ func gcListWatcher(client *dynamic.Client, resource schema.GroupVersionResource)
apiResource
:=
metav1
.
APIResource
{
Name
:
resource
.
Resource
}
return
client
.
ParameterCodec
(
dynamic
.
VersionedParameterEncoderWithV1Fallback
)
.
Resource
(
&
apiResource
,
metav1
.
NamespaceAll
)
.
Watch
(
&
options
)
Watch
(
options
)
},
}
}
...
...
pkg/controller/namespace/deletion/namespaced_resources_deleter.go
View file @
308fdcd1
...
...
@@ -341,7 +341,7 @@ func (d *namespacedResourcesDeleter) deleteCollection(
// resource deletions generically. it will ensure all resources in the namespace are purged prior to releasing
// namespace itself.
orphanDependents
:=
false
err
:=
dynamicClient
.
Resource
(
&
apiResource
,
namespace
)
.
DeleteCollection
(
&
metav1
.
DeleteOptions
{
OrphanDependents
:
&
orphanDependents
},
&
metav1
.
ListOptions
{})
err
:=
dynamicClient
.
Resource
(
&
apiResource
,
namespace
)
.
DeleteCollection
(
&
metav1
.
DeleteOptions
{
OrphanDependents
:
&
orphanDependents
},
metav1
.
ListOptions
{})
if
err
==
nil
{
return
true
,
nil
...
...
@@ -379,7 +379,7 @@ func (d *namespacedResourcesDeleter) listCollection(
}
apiResource
:=
metav1
.
APIResource
{
Name
:
gvr
.
Resource
,
Namespaced
:
true
}
obj
,
err
:=
dynamicClient
.
Resource
(
&
apiResource
,
namespace
)
.
List
(
&
metav1
.
ListOptions
{})
obj
,
err
:=
dynamicClient
.
Resource
(
&
apiResource
,
namespace
)
.
List
(
metav1
.
ListOptions
{})
if
err
==
nil
{
unstructuredList
,
ok
:=
obj
.
(
*
unstructured
.
UnstructuredList
)
if
!
ok
{
...
...
staging/src/k8s.io/client-go/dynamic/client.go
View file @
308fdcd1
...
...
@@ -112,7 +112,7 @@ type ResourceClient struct {
}
// List returns a list of objects for this resource.
func
(
rc
*
ResourceClient
)
List
(
opts
runtime
.
Object
)
(
runtime
.
Object
,
error
)
{
func
(
rc
*
ResourceClient
)
List
(
opts
metav1
.
ListOptions
)
(
runtime
.
Object
,
error
)
{
parameterEncoder
:=
rc
.
parameterCodec
if
parameterEncoder
==
nil
{
parameterEncoder
=
defaultParameterEncoder
...
...
@@ -120,7 +120,7 @@ func (rc *ResourceClient) List(opts runtime.Object) (runtime.Object, error) {
return
rc
.
cl
.
Get
()
.
NamespaceIfScoped
(
rc
.
ns
,
rc
.
resource
.
Namespaced
)
.
Resource
(
rc
.
resource
.
Name
)
.
VersionedParams
(
opts
,
parameterEncoder
)
.
VersionedParams
(
&
opts
,
parameterEncoder
)
.
Do
()
.
Get
()
}
...
...
@@ -149,7 +149,7 @@ func (rc *ResourceClient) Delete(name string, opts *metav1.DeleteOptions) error
}
// DeleteCollection deletes a collection of objects.
func
(
rc
*
ResourceClient
)
DeleteCollection
(
deleteOptions
*
metav1
.
DeleteOptions
,
listOptions
runtime
.
Object
)
error
{
func
(
rc
*
ResourceClient
)
DeleteCollection
(
deleteOptions
*
metav1
.
DeleteOptions
,
listOptions
metav1
.
ListOptions
)
error
{
parameterEncoder
:=
rc
.
parameterCodec
if
parameterEncoder
==
nil
{
parameterEncoder
=
defaultParameterEncoder
...
...
@@ -157,7 +157,7 @@ func (rc *ResourceClient) DeleteCollection(deleteOptions *metav1.DeleteOptions,
return
rc
.
cl
.
Delete
()
.
NamespaceIfScoped
(
rc
.
ns
,
rc
.
resource
.
Namespaced
)
.
Resource
(
rc
.
resource
.
Name
)
.
VersionedParams
(
listOptions
,
parameterEncoder
)
.
VersionedParams
(
&
listOptions
,
parameterEncoder
)
.
Body
(
deleteOptions
)
.
Do
()
.
Error
()
...
...
@@ -192,7 +192,7 @@ func (rc *ResourceClient) Update(obj *unstructured.Unstructured) (*unstructured.
}
// Watch returns a watch.Interface that watches the resource.
func
(
rc
*
ResourceClient
)
Watch
(
opts
runtime
.
Object
)
(
watch
.
Interface
,
error
)
{
func
(
rc
*
ResourceClient
)
Watch
(
opts
metav1
.
ListOptions
)
(
watch
.
Interface
,
error
)
{
parameterEncoder
:=
rc
.
parameterCodec
if
parameterEncoder
==
nil
{
parameterEncoder
=
defaultParameterEncoder
...
...
@@ -201,7 +201,7 @@ func (rc *ResourceClient) Watch(opts runtime.Object) (watch.Interface, error) {
Prefix
(
"watch"
)
.
NamespaceIfScoped
(
rc
.
ns
,
rc
.
resource
.
Namespaced
)
.
Resource
(
rc
.
resource
.
Name
)
.
VersionedParams
(
opts
,
parameterEncoder
)
.
VersionedParams
(
&
opts
,
parameterEncoder
)
.
Watch
()
}
...
...
staging/src/k8s.io/client-go/dynamic/client_test.go
View file @
308fdcd1
...
...
@@ -136,7 +136,7 @@ func TestList(t *testing.T) {
}
defer
srv
.
Close
()
got
,
err
:=
cl
.
Resource
(
resource
,
tc
.
namespace
)
.
List
(
&
metav1
.
ListOptions
{})
got
,
err
:=
cl
.
Resource
(
resource
,
tc
.
namespace
)
.
List
(
metav1
.
ListOptions
{})
if
err
!=
nil
{
t
.
Errorf
(
"unexpected error when listing %q: %v"
,
tc
.
name
,
err
)
continue
...
...
@@ -293,7 +293,7 @@ func TestDeleteCollection(t *testing.T) {
}
defer
srv
.
Close
()
err
=
cl
.
Resource
(
resource
,
tc
.
namespace
)
.
DeleteCollection
(
nil
,
&
metav1
.
ListOptions
{})
err
=
cl
.
Resource
(
resource
,
tc
.
namespace
)
.
DeleteCollection
(
nil
,
metav1
.
ListOptions
{})
if
err
!=
nil
{
t
.
Errorf
(
"unexpected error when deleting collection %q: %v"
,
tc
.
name
,
err
)
continue
...
...
@@ -469,7 +469,7 @@ func TestWatch(t *testing.T) {
}
defer
srv
.
Close
()
watcher
,
err
:=
cl
.
Resource
(
resource
,
tc
.
namespace
)
.
Watch
(
&
metav1
.
ListOptions
{})
watcher
,
err
:=
cl
.
Resource
(
resource
,
tc
.
namespace
)
.
Watch
(
metav1
.
ListOptions
{})
if
err
!=
nil
{
t
.
Errorf
(
"unexpected error when watching %q: %v"
,
tc
.
name
,
err
)
continue
...
...
test/e2e/framework/util.go
View file @
308fdcd1
...
...
@@ -363,7 +363,7 @@ func SkipIfMissingResource(clientPool dynamic.ClientPool, gvr schema.GroupVersio
Failf
(
"Unexpected error getting dynamic client for %v: %v"
,
gvr
.
GroupVersion
(),
err
)
}
apiResource
:=
metav1
.
APIResource
{
Name
:
gvr
.
Resource
,
Namespaced
:
true
}
_
,
err
=
dynamicClient
.
Resource
(
&
apiResource
,
namespace
)
.
List
(
&
metav1
.
ListOptions
{})
_
,
err
=
dynamicClient
.
Resource
(
&
apiResource
,
namespace
)
.
List
(
metav1
.
ListOptions
{})
if
err
!=
nil
{
// not all resources support list, so we ignore those
if
apierrs
.
IsMethodNotSupported
(
err
)
||
apierrs
.
IsNotFound
(
err
)
||
apierrs
.
IsForbidden
(
err
)
{
...
...
@@ -1080,7 +1080,7 @@ func hasRemainingContent(c clientset.Interface, clientPool dynamic.ClientPool, n
Logf
(
"namespace: %s, resource: %s, ignored listing per whitelist"
,
namespace
,
apiResource
.
Name
)
continue
}
obj
,
err
:=
dynamicClient
.
Resource
(
&
apiResource
,
namespace
)
.
List
(
&
metav1
.
ListOptions
{})
obj
,
err
:=
dynamicClient
.
Resource
(
&
apiResource
,
namespace
)
.
List
(
metav1
.
ListOptions
{})
if
err
!=
nil
{
// not all resources support list, so we ignore those
if
apierrs
.
IsMethodNotSupported
(
err
)
||
apierrs
.
IsNotFound
(
err
)
||
apierrs
.
IsForbidden
(
err
)
{
...
...
test/integration/client/dynamic_client_test.go
View file @
308fdcd1
...
...
@@ -93,7 +93,7 @@ func TestDynamicClient(t *testing.T) {
}
// check dynamic list
obj
,
err
:=
dynamicClient
.
Resource
(
&
resource
,
ns
.
Name
)
.
List
(
&
metav1
.
ListOptions
{})
obj
,
err
:=
dynamicClient
.
Resource
(
&
resource
,
ns
.
Name
)
.
List
(
metav1
.
ListOptions
{})
unstructuredList
,
ok
:=
obj
.
(
*
unstructured
.
UnstructuredList
)
if
!
ok
{
t
.
Fatalf
(
"expected *unstructured.UnstructuredList, got %#v"
,
obj
)
...
...
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