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
234d5997
Commit
234d5997
authored
Apr 12, 2016
by
Sami Wagiaalla
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Rename cleanerTuple to cleaner
parent
8a8177f9
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
11 additions
and
11 deletions
+11
-11
kubelet.go
pkg/kubelet/kubelet.go
+5
-5
volumes.go
pkg/kubelet/volumes.go
+6
-6
No files found.
pkg/kubelet/kubelet.go
View file @
234d5997
...
@@ -1975,7 +1975,7 @@ func (kl *Kubelet) cleanupOrphanedVolumes(pods []*api.Pod, runningPods []*kubeco
...
@@ -1975,7 +1975,7 @@ func (kl *Kubelet) cleanupOrphanedVolumes(pods []*api.Pod, runningPods []*kubeco
runningSet
.
Insert
(
string
(
pod
.
ID
))
runningSet
.
Insert
(
string
(
pod
.
ID
))
}
}
for
name
,
cleaner
Tuple
:=
range
currentVolumes
{
for
name
,
cleaner
:=
range
currentVolumes
{
if
_
,
ok
:=
desiredVolumes
[
name
];
!
ok
{
if
_
,
ok
:=
desiredVolumes
[
name
];
!
ok
{
parts
:=
strings
.
Split
(
name
,
"/"
)
parts
:=
strings
.
Split
(
name
,
"/"
)
if
runningSet
.
Has
(
parts
[
0
])
{
if
runningSet
.
Has
(
parts
[
0
])
{
...
@@ -1988,19 +1988,19 @@ func (kl *Kubelet) cleanupOrphanedVolumes(pods []*api.Pod, runningPods []*kubeco
...
@@ -1988,19 +1988,19 @@ func (kl *Kubelet) cleanupOrphanedVolumes(pods []*api.Pod, runningPods []*kubeco
// TODO(yifan): Refactor this hacky string manipulation.
// TODO(yifan): Refactor this hacky string manipulation.
kl
.
volumeManager
.
DeleteVolumes
(
types
.
UID
(
parts
[
0
]))
kl
.
volumeManager
.
DeleteVolumes
(
types
.
UID
(
parts
[
0
]))
// Get path reference count
// Get path reference count
refs
,
err
:=
mount
.
GetMountRefs
(
kl
.
mounter
,
cleaner
Tuple
.
Unmounter
.
GetPath
())
refs
,
err
:=
mount
.
GetMountRefs
(
kl
.
mounter
,
cleaner
.
Unmounter
.
GetPath
())
if
err
!=
nil
{
if
err
!=
nil
{
return
fmt
.
Errorf
(
"Could not get mount path references %v"
,
err
)
return
fmt
.
Errorf
(
"Could not get mount path references %v"
,
err
)
}
}
//TODO (jonesdl) This should not block other kubelet synchronization procedures
//TODO (jonesdl) This should not block other kubelet synchronization procedures
err
=
cleaner
Tuple
.
Unmounter
.
TearDown
()
err
=
cleaner
.
Unmounter
.
TearDown
()
if
err
!=
nil
{
if
err
!=
nil
{
glog
.
Errorf
(
"Could not tear down volume %q: %v"
,
name
,
err
)
glog
.
Errorf
(
"Could not tear down volume %q: %v"
,
name
,
err
)
}
}
// volume is unmounted. some volumes also require detachment from the node.
// volume is unmounted. some volumes also require detachment from the node.
if
cleaner
Tuple
.
Detacher
!=
nil
&&
len
(
refs
)
==
1
{
if
cleaner
.
Detacher
!=
nil
&&
len
(
refs
)
==
1
{
detacher
:=
*
cleaner
Tuple
.
Detacher
detacher
:=
*
cleaner
.
Detacher
err
=
detacher
.
Detach
()
err
=
detacher
.
Detach
()
if
err
!=
nil
{
if
err
!=
nil
{
glog
.
Errorf
(
"Could not detach volume %q: %v"
,
name
,
err
)
glog
.
Errorf
(
"Could not detach volume %q: %v"
,
name
,
err
)
...
...
pkg/kubelet/volumes.go
View file @
234d5997
...
@@ -207,9 +207,9 @@ func (kl *Kubelet) getPodVolumes(podUID types.UID) ([]*volumeTuple, error) {
...
@@ -207,9 +207,9 @@ func (kl *Kubelet) getPodVolumes(podUID types.UID) ([]*volumeTuple, error) {
return
volumes
,
nil
return
volumes
,
nil
}
}
// cleaner
Tuple
is a union struct to allow separating detaching from the cleaner.
// cleaner is a union struct to allow separating detaching from the cleaner.
// some volumes require detachment but not all. Unmounter cannot be nil but Detacher is optional.
// some volumes require detachment but not all. Unmounter cannot be nil but Detacher is optional.
type
cleaner
Tuple
struct
{
type
cleaner
struct
{
Unmounter
volume
.
Unmounter
Unmounter
volume
.
Unmounter
Detacher
*
volume
.
Detacher
Detacher
*
volume
.
Detacher
}
}
...
@@ -217,12 +217,12 @@ type cleanerTuple struct {
...
@@ -217,12 +217,12 @@ type cleanerTuple struct {
// getPodVolumesFromDisk examines directory structure to determine volumes that
// getPodVolumesFromDisk examines directory structure to determine volumes that
// are presently active and mounted. Returns a union struct containing a volume.Unmounter
// are presently active and mounted. Returns a union struct containing a volume.Unmounter
// and potentially a volume.Detacher.
// and potentially a volume.Detacher.
func
(
kl
*
Kubelet
)
getPodVolumesFromDisk
()
map
[
string
]
cleaner
Tuple
{
func
(
kl
*
Kubelet
)
getPodVolumesFromDisk
()
map
[
string
]
cleaner
{
currentVolumes
:=
make
(
map
[
string
]
cleaner
Tuple
)
currentVolumes
:=
make
(
map
[
string
]
cleaner
)
podUIDs
,
err
:=
kl
.
listPodsFromDisk
()
podUIDs
,
err
:=
kl
.
listPodsFromDisk
()
if
err
!=
nil
{
if
err
!=
nil
{
glog
.
Errorf
(
"Could not get pods from disk: %v"
,
err
)
glog
.
Errorf
(
"Could not get pods from disk: %v"
,
err
)
return
map
[
string
]
cleaner
Tuple
{}
return
map
[
string
]
cleaner
{}
}
}
// Find the volumes for each on-disk pod.
// Find the volumes for each on-disk pod.
for
_
,
podUID
:=
range
podUIDs
{
for
_
,
podUID
:=
range
podUIDs
{
...
@@ -245,7 +245,7 @@ func (kl *Kubelet) getPodVolumesFromDisk() map[string]cleanerTuple {
...
@@ -245,7 +245,7 @@ func (kl *Kubelet) getPodVolumesFromDisk() map[string]cleanerTuple {
continue
continue
}
}
tuple
:=
cleaner
Tuple
{
Unmounter
:
unmounter
}
tuple
:=
cleaner
{
Unmounter
:
unmounter
}
detacher
,
err
:=
kl
.
newVolumeDetacherFromPlugins
(
volume
.
Kind
,
volume
.
Name
,
podUID
)
detacher
,
err
:=
kl
.
newVolumeDetacherFromPlugins
(
volume
.
Kind
,
volume
.
Name
,
podUID
)
// plugin can be nil but a non-nil error is a legitimate error
// plugin can be nil but a non-nil error is a legitimate error
if
err
!=
nil
{
if
err
!=
nil
{
...
...
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