diff options
Diffstat (limited to 'cloud/pkg/devicecontroller/controller/downstream.go')
| -rw-r--r-- | cloud/pkg/devicecontroller/controller/downstream.go | 19 |
1 files changed, 10 insertions, 9 deletions
diff --git a/cloud/pkg/devicecontroller/controller/downstream.go b/cloud/pkg/devicecontroller/controller/downstream.go index f087fd567..20bc84ad1 100644 --- a/cloud/pkg/devicecontroller/controller/downstream.go +++ b/cloud/pkg/devicecontroller/controller/downstream.go @@ -39,6 +39,7 @@ import ( "github.com/kubeedge/kubeedge/cloud/pkg/devicecontroller/types" "github.com/kubeedge/kubeedge/pkg/apis/devices/v1beta1" crdinformers "github.com/kubeedge/kubeedge/pkg/client/informers/externalversions" + "github.com/kubeedge/kubeedge/pkg/util" ) // DownstreamController watch kubernetes api server and send change to edge @@ -80,21 +81,21 @@ func (dc *DownstreamController) syncDeviceModel() { // deviceModelAdded is function to process addition of new deviceModel in apiserver func (dc *DownstreamController) deviceModelAdded(deviceModel *v1beta1.DeviceModel) { // nothing to do when deviceModel added, only add in map - deviceModelID := manager.GetResourceID(deviceModel.Namespace, deviceModel.Name) + deviceModelID := util.GetResourceID(deviceModel.Namespace, deviceModel.Name) dc.deviceModelManager.DeviceModel.Store(deviceModelID, deviceModel) } // deviceModelUpdated is function to process updated deviceModel func (dc *DownstreamController) deviceModelUpdated(deviceModel *v1beta1.DeviceModel) { // nothing to do when deviceModel updated, only add in map - deviceModelID := manager.GetResourceID(deviceModel.Namespace, deviceModel.Name) + deviceModelID := util.GetResourceID(deviceModel.Namespace, deviceModel.Name) dc.deviceModelManager.DeviceModel.Store(deviceModelID, deviceModel) } // deviceModelDeleted is function to process deleted deviceModel func (dc *DownstreamController) deviceModelDeleted(deviceModel *v1beta1.DeviceModel) { // TODO: Need to use finalizer like method to delete all devices referring to this model. Need to come up with a design. - deviceModelID := manager.GetResourceID(deviceModel.Namespace, deviceModel.Name) + deviceModelID := util.GetResourceID(deviceModel.Namespace, deviceModel.Name) dc.deviceModelManager.DeviceModel.Delete(deviceModelID) } @@ -127,7 +128,7 @@ func (dc *DownstreamController) syncDevice() { // deviceAdded creates a device, adds in deviceManagers map, send a message to edge node if node selector is present. func (dc *DownstreamController) deviceAdded(device *v1beta1.Device) { - deviceID := manager.GetResourceID(device.Namespace, device.Name) + deviceID := util.GetResourceID(device.Namespace, device.Name) dc.deviceManager.Device.Store(deviceID, device) if device.Spec.NodeName != "" { edgeDevice := createDevice(device) @@ -163,7 +164,7 @@ func (dc *DownstreamController) deviceAdded(device *v1beta1.Device) { func createDevice(device *v1beta1.Device) types.Device { edgeDevice := types.Device{ // ID and name can be used as ID as we are using CRD and name(key in ETCD) will always be unique - ID: manager.GetResourceID(device.Namespace, device.Name), + ID: util.GetResourceID(device.Namespace, device.Name), Name: device.Name, } @@ -180,7 +181,7 @@ func isExistModel(deviceMap *sync.Map, device *v1beta1.Device) bool { var res bool targetNode := device.Spec.NodeName modelName := device.Spec.DeviceModelRef.Name - deviceID := manager.GetResourceID(device.Namespace, device.Name) + deviceID := util.GetResourceID(device.Namespace, device.Name) // To find another device in deviceMap that uses the same deviceModel with exclude current device deviceMap.Range(func(k, v interface{}) bool { if k == deviceID { @@ -207,7 +208,7 @@ func isExistModel(deviceMap *sync.Map, device *v1beta1.Device) bool { // If NodeName is updated, call add device for newNode, deleteDevice for old Node. // If Spec is updated, send update message to edge func (dc *DownstreamController) deviceUpdated(device *v1beta1.Device) { - deviceID := manager.GetResourceID(device.Namespace, device.Name) + deviceID := util.GetResourceID(device.Namespace, device.Name) value, ok := dc.deviceManager.Device.Load(deviceID) dc.deviceManager.Device.Store(deviceID, device) if ok { @@ -244,7 +245,7 @@ func isDeviceUpdated(oldTwin *v1beta1.Device, newTwin *v1beta1.Device) bool { // deviceDeleted send a deleted message to the edgeNode and deletes the device from the deviceManager.Device map func (dc *DownstreamController) deviceDeleted(device *v1beta1.Device) { - deviceID := manager.GetResourceID(device.Namespace, device.Name) + deviceID := util.GetResourceID(device.Namespace, device.Name) dc.deviceManager.Device.Delete(deviceID) if device.Spec.NodeName != "" { @@ -318,7 +319,7 @@ func (dc *DownstreamController) sendDeviceModelMsg(device *v1beta1.Device, opera if device == nil || device.Spec.DeviceModelRef == nil { return } - deviceModelID := manager.GetResourceID(device.Namespace, device.Spec.DeviceModelRef.Name) + deviceModelID := util.GetResourceID(device.Namespace, device.Spec.DeviceModelRef.Name) var edgeDeviceModel any var ok bool err := retry.Do( |
