ASDF

Page content

pyenv, nodenv, rbenv, tfenv など個別に入れなくても良くなる開発言語のバージョン管理ツール。開発言語以外に terraform, kubectl などCLIツール系のバージョン管理もできる。anyenv より評判良い。 asdf ってキーボードの打ち心地が良いよね。

概要は https://blog.serverworks.co.jp/asdf で紹介されてたり。

インストール

https://asdf-vm.com/guide/getting-started.html で公式に沿ってインストール

  1. brew install asdf
  2. .zshrc などにシェル起動時に読み込んでほしいプログラムを記載
  3. 言語のインストールを支援する plugin を追加
  4. その言語の好きなバージョンをインストール。
  5. .tool-versions 以外のバージョンファイルをカバーしたければ ~/.asdfrc に設定追加
  6. asdf current で今管理されているもの把握

python 環境構築例

# Pythonのプラグインを追加する
$ asdf plugin-add python

# インストールできるPythonを一覧で表示する
# 念の為の確認なので必要であればgrepで絞ってください
$ asdf list-all python

# 一覧にあることを確認し、Pythonをインストールする
# ◯.◯.◯ の部分は任意で指定してください。
$ asdf install python ◯.◯.◯

# 指定したバージョンのPythonがインストールされたことを確認する
$ asdf list python

# グローバルで使用するPythonのバージョンを指定する
# ◯.◯.◯をインストールしたバージョンと一致させてください
$ asdf global python ◯.◯.◯

# auto reshimがうまくいかないissueがあったので念の為
# 手動でシンボリックリンクを設定する(貼り直す)
$ asdf reshim python

# インストール、設定したPythonが表示されるか確認する
$ python -V

# pipenvが必要な人は別途以下のコマンドを活用して入れてください
# おまけ程度の記述なので不安な方は実行前にコマンドを調べてください
$ pip install --upgrade pip
$ pip install pipenv
$ asdf reshim python
$ pipenv --version
$ asdf which pipenv