infra-role-geth/defaults/main.yml

96 lines
2.6 KiB
YAML
Raw Normal View History

---
# Security, json is optional
geth_account_addr: ~
geth_account_pass: ~
geth_account_json: ~
# Container config
geth_cont_image: 'ethereum/client-go:v1.8.27'
geth_cont_name: 'geth'
geth_cont_vol: '/docker/{{ geth_cont_name }}'
geth_data_path: '{{ geth_cont_vol }}/data'
geth_keys_path: '{{ geth_cont_vol }}/keys'
# account
geth_account_json_file: '{{ geth_keys_path }}/account.json'
geth_account_pass_file: '{{ geth_keys_path }}/account.pass'
geth_account_addr_file: '{{ geth_keys_path }}/account.addr'
geth_enode_file: '{{ geth_keys_path }}/enode'
geth_sync_check_script: '/usr/local/bin/check_geth_sync.sh'
# RPC port of administration
geth_rpc_addr: '127.0.0.1'
geth_rpc_port: 8545
geth_rcp_api: 'eth,net,web3,personal,shh,admin'
# useful for linking containers
geth_extra_alias: geth
geth_aliases:
- localhost
- '{{ geth_extra_alias }}'
- '{{ hostname }}'
- '{{ hostname }}.tinc'
# Sync mode: full, fast, light
geth_sync_mode: 'light'
# Maximum number of untrusted peers that can connect
geth_max_peers: 50
# Maximum pending connection attempts
geth_max_pend_peers: 30
# Maximum percentage of time allowed for serving LES requests (0-90)
geth_light_serv: 90
# Peer discovery protocol
geth_v5disc_enabled: true
# List of trusted peers to connect to
geth_trusted_peers: []
geth_trusted_peers_file: '{{ geth_data_path }}/trusted-nodes.json'
# Mining settings
geth_miner_enabled: false
geth_miner_threads: '{{ ansible_processor_vcpus }}'
geth_miner_account: '{{ geth_account_addr }}'
# Whisper protocol
geth_whisper_enabled: false
geth_whisper_pow: 0.2
# logging
geth_lov_level_names:
silent: 0
error: 1
warn: 2
info: 3
debug: 4
detail: 5
geth_log_level_name: 'info'
geth_log_level_id: '{{ geth_lov_level_names[geth_log_level_name | lower] | mandatory }}'
# 1=Frontier, 2=Morden (disused), 3=Ropsten, 4=Rinkeby
geth_network_name: 'ropsten'
# Port to listen on
geth_port: 30303
# Memory to use
geth_cache: 1536
# Address to advertise
geth_public_addr: '{{ ansible_host }}'
# Consul config
geth_consul_address: '{{ ansible_host }}'
geth_consul_rpc_address: '{{ ansible_local.tinc.vpn_ip }}'
geth_consul_enabled: true
geth_consul_default_tags:
- geth
- '{{ env }}.{{ stage }}'
- '{{ geth_network_name }}'
geth_consul_extra_tags: []
geth_consul_tags: '{{ geth_consul_default_tags + geth_consul_extra_tags }}'
# resources limits to avoid killing the host
cont_mem_ratio: 0.7
cont_mem_limit: '{{ (ansible_memtotal_mb * cont_mem_ratio|float) | int }}'
cont_swap_limit: '{{ (cont_mem_limit|int) + (ansible_swaptotal_mb * cont_mem_ratio|float) | int }}'
# generic container beaviour
cont_state: started
cont_restart: false
cont_recreate: false