mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-08-03 17:30:00 +00:00
Merge pull request #22213 from janetkuo/deployment-type-assert
Auto commit by PR queue bot
This commit is contained in:
commit
8d90b2a61b
@ -114,23 +114,10 @@ func NewDeploymentController(client clientset.Interface, resyncPeriod controller
|
|||||||
&extensions.Deployment{},
|
&extensions.Deployment{},
|
||||||
FullDeploymentResyncPeriod,
|
FullDeploymentResyncPeriod,
|
||||||
framework.ResourceEventHandlerFuncs{
|
framework.ResourceEventHandlerFuncs{
|
||||||
AddFunc: func(obj interface{}) {
|
AddFunc: dc.addDeploymentNotification,
|
||||||
d := obj.(*extensions.Deployment)
|
UpdateFunc: dc.updateDeploymentNotification,
|
||||||
glog.V(4).Infof("Adding deployment %s", d.Name)
|
|
||||||
dc.enqueueDeployment(d)
|
|
||||||
},
|
|
||||||
UpdateFunc: func(old, cur interface{}) {
|
|
||||||
oldD := old.(*extensions.Deployment)
|
|
||||||
glog.V(4).Infof("Updating deployment %s", oldD.Name)
|
|
||||||
// Resync on deployment object relist.
|
|
||||||
dc.enqueueDeployment(cur.(*extensions.Deployment))
|
|
||||||
},
|
|
||||||
// This will enter the sync loop and no-op, because the deployment has been deleted from the store.
|
// This will enter the sync loop and no-op, because the deployment has been deleted from the store.
|
||||||
DeleteFunc: func(obj interface{}) {
|
DeleteFunc: dc.deleteDeploymentNotification,
|
||||||
d := obj.(*extensions.Deployment)
|
|
||||||
glog.V(4).Infof("Deleting deployment %s", d.Name)
|
|
||||||
dc.enqueueDeployment(d)
|
|
||||||
},
|
|
||||||
},
|
},
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -190,6 +177,37 @@ func (dc *DeploymentController) Run(workers int, stopCh <-chan struct{}) {
|
|||||||
dc.queue.ShutDown()
|
dc.queue.ShutDown()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (dc *DeploymentController) addDeploymentNotification(obj interface{}) {
|
||||||
|
d := obj.(*extensions.Deployment)
|
||||||
|
glog.V(4).Infof("Adding deployment %s", d.Name)
|
||||||
|
dc.enqueueDeployment(d)
|
||||||
|
}
|
||||||
|
|
||||||
|
func (dc *DeploymentController) updateDeploymentNotification(old, cur interface{}) {
|
||||||
|
oldD := old.(*extensions.Deployment)
|
||||||
|
glog.V(4).Infof("Updating deployment %s", oldD.Name)
|
||||||
|
// Resync on deployment object relist.
|
||||||
|
dc.enqueueDeployment(cur.(*extensions.Deployment))
|
||||||
|
}
|
||||||
|
|
||||||
|
func (dc *DeploymentController) deleteDeploymentNotification(obj interface{}) {
|
||||||
|
d, ok := obj.(*extensions.Deployment)
|
||||||
|
if !ok {
|
||||||
|
tombstone, ok := obj.(cache.DeletedFinalStateUnknown)
|
||||||
|
if !ok {
|
||||||
|
glog.Errorf("Couldn't get object from tombstone %+v", obj)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
d, ok = tombstone.Obj.(*extensions.Deployment)
|
||||||
|
if !ok {
|
||||||
|
glog.Errorf("Tombstone contained object that is not a Deployment %+v", obj)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
}
|
||||||
|
glog.V(4).Infof("Deleting deployment %s", d.Name)
|
||||||
|
dc.enqueueDeployment(d)
|
||||||
|
}
|
||||||
|
|
||||||
// addReplicaSet enqueues the deployment that manages a ReplicaSet when the ReplicaSet is created.
|
// addReplicaSet enqueues the deployment that manages a ReplicaSet when the ReplicaSet is created.
|
||||||
func (dc *DeploymentController) addReplicaSet(obj interface{}) {
|
func (dc *DeploymentController) addReplicaSet(obj interface{}) {
|
||||||
rs := obj.(*extensions.ReplicaSet)
|
rs := obj.(*extensions.ReplicaSet)
|
||||||
|
Loading…
Reference in New Issue
Block a user