func()

in pkg/fsnotify/fsnotify.go [85:116]


func (fs *fsWatchProvider) SyncSecrets() (bool, error) {
	fs.Lock()
	defer fs.Unlock()

	existingState, err := fs.secretPersistence.Load()
	if err != nil {
		klog.Errorf("failed to load Kubernetes secret due to %v", err)
		return false, nil
	}

	newState, err := fs.fsPersistence.Load()
	if err != nil {
		klog.Errorf("failed to load agent's local file due to %v", err)
		return false, nil
	}

	if existingState[state.FileRegistrationKey] == newState[state.FileRegistrationKey] {
		// if K8s secrets and file content are same then don't perform any operation
		klog.Infof("Skip updating k8s secrets since key-pair did not change.")
		return true, nil
	}

	mergeState(existingState, newState)

	if err = fs.secretPersistence.Save(newState); err != nil {
		klog.Errorf("failed to save secret due to %v", err)
		return false, nil
	}
	klog.Infof("Updated kubernetes secrets with new key-pair")

	return true, nil
}