pipenv の yum -y 的なオプション

pipenv で使用する Python のバージョンを指定していて、その Python が見つからない場合 pyenv を通してインストールしてくれるが、プロンプトでインストールするか訊いてくるため、Ansible の shell モジュールを用いて pipenv install コマンドを実行する時に止まってしまう。

$ pipenv install
Warning: Python 3.6 was not found on your system…
Would you like us to install CPython 3.6.8 with pyenv? [Y/n]: 

yum install -y のように勝手に YES と答えてくれるオプションはないものかと探してみたところ、 PIPENV_YES という環境変数がそれに該当することが分かった。

$ PIPENV_YES=1 /usr/local/bin/pipenv install
Warning: Python 3.6 was not found on your system…
Installing CPython 3.6.8 with pyenv (this may take a few minutes)…
⠹ Installing python...

しかし何故か Ansible Playbook にこの環境変数をセットしてもうまく動作しなかった…

Last updated on March 4, 2019