infra-nimbus/ansible/holesky.yml

92 lines
2.8 KiB
YAML

---
- name: Verify Ansible versions
hosts: all
tags: always
become: false
run_once: true
gather_facts: false
tasks:
- local_action: command ./versioncheck.py
changed_when: false
- name: Deploy Holesky Linux Beacon Nodes
become: true
serial: '{{ serial|default(1) }}'
hosts:
- nimbus-holesky-geth
- nimbus-holesky-erigon
- nimbus-holesky-neth
vars_files: layout/holesky.yml
roles:
- { role: update-netplan, tags: update-netplan, when: ansible_system == 'Linux' }
- { role: infra-role-swap-file, tags: [ swap-file ] }
- { role: infra-role-open-ports, tags: [ open-ports ] }
- { role: redirect-ports, tags: [ redirect-ports ] }
tasks:
- include_role: name=infra-role-beacon-node-linux
with_items: '{{ nodes_layout[hostname] }}'
loop_control: { loop_var: node, index_var: idx }
- include_role: name=infra-role-validator-client
with_items: '{{ nodes_layout[hostname] }}'
when: validator_client_service_enabled
loop_control: { loop_var: node, index_var: idx }
- name: Deploy Holesky Geth Nodes
become: true
serial: '{{ serial|default(1) }}'
hosts: nimbus-holesky-geth
vars_files: layout/holesky.yml
tasks:
- include_role: name=infra-role-geth
when: node.el == "geth"
with_items: '{{ nodes_layout[hostname] }}'
loop_control: { loop_var: node, index_var: idx }
- include_role: name=infra-role-geth-exporter
when: node.el == "geth"
with_items: '{{ nodes_layout[hostname] }}'
loop_control: { loop_var: node, index_var: idx }
- name: Deploy Holesky Erigon Nodes
become: true
serial: '{{ serial|default(1) }}'
hosts: nimbus-holesky-erigon
vars_files: layout/holesky.yml
tasks:
- include_role: name=infra-role-erigon
when: node.el == "erigon"
with_items: '{{ nodes_layout[hostname] }}'
loop_control: { loop_var: node, index_var: idx }
- name: Deploy Holesky Nethermind Nodes
become: true
serial: '{{ serial|default(1) }}'
hosts: nimbus-holesky-neth
vars_files: layout/holesky.yml
tasks:
- include_role: name=infra-role-nethermind
when: node.el == "nethermind"
with_items: '{{ nodes_layout[hostname] }}'
loop_control: { loop_var: node, index_var: idx }
- name: Deploy Holesky MacOS Beacon Nodes
become: true
hosts:
- nimbus-holesky-macm2
vars_files: layout/holesky.yml
tasks:
- include_role: name=infra-role-beacon-node-macos
with_items: '{{ nodes_layout[hostname] }}'
loop_control: { loop_var: node, index_var: idx }
- name: Deploy Holesky Windows Beacon Nodes
become: true
hosts:
- nimbus-holesky-windows
fact_path: 'C:/ansible/facts.d'
vars_files: layout/holesky.yml
tasks:
- include_role: name=infra-role-beacon-node-windows
with_items: '{{ nodes_layout[hostname] }}'
loop_control: { loop_var: node, index_var: idx }