Finally I hardcoded in the file /etc/ansible/roles/os_nova/tasks/nova_install.yml
----
- name: Install the python venv
import_role:
name: "python_venv_build"
vars:
venv_python_executable: "{{ nova_venv_python_executable }}"
venv_build_constraints: "{{ nova_git_constraints }}"
venv_build_distro_package_list: "{{ nova_devel_distro_packages }}"
venv_install_destination_path: "{{ nova_bin | dirname }}"
venv_pip_install_args: "{{ nova_pip_install_args }}"
venv_packages_to_symlink: >-
{{ (nova_services['nova-compute']['group'] in group_names and nova_virt_type != 'ironic') | ternary(nova_compute_kvm_packages_to_symlink, []) }}
venv_pip_packages: "{{ nova_venv_packages }}"
venv_facts_when_changed:
- section: "nova"
option: "need_service_restart"
value: "True"
- section: "nova"
option: "need_online_data_migrations"
value: "False"
- section: "nova"
option: "venv_tag"
value: "{{ nova_venv_tag }}"
when: nova_install_method == 'source'
- name: Record local facts for distro path
when: nova_install_method == 'distro'
block:
- name: Record the osa version deployed
ini_file:
dest: "/etc/ansible/facts.d/openstack_ansible.fact"
section: nova
option: venv_tag
value: "{{ nova_venv_tag }}"
mode: "0644"
- name: Initialise the upgrade facts
ini_file:
dest: "/etc/ansible/facts.d/openstack_ansible.fact"
section: nova
option: "{{
item.name }}"
value: "{{ item.state }}"
mode: "0644"
with_items:
- name: "need_service_restart"
state: "True"
- name: "need_online_data_migrations"
state: "False"
when:
- (install_packages is changed) or
(ansible_local is not defined) or
('openstack_ansible' not in ansible_local) or
('nova' not in ansible_local['openstack_ansible']) or
('need_online_data_migrations' not in ansible_local['openstack_ansible']['nova']) or
('need_service_restart' not in ansible_local['openstack_ansible']['nova'])
----------
how to override it without hardcoding it ?