I use Ansible to automated my development machines. Due to limitations imposed by Linux distributions, I am currently using dotnet-install to install specific SDKs and runtimes. This comes with some significant downsides; namely, there is no uninstallation and/or upgrade scenarios supported by dotnet-install. dnvm seems like a natural fit.
However, I cannot automated dnvm as it stands today because it mandates interactivity. To make the switch, I would require non-interactive invocations:
Ability to install the tool (don't prompt me for anything, ideally just give me a fixed URL to grab the latest dnvm binary to drop into a ~/bin folder)
Ability to install an SDK
Ability to install a runtime
Use exit code 0 to indicate success, and non-0 to indicate failure
I would of course use dnvm in its interactive mode to perform upgrades as necessary (in much the same way I use Ansible to get software initially installed when building the dev environment, but rely on apt update && apt upgrade to keep it up to date).
Non-requirements:
Machine parseable output is not required for my usage, though other users who wanted to write something like an Ansible module might eventually want the ability to do queries and operations and retrieve output that is formatted for machine consumption, like JSON. (To be clear: machine parseable output would be fine for my usage, so long as it's easy to read by the human 😄)
I use Ansible to automated my development machines. Due to limitations imposed by Linux distributions, I am currently using
dotnet-install
to install specific SDKs and runtimes. This comes with some significant downsides; namely, there is no uninstallation and/or upgrade scenarios supported bydotnet-install
.dnvm
seems like a natural fit.However, I cannot automated
dnvm
as it stands today because it mandates interactivity. To make the switch, I would require non-interactive invocations:dnvm
binary to drop into a~/bin
folder)I would of course use
dnvm
in its interactive mode to perform upgrades as necessary (in much the same way I use Ansible to get software initially installed when building the dev environment, but rely onapt update && apt upgrade
to keep it up to date).Non-requirements: