extension and runtime versioning: enable | disable commands #5
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR introduces breaking changes.
Previously, we would add extensions to the runtime via adding the images to
/var/lib/avocado/extensions. Extension image names would only contain the extension names. This is problematic with staging an update to move from one version set of extensions to another.This PR changes the behavior of how the runtime will determine what extensions are enabled.
/var/lib/avocado/extensionsis now an image repository of available extension images./var/lib/avocado/runtime/<os-release VERSION_ID>back to images in the images repo.VERSION_IDfrom/etc/os-releaseto determine which runtime folder to look in.avocadoctl enable [--runtime VERSION_ID] ext1 [ext(n)]to manage enabling extensions into a runtime. If runtime flag is omitted, the current os-release VERSION_ID is used. You can declare many extensions to enable. Writes to disk are made as atomically as possible.avocadoctl disable [--runtime VERSION_ID] [--all | ext1 ext(n)]to manage disabling extensions in a runtime.Using this version of avocadoctl will require a version of avocado cli with supported changes.