Opensearch: Aktualisiere Plugins bei Paket-Updates

This commit is contained in:
phil 2023-05-11 08:46:18 +02:00
parent dd490795b3
commit cff4fc38b3
5 changed files with 60 additions and 2 deletions

View file

@ -6,6 +6,9 @@ opensearch:
http_port: 9200
attachment_max_size: 50
opensearch_plugin_update_script: update-opensearch-plugins
opensearch_monit_service: opensearch
ruby_path: "{{ zammad_user_home }}/.rbenv"
ruby_bin_path: "{{ ruby_path }}/versions/{{ ruby_version }}/bin"
ruby_build_repo: https://github.com/rbenv/ruby-build.git

View file

@ -92,7 +92,20 @@
- name: "Opensearch | Richte Monit-Überwachung ein"
ansible.builtin.template:
src: opensearch.monit
src: opensearch.monit.j2
dest: /etc/monit/conf-enabled/opensearch
mode: "0644"
notify: reload monit
- name: "Opensearch | Kopiere Update-Skript"
ansible.builtin.template:
src: update-opensearch-plugins.j2
dest: "/usr/local/bin/{{ opensearch_plugin_update_script }}"
mode: "0755"
- name: "Opensearch | Kopiere DPKG-Hook"
ansible.builtin.template:
src: 72opensearch-updates.j2
dest: /etc/apt/apt.conf.d/72opensearch-updates
mode: "0644"

View file

@ -0,0 +1,5 @@
# {{ ansible_managed }}
# Neuinstallation der Plugins
DPkg::Pre-Invoke {"/usr/local/bin//{{ opensearch_plugin_update_script }} purge";};
DPkg::Post-Invoke {"/usr/local/bin//{{ opensearch_plugin_update_script }} install";};

View file

@ -1,4 +1,6 @@
check process opensearch with pidfile /run/opensearch/opensearch.pid
# {{ ansible_managed }}
check process {{ opensearch_monit_service }} with pidfile /run/opensearch/opensearch.pid
start program = "/usr/sbin/service opensearch start"
stop program = "/usr/sbin/service opensearch stop"
if failed host {{ opensearch.network_host }} port {{ opensearch.http_port }} for 3 cycles then restart

View file

@ -0,0 +1,35 @@
#!/bin/sh
# {{ ansible_managed }}
set -eu
OPENSEARCH_BIN_PATH=/usr/share/opensearch/bin
OPENSEARCH_SERVICE=opensearch.service
PLUGINS=(
ingest-attachment
)
ACTION="${1:-help}"
case "$ACTION" in
purge)
for plugin in "${PLUGINS[@]}"; do
$OPENSEARCH_BIN_PATH/opensearch-plugin remove $plugin --batch
done
systemctl restart $OPENSEARCH_SERVICE
;;
install)
for plugin in "${PLUGINS[@]}"; do
$OPENSEARCH_BIN_PATH/opensearch-plugin install $plugin --batch
done
systemctl restart $OPENSEARCH_SERVICE
;;
help)
echo "Syntax: $(basename "$0") { purge | install | help }"
echo
;;
*)
"$0" help >&2
exit 1
;;
esac