Skip to content

Commit bb2c3da

Browse files
committed
feat: celestia backups
1 parent 4f6928b commit bb2c3da

8 files changed

+87
-23
lines changed

ansible_collections/validators/galaxy.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ namespace: binarybuilders
99
name: validators
1010

1111
# The version of the collection. Must be compatible with semantic versioning
12-
version: 1.8.0
12+
version: 1.9.0
1313

1414
# The path to the Markdown (.md) readme file. This path is relative to the root of the collection
1515
readme: README.md

ansible_collections/validators/roles/chain_celestia/tasks/celestia-appd.yml

+10
Original file line numberDiff line numberDiff line change
@@ -189,3 +189,13 @@
189189
enabled: true
190190
state: started
191191
daemon_reload: true
192+
193+
- name: Backup directories
194+
ansible.builtin.lineinfile:
195+
path: /home/{{ chain_celestia_user }}/scripts/backup_directories.conf
196+
create: true
197+
regexp: ^validator
198+
line: validator:{{ home_dir }}/config:/home/{{ chain_celestia_user }}/backups
199+
mode: "0644"
200+
become: true
201+
become_user: "{{ chain_celestia_user }}"

ansible_collections/validators/roles/chain_celestia/tasks/celestia-node-bootstrapper-certbot.yml

+10
Original file line numberDiff line numberDiff line change
@@ -135,3 +135,13 @@
135135
name: certbot
136136
state: started
137137
when: not directory_result.stat.exists
138+
139+
- name: Backup directories
140+
ansible.builtin.lineinfile:
141+
path: /home/{{ chain_celestia_user }}/scripts/backup_directories.conf
142+
create: true
143+
regexp: ^bootstrapper-certs
144+
line: bootstrapper-certs:/home/{{ chain_celestia_user }}/celestia-bootstrapper-certs:/home/{{ chain_celestia_user }}/backups
145+
mode: "0644"
146+
become: true
147+
become_user: "{{ chain_celestia_user }}"

ansible_collections/validators/roles/chain_celestia/tasks/celestia-node-bootstrapper.yml

+10
Original file line numberDiff line numberDiff line change
@@ -115,3 +115,13 @@
115115
enabled: true
116116
state: started
117117
daemon_reload: true
118+
119+
- name: Backup directories
120+
ansible.builtin.lineinfile:
121+
path: /home/{{ chain_celestia_user }}/scripts/backup_directories.conf
122+
create: true
123+
regexp: ^bootstrapper-node
124+
line: bootstrapper-node:/home/{{ chain_celestia_user }}/{{ chain_celestia_bootstrapper_conf_dir }}/keys:/home/{{ chain_celestia_user }}/backups
125+
mode: "0644"
126+
become: true
127+
become_user: "{{ chain_celestia_user }}"

ansible_collections/validators/roles/chain_celestia/tasks/celestia-node-bridge.yml

+11-1
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
- --archival
1212
- --p2p.network {{ chain_celestia_network }}
1313
- --core.ip 127.0.0.1
14-
# - --core.port {{ chain_celestia_appd_grpc_port }}
14+
- --core.port {{ chain_celestia_appd_grpc_port }}
1515
- --metrics
1616
- --metrics.tls=false
1717
- --metrics.endpoint otel.celestia-mocha.com
@@ -103,3 +103,13 @@
103103
enabled: true
104104
state: started
105105
daemon_reload: true
106+
107+
- name: Backup directories
108+
ansible.builtin.lineinfile:
109+
path: /home/{{ chain_celestia_user }}/scripts/backup_directories.conf
110+
create: true
111+
regexp: ^bridge
112+
line: bridge:/home/{{ chain_celestia_user }}/{{ chain_celestia_bridge_conf_dir }}/keys:/home/{{ chain_celestia_user }}/backups
113+
mode: "0644"
114+
become: true
115+
become_user: "{{ chain_celestia_user }}"

ansible_collections/validators/roles/chain_celestia/tasks/celestia-node.yml

