# Bitcoin Knots Configuration # Generated by Ansible # Data directory (blockchain storage) datadir={{ bitcoin_large_data_dir }} # RPC Configuration server=1 rpcuser={{ bitcoin_rpc_user }} rpcpassword={{ bitcoin_rpc_password }} rpcbind={{ bitcoin_rpc_bind }} rpcport={{ bitcoin_rpc_port }} rpcallowip=0.0.0.0/0 # Network Configuration listen=1 port={{ bitcoin_p2p_port }} maxconnections={{ bitcoin_max_connections }} # Performance dbcache={{ bitcoin_dbcache_mb }} # Transaction Index (optional) {% if bitcoin_enable_txindex %} txindex=1 {% endif %} {# The live node carries this comment and the template never produced it, so a run would have silently deleted it. Harmless in itself, but matching it keeps this task at `ok` - which means any future `changed` here is a real signal rather than known noise. #} # Pruning (optional) # Logging logtimestamps=1 {% if bitcoin_logfile %} logfile={{ bitcoin_logfile }} {% else %} printtoconsole=1 {% endif %} # ZMQ Configuration {% if bitcoin_zmq_enabled | default(false) %} zmqpubrawblock={{ bitcoin_zmq_bind }}:{{ bitcoin_zmq_port_rawblock }} zmqpubrawtx={{ bitcoin_zmq_bind }}:{{ bitcoin_zmq_port_rawtx }} zmqpubhashblock={{ bitcoin_zmq_bind }}:{{ bitcoin_zmq_port_hashblock }} zmqpubhashtx={{ bitcoin_zmq_bind }}:{{ bitcoin_zmq_port_hashtx }} {% endif %} # Security disablewallet=1 {% if bitcoin_datum_gateway_enabled %} {# These were hand-added on the node and were NOT in this template, so running the playbook would have stripped them. blocknotify is how datum_gateway learns a new block landed; without it solo mining keeps grinding on a stale template - a silent failure that costs money rather than raising an error. Kept as a Jinja comment so the explanation stays in the repo and out of the deployed config. #} # Specific for DATUM gateway blockmaxsize={{ bitcoin_blockmaxsize }} blockmaxweight={{ bitcoin_blockmaxweight }} blocknotify={{ bitcoin_blocknotify }} maxmempool={{ bitcoin_maxmempool }} blockreconstructionextratxn={{ bitcoin_blockreconstructionextratxn }} {% endif %}