-
Notifications
You must be signed in to change notification settings - Fork 122
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
Implement ASDF as a manager object #1845
Conversation
ASDF also supports |
I use asdf on my personal machine so can try this later. |
It should. We're invoking the
Awesome! Please report back if everything is working. |
0afe9f6
to
ba2f65d
Compare
ba2f65d
to
0c56c7a
Compare
0c56c7a
to
b7d1673
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🎩 successful on my personal machine with asdf
.
Motivation
Migrate ASDF to the manager object implementation. This is the last version manager to migrate.
The only parts left of the Ruby activation restructuring is handling no version manager, custom Ruby activation and allowing manual selection of the Ruby installation.
Implementation
ASDF activation is similar to Rbenv. The main difference is that the
asdf.sh
file is not an executable and can only be sourced to allow invokingasdf
.In addition to that, the asdf documentation lists a number of different installation alternatives, all of which end up with the
asdf.sh
script in a different file path. I listed all possible paths described in the docs and we search for the script in those paths.Then we source the script and use
asdf exec ruby
to run the activation script in the context of the activated Ruby. Like Rbenv, ASDF doesn't setGEM_HOME
orGEM_PATH
so we need to do that ourselves.I tested this manually on a Spin instance where I installed ASDF.
Automated Tests
Added a test.
Manual Tests
.tools-version
file