--- swap_file_size_mb: 2048 # Nim-Waku nim_waku_cont_tag: 'deploy-status-{{ stage }}' nim_waku_cont_name: 'nim-waku' nim_waku_log_level: 'debug' nim_waku_dns4_domain_name: '{{ dns_entry }}' # Protocols nim_waku_protocols_enabled: ['relay', 'filter', 'lightpush', 'store'] # Node Key nim_waku_node_key: '{{lookup("bitwarden", "fleets/status/"+stage+"/nodekeys", field=hostname)}}' # Topics nim_waku_pubsub_topics: '{{ ["/waku/2/default-waku/proto"] if stage == "prod" else ["/waku/2/default-waku/proto", "/waku/2/status-signed-test-1"] }}' nim_waku_protected_topics: '{{ [] if stage == "prod" else ["/waku/2/status-signed-test-1:04070335f90e017ec1d7cb9a8e53d084dcf2c937cccb4272ed902881641613c6e0d46cf5531eee7ff8076616a2b8ac3436f71568f7a7032478fba3cac04c90e4e6"] }}' # Ports nim_waku_p2p_tcp_port: 30303 nim_waku_p2p_udp_port: 30303 nim_waku_websock_port: 443 nim_waku_metrics_port: 8008 nim_waku_rpc_tcp_port: 8545 nim_waku_rpc_tcp_addr: 0.0.0.0 # Limits nim_waku_p2p_max_connections: 200 # Store nim_waku_store_message_db_host: 'db-01.do-ams3.status.test.wg' nim_waku_store_message_db_name: 'nim-waku' nim_waku_store_message_db_user: 'nim-waku' nim_waku_store_message_db_pass: '{{lookup("bitwarden", "fleets/status/"+stage+"/db/nim-waku")}}' nim_waku_store_message_db_url: 'postgres://{{ nim_waku_store_message_db_user}}:{{ nim_waku_store_message_db_pass}}@{{ nim_waku_store_message_db_host }}:5432/{{nim_waku_store_message_db_name}}' nim_waku_store_message_retention_policy: '{{ (stage == "test") | ternary("size:15GB", "time:2592000") }}' # 14 or 30 days # Requires too much disk and takes too long. nim_waku_store_vacuum: false # DNS Discovery nim_waku_dns_disc_enabled: true nim_waku_dns_disc_url_map: test: 'enrtree://AIO6LUM3IVWCU2KCPBBI6FEH2W42IGK3ASCZHZGG5TIXUR56OGQUO@test.status.nodes.status.im' prod: 'enrtree://AL65EKLJAUXKKPG43HVTML5EFFWEZ7L4LOKTLZCLJASG4DSESQZEC@prod.status.nodes.status.im' nim_waku_dns_disc_url: '{{ nim_waku_dns_disc_url_map[stage] }}' # Discovery V5 nim_waku_disc_v5_enabled: true nim_waku_disc_v5_enr_auto_update: true nim_waku_disc_v5_port: 9000 # Websockets nim_waku_websocket_enabled: true nim_waku_websocket_secure_enabled: true nim_waku_websocket_domain: '{{ dns_entry }}' nim_waku_websocket_ssl_dir: '/etc/letsencrypt' nim_waku_websocket_ssl_cert: '/etc/letsencrypt/live/{{ nim_waku_websocket_domain }}/fullchain.pem' nim_waku_websocket_ssl_key: '/etc/letsencrypt/live/{{ nim_waku_websocket_domain }}/privkey.pem' # Consul Service nim_waku_consul_success_before_passing: '{{ (stage == "prod") | ternary(2, 4) }}' nim_waku_consul_failures_before_warning: '{{ (stage == "prod") | ternary(2, 4) }}' nim_waku_consul_failures_before_critical: '{{ (stage == "prod") | ternary(4, 8) }}' # LetsEncrypt via Certbot certbot_docker_enabled: true certbot_admin_email: 'devops@status.im' certbot_containers_to_stop: ['{{ nim_waku_cont_name }}'] certbot_certs: - domains: [ '{{ nim_waku_websocket_domain }}' ] # Open LibP2P Ports open_ports_default_comment: '{{ nim_waku_cont_name }}' open_ports_default_protocol: 'tcp' open_ports_default_chain: 'SERVICES' open_ports_list: - { port: '80', comment: 'Certbot verification' } - { port: '{{ nim_waku_p2p_tcp_port }}' } - { port: '{{ nim_waku_p2p_udp_port }}', protocol: 'udp' } - { port: '{{ nim_waku_disc_v5_port }}', protocol: 'udp' } - { port: '{{ nim_waku_websock_port }}' } - { port: '{{ nim_waku_metrics_port }}', chain: 'VPN', ipset: 'metrics.hq' } - { port: '{{ nim_waku_rpc_tcp_port }}', chain: 'VPN', ipset: '{{ env }}.{{ stage }}' }