Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix: 3-node localnet in CI 🥽 #5085

Merged
merged 7 commits into from
Jul 25, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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: 4 additions & 0 deletions .github/workflows/_40_post_check.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,10 +12,14 @@ on:
ngrok:
type: boolean
default: false
node-count:
type: number
default: 1

env:
FORCE_COLOR: 1
SOLANA_VERSION: v1.18.8
NODE_COUNT: "${{ inputs.node-count }}-node"

permissions:
packages: read
Expand Down
47 changes: 24 additions & 23 deletions localnet/manage.sh
Original file line number Diff line number Diff line change
Expand Up @@ -8,21 +8,16 @@
# ╚██████╗██║ ██║██║ ██║██║██║ ╚████║██║ ███████╗██║██║ ███████╗╚██████╔╝╚██████╗██║ ██║███████╗██║ ╚████║███████╗ ██║
# ╚═════╝╚═╝ ╚═╝╚═╝ ╚═╝╚═╝╚═╝ ╚═══╝╚═╝ ╚══════╝╚═╝╚═╝ ╚══════╝ ╚═════╝ ╚═════╝╚═╝ ╚═╝╚══════╝╚═╝ ╚═══╝╚══════╝ ╚═╝



LOCALNET_INIT_DIR=localnet/init
WORKFLOW=build-localnet
GENESIS_NODES=("bashful" "doc" "dopey")
SELECTED_NODES=("bashful")
REQUIRED_BINARIES="engine-runner chainflip-node"
INIT_CONTAINERS="eth-init solana-init"
CORE_CONTAINERS="bitcoin geth polkadot redis"
ARB_CONTAINERS="sequencer staker-unsafe poster"
SOLANA_BASE_PATH="/tmp/solana"
CHAINFLIP_BASE_PATH="/tmp/chainflip"
export NODE_COUNT="1-node"

DEBUG_OUTPUT_DESTINATION=${DEBUG_OUTPUT_DESTINATION:-"$CHAINFLIP_BASE_PATH/debug.log"}
export LOCALNET_INIT_DIR=localnet/init
export WORKFLOW=build-localnet
export GENESIS_NODES=("bashful" "doc" "dopey")
export REQUIRED_BINARIES="engine-runner chainflip-node chainflip-broker-api chainflip-lp-api"
export INIT_CONTAINERS="eth-init solana-init"
export CORE_CONTAINERS="bitcoin geth polkadot redis"
export ARB_CONTAINERS="sequencer staker-unsafe poster"
export SOLANA_BASE_PATH="/tmp/solana"
export CHAINFLIP_BASE_PATH="/tmp/chainflip"
export DEBUG_OUTPUT_DESTINATION=${DEBUG_OUTPUT_DESTINATION:-"$CHAINFLIP_BASE_PATH/debug.log"}

source ./localnet/helper.sh

Expand All @@ -38,6 +33,14 @@ if [[ $CI == true ]]; then
set -x
additional_docker_compose_up_args="--quiet-pull"
additional_docker_compose_down_args="--volumes --remove-orphans"
if [[ -z NODE_COUNT ]]; then
export NODE_COUNT="1-node"
fi
if [[ $NODE_COUNT == "1-node" ]]; then
export SELECTED_NODES="${GENESIS_NODES[0]}"
elif [[ $NODE_COUNT == "3-node" ]]; then
export SELECTED_NODES="${GENESIS_NODES[@]}"
fi
else
additional_docker_compose_up_args=""
additional_docker_compose_down_args="--volumes --remove-orphans"
Expand Down Expand Up @@ -73,17 +76,17 @@ get-workflow() {
done
if [[ $WORKFLOW =~ build-localnet|recreate ]]; then
echo "❓ Would you like to run a 1 or 3 node network? (Type 1 or 3)"
read -r NODE_COUNT
if [[ $NODE_COUNT == "1" ]]; then
SELECTED_NODES=("${GENESIS_NODES[0]}")
elif [[ $NODE_COUNT == "3" ]]; then
SELECTED_NODES=("${GENESIS_NODES[@]}")
read -r NODE_COUNT_INPUT
if [[ "$NODE_COUNT_INPUT" == "1" ]]; then
export SELECTED_NODES="${GENESIS_NODES[0]}"
elif [[ "$NODE_COUNT_INPUT" == "3" ]]; then
export SELECTED_NODES="${GENESIS_NODES[@]}"
else
echo "❌ Invalid NODE_COUNT value: $NODE_COUNT"
exit 1
fi
echo "🎩 You have chosen $NODE_COUNT node(s) network"
export NODE_COUNT="$NODE_COUNT-node"
export NODE_COUNT="$NODE_COUNT_INPUT-node"

if [[ -z "${BINARY_ROOT_PATH}" ]]; then
echo "💻 Please provide the location to the binaries you would like to use."
Expand Down Expand Up @@ -150,7 +153,6 @@ build-localnet() {
echo "☀️ Solana not installed, skipping..."
fi


echo "🦑 Waiting for Arbitrum nodes to start"
$DOCKER_COMPOSE_CMD -f localnet/docker-compose.yml -p "chainflip-localnet" up $ARB_CONTAINERS $additional_docker_compose_up_args -d >>$DEBUG_OUTPUT_DESTINATION 2>&1
echo "🪄 Deploying L2 Contracts"
Expand Down Expand Up @@ -179,7 +181,6 @@ build-localnet() {
echo "💚 $NODE's chainflip-node is running!"
((RPC_PORT++))
done

NODE_COUNT=$NODE_COUNT \
BINARY_ROOT_PATH=$BINARY_ROOT_PATH \
SC_RPC_PORT=$INIT_RPC_PORT \
Expand Down
Loading