Skip to content

Commit 9094228

Browse files
ManjotScursoragent
andcommitted
Persist scylla-monitoring start/stop wrapper scripts on deploy.
Write /opt/scylla-monitoring/{start,stop}-monitoring.sh during monitoring role deploy so operators can restart the stack without re-running ansible or reconstructing start-all.sh arguments by hand. Co-authored-by: Cursor <cursoragent@cursor.com>
1 parent a8428eb commit 9094228

4 files changed

Lines changed: 31 additions & 10 deletions

File tree

ansible-scylla-monitoring/defaults/main.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,8 @@ scylla_monitoring_archive_url: 'https://github.com/scylladb/scylla-monitoring/ar
2424
scylla_monitoring_role_config_path: "{{ inventory_dir }}"
2525

2626
scylla_monitoring_deploy_path: /opt/scylla-monitoring
27+
scylla_monitoring_start_script_path: "{{ scylla_monitoring_deploy_path }}/start-monitoring.sh"
28+
scylla_monitoring_stop_script_path: "{{ scylla_monitoring_deploy_path }}/stop-monitoring.sh"
2729
scylla_monitoring_data_path: "{{ scylla_monitoring_deploy_path }}/data"
2830
scylla_monitoring_config_path: "{{ scylla_monitoring_deploy_path }}/config"
2931
scylla_monitoring_prom_rules_path: "{{ scylla_monitoring_config_path }}/prom_rules"

ansible-scylla-monitoring/tasks/docker.yml

Lines changed: 16 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,20 @@
3131
when: "'cql_credentials' in groups and item.split('=')[0] == scylla_monitoring_cql_default_user | default('scylla_cql_monitor')"
3232
loop: "{{ groups['cql_credentials'] }}"
3333

34+
- name: "docker.yml: Write stop monitoring wrapper script"
35+
template:
36+
src: stop-monitoring.sh.j2
37+
dest: "{{ scylla_monitoring_stop_script_path }}"
38+
mode: '0750'
39+
owner: "{{ ansible_user_id }}"
40+
41+
- name: "docker.yml: Write start monitoring wrapper script"
42+
template:
43+
src: start-monitoring.sh.j2
44+
dest: "{{ scylla_monitoring_start_script_path }}"
45+
mode: '0750'
46+
owner: "{{ ansible_user_id }}"
47+
3448
- name: "docker.yml: restart the docker daemon again"
3549
service:
3650
name: docker
@@ -49,16 +63,8 @@
4963
when: ansible_facts.services["docker.service"] is defined
5064

5165
- name: "docker.yml: Stop monitoring"
52-
shell: |
53-
cd {{ base_dir }}
54-
./kill-all.sh
55-
sudo ./kill-all.sh
66+
command: "{{ scylla_monitoring_stop_script_path }}"
5667

5768
- name: "docker.yml: start scylla-monitoring"
58-
shell: "{{ start_command }}"
59-
args:
60-
chdir: "{{ base_dir }}"
69+
command: "{{ scylla_monitoring_start_script_path }}"
6170
become: "{{ 'true' if run_docker_with_sudo is defined and run_docker_with_sudo|bool == True else 'false' }}"
62-
environment:
63-
SCYLLA_USER: "{% if monitoring_cql_username is defined and monitoring_cql_password is defined %}{{ monitoring_cql_username }}{% endif %}"
64-
SCYLLA_PSSWD: "{% if monitoring_cql_username is defined and monitoring_cql_password is defined %}{{ monitoring_cql_password }}{% endif %}"
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
#!/usr/bin/env bash
2+
set -euo pipefail
3+
cd {{ base_dir }}
4+
{% if monitoring_cql_username is defined and monitoring_cql_password is defined %}
5+
export SCYLLA_USER='{{ monitoring_cql_username }}'
6+
export SCYLLA_PSSWD='{{ monitoring_cql_password }}'
7+
{% endif %}
8+
{{ start_command }}
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
#!/usr/bin/env bash
2+
set -euo pipefail
3+
cd {{ base_dir }}
4+
./kill-all.sh || true
5+
sudo ./kill-all.sh || true

0 commit comments

Comments
 (0)