-
Notifications
You must be signed in to change notification settings - Fork 24
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
Support for global tools #47
Comments
Once this story is implemented, we can discuss what global tools we could add to IDEasy:
|
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
We have implemented a lot of cross-cutting logic for tool installations in
ToolCommandlet
.However, we have tools like
Docker
that behave very differently: Those are tools that get installed globally, that is:IDE_HOME/software
but somewhere globally into the system (e.g.C:\ProgramFiles
on Windows or/Applications
on MacOS).isExtract()
method) and actuallyinstallInRepo
does not really make sense here.We should discuss and decide the following design options:
ToolCommandlet
more generic, add aprotected
methodisGlobalInstallation()
that returnsfalse
by default that can be overridden by global commandlets likedocker
.GlobalToolCommandlet
andLocalToolCommandlet
derived fromToolCommandlet
and make all existingToolCommandlet
s derive fromLocalToolCommandlet
. Then move logic likeinstallInRepo
method intoLocalToolCommandlet
and also for some other methods likeinstall(...)
but keep an abstract signature for the latter inToolCommandlet
. Then implement theinstall(...)
methods inGlobalToolCommandlet
.The text was updated successfully, but these errors were encountered: