When conflicting top-level resources (either Namespaces or
ProtectedApplications, depending upon the scope) are encountered, this
will first trigger a delete of the conflicting resource AND ALL OF ITS
REFERENCED RESOURCES (e.g., all resources in the Namespace or all
resources referenced by the ProtectedApplication) before restoring the
resources from the Backup. This mode should only be used when you are
intending to revert some portion of a cluster to an earlier state.
FailOnConflict
If conflicting top-level resources (either Namespaces or
ProtectedApplications, depending upon the scope) are encountered at the
beginning of a restore process, the Restore will fail. If a conflict
occurs during the restore process itself (e.g., because an out of band
process creates conflicting resources), a conflict will be reported.
MergeReplaceOnConflict
This mode merges the backup and the target cluster and replaces the
conflicting resources with the ones in the backup. If a single resource
to restore exists in the cluster before restoration, the resource will be
replaced with the one from the backup. To replace an existing resource,
the first attempt is to update the resource to match the one from the
backup; if the update fails, the second attempt is to delete the resource
and restore it from the backup.
Note that this mode could cause data loss as it replaces the existing
resources in the target cluster, and the original PV can be retained or
deleted depending on its reclaim policy.
MergeReplaceVolumeOnConflict
This mode merges the backup and the target cluster and skips the
conflicting resources except volume data. If a PVC to restore already
exists, this mode will restore/reconnect the volume without overwriting
the PVC. It is similar to MERGE_SKIP_ON_CONFLICT except that it will
apply the volume data policy for the conflicting PVCs:
RESTORE_VOLUME_DATA_FROM_BACKUP: restore data only and respect the
reclaim policy of the original PV;
REUSE_VOLUME_HANDLE_FROM_BACKUP: reconnect and respect the reclaim
policy of the original PV;
NO_VOLUME_DATA_RESTORATION: new provision and respect the reclaim
policy of the original PV.
Note that this mode could cause data loss as the original PV can be
retained or deleted depending on its reclaim policy.
MergeSkipOnConflict
This mode merges the backup and the target cluster and skips the
conflicting resources. If a single resource to restore exists in the
cluster before restoration, the resource will be skipped, otherwise it
will be restored.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-07 UTC."],[[["\u003cp\u003eThis documentation covers the \u003ccode\u003eRestoreConfig.Types.NamespacedResourceRestoreMode\u003c/code\u003e enum from the Google Cloud GKE Backup v1 API, outlining how to manage conflicts when restoring resources.\u003c/p\u003e\n"],["\u003cp\u003eThe latest version documented is 2.6.0, with previous versions including 2.5.0, 2.4.0, 2.3.0, 2.2.0, 2.1.0, 2.0.0, and 1.0.0-beta01 also available.\u003c/p\u003e\n"],["\u003cp\u003eThe enum defines six modes for handling existing namespaced resources during a restore: \u003ccode\u003eDeleteAndRestore\u003c/code\u003e, \u003ccode\u003eFailOnConflict\u003c/code\u003e, \u003ccode\u003eMergeReplaceOnConflict\u003c/code\u003e, \u003ccode\u003eMergeReplaceVolumeOnConflict\u003c/code\u003e, \u003ccode\u003eMergeSkipOnConflict\u003c/code\u003e, and \u003ccode\u003eUnspecified\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eEach of these modes is described in detail, explaining their unique behaviors for dealing with conflicting resources, such as deleting and restoring, failing the restore, merging and replacing, merging and skipping, and merging while replacing volume data.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eMergeReplaceVolumeOnConflict\u003c/code\u003e mode is particularly useful for handling PersistentVolumeClaims (PVCs) as it can restore/reconnect volumes without overwriting the PVCs.\u003c/p\u003e\n"]]],[],null,[]]