mirror of
https://git.wownero.com/dsc/ansible-remote-node.git
synced 2024-08-15 01:03:28 +00:00
Initial commit
This commit is contained in:
commit
3ca64f164d
13 changed files with 196 additions and 0 deletions
8
roles/wownerod/defaults/main.yaml
Normal file
8
roles/wownerod/defaults/main.yaml
Normal file
|
@ -0,0 +1,8 @@
|
|||
---
|
||||
wownerod_remote_url: "https://distfiles.offtopica.uk/wownerod-0.8.0.2"
|
||||
wownerod_remote_hash: "sha256:ac7bba8924d43dfc9e9cf868737ebebc68591fdc17273cd0b3b9216e959fb0bc"
|
||||
wownero_version: "0.8.0.2"
|
||||
wownero_bin_dir: "/usr/local/bin"
|
||||
wownerod_path: "{{ wownero_bin_dir }}/wownerod"
|
||||
wownerod_p2p_port: "34567"
|
||||
wownerod_rpc_port: "34568"
|
6
roles/wownerod/handlers/main.yaml
Normal file
6
roles/wownerod/handlers/main.yaml
Normal file
|
@ -0,0 +1,6 @@
|
|||
---
|
||||
- name: restart wownerod
|
||||
systemd:
|
||||
daemon_reload: yes
|
||||
name: wownerod.service
|
||||
state: restarted
|
11
roles/wownerod/tasks/install.yaml
Normal file
11
roles/wownerod/tasks/install.yaml
Normal file
|
@ -0,0 +1,11 @@
|
|||
---
|
||||
- name: Download release binary
|
||||
get_url:
|
||||
url: "{{ wownerod_remote_url }}"
|
||||
dest: "{{ wownerod_path }}"
|
||||
checksum: "{{ wownerod_remote_hash }}"
|
||||
owner: root
|
||||
group: root
|
||||
mode: '0755'
|
||||
notify:
|
||||
- restart wownerod
|
65
roles/wownerod/tasks/main.yaml
Normal file
65
roles/wownerod/tasks/main.yaml
Normal file
|
@ -0,0 +1,65 @@
|
|||
---
|
||||
- name: Install ufw
|
||||
apt: name=ufw state=present
|
||||
tags: firewall
|
||||
- name: Limit ssh
|
||||
ufw: rule=limit port=ssh proto=tcp
|
||||
tags: firewall
|
||||
- name: Enable ufw
|
||||
ufw: state=enabled
|
||||
tags: firewall
|
||||
- name: Check if wownerod is installed
|
||||
stat: path="{{ wownerod_path }}"
|
||||
register: stat_wownerod_path
|
||||
- name: Check wownerod version
|
||||
command: "{{ wownerod_path }} --version"
|
||||
register: wownerod_version_cmd
|
||||
when: stat_wownerod_path.stat.exists
|
||||
- name: Parse wownerod version
|
||||
set_fact:
|
||||
installed_wownerod_version: "{{ wownerod_version_cmd.stdout | regex_search('\\d+\\.\\d+\\.\\d+\\.\\d') }}"
|
||||
when: stat_wownerod_path.stat.exists
|
||||
- name: Install wownerod
|
||||
import_tasks: install.yaml
|
||||
when: not stat_wownerod_path.stat.exists or not installed_wownerod_version == wownero_version
|
||||
- name: Create wownero user
|
||||
user:
|
||||
name: wownero
|
||||
create_home: no
|
||||
home: /var/lib/wownero
|
||||
shell: /bin/false
|
||||
system: yes
|
||||
- name: Install systemd unit file
|
||||
template:
|
||||
src: wownerod.service.j2
|
||||
dest: /etc/systemd/system/wownerod.service
|
||||
owner: root
|
||||
group: root
|
||||
mode: '0644'
|
||||
notify:
|
||||
- restart wownerod
|
||||
- name: Install wownerod config file
|
||||
template:
|
||||
src: wownerod.conf.j2
|
||||
dest: /etc/wownerod.conf
|
||||
owner: root
|
||||
group: root
|
||||
mode: '0644'
|
||||
notify:
|
||||
- restart wownerod
|
||||
- name: Allow wownerod p2p port
|
||||
ufw:
|
||||
rule: allow
|
||||
port: "{{ wownerod_p2p_port }}"
|
||||
proto: tcp
|
||||
tags: firewall
|
||||
- name: Allow wownerod rpc port
|
||||
ufw:
|
||||
rule: allow
|
||||
port: "{{ wownerod_rpc_port }}"
|
||||
proto: tcp
|
||||
tags: firewall
|
||||
- name: Enable wownerod service
|
||||
systemd:
|
||||
name: wownerod.service
|
||||
enabled: true
|
14
roles/wownerod/templates/wownerod.conf.j2
Normal file
14
roles/wownerod/templates/wownerod.conf.j2
Normal file
|
@ -0,0 +1,14 @@
|
|||
check-updates=disabled
|
||||
confirm-external-bind=1
|
||||
data-dir=/var/lib/wownero
|
||||
log-file=/var/log/wownero/wownerod.log
|
||||
log-level=0
|
||||
no-igd=1
|
||||
p2p-bind-port={{ wownerod_p2p_port }}
|
||||
p2p-use-ipv6=1
|
||||
public-node=1
|
||||
restricted-rpc=1
|
||||
rpc-bind-ip=0.0.0.0
|
||||
rpc-bind-ipv6-address=::0
|
||||
rpc-bind-port={{ wownerod_rpc_port }}
|
||||
rpc-use-ipv6=1
|
17
roles/wownerod/templates/wownerod.service.j2
Normal file
17
roles/wownerod/templates/wownerod.service.j2
Normal file
|
@ -0,0 +1,17 @@
|
|||
[Unit]
|
||||
Description=Wownero Full Node
|
||||
After=network-online.target
|
||||
Wants=network-online.target
|
||||
|
||||
[Service]
|
||||
User=wownero
|
||||
Group=wownero
|
||||
Environment="MONERO_RANDOMX_UMASK=1"
|
||||
StateDirectory=wownero
|
||||
LogsDirectory=wownero
|
||||
Type=simple
|
||||
PIDFile=/run/wownero/wownerod.pid
|
||||
ExecStart={{ wownerod_path }} --config-file /etc/wownerod.conf --non-interactive
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
Loading…
Add table
Add a link
Reference in a new issue