ansible-role-zookeeper/tasks/zookeeper_install.yml

46 lines
1.5 KiB
YAML

---
# Copyright 2022 City Network International AB
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
- name: Install zookeeper requirements
package:
name: "{{ zookeeper_package_requirements }}"
state: "{{ zookeeper_package_state }}"
register: install_packages
until: install_packages is success
retries: 5
delay: 2
notify: Restart zookeeper
- name: Download zookeeper binaries
get_url:
url: "{{ zookeeper_download_url }}"
dest: "/opt/{{ zookeeper_download_url | basename }}"
checksum: "{{ zookeeper_download_version_checksum }}"
register: zookeeper_download
- name: Unarchive downloaded zookeeper
unarchive:
dest: "/opt/zookeeper-{{ zookeeper_download_version }}"
src: "/opt/{{ zookeeper_download_url | basename }}"
remote_src: yes
owner: "{{ zookeeper_system_user_name }}"
group: "{{ zookeeper_system_group_name }}"
extra_opts:
- --strip-components=1
when: zookeeper_download is changed or zookeeper_force_unarchive | default(False)
notify:
- Symlink zookeeper
- Restart zookeeper