-
Notifications
You must be signed in to change notification settings - Fork 78
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
load cluster manifest and lock file #2334
Comments
I think this is a false problem. What is the problem we are really trying to solve (upstream of this issue?). I don't think we should be designing for a case where we have both files present. Or at least I don't see how this solves a customer problem and doesn't permit tech debt we should instead remove. |
@OisinKyne how would you handle the situation in which a user wants to load a cluster created in v0.16 in v0.17, assuming we only support either lock or manifest files? This is what we're trying to solve: supporting old cluster lock files on charon versions that support cluster manifest. An alternative might be writing a migration tool/command, but that opens a can of worms I don't think we should close. I believe we should support cluster lock files at some point, but we can live with this bit of tech debt right now. |
Another safety feature could be: If both legacy lock and manifest files are found, ensure that the cluster hashes match, ie, that the manifest contains that legacy lock. Else error with mismatching manifest and legacy lock found |
The functionality to load from both files would help us in slowly phasing out clusters with legacy lock files. Since we won't be building a migration tool to bump "legacy clusters" to "manifest clusters", this feature would help in easy migration:
|
|
Loads cluster either from `cluster manifest` or `legacy lock` file. If both files are provided, `cluster manifest` is read first. category: feature ticket: #2334
🎯 Problem to be solved
Currently, we have two files representing charon's config:
cluster-lock.json
: Legacy lock file (old)cluster-manifest.pb
: Mutable cluster manifest (new)We need a way to figure out what happens if both of these files are provided.
Proposed solution
Refactor the
manifest.Load
function to take 2 parameters,manifestFile
&legacyLockFile
:The following is the intended flow:
manifest
file first.legacyLockFile
🧪 Tests
👐 Additional acceptance criteria
None
❌ Out of Scope
None
The text was updated successfully, but these errors were encountered: