Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion tasks/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -123,7 +123,7 @@
become: true
become_user: "{{ odoo_role_odoo_user }}"
shell: "cd {{ odoo_role_odoo_path }} && {{ odoo_role_odoo_python_path }} setup.py install"
when: odoo_role_desired_tar_download.changed or odoo_role_desired_git_download.changed
when: odoo_role_desired_tar_download.changed or odoo_role_desired_git_download.changed or (python_version_changed is defined and python_version_changed.changed)

- name: Populate community db modules
set_fact:
Expand Down
25 changes: 23 additions & 2 deletions tasks/pyenv.yml
Original file line number Diff line number Diff line change
Expand Up @@ -75,17 +75,38 @@
become_user: "{{ odoo_role_odoo_user }}"
shell: . /home/{{ odoo_role_odoo_user }}/pyenv/.pyenvrc && pyenv update

- name: "Check if virtual environment exists"
become: true
become_user: "{{ odoo_role_odoo_user }}"
stat:
path: "/home/{{ odoo_role_odoo_user }}/pyenv/versions/{{ odoo_role_venv_name }}/bin/python"
register: venv_python

- name: "Check Python version in virtual environment"
become: true
become_user: "{{ odoo_role_odoo_user }}"
shell: "/home/{{ odoo_role_odoo_user }}/pyenv/versions/{{ odoo_role_venv_name }}/bin/python --version"
register: python_version
when: venv_python.stat.exists

- name: "Delete existing virtual environment with different Python version"
become: true
become_user: "{{ odoo_role_odoo_user }}"
shell: ". /home/{{ odoo_role_odoo_user }}/pyenv/.pyenvrc && pyenv virtualenv-delete -f {{ odoo_role_venv_name }}"
register: python_version_changed
when: venv_python.stat.exists and (python_version.stdout.split()[1] != odoo_role_python_version)

- name: "Install Python interpreter {{ odoo_role_python_version }}"
become: true
become_user: "{{ odoo_role_odoo_user }}"
shell: . /home/{{ odoo_role_odoo_user }}/pyenv/.pyenvrc && pyenv install {{ odoo_role_python_version }}
shell: ". /home/{{ odoo_role_odoo_user }}/pyenv/.pyenvrc && pyenv install {{ odoo_role_python_version }}"
args:
creates: "/home/{{ odoo_role_odoo_user }}/pyenv/versions/{{ odoo_role_python_version }}/bin/python"

- name: "Create virtual environment {{ odoo_role_venv_name }}"
become: true
become_user: "{{ odoo_role_odoo_user }}"
shell: . /home/{{ odoo_role_odoo_user }}/pyenv/.pyenvrc && pyenv virtualenv {{ odoo_role_python_version }} {{ odoo_role_venv_name }}
shell: ". /home/{{ odoo_role_odoo_user }}/pyenv/.pyenvrc && pyenv virtualenv {{ odoo_role_python_version }} {{ odoo_role_venv_name }}"
args:
creates: "/home/{{ odoo_role_odoo_user }}/pyenv/versions/{{ odoo_role_venv_name }}/bin/python"

Expand Down