mirror of https://github.com/k3s-io/k3s
Merge pull request #67929 from charrywanganthony/label_dryrun
fix the output of dryrun when label the same value as originalpull/58/head
commit
1886e09041
|
@ -252,18 +252,25 @@ func (o *LabelOptions) RunLabel() error {
|
|||
}
|
||||
|
||||
var outputObj runtime.Object
|
||||
dataChangeMsg := "not labeled"
|
||||
var dataChangeMsg string
|
||||
obj := info.Object
|
||||
oldData, err := json.Marshal(obj)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if o.dryrun || o.local || o.list {
|
||||
err = labelFunc(info.Object, o.overwrite, o.resourceVersion, o.newLabels, o.removeLabels)
|
||||
err = labelFunc(obj, o.overwrite, o.resourceVersion, o.newLabels, o.removeLabels)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
dataChangeMsg = "labeled"
|
||||
newObj, err := json.Marshal(obj)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
dataChangeMsg = updateDataChangeMsg(oldData, newObj)
|
||||
outputObj = info.Object
|
||||
} else {
|
||||
obj := info.Object
|
||||
name, namespace := info.Name, info.Namespace
|
||||
oldData, err := json.Marshal(obj)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
@ -283,14 +290,12 @@ func (o *LabelOptions) RunLabel() error {
|
|||
if err := o.Recorder.Record(obj); err != nil {
|
||||
glog.V(4).Infof("error recording current command: %v", err)
|
||||
}
|
||||
newData, err := json.Marshal(obj)
|
||||
newObj, err := json.Marshal(obj)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if !reflect.DeepEqual(oldData, newData) {
|
||||
dataChangeMsg = "labeled"
|
||||
}
|
||||
patchBytes, err := jsonpatch.CreateMergePatch(oldData, newData)
|
||||
dataChangeMsg = updateDataChangeMsg(oldData, newObj)
|
||||
patchBytes, err := jsonpatch.CreateMergePatch(oldData, newObj)
|
||||
createdPatch := err == nil
|
||||
if err != nil {
|
||||
glog.V(2).Infof("couldn't compute patch: %v", err)
|
||||
|
@ -344,6 +349,14 @@ func (o *LabelOptions) RunLabel() error {
|
|||
})
|
||||
}
|
||||
|
||||
func updateDataChangeMsg(oldObj []byte, newObj []byte) string {
|
||||
msg := "not labeled"
|
||||
if !reflect.DeepEqual(oldObj, newObj) {
|
||||
msg = "labeled"
|
||||
}
|
||||
return msg
|
||||
}
|
||||
|
||||
func validateNoOverwrites(accessor metav1.Object, labels map[string]string) error {
|
||||
allErrs := []error{}
|
||||
for key := range labels {
|
||||
|
|
Loading…
Reference in New Issue