+26-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,28 @@
11
---
2+
- name: Celestia-node | Init notify list
3+
ansible.builtin.set_fact:
4+
service_list: []
5+
6+
- name: Celestia-node | Set vars (bootstrapper)
7+
when: chain_celestia_bootstrapper is defined and chain_celestia_bootstrapper | bool
8+
ansible.builtin.set_fact:
9+
service_bridge: Restart celestia-bootstrapper-{{ chain_celestia_chain_id }}
10+
11+
- name: Celestia-node | Append bootstrapper to notify list
12+
when: chain_celestia_bootstrapper is defined and chain_celestia_bootstrapper | bool
13+
ansible.builtin.set_fact:
14+
service_list: "{{ service_list + [chain_celestia_bootstrapper] }}"
15+
16+
- name: Celestia-node | Set vars (bridge)
17+
when: chain_celestia_bridge is defined and chain_celestia_bridge | bool
18+
ansible.builtin.set_fact:
19+
service_validator: Restart celestia-bridge-{{ chain_celestia_chain_id }}
20+
21+
- name: Celestia-node | Append bridge to notify list
22+
when: chain_celestia_bridge is defined and chain_celestia_bridge | bool
23+
ansible.builtin.set_fact:
24+
service_list: "{{ service_list + [chain_celestia_bridge] }}"
25+
226
- name: Celestia-node | Ensure celestia-node repository is present
327
ansible.builtin.git:
428
repo: https://github.com/celestiaorg/celestia-node.git
@@ -21,7 +45,6 @@
2145
become: true
2246
become_user: "{{ chain_celestia_user }}"
2347
changed_when: true
24-
notify: Restart {{ service_name }}
2548

2649
- name: Celestia-node | Build
2750
when: repo_cloned.changed # noqa: no-handler
@@ -33,6 +56,8 @@
3356
args:
3457
executable: /bin/bash
3558
changed_when: true
59+
notify: "{{ item }}"
60+
loop: "{{ service_list }}"
3661

3762
- name: Celestia-node | Copy binary to home folder
3863
when: repo_cloned.changed # noqa: no-handler

ansible_collections/validators/roles/chain_celestia/tasks/main.yml

+9-20
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,14 @@
4747
ansible.builtin.include_role:
4848
name: install_go
4949

50+
- name: Backup
51+
ansible.builtin.include_role:
52+
name: binarybuilders.validators.global
53+
tasks_from: backup.yml
54+
vars:
55+
global_user: "{{ chain_celestia_user }}"
56+
global_home_dir: "/home/{{ chain_celestia_user }}"
57+
5058
- name: Celestia-appd
5159
when: chain_celestia_appd is defined and chain_celestia_appd | bool
5260
ansible.builtin.include_tasks: celestia-appd.yml
@@ -73,7 +81,7 @@
7381

7482
- name: Celestia-da-otel-collector - bootstrapper
7583
ansible.builtin.include_tasks: celestia-node-bootstrapper-otel-collector.yml
76-
when: chain_celestia_bridge is defined and chain_celestia_bridge | bool
84+
when: chain_celestia_bootstrapper is defined and chain_celestia_bootstrapper | bool
7785

7886
- name: Validator-observability
7987
when: chain_celestia_appd is defined and chain_celestia_appd | bool
@@ -100,22 +108,3 @@
100108
owner: "{{ chain_celestia_user }}"
101109
group: users
102110
mode: "0644"
103-
104-
- name: Backup
105-
ansible.builtin.include_role:
106-
name: binarybuilders.validators.global
107-
tasks_from: backup.yml
108-
vars:
109-
global_user: "{{ chain_celestia_user }}"
110-
global_home_dir: "/home/{{ chain_celestia_user }}"
111-
112-
- name: Backup directories
113-
ansible.builtin.copy:
114-
dest: /home/{{ chain_celestia_user }}/scripts/backup_directories.conf
115-
content: |
116-
bootstrapper:/home/{{ chain_celestia_user }}/.celestia-full-mocha-4/keys:/home/{{ chain_celestia_user }}/backups
117-
bridge:/home/{{ chain_celestia_user }}/.celestia-bridge-mocha-4/keys:/home/{{ chain_celestia_user }}/backups
118-
validator:/home/{{ chain_celestia_user }}/.celestia-app/config:/home/{{ chain_celestia_user }}/backups
119-
mode: "0644"
120-
become: true
121-
become_user: "{{ chain_celestia_user }}"

ansible_collections/validators/roles/chain_celestia/tasks/tmkms.yml

+10
Original file line numberDiff line numberDiff line change
@@ -194,3 +194,13 @@
194194
name: "{{ service_name }}"
195195
enabled: true
196196
daemon_reload: true
197+
198+
- name: Backup directories
199+
ansible.builtin.lineinfile:
200+
path: /home/{{ chain_celestia_user }}/scripts/backup_directories.conf
201+
create: true
202+
regexp: ^tmkms
203+
line: tmkms:/home/{{ chain_celestia_user }}/.tmkms:/home/{{ chain_celestia_user }}/backups
204+
mode: "0644"
205+
become: true
206+
become_user: "{{ chain_celestia_user }}"

0 commit comments

Comments
 (0)