From 7562990df94a17de5f61015d1343752d808e9ad4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C5=81ukasz=20R=C3=B3=C5=BCok?= Date: Mon, 19 Aug 2019 12:04:11 +0200 Subject: [PATCH] Remove ES version hold on Debian when `es_version_hold: false` --- tasks/elasticsearch-Debian-version-lock.yml | 6 ----- tasks/elasticsearch-Debian.yml | 28 +++++++++++++++++++-- 2 files changed, 26 insertions(+), 8 deletions(-) delete mode 100644 tasks/elasticsearch-Debian-version-lock.yml diff --git a/tasks/elasticsearch-Debian-version-lock.yml b/tasks/elasticsearch-Debian-version-lock.yml deleted file mode 100644 index 6d52493..0000000 --- a/tasks/elasticsearch-Debian-version-lock.yml +++ /dev/null @@ -1,6 +0,0 @@ ---- -- name: Debian - hold elasticsearch version - become: yes - dpkg_selections: - name: "{{ es_package_name }}" - selection: "hold" diff --git a/tasks/elasticsearch-Debian.yml b/tasks/elasticsearch-Debian.yml index 8e01fd9..4f6844b 100644 --- a/tasks/elasticsearch-Debian.yml +++ b/tasks/elasticsearch-Debian.yml @@ -17,6 +17,13 @@ changed_when: False check_mode: no + - name: unhold elasticsearch package when switching to a different package type + become: yes + dpkg_selections: + name: "{{ es_other_package_name }}" + selection: "install" + when: elasticsearch_package.stdout == 'install ok installed' + - name: stop elasticsearch service: name: 'elasticsearch' @@ -59,6 +66,20 @@ when: (es_user_id is defined) and (es_group_id is defined) include: elasticsearch-optional-user.yml +- name: Debian - Get installed elasticsearch version + command: dpkg-query --showformat='${Version}' --show {{ es_package_name }} + register: installed_es_version + failed_when: False + changed_when: False + check_mode: no + +- name: Debian - unhold elasticsearch version + become: yes + dpkg_selections: + name: "{{ es_package_name }}" + selection: "install" + when: not es_version_lock or (installed_es_version.stdout and installed_es_version.stdout != es_version) + - name: Debian - Ensure elasticsearch is installed become: yes apt: @@ -73,8 +94,11 @@ environment: ES_PATH_CONF: "/etc/elasticsearch" -- name: Debian - Include versionlock - include: elasticsearch-Debian-version-lock.yml +- name: Debian - hold elasticsearch version + become: yes + dpkg_selections: + name: "{{ es_package_name }}" + selection: "hold" when: es_version_lock - name: Debian - Download elasticsearch from url