diff --git a/tasks/elasticsearch-RedHat-version-lock.yml b/tasks/elasticsearch-RedHat-version-lock.yml index 94059e3..e0f1569 100644 --- a/tasks/elasticsearch-RedHat-version-lock.yml +++ b/tasks/elasticsearch-RedHat-version-lock.yml @@ -2,6 +2,35 @@ - name: RedHat - install yum-version-lock become: yes yum: name=yum-plugin-versionlock state=present update_cache=yes + +- name: RedHat - check if requested elasticsearch version lock exists + become: yes + shell: yum versionlock list | grep -c {{es_package_name}}-{{es_version}} + register: es_requested_version_locked + args: + warn: false + failed_when: False + changed_when: False + - name: RedHat - lock elasticsearch version become: yes - shell: yum versionlock delete 0:elasticsearch* ; yum versionlock add {{ es_package_name }}{% if es_version is defined and es_version != "" %}-{{ es_version }}{% endif %} + shell: yum versionlock delete 0:elasticsearch* ; yum versionlock add {{ es_package_name }}-{{ es_version }} + args: + warn: false + when: es_version_lock and es_requested_version_locked.stdout|int == 0 + +- name: RedHat - check if any elasticsearch version lock exists + become: yes + shell: yum versionlock list | grep -c elasticsearch + register: es_version_locked + args: + warn: false + failed_when: False + changed_when: False + +- name: RedHat - unlock elasticsearch version + become: yes + shell: yum versionlock delete 0:elasticsearch* + args: + warn: false + when: not es_version_lock and es_version_locked.stdout|int > 0 diff --git a/tasks/elasticsearch-RedHat.yml b/tasks/elasticsearch-RedHat.yml index 2b5c044..1208b1c 100644 --- a/tasks/elasticsearch-RedHat.yml +++ b/tasks/elasticsearch-RedHat.yml @@ -27,7 +27,6 @@ - name: RedHat - include versionlock include: elasticsearch-RedHat-version-lock.yml - when: es_version_lock - name: RedHat - Remove the other elasticsearch package if switching between OSS and standard become: yes