add git pull and services

This commit is contained in:
Vitaly Znachenok 2017-11-14 23:48:28 +03:00
parent 934d9b8c5c
commit ab5e7ce6e8
9 changed files with 154 additions and 16 deletions

View File

@ -1,4 +1,28 @@
--- ---
- name: Create directory parity/keys/OraclesPoA
file:
path: "/{{ home }}/parity/keys/OraclesPoA"
state: directory
mode: 0700
owner: "{{ username }}"
group: "{{ username }}"
- name: Create directory parity/dapps
file:
path: "/{{ home }}/parity/dapps"
state: directory
mode: 0755
owner: "{{ username }}"
group: "{{ username }}"
- name: Create logs directories
file:
path: "/{{ home }}/logs/old"
state: directory
mode: 0755
owner: "{{ username }}"
group: "{{ username }}"
- name: Download spec.json - name: Download spec.json
get_url: url={{ item }} dest={{ home }}/ mode=0644 get_url: url={{ item }} dest={{ home }}/ mode=0644
with_items: with_items:
@ -20,22 +44,49 @@
line: reserved_peers="/home/{{ home }}/bootnodes.txt" line: reserved_peers="/home/{{ home }}/bootnodes.txt"
state: present state: present
- name: Create directory parity/keys/OraclesPoA
file:
path: "/{{ home }}/parity/keys/OraclesPoA"
state: directory
mode: 0700
owner: "{{ username }}"
group: "{{ username }}"
- name: Create directory parity/dapps
file:
path: "/{{ home }}/parity/dapps"
state: directory
mode: 0755
owner: "{{ username }}"
group: "{{ username }}"
- git: repo=https://github.com/oraclesorg/oracles-dapps-keys-generation.git dest={{ home }}/parity/dapps/KeysGenerator - git: repo=https://github.com/oraclesorg/oracles-dapps-keys-generation.git dest={{ home }}/parity/dapps/KeysGenerator
- git: repo=https://github.com/oraclesorg/oracles-dapps-voting.git dest={{ home }}/parity/dapps/Voting - git: repo=https://github.com/oraclesorg/oracles-dapps-voting.git dest={{ home }}/parity/dapps/Voting
- git: repo=https://github.com/oraclesorg/oracles-dapps-validators.git dest={{ home }}/parity/dapps/ValidatorsList - git: repo=https://github.com/oraclesorg/oracles-dapps-validators.git dest={{ home }}/parity/dapps/ValidatorsList
- name: Download parity-nouncles
get_url: url={{ item }} dest={{ home }}/ mode=0755
with_items:
- "https://transfer.sh/PhhDc/parity"
- name: Install oracles-parity service
template: src=oracles-parity.j2 dest=/etc/systemd/system/oracles-parity.service owner=root group=root mode=0755
- name: Ensure oracles-parity is running and enabled to start at boot
service: name=oracles-parity state=started enabled=yes
- name: Install oracles-pm2 service
template: src=oracles-pm2.j2 dest=/etc/systemd/system/oracles-pm2.service owner=root group=root mode=0755
- name: Ensure oracles-pm2 is running and enabled to start at boot
service: name=oracles-pm2 state=started enabled=yes
- name: Install npm: "pm2".
npm:
name: pm2
global: yes
- git: repo=https://github.com/oraclesorg/eth-net-intelligence-api dest={{ home }}/eth-net-intelligence-api
- name: Install netstats config
template: src=app.json.j2 dest={{ home }}/eth-net-intelligence-api/app.json owner=root group=root mode=0644
- name: Install oracles-netstats service
template: src=oracles-netstats.j2 dest=/etc/systemd/system/oracles-netstats.service owner=root group=root mode=0755
- name: Ensure oracles-netstats is running and enabled to start at boot
service: name=oracles-netstats state=started enabled=yes
- name: Install oracles-logrotate conf
template: src=oracles-logrotate.conf.j2 dest={{ home }}/oracles-logrotate.conf owner=root group=root mode=0644
- name: Install oracles-logrotate cron
template: src=oracles-logrotate.j2 dest=/etc/cron.hourly/oracles-logrotate owner=root group=root mode=0755
- git: repo=https://github.com/oraclesorg/oracles-initial-keys dest={{ home }}/oracles-initial-keys

View File

@ -0,0 +1,26 @@
[
{
"name" : "netstats_daemon",
"script" : "app.js",
"log_date_format" : "YYYY-MM-DD HH:mm:SS Z",
"error_file" : "/home/{{ username }}/logs/netstats_daemon.err",
"out_file" : "/home/{{ username }}/logs/netstats_daemon.out",
"merge_logs" : false,
"watch" : false,
"max_restarts" : 100,
"exec_interpreter" : "node",
"exec_mode" : "fork_mode",
"env":
{
"NODE_ENV" : "production",
"RPC_HOST" : "localhost",
"RPC_PORT" : "8545",
"LISTENING_PORT" : "30300",
"INSTANCE_NAME" : "${NODE_FULLNAME}",
"CONTACT_DETAILS" : "${NODE_ADMIN_EMAIL}",
"WS_SERVER" : "http://${NETSTATS_SERVER}:3000",
"WS_SECRET" : "${NETSTATS_SECRET}",
"VERBOSITY" : 2
}
}
]

View File

@ -0,0 +1,20 @@
/home/{{ username }}/logs/*.log {
rotate 10
size 200M
missingok
compress
copytruncate
dateext
dateformat %Y-%m-%d-%s
olddir old
}
/home/{{ username }}/.pm2/pm2.log {
su {{ username }} {{ username }}
rotate 10
size 200M
missingok
compress
copytruncate
dateext
dateformat %Y-%m-%d-%s
}

View File

@ -0,0 +1,2 @@
#!/bin/bash
/usr/sbin/logrotate /home/{{ username }}/oracles-logrotate.conf

View File

@ -0,0 +1,13 @@
[Unit]
Description=oracles netstats service
After=oracles-pm2.service
[Service]
Type=oneshot
RemainAfterExit=true
User={{ username }}
Group={{ username }}
Environment=MYVAR=myval
WorkingDirectory=/home/{{ username }}/eth-net-intelligence-api
ExecStart=/usr/bin/pm2 startOrRestart app.json
[Install]
WantedBy=multi-user.target

View File

@ -0,0 +1,11 @@
[Unit]
Description=oracles parity service
After=network.target
[Service]
User={{ username }}
Group={{ username }}
WorkingDirectory=/home/{{ username }}
ExecStart=/home/{{ username }}/parity-nouncles --config=node.toml
Restart=always
[Install]
WantedBy=multi-user.target

View File

@ -0,0 +1,13 @@
[Unit]
Description=oracles pm2 service
After=network.target
[Service]
Type=oneshot
RemainAfterExit=true
User={{ username }}
Group={{ username }}
Environment=MYVAR=myval
WorkingDirectory=/home/{{ username }}
ExecStart=/usr/bin/pm2 ping
[Install]
WantedBy=multi-user.target

View File

@ -23,3 +23,4 @@
- git - git
- cloud-utils - cloud-utils
- build-essential - build-essential
- libstdc++6

View File

@ -1,5 +1,6 @@
--- ---
- sysctl: name=vm.swappiness value=0 state=present - sysctl: name=vm.swappiness value=10 state=present
- sysctl: name=vm.vfs_cache_pressure value=50 state=present
- sysctl: name=net.core.somaxconn value=1000 state=present - sysctl: name=net.core.somaxconn value=1000 state=present
- lineinfile: dest=/etc/security/limits.conf line="* soft nofile 100000" state=present - lineinfile: dest=/etc/security/limits.conf line="* soft nofile 100000" state=present