deployment rln contract script updated for waku-rlnv2-contract repo

This commit is contained in:
stubbsta 2024-05-30 14:52:09 +02:00
parent 800790f078
commit 372bebab87
No known key found for this signature in database
3 changed files with 25 additions and 61 deletions

View File

@ -2,29 +2,31 @@
set -e set -e
# 1. Install foundry # 1. Install foundry and pnpm
curl -L https://foundry.paradigm.xyz | bash && . /root/.bashrc && foundryup && export PATH=$PATH:$HOME/.foundry/bin curl -L https://foundry.paradigm.xyz | bash && . /root/.bashrc && foundryup && export PATH=$PATH:$HOME/.foundry/bin
#. 2. Clone and build waku-rln-contract repo echo "installing pnpm..."
if [ -d "/waku-rln-contract" ]; then npm install -g pnpm
echo "waku-rln-contract directory already exists."
else # 2. Clone and build the repository
git clone https://github.com/waku-org/waku-rln-contract.git if [ ! -d "waku-rlnv2-contract" ]; then
git clone https://github.com/waku-org/waku-rlnv2-contract.git
fi fi
cd /waku-rln-contract cd /waku-rlnv2-contract
git checkout rln-v2
# 3. Compile
echo "forge install..." echo "forge install..."
forge install forge install
echo "yarn install..." echo "pnpm install..."
yarn install pnpm install
echo "yarn compile..." echo "forge build..."
yarn compile forge build
# 3. Create .env file with RPC_PROVIDER variable # 4. Export environment variables
echo "creating .env file with RPC_PROVIDER=$RPC_URL" export API_KEY_ETHERSCAN=123
echo "RPC_PROVIDER=$RPC_URL" > .env export RCL_URL=$RCL_URL
export PRIVATE_KEY=$PRIVATE_KEY
# 4. Deploy the contracts # 5. Deploy the contract
yarn deploy localhost_integration forge script script/Deploy.s.sol:Deploy --broadcast --fork-url $RPC_URL --private-key $PRIVATE_KEY

View File

@ -1,40 +0,0 @@
#!/bin/sh
set -e
# 2. Install pnpm
echo "installing pnpm..."
npm install -g -d pnpm
# curl -L -o /usr/local/bin/pnpm https://github.com/pnpm/pnpm/releases/download/v9.1.3/pnpm-linux-x64
# PNPM_HOME=/usr/local/bin/
# chmod +x /usr/local/bin/pnpm
# 1. Install foundry
echo "installing foundry..."
curl -L https://foundry.paradigm.xyz | bash && . /root/.bashrc && foundryup && export PATH=$PATH:$HOME/.foundry/bin
# 3. Clone and build waku-rln-contract repo
if [ -d "/waku-rln-contract" ]; then
echo "waku-rln-contract directory already exists."
else
git clone https://github.com/waku-org/waku-rlnv2-contract.git
fi
cd /waku-rlnv2-contract
echo "forge install..."
forge install
echo "pnpm install..."
pnpm install
echo "forge build..."
forge build
# 4. Create .env file with RPC_PROVIDER variable
echo "creating .env file with RPC_PROVIDER=$RPC_URL"
echo "RPC_PROVIDER=$RPC_URL" > .env
# 5. Deploy the contracts
forge script script/Deploy.s.sol --broadcast --fork-url $RPC_URL

View File

@ -20,10 +20,10 @@ services:
- anvil - anvil
--port=8545 --port=8545
--host=0.0.0.0 --host=0.0.0.0
--chain-id=1337
--accounts=${NUM_NWAKU_NODES:-5} --accounts=${NUM_NWAKU_NODES:-5}
--allow-origin=* --allow-origin=*
--block-time=12 --block-time=12
--chain-id=1234
--silent --silent
--config-out=/shared/anvil-config.txt --config-out=/shared/anvil-config.txt
volumes: volumes:
@ -36,12 +36,14 @@ services:
labels: labels:
com.centurylinklabs.watchtower.enable: '${WATCHTOWER_ENABLED:-false}' com.centurylinklabs.watchtower.enable: '${WATCHTOWER_ENABLED:-false}'
environment: environment:
- PRIVATE_KEY=${PRIVATE_KEY}
- RLNV2=${RLNV2}
- RPC_URL=${RPC_URL:-http://foundry:8545} - RPC_URL=${RPC_URL:-http://foundry:8545}
entrypoint: sh entrypoint: sh
command: command:
- '/opt/deploy_rlnv2_contract.sh' - '/opt/deploy_rln_contract.sh'
volumes: volumes:
- ./deploy_rlnv2_contract.sh:/opt/deploy_rlnv2_contract.sh - ./deploy_rln_contract.sh:/opt/deploy_rln_contract.sh
depends_on: depends_on:
- foundry - foundry
networks: networks: