まえがき
複数のプロジェクト開発を担当していると、プロジェクトごとにさまざまな設定を管理しないといけない。
たとえばプロジェクトごとに aws アカウントが異なる場合は、 profile を作っておいて aws コマンドを実行するときに profile オプションを付ける必要がある。しかし、プロジェクト数が多くなってくると、profile 名何だっけ?となることがある。
他にもdbの接続情報などをプロジェクトごとに使い分けたかったりする。
direnv
direnv というツールを使うとディレクトリごとに環境変数を管理できるらしい。.envrc というファイルを作って環境変数を定義すると、そのディレクトリの中でのみ有効になる。
例として、projectX と projectY というディレクリを作って設定をしてみる。
$ mkdir projectX $ cd projectX $ echo "export MY_PWD=hogehoge" >.envrc $ direnv allow $ mkdir projectY $ cd projectY $ echo "export MY_PWD=fugafuga" >.envrc $ direnv allow
ディレクトリごとに環境変数が切り替わっていることを確認してみる。
$ cd projectX $ echo $MY_PWD hogehoge $ cd projectY $ echo $MY_PWD fugafuga
これは便利!
0 件のコメント:
コメントを投稿