Merge pull request #7585 from Lyndon-Li/issue-fix-7535

Issue fix 7535
This commit is contained in:
lyndon-li
2024-03-29 10:48:48 +08:00
committed by GitHub
2 changed files with 3 additions and 2 deletions

View File

@@ -0,0 +1 @@
Fix issue #7535, add the MustHave resource check during item collection and item filter for restore

View File

@@ -1122,7 +1122,7 @@ func (ctx *restoreContext) restoreItem(obj *unstructured.Unstructured, groupReso
// Check if group/resource should be restored. We need to do this here since
// this method may be getting called for an additional item which is a group/resource
// that's excluded.
if !ctx.resourceIncludesExcludes.ShouldInclude(groupResource.String()) {
if !ctx.resourceIncludesExcludes.ShouldInclude(groupResource.String()) && !ctx.resourceMustHave.Has(groupResource.String()) {
restoreLogger.Info("Not restoring item because resource is excluded")
return warnings, errs, itemExists
}
@@ -2202,7 +2202,7 @@ func (ctx *restoreContext) getOrderedResourceCollection(
// Check if the resource should be restored according to the resource
// includes/excludes.
if !ctx.resourceIncludesExcludes.ShouldInclude(groupResource.String()) {
if !ctx.resourceIncludesExcludes.ShouldInclude(groupResource.String()) && !ctx.resourceMustHave.Has(groupResource.String()) {
ctx.log.WithField("resource", groupResource.String()).Infof("Skipping restore of resource because the restore spec excludes it")
continue
}