|
|
|
---
|
|
|
|
- name: Ensure we have sane configuration
|
|
|
|
block:
|
|
|
|
- name: Check besu_version is correct
|
|
|
|
fail:
|
|
|
|
msg: You must set "besu_version" for this role to run when not building Besu from source
|
|
|
|
when: besu_version is not defined and not besu_build_from_source
|
|
|
|
- name: Check besu_version is not set when besu_build_from_source is set
|
|
|
|
fail:
|
|
|
|
msg: >-
|
|
|
|
The vars "besu_version" and "besu_build_from_source" are
|
|
|
|
incompatible. If trying to build a specific git refspec, use
|
|
|
|
"besu_git_refspec" instead of besu_version.
|
|
|
|
when: besu_version is defined and besu_build_from_source
|
|
|
|
- name: Check besu_privacy_enabled is not set when fast sync is enabled
|
|
|
|
fail:
|
|
|
|
msg: Orion and Fast-Sync are incompatible
|
|
|
|
when: ( besu_privacy_enabled|bool == True ) and ( besu_sync_mode == "FAST" )
|
|
|
|
|
|
|
|
- name: Include OS and distribution specific variables
|
|
|
|
include_vars: "{{ item }}"
|
|
|
|
with_first_found:
|
|
|
|
- files:
|
|
|
|
- "{{ ansible_distribution|lower }}.yml"
|
|
|
|
- "{{ ansible_os_family|lower }}.yml"
|
|
|
|
skip: true
|
|
|
|
|
|
|
|
- name: Compile besu
|
|
|
|
include_tasks: "compile.yml"
|
|
|
|
when: besu_build_from_source
|
|
|
|
|
|
|
|
- name: Install besu
|
|
|
|
include_tasks: "install.yml"
|
|
|
|
|
|
|
|
- name: Run OS specific installation tasks
|
|
|
|
include_tasks: "{{ item }}"
|
|
|
|
with_first_found:
|
|
|
|
- files:
|
|
|
|
- "{{ ansible_distribution|lower }}/install.yml"
|
|
|
|
- "{{ ansible_os_family|lower }}/install.yml"
|
|
|
|
skip: true
|
|
|
|
|
|
|
|
- name: Get IP address to bind to if not provided
|
|
|
|
include_tasks: "network.yml"
|
|
|
|
when: not besu_host_ip
|
|
|
|
|
|
|
|
- name: Create config
|
|
|
|
include_tasks: "config.yml"
|
|
|
|
|
|
|
|
- name: Create Besu service
|
|
|
|
include_tasks: "service.yml"
|