mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-30 15:05:27 +00:00
Migrate to NewControllerRef from meta/v1 package
This commit is contained in:
parent
b28a83a4cf
commit
042b5642b9
@ -36,20 +36,6 @@ var (
|
|||||||
controllerUID = "123"
|
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 {
|
func newPod(podName string, label map[string]string, owner metav1.Object) *v1.Pod {
|
||||||
pod := &v1.Pod{
|
pod := &v1.Pod{
|
||||||
ObjectMeta: metav1.ObjectMeta{
|
ObjectMeta: metav1.ObjectMeta{
|
||||||
@ -66,7 +52,7 @@ func newPod(podName string, label map[string]string, owner metav1.Object) *v1.Po
|
|||||||
},
|
},
|
||||||
}
|
}
|
||||||
if owner != nil {
|
if owner != nil {
|
||||||
pod.OwnerReferences = []metav1.OwnerReference{*newControllerRef(owner)}
|
pod.OwnerReferences = []metav1.OwnerReference{*metav1.NewControllerRef(owner, v1beta1.SchemeGroupVersion.WithKind("Fake"))}
|
||||||
}
|
}
|
||||||
return pod
|
return pod
|
||||||
}
|
}
|
||||||
|
@ -169,19 +169,6 @@ func getRecentUnmetScheduleTimes(sj batchv2alpha1.CronJob, now time.Time) ([]tim
|
|||||||
return starts, nil
|
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
|
// XXX unit test this
|
||||||
|
|
||||||
// getJobFromTemplate makes a Job from a CronJob
|
// getJobFromTemplate makes a Job from a CronJob
|
||||||
@ -204,7 +191,7 @@ func getJobFromTemplate(sj *batchv2alpha1.CronJob, scheduledTime time.Time) (*ba
|
|||||||
Labels: labels,
|
Labels: labels,
|
||||||
Annotations: annotations,
|
Annotations: annotations,
|
||||||
Name: name,
|
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 {
|
if err := api.Scheme.Convert(&sj.Spec.JobTemplate.Spec, &job.Spec, nil); err != nil {
|
||||||
|
@ -816,7 +816,7 @@ func (dsc *DaemonSetsController) syncNodes(ds *extensions.DaemonSet, podsToDelet
|
|||||||
for i := 0; i < createDiff; i++ {
|
for i := 0; i < createDiff; i++ {
|
||||||
go func(ix int) {
|
go func(ix int) {
|
||||||
defer createWait.Done()
|
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) {
|
if err != nil && errors.IsTimeout(err) {
|
||||||
// Pod is created but its initialization has timed out.
|
// Pod is created but its initialization has timed out.
|
||||||
// If the initialization is successful eventually, the
|
// If the initialization is successful eventually, the
|
||||||
@ -1237,20 +1237,6 @@ func NodeConditionPredicates(nodeInfo *schedulercache.NodeInfo) (bool, []algorit
|
|||||||
return len(reasons) == 0, reasons
|
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.
|
// byCreationTimestamp sorts a list by creation timestamp, using their names as a tie breaker.
|
||||||
type byCreationTimestamp []*extensions.DaemonSet
|
type byCreationTimestamp []*extensions.DaemonSet
|
||||||
|
|
||||||
|
@ -201,7 +201,7 @@ func newPod(podName string, nodeName string, label map[string]string, ds *extens
|
|||||||
}
|
}
|
||||||
pod.Name = names.SimpleNameGenerator.GenerateName(podName)
|
pod.Name = names.SimpleNameGenerator.GenerateName(podName)
|
||||||
if ds != nil {
|
if ds != nil {
|
||||||
pod.OwnerReferences = []metav1.OwnerReference{*newControllerRef(ds)}
|
pod.OwnerReferences = []metav1.OwnerReference{*metav1.NewControllerRef(ds, controllerKind)}
|
||||||
}
|
}
|
||||||
return pod
|
return pod
|
||||||
}
|
}
|
||||||
@ -1808,7 +1808,7 @@ func TestUpdatePodChangeControllerRef(t *testing.T) {
|
|||||||
|
|
||||||
pod := newPod("pod1-", "node-0", simpleDaemonSetLabel, ds1)
|
pod := newPod("pod1-", "node-0", simpleDaemonSetLabel, ds1)
|
||||||
prev := *pod
|
prev := *pod
|
||||||
prev.OwnerReferences = []metav1.OwnerReference{*newControllerRef(ds2)}
|
prev.OwnerReferences = []metav1.OwnerReference{*metav1.NewControllerRef(ds2, controllerKind)}
|
||||||
bumpResourceVersion(pod)
|
bumpResourceVersion(pod)
|
||||||
manager.updatePod(&prev, pod)
|
manager.updatePod(&prev, pod)
|
||||||
if got, want := manager.queue.Len(), 2; got != want {
|
if got, want := manager.queue.Len(), 2; got != want {
|
||||||
|
@ -339,7 +339,7 @@ func (dsc *DaemonSetsController) snapshot(ds *extensions.DaemonSet, revision int
|
|||||||
Namespace: ds.Namespace,
|
Namespace: ds.Namespace,
|
||||||
Labels: labelsutil.CloneAndAddLabel(ds.Spec.Template.Labels, extensions.DefaultDaemonSetUniqueLabelKey, hash),
|
Labels: labelsutil.CloneAndAddLabel(ds.Spec.Template.Labels, extensions.DefaultDaemonSetUniqueLabelKey, hash),
|
||||||
Annotations: ds.Annotations,
|
Annotations: ds.Annotations,
|
||||||
OwnerReferences: []metav1.OwnerReference{*newControllerRef(ds)},
|
OwnerReferences: []metav1.OwnerReference{*metav1.NewControllerRef(ds, controllerKind)},
|
||||||
},
|
},
|
||||||
Data: runtime.RawExtension{Raw: patch},
|
Data: runtime.RawExtension{Raw: patch},
|
||||||
Revision: revision,
|
Revision: revision,
|
||||||
|
@ -126,7 +126,7 @@ func newReplicaSet(d *extensions.Deployment, name string, replicas int) *extensi
|
|||||||
UID: uuid.NewUUID(),
|
UID: uuid.NewUUID(),
|
||||||
Namespace: metav1.NamespaceDefault,
|
Namespace: metav1.NamespaceDefault,
|
||||||
Labels: d.Spec.Selector.MatchLabels,
|
Labels: d.Spec.Selector.MatchLabels,
|
||||||
OwnerReferences: []metav1.OwnerReference{*newControllerRef(d)},
|
OwnerReferences: []metav1.OwnerReference{*metav1.NewControllerRef(d, controllerKind)},
|
||||||
},
|
},
|
||||||
Spec: extensions.ReplicaSetSpec{
|
Spec: extensions.ReplicaSetSpec{
|
||||||
Selector: d.Spec.Selector,
|
Selector: d.Spec.Selector,
|
||||||
@ -810,7 +810,7 @@ func TestUpdateReplicaSetChangeControllerRef(t *testing.T) {
|
|||||||
|
|
||||||
// Change ControllerRef and expect both old and new to queue.
|
// Change ControllerRef and expect both old and new to queue.
|
||||||
prev := *rs
|
prev := *rs
|
||||||
prev.OwnerReferences = []metav1.OwnerReference{*newControllerRef(d2)}
|
prev.OwnerReferences = []metav1.OwnerReference{*metav1.NewControllerRef(d2, controllerKind)}
|
||||||
next := *rs
|
next := *rs
|
||||||
bumpResourceVersion(&next)
|
bumpResourceVersion(&next)
|
||||||
dc.updateReplicaSet(&prev, &next)
|
dc.updateReplicaSet(&prev, &next)
|
||||||
|
@ -306,7 +306,7 @@ func (dc *DeploymentController) getNewReplicaSet(d *extensions.Deployment, rsLis
|
|||||||
// Make the name deterministic, to ensure idempotence
|
// Make the name deterministic, to ensure idempotence
|
||||||
Name: d.Name + "-" + podTemplateSpecHash,
|
Name: d.Name + "-" + podTemplateSpecHash,
|
||||||
Namespace: d.Namespace,
|
Namespace: d.Namespace,
|
||||||
OwnerReferences: []metav1.OwnerReference{*newControllerRef(d)},
|
OwnerReferences: []metav1.OwnerReference{*metav1.NewControllerRef(d, controllerKind)},
|
||||||
},
|
},
|
||||||
Spec: extensions.ReplicaSetSpec{
|
Spec: extensions.ReplicaSetSpec{
|
||||||
Replicas: new(int32),
|
Replicas: new(int32),
|
||||||
@ -651,17 +651,3 @@ func (dc *DeploymentController) isScalingEvent(d *extensions.Deployment, rsList
|
|||||||
}
|
}
|
||||||
return false, nil
|
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,
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
@ -624,7 +624,7 @@ func (jm *JobController) manageJob(activePods []*v1.Pod, succeeded int32, job *b
|
|||||||
for i := int32(0); i < diff; i++ {
|
for i := int32(0); i < diff; i++ {
|
||||||
go func() {
|
go func() {
|
||||||
defer wait.Done()
|
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) {
|
if err != nil && errors.IsTimeout(err) {
|
||||||
// Pod is created but its initialization has timed out.
|
// Pod is created but its initialization has timed out.
|
||||||
// If the initialization is successful eventually, the
|
// If the initialization is successful eventually, the
|
||||||
|
@ -109,7 +109,7 @@ func newPodList(count int32, status v1.PodPhase, job *batch.Job) []v1.Pod {
|
|||||||
Name: fmt.Sprintf("pod-%v", rand.String(10)),
|
Name: fmt.Sprintf("pod-%v", rand.String(10)),
|
||||||
Labels: job.Spec.Selector.MatchLabels,
|
Labels: job.Spec.Selector.MatchLabels,
|
||||||
Namespace: job.Namespace,
|
Namespace: job.Namespace,
|
||||||
OwnerReferences: []metav1.OwnerReference{*newControllerRef(job)},
|
OwnerReferences: []metav1.OwnerReference{*metav1.NewControllerRef(job, controllerKind)},
|
||||||
},
|
},
|
||||||
Status: v1.PodStatus{Phase: status},
|
Status: v1.PodStatus{Phase: status},
|
||||||
}
|
}
|
||||||
@ -634,7 +634,7 @@ func newPod(name string, job *batch.Job) *v1.Pod {
|
|||||||
Name: name,
|
Name: name,
|
||||||
Labels: job.Spec.Selector.MatchLabels,
|
Labels: job.Spec.Selector.MatchLabels,
|
||||||
Namespace: job.Namespace,
|
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.
|
// Changed ControllerRef. Expect both old and new to queue.
|
||||||
prev := *pod1
|
prev := *pod1
|
||||||
prev.OwnerReferences = []metav1.OwnerReference{*newControllerRef(job2)}
|
prev.OwnerReferences = []metav1.OwnerReference{*metav1.NewControllerRef(job2, controllerKind)}
|
||||||
bumpResourceVersion(pod1)
|
bumpResourceVersion(pod1)
|
||||||
jm.updatePod(&prev, pod1)
|
jm.updatePod(&prev, pod1)
|
||||||
if got, want := jm.queue.Len(), 2; got != want {
|
if got, want := jm.queue.Len(), 2; got != want {
|
||||||
|
@ -19,7 +19,6 @@ package job
|
|||||||
import (
|
import (
|
||||||
batch "k8s.io/api/batch/v1"
|
batch "k8s.io/api/batch/v1"
|
||||||
"k8s.io/api/core/v1"
|
"k8s.io/api/core/v1"
|
||||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
func IsJobFinished(j *batch.Job) bool {
|
func IsJobFinished(j *batch.Job) bool {
|
||||||
@ -30,16 +29,3 @@ func IsJobFinished(j *batch.Job) bool {
|
|||||||
}
|
}
|
||||||
return false
|
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,
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
@ -219,20 +219,6 @@ func allowsBurst(set *apps.StatefulSet) bool {
|
|||||||
return set.Spec.PodManagementPolicy == apps.ParallelPodManagement
|
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
|
// setPodRevision sets the revision of Pod to revision by adding the StatefulSetRevisionLabel
|
||||||
func setPodRevision(pod *v1.Pod, revision string) {
|
func setPodRevision(pod *v1.Pod, revision string) {
|
||||||
if pod.Labels == nil {
|
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.
|
// 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 {
|
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)
|
pod.Name = getPodName(set, ordinal)
|
||||||
updateIdentity(set, pod)
|
updateIdentity(set, pod)
|
||||||
updateStorage(set, pod)
|
updateStorage(set, pod)
|
||||||
|
Loading…
Reference in New Issue
Block a user