Skip to content

Commit b6ace9f

Browse files
committed
resolve conflicts
1 parent e4aa631 commit b6ace9f

6 files changed

Lines changed: 56 additions & 38 deletions

File tree

Makefile

Lines changed: 14 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,14 @@ COMMANDS := sudo tar zstd getent stress
22
$(foreach bin,$(COMMANDS),\
33
$(if $(shell command -v $(bin) 2> /dev/null),$(info),$(error Missing required dependency: `$(bin)`)))
44

5-
# ifeq (log,$(firstword $(MAKECMDGOALS)))
65
TARGET := $(firstword $(MAKECMDGOALS))
76
PARAMS := $(filter-out $(TARGET),$(MAKECMDGOALS))
8-
ifeq (up-genesis,$(firstword $(MAKECMDGOALS)))
7+
# ifeq (up-genesis,$(firstword $(MAKECMDGOALS)))
8+
ifeq ($(TARGET),up-genesis)
99
export CHAINSTATE_DIR := $(PWD)/docker/chainstate/genesis
1010
endif
11-
ifeq (genesis,$(firstword $(MAKECMDGOALS)))
11+
# ifeq (genesis,$(firstword $(MAKECMDGOALS)))
12+
ifeq ($(TARGET),genesis)
1213
export CHAINSTATE_DIR := $(PWD)/docker/chainstate/genesis
1314
endif
1415

@@ -33,28 +34,25 @@ $(CHAINSTATE_DIR): /usr/bin/tar /usr/bin/zstd
3334
@mkdir -p $@
3435
if [ -f "$(CHAINSTATE_ARCHIVE)" -a "$(MAKECMDGOALS)" = "up" ]; then
3536
sudo tar --same-owner -xf $(CHAINSTATE_ARCHIVE) -C $(CHAINSTATE_DIR) || false
36-
sudo rm -rf $(CHAINSTATE_DIR)/stacks-signer*
3737
fi
3838

3939
# Boot the network from the local chainstate archive
40-
up: check-network-running | $(CHAINSTATE_DIR)
41-
# up: check-network-running | build $(CHAINSTATE_DIR)
40+
up: check-not-running | build $(CHAINSTATE_DIR)
4241
@echo "Starting $(PROJECT) network from archive at Epoch 3.2"
4342
@echo " Chainstate Dir: $(CHAINSTATE_DIR)"
4443
@echo " Chainstate Archive: $(CHAINSTATE_ARCHIVE)"
4544
echo "$(CHAINSTATE_DIR)" > .current-chainstate-dir
4645
docker compose -f docker/docker-compose.yml --profile default -p $(PROJECT) up -d
4746

48-
4947
# Run the network from genesis
50-
genesis: check-network-running | $(CHAINSTATE_DIR) /usr/bin/sudo
51-
# # genesis: check-network-running | build $(CHAINSTATE_DIR) /usr/bin/sudo
48+
genesis: check-not-running | build $(CHAINSTATE_DIR) /usr/bin/sudo
5249
@echo "Starting $(PROJECT) network from genesis"
53-
@if [ -d $(PWD)/docker/chainstate/genesis ]; then \
50+
@if [ -d "$(CHAINSTATE_DIR)/logs" ]; then \
5451
echo " Removing existing genesis chainstate dir: $(CHAINSTATE_DIR)"; \
55-
sudo rm -rf $(PWD)/docker/chainstate/genesis; \
52+
rm -rf $(CHAINSTATE_DIR)/logs; \
5653
fi
57-
mkdir -p $(PWD)/docker/chainstate/genesis
54+
@echo " Chainstate Dir: $(CHAINSTATE_DIR)"
55+
mkdir -p "$(CHAINSTATE_DIR)"
5856
echo "$(CHAINSTATE_DIR)" > .current-chainstate-dir
5957
docker compose -f docker/docker-compose.yml --profile default -p $(PROJECT) up -d
6058

@@ -63,8 +61,7 @@ up-genesis: genesis
6361
# secondary name to bring down genesis network
6462
down-genesis: down
6563

66-
# Shut down the netork (chainstate and logs will be preserved, but not logs)
67-
# todo: we can capture logs. will need to remove them for things like snapshot
64+
# Shut down the network (chainstate and logs will be preserved, but not logs)
6865
down: backup-logs current-chainstate-dir
6966
@echo "Shutting down $(PROJECT) network"
7067
docker compose -f docker/docker-compose.yml --profile default -p $(PROJECT) down
@@ -107,7 +104,6 @@ backup-logs: /usr/bin/sudo
107104
exit 1; \
108105
fi; \
109106
if [ ! -d "$(ACTIVE_CHAINSTATE_DIR)/logs" ]; then \
110-
echo "Chainstate not found $(ACTIVE_CHAINSTATE_DIR)/logs";\
111107
mkdir -p $(ACTIVE_CHAINSTATE_DIR)/logs;\
112108
fi; \
113109
echo "Backing up logs to $(ACTIVE_CHAINSTATE_DIR)/logs"; \
@@ -177,7 +173,7 @@ monitor:
177173
./docker/tests/chain-monitor.sh
178174

179175
# if the network is already running, we need to exit (ex: trying to start the network when it's already running)
180-
check-network-running:
176+
check-not-running:
181177
@if test `docker compose ls --filter name=$(PROJECT) -q`; then \
182178
echo ""; \
183179
echo "WARNING: Network appears to be running or was not properly shut down."; \
@@ -203,10 +199,10 @@ check-params: | check-running
203199
exit 1; \
204200
fi
205201

206-
# remove any existing chainstates (leave all docker images/layers)
202+
# force stop and remove any existing chainstates (leaving all docker images/layers)
207203
clean: down-force
208204
sudo rm -rf ./docker/chainstate/*
209205

210206

211-
.PHONY: up genesis up-genesis down-genesis down down-force build build-no-cache log log-all backup-logs current-chainstate-dir snapshot pause unpause stop start restart stress test monitor check-network-running check-running check-params clean
207+
.PHONY: up genesis up-genesis down-genesis down down-force build build-no-cache log log-all backup-logs current-chainstate-dir snapshot pause unpause stop start restart stress test monitor check-not-running check-running check-params clean
212208
.ONESHELL: all-in-one-shell

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -111,7 +111,7 @@ This will first bring down the network, then replace the existing `./docker/chai
111111
## Containers
112112

113113
- **bitcoin**: Runs a bitcoin regtest node
114-
- **bitcoin-miner**: creates 5 bitcoin regtest wallets and mines regtest blocks at a configurable cadence
114+
- **bitcoin-miner**: creates 3 bitcoin regtest wallets and mines regtest blocks at a configurable cadence
115115
- **stacks-miner-1**: mines stacks blocks and sends events to stacks-signer-1
116116
- **stacks-miner-2**: mines stacks blocks and sends events to stacks-signer-2
117117
- **stacks-miner-3**: mines stacks blocks and sends events to stacks-signer-3

docker/stacks/stacks-follower.toml

Lines changed: 30 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,33 +1,40 @@
1+
# stacks-node devnet follower confifg
12
[node]
2-
working_dir = "/data/chainstate"
3+
name = "$MINER_NAME"
34
rpc_bind = "0.0.0.0:20443"
45
p2p_bind = "0.0.0.0:20444"
6+
prometheus_bind = "0.0.0.0:9153"
7+
working_dir = "/data/chainstate"
58
bootstrap_node = "$BOOTSTRAP_NODE"
6-
name = "follower"
7-
8-
use_test_genesis_chainstate = true
9-
pox_sync_sample_secs = 0
10-
wait_time_for_blocks = 0
119
wait_time_for_microblocks = 0
1210
mine_microblocks = false
11+
use_test_genesis_chainstate = true
12+
pox_sync_sample_secs = 0
13+
wait_time_for_blocks = 200
1314
microblock_frequency = 1000
1415

16+
fault_injection_block_push_fail_probability = $BLOCK_PUSH_FAIL_PROBABILITY
17+
1518
[connection_options]
16-
auth_token = "12345"
19+
timeout = 15
20+
connect_timeout = 15
21+
handshake_timeout = 15
22+
idle_timeout = 15
23+
dns_timeout = 15
1724
private_neighbors = true
1825

1926
[burnchain]
27+
rpc_port = $BITCOIN_RPC_PORT
28+
peer_port = $BITCOIN_PEER_PORT
2029
pox_prepare_length = $POX_PREPARE_LENGTH
2130
pox_reward_length = $POX_REWARD_LENGTH
22-
peer_port = $BITCOIN_PEER_PORT
23-
rpc_port = $BITCOIN_RPC_PORT
2431
chain = "bitcoin"
2532
mode = "nakamoto-neon"
2633
poll_time_secs = 1
2734
magic_bytes = "T3"
28-
### bitcoind-regtest connection info
2935
peer_host = "$BITCOIN_PEER_HOST"
30-
timeout = 30
36+
username = "$BITCOIN_RPC_USER"
37+
password = "$BITCOIN_RPC_PASS"
3138

3239
[[burnchain.epochs]]
3340
epoch_name = "1.0"
@@ -77,6 +84,12 @@ epoch_name = "3.2"
7784
address = "ST2SBXRBJJTH7GV5J93HJ62W2NRRQ46XYBK92Y039" # Deployer Account
7885
amount = 10000000000000000
7986

87+
[[ustx_balance]]
88+
# This is a 2-3 multi-sig address controlled using the above three
89+
# addresses. The resulting multi-sig address below was created using the SignerWallet struct.
90+
address = "SN3R84XZYA63QS28932XQF3G1J8R9PC3W76P9CSQS"
91+
amount = 10000000000000000
92+
8093
[[ustx_balance]]
8194
address = "ST24VB7FBXCBV6P0SRDSPSW0Y2J9XHDXNHW9Q8S7H" # Signer 1 Account
8295
amount = 10000000000000000
@@ -102,11 +115,13 @@ address = "ST1MDWBDVDGAANEH9001HGXQA6XRNK7PX7A7X8M6R" # Stacker 3
102115
amount = 10000000000000000
103116

104117
[[ustx_balance]]
105-
# This is a 2-3 multi-sig address controlled using the above three
106-
# addresses. The resulting multi-sig address below was created using the SignerWallet struct.
107-
address = "SN3R84XZYA63QS28932XQF3G1J8R9PC3W76P9CSQS"
118+
address = "ST332DWHNM323264X869MKXFZABSE5WZ60EA07TJ1" # Tester 1
119+
amount = 10000000000000000
120+
121+
[[ustx_balance]]
122+
address = "ST2FY5WGSFA209NFHDT08NCB8Y9J3P1H19YR2D674" # Tester 2
108123
amount = 10000000000000000
109124

110125
[[ustx_balance]]
111-
address = "ST3497E9JFQ7KB9VEHAZRWYKF3296WQZEXBPXG193" # Demo principal
126+
address = "ST3SW0AXHXFDHGQY2XMMDHN6T7VPY395WS7ZRGQCD" # Tester 3
112127
amount = 10000000000000000

docker/stacks/stacks-miner_signer.toml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
# stacks-node devnet miner config
2+
# event observers:
3+
# - stacks-signer
14
[node]
25
name = "$MINER_NAME"
36
rpc_bind = "0.0.0.0:20443"

docker/stacks/stacks-miner_signer_api.toml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1+
# stacks-node devnet miner config
2+
# event observers:
3+
# - stacks-blockchain-api
4+
# - stacks-signer
15
[node]
26
name = "$MINER_NAME"
37
rpc_bind = "0.0.0.0:20443"

docker/stacks/stacks-signer.toml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1+
# stacks-signer devnet config
12
stacks_private_key = "$SIGNER_PRIVATE_KEY"
2-
node_host = "$STACKS_NODE_HOST" # eg "127.0.0.1:20443"
3-
# must be added as event_observer in node config:
4-
endpoint = "$STACKS_SIGNER_ENDPOINT" # e.g 127.0.0.1:30000
3+
node_host = "$STACKS_NODE_HOST"
4+
endpoint = "$STACKS_SIGNER_ENDPOINT"
55
network = "testnet"
66
auth_password = "12345"
77
db_path = "/data/signer/stacks-signer.sqlite"
8-
metrics_endpoint = "0.0.0.0:9153" # expose metrics for external collection
8+
metrics_endpoint = "0.0.0.0:9153"

0 commit comments

Comments
 (0)