Open exequielrafaela opened 1 year ago
Keep in mind the following cases and items:
kubectl
exist?)@diego-ojeda-binbash consider including the compatibility information in every release. We'll start with this practice in the next one. Appart from that we must update the doc here => https://leverage.binbash.co/work-with-us/releases/versions-compatibility-matrix/ to starting referencing to the release notes (https://github.com/binbashar/leverage/releases/tag/untagged-c0fd0d46dfd8353efc6c). We'll add a section Version Compatibility (Leverage CLI / Leverage Toolbox / Leverage Ref Arch)
And just for reference this how the release looks (still a draft at the moment of writing this):
Manual updates get overwritten by the Release Drafter action. Instead we are modifying the Release Drafter template to add a footer with a reminder so that publishers of the release drafts can have a chance to manually add the Version Compatibility section.
Describe the Feature
✅ As a user of the leverage command line interface, I would like to request a feature that would allow for automatic management of version and dependencies.
✅ This feature would greatly improve the reliability and ease of use of the command line interface. It would also help to ensure that users are always using the most up-to-date and stable versions of the compatible toolbox, which would ultimately lead to fewer issues and support requests.
Expected Behavior
The
leverage
CLI (Command Line Interface) should have a range restricting and controlling which versions of the toolbox can be used based on a clear compatibility matrix backed by automated tests. Let's say, it would be like centralizing the responsibility and logic of the compatibility matrix in one point, the CLI.Any
leverage
cli command will be able to run even if thebuild.env
file does not contains a definition for the https://github.com/binbashar/le-docker-leverage-toolbox⚔️
TERRAFORM_IMAGE_TAG=1.2.7-0.0.5Use Case
An example use case for this feature would be a user who is working on a project that requires version
1.9.2
of theleverage cli
andTERRAFORM_IMAGE_TAG=1.3.5-0.1.0
of the toolbox. However, the user has installed cli1.9.2
but has an older toolbox docker image versionTERRAFORM_IMAGE_TAG=1.2.7-0.0.1
. Without an automated compatibility internal check, the user would need to manually check and ensure compatibility between the different versions in the doc. This process can be time-consuming and error-prone.With the proposed feature, the user would simply be able to install the latest cli version and the compatibility check will be automatic, which would clearly state that version x.y.z of the toolbox is incompatible with version a.b.c of the cli. This would save the user valuable time and prevent potential errors or compatibility issues. Additionally, the user would be able to use the command line interface to automatically manage the versions and dependencies, ensuring that the correct versions are used for the project.
Describe Ideal Solution
Please review this definition with
Additional Context