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
042b5642
Unverified
Commit
042b5642
authored
Aug 02, 2017
by
Mikhail Mazurskiy
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Migrate to NewControllerRef from meta/v1 package
parent
b28a83a4
Hide whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
14 additions
and
97 deletions
+14
-97
controller_ref_manager_test.go
pkg/controller/controller_ref_manager_test.go
+1
-15
utils.go
pkg/controller/cronjob/utils.go
+1
-14
daemon_controller.go
pkg/controller/daemon/daemon_controller.go
+1
-15
daemon_controller_test.go
pkg/controller/daemon/daemon_controller_test.go
+2
-2
update.go
pkg/controller/daemon/update.go
+1
-1
deployment_controller_test.go
pkg/controller/deployment/deployment_controller_test.go
+2
-2
sync.go
pkg/controller/deployment/sync.go
+1
-15
job_controller.go
pkg/controller/job/job_controller.go
+1
-1
job_controller_test.go
pkg/controller/job/job_controller_test.go
+3
-3
utils.go
pkg/controller/job/utils.go
+0
-14
stateful_set_utils.go
pkg/controller/statefulset/stateful_set_utils.go
+1
-15
No files found.
pkg/controller/controller_ref_manager_test.go
View file @
042b5642
...
...
@@ -36,20 +36,6 @@ var (
controllerUID
=
"123"
)
func
newControllerRef
(
controller
metav1
.
Object
)
*
metav1
.
OwnerReference
{
var
controllerKind
=
v1beta1
.
SchemeGroupVersion
.
WithKind
(
"Fake"
)
blockOwnerDeletion
:=
true
isController
:=
true
return
&
metav1
.
OwnerReference
{
APIVersion
:
controllerKind
.
GroupVersion
()
.
String
(),
Kind
:
controllerKind
.
Kind
,
Name
:
"Fake"
,
UID
:
controller
.
GetUID
(),
BlockOwnerDeletion
:
&
blockOwnerDeletion
,
Controller
:
&
isController
,
}
}
func
newPod
(
podName
string
,
label
map
[
string
]
string
,
owner
metav1
.
Object
)
*
v1
.
Pod
{
pod
:=
&
v1
.
Pod
{
ObjectMeta
:
metav1
.
ObjectMeta
{
...
...
@@ -66,7 +52,7 @@ func newPod(podName string, label map[string]string, owner metav1.Object) *v1.Po
},
}
if
owner
!=
nil
{
pod
.
OwnerReferences
=
[]
metav1
.
OwnerReference
{
*
newControllerRef
(
owner
)}
pod
.
OwnerReferences
=
[]
metav1
.
OwnerReference
{
*
metav1
.
NewControllerRef
(
owner
,
v1beta1
.
SchemeGroupVersion
.
WithKind
(
"Fake"
)
)}
}
return
pod
}
...
...
pkg/controller/cronjob/utils.go
View file @
042b5642
...
...
@@ -169,19 +169,6 @@ func getRecentUnmetScheduleTimes(sj batchv2alpha1.CronJob, now time.Time) ([]tim
return
starts
,
nil
}
func
newControllerRef
(
sj
*
batchv2alpha1
.
CronJob
)
*
metav1
.
OwnerReference
{
blockOwnerDeletion
:=
true
isController
:=
true
return
&
metav1
.
OwnerReference
{
APIVersion
:
controllerKind
.
GroupVersion
()
.
String
(),
Kind
:
controllerKind
.
Kind
,
Name
:
sj
.
Name
,
UID
:
sj
.
UID
,
BlockOwnerDeletion
:
&
blockOwnerDeletion
,
Controller
:
&
isController
,
}
}
// XXX unit test this
// getJobFromTemplate makes a Job from a CronJob
...
...
@@ -204,7 +191,7 @@ func getJobFromTemplate(sj *batchv2alpha1.CronJob, scheduledTime time.Time) (*ba
Labels
:
labels
,
Annotations
:
annotations
,
Name
:
name
,
OwnerReferences
:
[]
metav1
.
OwnerReference
{
*
newControllerRef
(
sj
)},
OwnerReferences
:
[]
metav1
.
OwnerReference
{
*
metav1
.
NewControllerRef
(
sj
,
controllerKind
)},
},
}
if
err
:=
api
.
Scheme
.
Convert
(
&
sj
.
Spec
.
JobTemplate
.
Spec
,
&
job
.
Spec
,
nil
);
err
!=
nil
{
...
...
pkg/controller/daemon/daemon_controller.go
View file @
042b5642
...
...
@@ -816,7 +816,7 @@ func (dsc *DaemonSetsController) syncNodes(ds *extensions.DaemonSet, podsToDelet
for
i
:=
0
;
i
<
createDiff
;
i
++
{
go
func
(
ix
int
)
{
defer
createWait
.
Done
()
err
:=
dsc
.
podControl
.
CreatePodsOnNode
(
nodesNeedingDaemonPods
[
ix
],
ds
.
Namespace
,
&
template
,
ds
,
newControllerRef
(
ds
))
err
:=
dsc
.
podControl
.
CreatePodsOnNode
(
nodesNeedingDaemonPods
[
ix
],
ds
.
Namespace
,
&
template
,
ds
,
metav1
.
NewControllerRef
(
ds
,
controllerKind
))
if
err
!=
nil
&&
errors
.
IsTimeout
(
err
)
{
// Pod is created but its initialization has timed out.
// If the initialization is successful eventually, the
...
...
@@ -1237,20 +1237,6 @@ func NodeConditionPredicates(nodeInfo *schedulercache.NodeInfo) (bool, []algorit
return
len
(
reasons
)
==
0
,
reasons
}
// newControllerRef creates a ControllerRef pointing to the given DaemonSet.
func
newControllerRef
(
ds
*
extensions
.
DaemonSet
)
*
metav1
.
OwnerReference
{
blockOwnerDeletion
:=
true
isController
:=
true
return
&
metav1
.
OwnerReference
{
APIVersion
:
controllerKind
.
GroupVersion
()
.
String
(),
Kind
:
controllerKind
.
Kind
,
Name
:
ds
.
Name
,
UID
:
ds
.
UID
,
BlockOwnerDeletion
:
&
blockOwnerDeletion
,
Controller
:
&
isController
,
}
}
// byCreationTimestamp sorts a list by creation timestamp, using their names as a tie breaker.
type
byCreationTimestamp
[]
*
extensions
.
DaemonSet
...
...
pkg/controller/daemon/daemon_controller_test.go
View file @
042b5642
...
...
@@ -201,7 +201,7 @@ func newPod(podName string, nodeName string, label map[string]string, ds *extens
}
pod
.
Name
=
names
.
SimpleNameGenerator
.
GenerateName
(
podName
)
if
ds
!=
nil
{
pod
.
OwnerReferences
=
[]
metav1
.
OwnerReference
{
*
newControllerRef
(
ds
)}
pod
.
OwnerReferences
=
[]
metav1
.
OwnerReference
{
*
metav1
.
NewControllerRef
(
ds
,
controllerKind
)}
}
return
pod
}
...
...
@@ -1808,7 +1808,7 @@ func TestUpdatePodChangeControllerRef(t *testing.T) {
pod
:=
newPod
(
"pod1-"
,
"node-0"
,
simpleDaemonSetLabel
,
ds1
)
prev
:=
*
pod
prev
.
OwnerReferences
=
[]
metav1
.
OwnerReference
{
*
newControllerRef
(
ds2
)}
prev
.
OwnerReferences
=
[]
metav1
.
OwnerReference
{
*
metav1
.
NewControllerRef
(
ds2
,
controllerKind
)}
bumpResourceVersion
(
pod
)
manager
.
updatePod
(
&
prev
,
pod
)
if
got
,
want
:=
manager
.
queue
.
Len
(),
2
;
got
!=
want
{
...
...
pkg/controller/daemon/update.go
View file @
042b5642
...
...
@@ -339,7 +339,7 @@ func (dsc *DaemonSetsController) snapshot(ds *extensions.DaemonSet, revision int
Namespace
:
ds
.
Namespace
,
Labels
:
labelsutil
.
CloneAndAddLabel
(
ds
.
Spec
.
Template
.
Labels
,
extensions
.
DefaultDaemonSetUniqueLabelKey
,
hash
),
Annotations
:
ds
.
Annotations
,
OwnerReferences
:
[]
metav1
.
OwnerReference
{
*
newControllerRef
(
ds
)},
OwnerReferences
:
[]
metav1
.
OwnerReference
{
*
metav1
.
NewControllerRef
(
ds
,
controllerKind
)},
},
Data
:
runtime
.
RawExtension
{
Raw
:
patch
},
Revision
:
revision
,
...
...
pkg/controller/deployment/deployment_controller_test.go
View file @
042b5642
...
...
@@ -126,7 +126,7 @@ func newReplicaSet(d *extensions.Deployment, name string, replicas int) *extensi
UID
:
uuid
.
NewUUID
(),
Namespace
:
metav1
.
NamespaceDefault
,
Labels
:
d
.
Spec
.
Selector
.
MatchLabels
,
OwnerReferences
:
[]
metav1
.
OwnerReference
{
*
newControllerRef
(
d
)},
OwnerReferences
:
[]
metav1
.
OwnerReference
{
*
metav1
.
NewControllerRef
(
d
,
controllerKin
d
)},
},
Spec
:
extensions
.
ReplicaSetSpec
{
Selector
:
d
.
Spec
.
Selector
,
...
...
@@ -810,7 +810,7 @@ func TestUpdateReplicaSetChangeControllerRef(t *testing.T) {
// Change ControllerRef and expect both old and new to queue.
prev
:=
*
rs
prev
.
OwnerReferences
=
[]
metav1
.
OwnerReference
{
*
newControllerRef
(
d2
)}
prev
.
OwnerReferences
=
[]
metav1
.
OwnerReference
{
*
metav1
.
NewControllerRef
(
d2
,
controllerKind
)}
next
:=
*
rs
bumpResourceVersion
(
&
next
)
dc
.
updateReplicaSet
(
&
prev
,
&
next
)
...
...
pkg/controller/deployment/sync.go
View file @
042b5642
...
...
@@ -306,7 +306,7 @@ func (dc *DeploymentController) getNewReplicaSet(d *extensions.Deployment, rsLis
// Make the name deterministic, to ensure idempotence
Name
:
d
.
Name
+
"-"
+
podTemplateSpecHash
,
Namespace
:
d
.
Namespace
,
OwnerReferences
:
[]
metav1
.
OwnerReference
{
*
newControllerRef
(
d
)},
OwnerReferences
:
[]
metav1
.
OwnerReference
{
*
metav1
.
NewControllerRef
(
d
,
controllerKin
d
)},
},
Spec
:
extensions
.
ReplicaSetSpec
{
Replicas
:
new
(
int32
),
...
...
@@ -651,17 +651,3 @@ func (dc *DeploymentController) isScalingEvent(d *extensions.Deployment, rsList
}
return
false
,
nil
}
// newControllerRef returns a ControllerRef pointing to the deployment.
func
newControllerRef
(
d
*
extensions
.
Deployment
)
*
metav1
.
OwnerReference
{
blockOwnerDeletion
:=
true
isController
:=
true
return
&
metav1
.
OwnerReference
{
APIVersion
:
controllerKind
.
GroupVersion
()
.
String
(),
Kind
:
controllerKind
.
Kind
,
Name
:
d
.
Name
,
UID
:
d
.
UID
,
BlockOwnerDeletion
:
&
blockOwnerDeletion
,
Controller
:
&
isController
,
}
}
pkg/controller/job/job_controller.go
View file @
042b5642
...
...
@@ -624,7 +624,7 @@ func (jm *JobController) manageJob(activePods []*v1.Pod, succeeded int32, job *b
for
i
:=
int32
(
0
);
i
<
diff
;
i
++
{
go
func
()
{
defer
wait
.
Done
()
err
:=
jm
.
podControl
.
CreatePodsWithControllerRef
(
job
.
Namespace
,
&
job
.
Spec
.
Template
,
job
,
newControllerRef
(
job
))
err
:=
jm
.
podControl
.
CreatePodsWithControllerRef
(
job
.
Namespace
,
&
job
.
Spec
.
Template
,
job
,
metav1
.
NewControllerRef
(
job
,
controllerKind
))
if
err
!=
nil
&&
errors
.
IsTimeout
(
err
)
{
// Pod is created but its initialization has timed out.
// If the initialization is successful eventually, the
...
...
pkg/controller/job/job_controller_test.go
View file @
042b5642
...
...
@@ -109,7 +109,7 @@ func newPodList(count int32, status v1.PodPhase, job *batch.Job) []v1.Pod {
Name
:
fmt
.
Sprintf
(
"pod-%v"
,
rand
.
String
(
10
)),
Labels
:
job
.
Spec
.
Selector
.
MatchLabels
,
Namespace
:
job
.
Namespace
,
OwnerReferences
:
[]
metav1
.
OwnerReference
{
*
newControllerRef
(
job
)},
OwnerReferences
:
[]
metav1
.
OwnerReference
{
*
metav1
.
NewControllerRef
(
job
,
controllerKind
)},
},
Status
:
v1
.
PodStatus
{
Phase
:
status
},
}
...
...
@@ -634,7 +634,7 @@ func newPod(name string, job *batch.Job) *v1.Pod {
Name
:
name
,
Labels
:
job
.
Spec
.
Selector
.
MatchLabels
,
Namespace
:
job
.
Namespace
,
OwnerReferences
:
[]
metav1
.
OwnerReference
{
*
newControllerRef
(
job
)},
OwnerReferences
:
[]
metav1
.
OwnerReference
{
*
metav1
.
NewControllerRef
(
job
,
controllerKind
)},
},
}
}
...
...
@@ -971,7 +971,7 @@ func TestUpdatePodChangeControllerRef(t *testing.T) {
// Changed ControllerRef. Expect both old and new to queue.
prev
:=
*
pod1
prev
.
OwnerReferences
=
[]
metav1
.
OwnerReference
{
*
newControllerRef
(
job2
)}
prev
.
OwnerReferences
=
[]
metav1
.
OwnerReference
{
*
metav1
.
NewControllerRef
(
job2
,
controllerKind
)}
bumpResourceVersion
(
pod1
)
jm
.
updatePod
(
&
prev
,
pod1
)
if
got
,
want
:=
jm
.
queue
.
Len
(),
2
;
got
!=
want
{
...
...
pkg/controller/job/utils.go
View file @
042b5642
...
...
@@ -19,7 +19,6 @@ package job
import
(
batch
"k8s.io/api/batch/v1"
"k8s.io/api/core/v1"
metav1
"k8s.io/apimachinery/pkg/apis/meta/v1"
)
func
IsJobFinished
(
j
*
batch
.
Job
)
bool
{
...
...
@@ -30,16 +29,3 @@ func IsJobFinished(j *batch.Job) bool {
}
return
false
}
func
newControllerRef
(
j
*
batch
.
Job
)
*
metav1
.
OwnerReference
{
blockOwnerDeletion
:=
true
isController
:=
true
return
&
metav1
.
OwnerReference
{
APIVersion
:
controllerKind
.
GroupVersion
()
.
String
(),
Kind
:
controllerKind
.
Kind
,
Name
:
j
.
Name
,
UID
:
j
.
UID
,
BlockOwnerDeletion
:
&
blockOwnerDeletion
,
Controller
:
&
isController
,
}
}
pkg/controller/statefulset/stateful_set_utils.go
View file @
042b5642
...
...
@@ -219,20 +219,6 @@ func allowsBurst(set *apps.StatefulSet) bool {
return
set
.
Spec
.
PodManagementPolicy
==
apps
.
ParallelPodManagement
}
// newControllerRef returns an ControllerRef pointing to a given StatefulSet.
func
newControllerRef
(
set
*
apps
.
StatefulSet
)
*
metav1
.
OwnerReference
{
blockOwnerDeletion
:=
true
isController
:=
true
return
&
metav1
.
OwnerReference
{
APIVersion
:
controllerKind
.
GroupVersion
()
.
String
(),
Kind
:
controllerKind
.
Kind
,
Name
:
set
.
Name
,
UID
:
set
.
UID
,
BlockOwnerDeletion
:
&
blockOwnerDeletion
,
Controller
:
&
isController
,
}
}
// setPodRevision sets the revision of Pod to revision by adding the StatefulSetRevisionLabel
func
setPodRevision
(
pod
*
v1
.
Pod
,
revision
string
)
{
if
pod
.
Labels
==
nil
{
...
...
@@ -252,7 +238,7 @@ func getPodRevision(pod *v1.Pod) string {
// newStatefulSetPod returns a new Pod conforming to the set's Spec with an identity generated from ordinal.
func
newStatefulSetPod
(
set
*
apps
.
StatefulSet
,
ordinal
int
)
*
v1
.
Pod
{
pod
,
_
:=
controller
.
GetPodFromTemplate
(
&
set
.
Spec
.
Template
,
set
,
newControllerRef
(
set
))
pod
,
_
:=
controller
.
GetPodFromTemplate
(
&
set
.
Spec
.
Template
,
set
,
metav1
.
NewControllerRef
(
set
,
controllerKind
))
pod
.
Name
=
getPodName
(
set
,
ordinal
)
updateIdentity
(
set
,
pod
)
updateStorage
(
set
,
pod
)
...
...
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