fix(valkey): install systemd unit in proper dir; check local and git versions to avoid unnecessary recompiles
This commit is contained in:
parent
2c68a0c168
commit
1d2983c369
3 changed files with 19 additions and 3 deletions
|
@ -11,8 +11,8 @@ valkey_generate_cert: true # if set to false you must override valkey_tls_{certf
|
||||||
valkey_enable_unixsocket: false
|
valkey_enable_unixsocket: false
|
||||||
|
|
||||||
# TLS configuration
|
# TLS configuration
|
||||||
valkey_tls_certfile: ~
|
valkey_tls_certfile: /etc/valkey/valkey.crt
|
||||||
valkey_tls_keyfile: ~
|
valkey_tls_keyfile: /etc/valkey/valkey.key
|
||||||
valkey_tls_keyfile_pass: ~
|
valkey_tls_keyfile_pass: ~
|
||||||
|
|
||||||
# Connection configuration
|
# Connection configuration
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
---
|
---
|
||||||
- name: find systemd unit directory
|
- name: find systemd unit directory
|
||||||
become: true
|
become: true
|
||||||
ansible.builtin.command: pkg-config systemd --variable=systemdsystemunitdir
|
ansible.builtin.command: pkg-config systemd --variable=systemd_system_conf_dir
|
||||||
changed_when: false
|
changed_when: false
|
||||||
register: systemd_unit_directory_cmd
|
register: systemd_unit_directory_cmd
|
||||||
- name: find systemd version
|
- name: find systemd version
|
||||||
|
@ -10,7 +10,14 @@
|
||||||
systemctl --version | awk '{if($1=="systemd" && $2~"^[0-9]+$"){print $2}}'
|
systemctl --version | awk '{if($1=="systemd" && $2~"^[0-9]+$"){print $2}}'
|
||||||
changed_when: false
|
changed_when: false
|
||||||
register: systemd_version_cmd
|
register: systemd_version_cmd
|
||||||
|
- name: find local valkey version
|
||||||
|
ansible.builtin.shell: >
|
||||||
|
valkey-cli --version | cut -d ' ' -f 2
|
||||||
|
failed_when: false
|
||||||
|
changed_when: false
|
||||||
|
register: valkey_local_version_cmd
|
||||||
- name: set facts
|
- name: set facts
|
||||||
ansible.builtin.set_fact:
|
ansible.builtin.set_fact:
|
||||||
systemd_unit_directory: "{{ systemd_unit_directory_cmd.stdout }}"
|
systemd_unit_directory: "{{ systemd_unit_directory_cmd.stdout }}"
|
||||||
systemd_version: "{{ systemd_version_cmd.stdout | int }}"
|
systemd_version: "{{ systemd_version_cmd.stdout | int }}"
|
||||||
|
valkey_installed_version: "{{ (valkey_local_version_cmd.stdout_lines[0] | default('0')) if valkey_local_version_cmd.rc == 0 else '0' }}"
|
||||||
|
|
|
@ -17,6 +17,7 @@
|
||||||
- libssl-dev
|
- libssl-dev
|
||||||
- libsystemd-dev
|
- libsystemd-dev
|
||||||
- make
|
- make
|
||||||
|
- pkgconf
|
||||||
- python3-cryptography
|
- python3-cryptography
|
||||||
- ssl-cert
|
- ssl-cert
|
||||||
- name: gather facts
|
- name: gather facts
|
||||||
|
@ -48,8 +49,16 @@
|
||||||
cmds:
|
cmds:
|
||||||
- tar -zxf {asset_dirname}/{asset_filename}
|
- tar -zxf {asset_dirname}/{asset_filename}
|
||||||
- 'mv $(find . -maxdepth 1 -name valkey-io-valkey\* -type d) {{ valkey_install_dir }}/src'
|
- 'mv $(find . -maxdepth 1 -name valkey-io-valkey\* -type d) {{ valkey_install_dir }}/src'
|
||||||
|
- name: fetch source version
|
||||||
|
become: true
|
||||||
|
ansible.builtin.command:
|
||||||
|
cmd: sed -En 's/#define VALKEY_VERSION "([0-9._-]+)"/\1/p' ./src/version.h
|
||||||
|
chdir: '{{ valkey_install_dir }}/src'
|
||||||
|
register: source_version_cmd
|
||||||
|
changed_when: false
|
||||||
- name: compile Valkey (some tweaks taken from Valkey's Dockerfile
|
- name: compile Valkey (some tweaks taken from Valkey's Dockerfile
|
||||||
become: true
|
become: true
|
||||||
|
when: source_version_cmd.stdout_lines[0] != valkey_installed_version
|
||||||
args:
|
args:
|
||||||
chdir: '{{ valkey_install_dir }}/src'
|
chdir: '{{ valkey_install_dir }}/src'
|
||||||
ansible.builtin.shell: '{{ item }}'
|
ansible.builtin.shell: '{{ item }}'
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue