Fixes: Working Felix Deployment Playbooks, Adds Bootnodes and slim update playbook for Felix

pull/1040/head
Kieran Prasch 2019-04-29 17:34:40 -07:00 committed by Kieran Prasch
parent ea25b6620d
commit 06f47e2545
No known key found for this signature in database
GPG Key ID: 199AB839D4125A62
5 changed files with 81 additions and 12 deletions

View File

@ -13,6 +13,13 @@
name: networks
tasks:
- name: "Register Ethereum PPA"
become: yes
become_flags: "-H -S"
apt_repository:
repo: 'ppa:ethereum/ethereum'
state: present
- name: "Install System Dependencies"
become: yes
become_flags: "-H -S"
@ -22,13 +29,15 @@
state: latest
vars:
packages:
- libffi-dev
- python-pip
- python3
- python3-pip
- python3-dev
- python3-setuptools
- python3-virtualenv
- virtualenv
- libffi-dev
- software-properties-common
- ethereum
- npm
- git:
repo: "{{ git_repo }}"
@ -79,7 +88,7 @@
shell: "{{ nucypher_exec }} felix createdb --geth --network {{ network }}"
environment:
NUCYPHER_KEYRING_PASSWORD: "{{ lookup('env', 'NUCYPHER_FELIX_KEYRING_PASSWORD') }}"
NUCYPHER_FELIX_SECRET: "{{ lookup('env', 'NUCYPHER_FELIX_DB_SECRET') }}"
NUCYPHER_FELIX_DB_SECRET: "{{ lookup('env', 'NUCYPHER_FELIX_DB_SECRET') }}"
LC_ALL: en_US.UTF-8
LANG: en_US.UTF-8
vars:
@ -102,5 +111,7 @@
dest: /etc/systemd/system/felix_faucet.service
mode: 0755
vars:
keyring_password: "{{ lookup('env', 'NUCYPHER_FELIX_KEYRING_PASSWORD') }}"
db_secret: "{{ lookup('env', 'NUCYPHER_FELIX_DB_SECRET') }}"
virtualenv_path: '/home/ubuntu/venv'
nucypher_network_domain: "{{ lookup('env', 'NUCYPHER_NETWORK_NAME') }}"

View File

@ -14,12 +14,10 @@
tasks:
- name: "Open Felix HTTP Port"
become: yes
become_flags: "-H -S"
shell: 'iptables -A INPUT -p tcp -m conntrack --dport {{ felix_http_port }} --ctstate NEW,ESTABLISHED -j ACCEPT'
vars:
felix_http_port: 12500
- git:
repo: "{{ git_repo }}"
dest: ./code
version: "{{ git_version }}"
- name: "Render Felix's Node Service"
become: yes
@ -29,10 +27,19 @@
dest: /etc/systemd/system/felix_faucet.service
mode: 0755
vars:
keyring_password: "{{ lookup('env', 'NUCYPHER_FELIX_KEYRING_PASSWORD') }}"
db_secret: "{{ lookup('env', 'NUCYPHER_FELIX_DB_SECRET') }}"
virtualenv_path: '/home/ubuntu/venv'
nucypher_network_domain: "{{ lookup('env', 'NUCYPHER_NETWORK_NAME') }}"
teacher_uri: "{{ networks[lookup('env', 'NUCYPHER_NETWORK_NAME')][0] }}"
- name: "Open Felix HTTP Port"
become: yes
become_flags: "-H -S"
shell: 'iptables -A INPUT -p tcp -m conntrack --dport {{ felix_http_port }} --ctstate NEW,ESTABLISHED -j ACCEPT'
vars:
felix_http_port: 6151
- name: "Enable and Start Distribution"
become: yes
become_flags: "-H -S"

View File

@ -0,0 +1,44 @@
- name: "Start Felix"
hosts: "{{ 'tag_Role_' + lookup('env', 'NUCYPHER_NETWORK_NAME') + '_felix' }}"
user: ubuntu
gather_facts: false
pre_tasks:
- name: "Install Python2.7 for Ansible Control"
raw: sudo apt -y update && sudo apt install -y python2.7-minimal python2.7-setuptools
- include_vars: "{{ lookup('env', 'ANSIBLE_VARIABLES') }}"
- include_vars:
file: "{{ networks_filepath }}"
name: networks
tasks:
- git:
repo: "{{ git_repo }}"
dest: ./code
version: "{{ git_version }}"
- name: "Open Felix HTTP Port"
become: yes
become_flags: "-H -S"
shell: 'iptables -A INPUT -p tcp -m conntrack --dport {{ felix_http_port }} --ctstate NEW,ESTABLISHED -j ACCEPT'
vars:
felix_http_port: 80
- name: "Open Felix HTTP Port"
become: yes
become_flags: "-H -S"
shell: 'iptables -A INPUT -p tcp -m conntrack --dport {{ felix_http_port }} --ctstate NEW,ESTABLISHED -j ACCEPT'
vars:
felix_http_port: 6151
- name: "Enable and Start Distribution"
become: yes
become_flags: "-H -S"
systemd:
daemon_reload: yes
no_block: yes
enabled: yes
state: restarted
name: "felix_faucet"

View File

@ -1 +1,6 @@
enode://bf150c793f378775e8cf09bee4fba37ea65363fe7a41171790a80ef6462de619cad2c05f42fc58655ad317503d5da8fee898e911fdf386ac6d15da12b5e883eb@3.92.166.78:30301
enode://13da3c4b5b1ca32dfb0fcd662b9c69daf6b564e6f791ddae107d57049f25952aac329de336fd393f5b42b6aa2bbb263d7aa5c426b473be611739795aa18b0212@54.173.27.77:30303
enode://4f7a27820107c235bb0f8086ee1c2bad62174450ec2eec12cb29e3fa7ecb9f332710373c1d11a3115aa72f2dabbae27b73eac51f06d3df558dd9fb51007da653@52.91.112.249:30303
enode://6b58a9437aa88f254b75110019c54807cf1d7da9729f2c022a2463bae86b639288909fe00ffac0599e616676eea2de3c503bacaf4be835a02195bea0b349ca80@54.88.246.77:30303
enode://562051180eca42514e44b4428ed20a3cb626654631f53bbfa549de7d3b7e418376e8f784c232429d7ff01bd0597e3ce7327699bb574d39ac3b2ac1729ed0dd44@54.224.110.32:30303
enode://d372b6a4ebd63a39d55cb9a50fc3c8a95ef0cbb1921da20c7e1de3dbf94a5f82969fe6396140e89bf73b792af291c91446ea8851fe0aae6847e934d8a52b22a4@34.226.198.231:30303

View File

@ -2,9 +2,11 @@
Description="Run 'Felix', A NuCypher Test-ERC20 Faucet."
[Service]
User=ubuntu
User=root
Type=simple
ExecStart={{ virtualenv_path }}/bin/nucypher felix --network {{ nucypher_network_domain }} --geth
Environment="NUCYPHER_KEYRING_PASSWORD={{ keyring_password }}"
Environment="NUCYPHER_FELIX_DB_SECRET={{ db_secret }}"
ExecStart={{ virtualenv_path }}/bin/nucypher --debug felix run --network {{ nucypher_network_domain }} --geth
[Install]
WantedBy=multi-user.target