Ansibleを使い、pyenvからPythonをインストールしpipモジュールを使う方法
VagrantからAnsibleスクリプトを呼び出し、
pyenvを利用してPythonを構築しし、最終的にDjangoをインストールするスクリプトを実現したいのですが、
下記のスクリプトを使用したところ
- name: 指定バージョンのPythonをインストールする
shell: bash -lc "pyenv install {{ python_version }}"
become: false
- name: 作業用ディレクトリに指定バージョンを反映する
shell: bash -lc "pyenv local {{ python_version }}"
args:
chdir: "{{ work_dir }}"
become: false
- name: pipアップグレード
shell: bash -lc "pip install --upgrade pip"
args:
chdir: "{{ work_dir }}"
become: false
- name: install django
pip:
name: django
chdir: "{{ work_dir }}"
version: "{{ django_version }}"
executable: pip
become: false
下記のエラーが出ました。pipモジュールがないとのことだったのですが、
vagrant ssh でゲストOSにログインするとpipコマンドは無事見つかりました。
pyenvからpythonを構築し、その影響下にあるpipをAnsibleから呼び出すことは可能でしょうか。
ご教授いただければ幸いです。
TASK [django : install django] *************************************************
fatal: [127.0.0.1]: FAILED! => {"changed": false, "failed": true, "msg": "Unable to find any of pip to use. pip needs to be installed."}
to retry, use: --limit @/vagrant/playbooks/main.retry