-
Notifications
You must be signed in to change notification settings - Fork 41
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
Automatic runtime install of tools #101
Comments
I think for this we need a higher language to make this more easy. I suggest to use |
@rarkins Do we still like to do this? When such a wrapper is called and a version is passed via env, use that version. |
Yes, we need this for other products at Mend. Except we also want it to do it's own auto detection too, for the tools which don't have the smarts like Renovate |
ok, detecting tool version from current dir (until repo root) will be tricky. so i'm sure it's nothing we should try to do in bash scripts. |
My plan is to do it first using TS so that we can reuse renovate's datasource lookup logic. It can be compiled to a binary using pkg. After that porting to Go is a nice to have. I don't think this forces the current code to be rewritten in the same time frame and can remain as bash |
sounds good. |
Can it be unset before we call to pipenv? |
maybe, not working on it now. |
An even more advanced approach here would be that we create our own tools directory in
$PATH
, e.g. containingnode
,poetry
,gradle
, etc. But each is in fact a wrapper/stub and its purpose is to dynamically install the required tool + language and then pass the same parameters to the tool itself after it's installed.e.g. the application like Renovate will simply call
poetry
via child process, which then kicks off:python
if missing (According toPYTHON_VERSION
)poetry
poetry
and passes all args to itDepends on
The text was updated successfully, but these errors were encountered: