Open mlavi opened 3 months ago
What we can do about it is to deprecate the restic-specific functions and create new kopia-specific functions for backup compatibility.
Draft implementation using kopia repository server can be found here: https://github.com/kanisterio/kanister/pull/2143
Can we imagine a workflow that include snapshot + export, because the replacement you propose still require a sidecar correct ? We can imagine doing that in 5 steps
But that would make sense to create a function for doing the 5 altogether, it would take 3 arguments
arg | role | example | ||
---|---|---|---|---|
pvcName | The pvc we want to export | my-pvc | ||
snapshotClass | The snapshot class to use to take the snapshot | ebs-snapclass | ||
kopiaRepoPassword | The kopia repository password | myUn6ue$$ablepwd |
And would output the kopia identifier
That would bring a lot to the blueprint author
because the replacement you propose still require a sidecar correct
CopyVolumeData
and CopyVolumeDataUsingKopiaServer
create a new pod with PVC mounted to it, so that's not a sidecar. Or do you mean something else?
But that would make sense to create a function for doing the 5 altogether
That's an interesting question, a function which should do multiple stages sounds a lot like a blueprint. Composability of blueprints is a challenge of course.
What it looks to me is following steps:
In discussion with @michaelcourcy today, he noted that the Kanister CopyVolumeData function exists, but it appears to be Restic specific.
Can we use this function with Kopia and without a Kanister sidecar? Operators cannot implement the sidecar pattern.