Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
37 commits
Select commit Hold shift + click to select a range
1108a07
Add preliminary full-node config
AnotherDroog Sep 26, 2019
c10c25e
Enable full-node by default
AnotherDroog Sep 26, 2019
8377652
Remove unused compose file
AnotherDroog Sep 26, 2019
18671b5
Switch lnd mode
AnotherDroog Sep 26, 2019
91d85e4
Replace docker logs with dynamic command
AnotherDroog Sep 26, 2019
c035f73
Amend lnd and bitcoind config
AnotherDroog Sep 26, 2019
d04091d
.gitignore: Ignore bitcoin directories
AnotherDroog Sep 27, 2019
5f3cf97
config.py: Add bitcoin & invoicer
AnotherDroog Sep 27, 2019
431b107
bitcoind.py: Generate rpcauth for bitcoin and invoicer
AnotherDroog Sep 27, 2019
722dccc
setup.py: Add configobj dependency
AnotherDroog Sep 27, 2019
4f56cbf
Fixes for pylint
AnotherDroog Sep 27, 2019
844adcb
bitcoind.py: Ensure utf-8 and clean up
AnotherDroog Sep 27, 2019
2dc7b8f
Only change rpcauth if unset
AnotherDroog Sep 27, 2019
d610ea9
Set rpcauth automatically on start
AnotherDroog Sep 27, 2019
2a3207e
Original commit of ConfigObj
AnotherDroog Sep 28, 2019
f3a760c
Let ConfigObj accept variable delimiters
AnotherDroog Sep 28, 2019
5917e1d
Improve error handling
AnotherDroog Sep 28, 2019
367882a
Normalize configs and expose datadir to compose
AnotherDroog Sep 28, 2019
6c4adac
setup.py: Remove configobj dependency since it is in tree
AnotherDroog Sep 28, 2019
f687ad1
setup.py: Add toml dependency
AnotherDroog Sep 28, 2019
e4148fe
noma.yml: Only run flake8 on noma
AnotherDroog Sep 28, 2019
b263145
noma.yml: Only run flake8 on noma
AnotherDroog Sep 28, 2019
ee1bbd2
release.yml: Only run flake8 on noma
AnotherDroog Sep 28, 2019
9681eaa
setup.py: Add configobj package
AnotherDroog Sep 28, 2019
c0289bd
Merge remote-tracking branch 'origin/fullnode' into fullnode
AnotherDroog Sep 28, 2019
0373237
invoicer.conf: Normalize format
AnotherDroog Sep 28, 2019
f210ccb
bitcoind.py: Handle toml config files
AnotherDroog Sep 28, 2019
b7a4245
setup.py: Pin requests version
AnotherDroog Oct 1, 2019
8244183
docker-compose.yml: Bump bitcoind version to 0.18.1
AnotherDroog Oct 1, 2019
ebd0421
setup.py: Add comment for ConfigObj
AnotherDroog Oct 5, 2019
c414ddd
install.py: Add comment for WIP
AnotherDroog Oct 5, 2019
c79b046
lnd.conf: Remove redundant setting
AnotherDroog Oct 5, 2019
3e03169
bitcoind.py: Make section argument optional
AnotherDroog Oct 5, 2019
7fd5417
bitcoind.py: Update docstring
AnotherDroog Oct 5, 2019
082cd92
bitcoind.py: refactor WIP
AnotherDroog Oct 5, 2019
bd0614c
fix KeyError
Oct 12, 2019
62651c4
Merge pull request #72 from ln2max/fullnode-fix
ln2max Oct 16, 2019
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .github/workflows/noma.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,9 +25,9 @@ jobs:
run: |
pip install flake8
# stop the build if there are Python syntax errors or undefined names
flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics
flake8 *.py noma/*.py tests/*.py --count --select=E9,F63,F7,F82 --show-source --statistics
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What are the --select=???? things? Could you tl;dr in a comment above?

# exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide
flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics
flake8 *.py noma/*.py tests/*.py --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics
- name: Lint with pylint
run: |
pip install pylint
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,9 +24,9 @@ jobs:
run: |
pip install flake8
# stop the build if there are Python syntax errors or undefined names
flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics
flake8 *.py noma/*.py tests/*.py --count --select=E9,F63,F7,F82 --show-source --statistics
# exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide
flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics
flake8 *.py noma/*.py tests/*.py --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics
- name: Lint with pylint
run: |
pip install pylint
Expand Down
5 changes: 4 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@
# lnd
lnd/neutrino/
lnd/

# bitcoin
bitcoind/

# PyCharm
.idea
Expand Down
19 changes: 7 additions & 12 deletions bitcoind/bitcoind.conf → bitcoind/bitcoin.conf
Original file line number Diff line number Diff line change
Expand Up @@ -6,15 +6,18 @@ maxmempool=50
# Reduce storage requirements by only storing most recent N MiB of block. This mode is incompatible with -txindex and -rescan. WARNING: Reverting this setting requires re-downloading the entire blockchain. (default: 0 = disable pruning blocks, 1 = allow manual pruning via RPC, greater than 550 = automatically prune blocks to stay under target size in MiB).
prune=550

# Remap datadir in docker-compose.yml
datadir=/datadir

# [network]
# Bind to given address and always listen on it. Use [host]:port notation for IPv6.
bind=0.0.0.0
# Maintain at most N connections to peers.
maxconnections=40
maxconnections=8
# Tries to keep outbound traffic under the given target (in MiB per 24h), 0 = no limit.
maxuploadtarget=5000
maxuploadtarget=1000
# Use separate SOCKS5 proxy <ip:port> to reach peers via Tor hidden services.
onion=127.0.0.1:9050
#onion=127.0.0.1:9050

# [rpc]
# Accept command line and JSON-RPC commands.
Expand All @@ -23,16 +26,8 @@ server=1
rest=1
# [rpc]
# Username and hashed password for JSON-RPC connections. The field <userpw> comes in the format: <USERNAME>:<SALT>$<HASH>. RPC clients connect using rpcuser=<USERNAME>/rpcpassword=<PASSWORD> arguments. You can generate this value with the ./share/rpcauth/rpcauth.py script in the Bitcoin Core repository. This option can be specified multiple times.
rpcauth=lncm:salt$hash
rpcauth=
# Listen for JSON-RPC connections on this port
rpcport=8332
# Allow JSON-RPC connections from specified source. Valid for <ip> are a single IP (e.g. 1.2.3.4), a network/netmask (e.g. 1.2.3.4/255.255.255.0) or a network/CIDR (e.g. 1.2.3.4/24). This option can be specified multiple times.
rpcallowip=127.0.0.1
rpcallowip=192.168.0.1/24
rpcallowip=192.168.1.1/24
rpcallowip=10.0.0.0/8
rpcallowip=172.16.0.0/12
rpcallowip=172.18.0.0/16

# Reserved for generating RPC auth
GENERATEDRPCAUTH
30 changes: 0 additions & 30 deletions compose/clearnet/docker-compose.yml

This file was deleted.

31 changes: 31 additions & 0 deletions compose/fullnode/docker-compose.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
version: '3.7'
services:
bitcoind:
image: lncm/bitcoind:v0.18.1
entrypoint: bitcoind
volumes:
- /media/noma/bitcoind:/root/.bitcoin
- /media/noma/bitcoind:/datadir
restart: on-failure
network_mode: host

lnd:
image: lncm/lnd:0.7.1-experimental-watchtower-neutrino
volumes:
- /media/noma/lnd/fullnode:/root/.lnd
- /media/noma/lnd/fullnode/lnd.conf:/home/lncm/.lnd/lnd.conf
restart: on-failure
network_mode: host

invoicer:
image: lncm/invoicer:v0.6.2
volumes:
- /media/noma/invoicer:/root/.lncm
- /media/noma/lnd/fullnode:/lnd
- /media/noma/public_html:/static
- /media/noma/invoicer:/logs
depends_on:
- bitcoind
- lnd
restart: on-failure
network_mode: host
Loading