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:
Anton Kaliaev
2017-03-31 17:52:49 +04:00
parent eee17f2a5c
commit b708e91bce
17 changed files with 506 additions and 0 deletions

View 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

View 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

View 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