diff --git a/.github/workflows/dev.yml b/.github/workflows/dev.yml new file mode 100644 index 0000000..1097576 --- /dev/null +++ b/.github/workflows/dev.yml @@ -0,0 +1,18 @@ +name: test_deployment_full_staking_node + +on: + push: + branches: + - main + pull_request: + +jobs: + run-lido-csm-staking-node: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v4 + - name: Install dependencies + run: ./install-nimbus-nethermind.sh skip + - name: Deploy a Lido CSM Staking node, consisting of EL CL VC and mevboost + run: python3 ./deploy-nimbus-nethermind.py --skip_prompts="true" --network="HOLESKY" --install_config="Lido CSM Staking Node" diff --git a/deploy-nimbus-nethermind.py b/deploy-nimbus-nethermind.py index 6bf246b..9cbf0ac 100644 --- a/deploy-nimbus-nethermind.py +++ b/deploy-nimbus-nethermind.py @@ -31,6 +31,16 @@ import argparse from dotenv import load_dotenv, dotenv_values +import os + +def clear_screen(): + if os.name == 'posix': # Unix-based systems (e.g., Linux, macOS) + os.system('clear') + elif os.name == 'nt': # Windows + os.system('cls') + +clear_screen() # Call the function to clear the screen + # Valid configurations valid_networks = ['MAINNET', 'HOLESKY', 'SEPOLIA'] valid_exec_clients = ['NETHERMIND'] @@ -230,7 +240,6 @@ def get_computer_platform(): # Set to lowercase consensus_client = consensus_client.lower() -Screen().clear() # Validates an eth address def is_valid_eth_address(address): @@ -248,7 +257,6 @@ def is_valid_eth_address(address): else: print("Invalid Ethereum address. Try again.") -Screen().clear() # Validates an CL beacon node address with port def validate_beacon_node_address(ip_port): @@ -272,7 +280,7 @@ def validate_beacon_node_address(ip_port): else: BN_ADDRESS=args.vc_only_bn_address -Screen().clear() + if not args.skip_prompts: # Format confirmation message @@ -797,4 +805,4 @@ def finish_install(): install_nimbus() run_nimbus_checkpoint_sync() install_nimbus_validator() -finish_install() \ No newline at end of file +finish_install()