MCPcopy Index your code
hub / github.com/databus23/helm-diff / checkOwnership

Function checkOwnership

cmd/upgrade.go:375–417  ·  view source on GitHub ↗
(d *diffCmd, resources kube.ResourceList, currentSpecs map[string]*manifest.MappingResult)

Source from the content-addressed store, hash-verified

373}
374
375func checkOwnership(d *diffCmd, resources kube.ResourceList, currentSpecs map[string]*manifest.MappingResult) (map[string]diff.OwnershipDiff, error) {
376 newOwnedReleases := make(map[string]diff.OwnershipDiff)
377 err := resources.Visit(func(info *resource.Info, err error) error {
378 if err != nil {
379 return err
380 }
381
382 helper := resource.NewHelper(info.Client, info.Mapping)
383 currentObj, err := helper.Get(info.Namespace, info.Name)
384 if err != nil {
385 if !apierrors.IsNotFound(err) {
386 return err
387 }
388 return nil
389 }
390
391 var result *manifest.MappingResult
392 var oldRelease string
393 if d.includeTests {
394 result, oldRelease, err = manifest.ParseObject(currentObj, d.namespace)
395 } else {
396 result, oldRelease, err = manifest.ParseObject(currentObj, d.namespace, manifest.Helm3TestHook, manifest.Helm2TestSuccessHook)
397 }
398
399 if err != nil {
400 return err
401 }
402
403 newRelease := d.namespace + "/" + d.release
404 if oldRelease == newRelease {
405 return nil
406 }
407
408 newOwnedReleases[result.Name] = diff.OwnershipDiff{
409 OldRelease: oldRelease,
410 NewRelease: newRelease,
411 }
412 currentSpecs[result.Name] = result
413
414 return nil
415 })
416 return newOwnedReleases, err
417}
418
419func prepareEnvSettings(kubeContext string) *cli.EnvSettings {
420 localEnv := cli.New()

Callers 1

runHelm3Method · 0.85

Calls 1

ParseObjectFunction · 0.92

Tested by

no test coverage detected