mirror of
https://github.com/fluencelabs/tendermint
synced 2025-06-28 20:21:47 +00:00
mintnet-ansible
update readme, add license rename mintnet-ansible to ansible-tendermint fix name text format for log file include start into main update readme
This commit is contained in:
111
ansible-tendermint/tasks/install.yml
Normal file
111
ansible-tendermint/tasks/install.yml
Normal file
@ -0,0 +1,111 @@
|
||||
---
|
||||
- name: update apt
|
||||
apt: >
|
||||
update_cache=yes
|
||||
cache_valid_time=3600
|
||||
when: ansible_os_family == "Debian"
|
||||
|
||||
- name: install deps (Ubuntu)
|
||||
apt: >
|
||||
pkg={{item}}
|
||||
state=installed
|
||||
with_items:
|
||||
- unzip
|
||||
- jq
|
||||
when: ansible_os_family == "Debian"
|
||||
|
||||
- name: install deps (RHEL)
|
||||
yum: >
|
||||
pkg={{item}}
|
||||
state=installed
|
||||
with_items:
|
||||
- unzip
|
||||
- jq
|
||||
when: ansible_os_family == "RedHat"
|
||||
|
||||
- name: create group
|
||||
group: >
|
||||
name={{tendermint_group}}
|
||||
state=present
|
||||
system=yes
|
||||
register: tendermint_group_created
|
||||
|
||||
- name: create user
|
||||
user: >
|
||||
home={{tendermint_home}}
|
||||
name={{tendermint_user}}
|
||||
group={{tendermint_group}}
|
||||
system=yes
|
||||
when: tendermint_group_created|changed
|
||||
|
||||
- name: create directory
|
||||
file: >
|
||||
path={{tendermint_home}}
|
||||
state=directory
|
||||
owner={{tendermint_user}}
|
||||
group={{tendermint_group}}
|
||||
mode=0755
|
||||
|
||||
# Check before creating log dir to prevent aggressively overwriting permissions
|
||||
- name: check for log directory
|
||||
stat: >
|
||||
path={{ tendermint_log_file|dirname }}
|
||||
register: logdir
|
||||
|
||||
- name: create log directory if it does not exist
|
||||
file: >
|
||||
state=directory
|
||||
path={{ tendermint_log_file|dirname }}
|
||||
owner={{ tendermint_user }}
|
||||
group={{ tendermint_group }}
|
||||
when: not logdir.stat.exists
|
||||
|
||||
- name: touch the log file
|
||||
file: >
|
||||
state=touch
|
||||
path={{ tendermint_log_file }}
|
||||
owner={{ tendermint_user }}
|
||||
group={{ tendermint_group }}
|
||||
changed_when: false
|
||||
|
||||
- name: copy and unpack binary
|
||||
unarchive: >
|
||||
src={{tendermint_download}}
|
||||
dest=/usr/local/bin
|
||||
remote_src=true
|
||||
mode=0755
|
||||
creates=/usr/local/bin/tendermint
|
||||
|
||||
- name: generate private validator
|
||||
shell: tendermint gen_validator >> priv_validator.json
|
||||
args:
|
||||
chdir: "{{tendermint_home}}"
|
||||
creates: priv_validator.json
|
||||
|
||||
- name: copy config
|
||||
template: >
|
||||
src=config.toml.j2
|
||||
dest={{tendermint_home}}/config.toml
|
||||
owner={{tendermint_user}}
|
||||
group={{tendermint_group}}
|
||||
mode=0644
|
||||
register: config_was_copied
|
||||
# notify: restart tendermint
|
||||
|
||||
- name: set ownership
|
||||
file: >
|
||||
state=directory
|
||||
path={{tendermint_home}}
|
||||
owner={{tendermint_user}}
|
||||
group={{tendermint_group}}
|
||||
recurse=yes
|
||||
when: config_was_copied|changed
|
||||
|
||||
- name: copy upstart script
|
||||
template: >
|
||||
src=tendermint.conf.j2
|
||||
dest=/etc/init/tendermint.conf
|
||||
owner=root
|
||||
group=root
|
||||
mode=0644
|
||||
# notify: restart tendermint
|
13
ansible-tendermint/tasks/main.yml
Normal file
13
ansible-tendermint/tasks/main.yml
Normal file
@ -0,0 +1,13 @@
|
||||
---
|
||||
- name: gather OS specific variables
|
||||
include_vars: "{{ item }}"
|
||||
with_first_found:
|
||||
- "{{ ansible_os_family }}-{{ ansible_distribution_major_version}}.yml"
|
||||
- "{{ ansible_os_family }}.yml"
|
||||
- include: install.yml
|
||||
- service: >
|
||||
name=tendermint
|
||||
state=stopped
|
||||
enabled=yes
|
||||
when: tendermint_manage_service
|
||||
- include: start.yml
|
20
ansible-tendermint/tasks/start.yml
Normal file
20
ansible-tendermint/tasks/start.yml
Normal file
@ -0,0 +1,20 @@
|
||||
---
|
||||
|
||||
- name: copy genesis file
|
||||
template: >
|
||||
src=genesis.json.j2
|
||||
dest={{tendermint_home}}/genesis.json
|
||||
owner={{tendermint_user}}
|
||||
group={{tendermint_group}}
|
||||
mode=0644
|
||||
register: genesis_file_copied
|
||||
|
||||
- name: get validators number from genesis file
|
||||
shell: cat {{tendermint_home}}/genesis.json | jq ".validators | length"
|
||||
register: num_validators
|
||||
when: genesis_file_copied|changed
|
||||
|
||||
- name: restart tendermint if number of validators greater than 0
|
||||
shell: echo "restarting ..."
|
||||
when: genesis_file_copied|changed and num_validators.stdout|int > 0
|
||||
notify: restart tendermint
|
Reference in New Issue
Block a user