Skip to content

Commit

Permalink
Cleanup (#157)
Browse files Browse the repository at this point in the history
* merge scripts

* update script files
  • Loading branch information
ChainDev931105 authored Aug 26, 2024
1 parent b255ff5 commit 83449b4
Show file tree
Hide file tree
Showing 40 changed files with 147 additions and 922 deletions.
45 changes: 17 additions & 28 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -6,58 +6,58 @@ run-geth:
cd docker && DEV_PERIOD=1 docker compose up -d geth --wait

init-accounts:
node util/init-accounts.js
node script/hardhat/init-accounts.js

generate-accounts:
node util/generate-accounts.js
node script/hardhat/generate-accounts.js

.PHONY: run-geth init-accounts

# Deploy scripts

deploy-eigenlayer:
forge script script/localnet/M1_Deploy.s.sol:Deployer_M1 --rpc-url ${RPC_URL} --private-key ${PRIVATE_KEY} --broadcast -vvvv --slow
forge script script/foundry/localnet/M1_Deploy.s.sol:Deployer_M1 --rpc-url ${RPC_URL} --private-key ${PRIVATE_KEY} --broadcast -vvvv --slow

deploy-weth9:
forge script script/localnet/DeployWETH9.s.sol:DeployWETH9 --rpc-url ${RPC_URL} --private-key ${PRIVATE_KEY} --broadcast -vvvvv --slow
forge script script/foundry/localnet/DeployWETH9.s.sol:DeployWETH9 --rpc-url ${RPC_URL} --private-key ${PRIVATE_KEY} --broadcast -vvvv --slow

add-strategy:
forge script script/localnet/AddStrategy.s.sol:AddStrategy --rpc-url ${RPC_URL} --private-key ${PRIVATE_KEY} --broadcast -vvvvv --slow
forge script script/foundry/localnet/AddStrategy.s.sol:AddStrategy --rpc-url ${RPC_URL} --private-key ${PRIVATE_KEY} --broadcast -vvvv --slow

register-operator:
export PRIVATE_KEY=${PRIVATE_KEY} && export RPC_URL=${RPC_URL} && node util/register-operator.js
export PRIVATE_KEY=${PRIVATE_KEY} && export RPC_URL=${RPC_URL} && node script/hardhat/register-operator.js

deploy-lagrange:
forge script script/Deploy_LGR.s.sol:Deploy --rpc-url ${RPC_URL} --private-key ${PRIVATE_KEY} --broadcast -vvvvv --slow
forge script script/foundry/Deploy_LGR.s.sol:Deploy --rpc-url ${RPC_URL} --private-key ${PRIVATE_KEY} --broadcast -vvvv --slow

deploy-verifiers:
export PRIVATE_KEY=${PRIVATE_KEY} && export RPC_URL=${RPC_URL} && npx hardhat run util/deploy-verifiers.js

add-quorum:
forge script script/Add_Quorum.s.sol:AddQuorum --rpc-url ${RPC_URL} --private-key ${PRIVATE_KEY} --broadcast -vvvvv --slow
forge script script/foundry/Add_Quorum.s.sol:AddQuorum --rpc-url ${RPC_URL} --private-key ${PRIVATE_KEY} --broadcast -vvvv --slow

init-committee:
forge script script/Init_Committee.s.sol:InitCommittee --rpc-url ${RPC_URL} --private-key ${PRIVATE_KEY} --broadcast -vvvvv --slow
forge script script/foundry/Init_Committee.s.sol:InitCommittee --rpc-url ${RPC_URL} --private-key ${PRIVATE_KEY} --broadcast -vvvv --slow

deposit-stake:
export PRIVATE_KEY=${PRIVATE_KEY} && export RPC_URL=${RPC_URL} && node util/deposit-stake.js
export PRIVATE_KEY=${PRIVATE_KEY} && export RPC_URL=${RPC_URL} && node script/hardhat/deposit-stake.js

.PHONY: deploy-weth9 deploy-eigenlayer add-strategy register-operator deploy-lagrange add-quorum init-committee deposit-stake

deploy-register:
export PRIVATE_KEY=${PRIVATE_KEY} && export RPC_URL=${RPC_URL} && node util/deploy-register.js
export PRIVATE_KEY=${PRIVATE_KEY} && export RPC_URL=${RPC_URL} && node script/hardhat/deploy-register.js

deploy-mock:
forge script script/Deploy_Mock.s.sol:DeployMock --rpc-url ${RPC_URL} --private-key ${PRIVATE_KEY} --broadcast -vvvvv --slow
forge script script/foundry/Deploy_Mock.s.sol:DeployMock --rpc-url ${RPC_URL} --private-key ${PRIVATE_KEY} --broadcast -vvvv --slow

update-strategy-config:
export PRIVATE_KEY=${PRIVATE_KEY} && export RPC_URL=${RPC_URL} && node util/update-strategy-config.js
export PRIVATE_KEY=${PRIVATE_KEY} && export RPC_URL=${RPC_URL} && node script/hardhat/update-strategy-config.js

update-config:
node util/update-config.js
node script/hardhat/update-config.js

distribute:
node util/distributor.js
node script/hardhat/distributor.js

.PHONY: deploy-mock deploy-register update-config update-strategy-config distribute

Expand All @@ -73,10 +73,8 @@ docker-build: stop

# Test
test:
forge test -vvvvv
forge test -vvvv
npx hardhat test
test-gas:
forge script ./script/TestGas.s.sol:TestGas -vvvv --slow
.PHONY: test

clean: stop
Expand All @@ -86,7 +84,7 @@ give-permission:
sudo chmod -R go+rxw docker/geth_db

# Deploy
deploy-eigen-localnet: run-geth init-accounts generate-accounts deploy-weth9 update-strategy-config deploy-eigenlayer add-strategy register-operator deploy-lagrange update-config add-quorum init-committee deploy-register
deploy-eigen-localnet: run-geth init-accounts generate-accounts deploy-weth9 update-strategy-config deploy-eigenlayer add-strategy register-operator deploy-lagrange update-config add-quorum init-committee deploy-register

deploy-mock-localnet: run-geth init-accounts generate-accounts deploy-mock deploy-lagrange update-config add-quorum deploy-register init-committee

Expand All @@ -107,12 +105,3 @@ solhint:
npx solhint "contracts/protocol/*.sol"

.PHONY: format

# Register one random operator
generate-one-operator:
node util/generate-operator-config.js

register-one-operator: generate-one-operator
export RPC_URL=${RPC_URL} && node util/register-one-operator.js

.PHONY: generate-one-operator register-one-operator
10 changes: 0 additions & 10 deletions config/random_operator.json

This file was deleted.

7 changes: 3 additions & 4 deletions script/Add_Quorum.s.sol → script/foundry/Add_Quorum.s.sol
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,11 @@
pragma solidity ^0.8.20;

import "forge-std/Script.sol";
import "forge-std/Test.sol";

import {IVoteWeigher} from "../contracts/interfaces/IVoteWeigher.sol";
import {StakeManager} from "../contracts/library/StakeManager.sol";
import {IVoteWeigher} from "../../contracts/interfaces/IVoteWeigher.sol";
import {StakeManager} from "../../contracts/library/StakeManager.sol";

contract AddQuorum is Script, Test {
contract AddQuorum is Script {
string public deployedLGRPath = string(bytes("script/output/deployed_lgr.json"));
string public configPath = string(bytes("config/LagrangeService.json"));

Expand Down
31 changes: 15 additions & 16 deletions script/Deploy_LGR.s.sol → script/foundry/Deploy_LGR.s.sol
Original file line number Diff line number Diff line change
Expand Up @@ -8,28 +8,27 @@ import {IDelegationManager} from "eigenlayer-contracts/src/contracts/interfaces/
import {EmptyContract} from "eigenlayer-contracts/src/test/mocks/EmptyContract.sol";
import {IAVSDirectory} from "eigenlayer-contracts/src/contracts/interfaces/IAVSDirectory.sol";

import {LagrangeService} from "../contracts/protocol/LagrangeService.sol";
import {LagrangeServiceTestnet} from "../contracts/protocol/testnet/LagrangeServiceTestnet.sol"; // for sepolia
import {VoteWeigher} from "../contracts/protocol/VoteWeigher.sol";
import {LagrangeCommittee} from "../contracts/protocol/LagrangeCommittee.sol";
import {LagrangeCommitteeTestnet} from "../contracts/protocol/testnet/LagrangeCommitteeTestnet.sol"; // for holesky
import {EvidenceVerifier} from "../contracts/protocol/EvidenceVerifier.sol";
import {LagrangeService} from "../../contracts/protocol/LagrangeService.sol";
import {LagrangeServiceTestnet} from "../../contracts/protocol/testnet/LagrangeServiceTestnet.sol"; // for sepolia
import {VoteWeigher} from "../../contracts/protocol/VoteWeigher.sol";
import {LagrangeCommittee} from "../../contracts/protocol/LagrangeCommittee.sol";
import {LagrangeCommitteeTestnet} from "../../contracts/protocol/testnet/LagrangeCommitteeTestnet.sol"; // for holesky
import {EvidenceVerifier} from "../../contracts/protocol/EvidenceVerifier.sol";

import {IStakeManager} from "../contracts/interfaces/IStakeManager.sol";
import {IVoteWeigher} from "../contracts/interfaces/IVoteWeigher.sol";
import {IStakeManager} from "../../contracts/interfaces/IStakeManager.sol";
import {IVoteWeigher} from "../../contracts/interfaces/IVoteWeigher.sol";

import {EigenAdapter} from "../contracts/library/EigenAdapter.sol";
import {StakeManager} from "../contracts/library/StakeManager.sol";
import {EigenAdapter} from "../../contracts/library/EigenAdapter.sol";
import {StakeManager} from "../../contracts/library/StakeManager.sol";

import "forge-std/Script.sol";
import "forge-std/Test.sol";

import {IOutbox} from "../contracts/mock/arbitrum/IOutbox.sol";
import {Outbox} from "../contracts/mock/arbitrum/Outbox.sol";
import {L2OutputOracle} from "../contracts/mock/optimism/L2OutputOracle.sol";
import {IL2OutputOracle} from "../contracts/mock/optimism/IL2OutputOracle.sol";
import {IOutbox} from "../../contracts/mock/arbitrum/IOutbox.sol";
import {Outbox} from "../../contracts/mock/arbitrum/Outbox.sol";
import {L2OutputOracle} from "../../contracts/mock/optimism/L2OutputOracle.sol";
import {IL2OutputOracle} from "../../contracts/mock/optimism/IL2OutputOracle.sol";

contract Deploy is Script, Test {
contract Deploy is Script {
string public deployMockDataPath = string(bytes("script/output/deployed_mock.json"));
string public deployDataPath = string(bytes("script/output/M1_deployment_data.json"));
string public serviceDataPath = string(bytes("config/LagrangeService.json"));
Expand Down
8 changes: 4 additions & 4 deletions script/Deploy_Mock.s.sol → script/foundry/Deploy_Mock.s.sol
Original file line number Diff line number Diff line change
Expand Up @@ -5,10 +5,10 @@ import "forge-std/Test.sol";

import {IDelegationManager} from "eigenlayer-contracts/src/contracts/interfaces/IDelegationManager.sol";

import {DelegationManager} from "../contracts/mock/DMMock.sol";
import {StrategyManager} from "../contracts/mock/SMMock.sol";
import {Strategy} from "../contracts/mock/STMock.sol";
import {BatchStorageMock} from "../contracts/mock/mantle/BatchStorageMock.sol";
import {DelegationManager} from "../../contracts/mock/DMMock.sol";
import {StrategyManager} from "../../contracts/mock/SMMock.sol";
import {Strategy} from "../../contracts/mock/STMock.sol";
import {BatchStorageMock} from "../../contracts/mock/mantle/BatchStorageMock.sol";

contract DeployMock is Script {
string public operatorsPath = string(bytes("config/operators.json"));
Expand Down
Original file line number Diff line number Diff line change
@@ -1,15 +1,14 @@
pragma solidity ^0.8.20;

import "forge-std/Script.sol";
import "forge-std/Test.sol";

import {ISlasher} from "eigenlayer-contracts/src/contracts/interfaces/ISlasher.sol";
import {IStrategy} from "eigenlayer-contracts/src/contracts/interfaces/IStrategy.sol";

import {LagrangeService} from "../contracts/protocol/LagrangeService.sol";
import {LagrangeCommittee} from "../contracts/protocol/LagrangeCommittee.sol";
import {LagrangeService} from "../../contracts/protocol/LagrangeService.sol";
import {LagrangeCommittee} from "../../contracts/protocol/LagrangeCommittee.sol";

contract InitCommittee is Script, Test {
contract InitCommittee is Script {
string public deployedLGRPath = string(bytes("script/output/deployed_lgr.json"));
string public configPath = string(bytes("config/LagrangeService.json"));

Expand Down
Original file line number Diff line number Diff line change
@@ -1,13 +1,12 @@
pragma solidity ^0.8.20;

import "forge-std/Script.sol";
import "forge-std/Test.sol";

import {IStrategy} from "eigenlayer-contracts/src/contracts/interfaces/IStrategy.sol";
import {StrategyManager} from "eigenlayer-contracts/src/contracts/core/StrategyManager.sol";
import {DelegationManager} from "eigenlayer-contracts/src/contracts/core/DelegationManager.sol";

contract AddStrategy is Script, Test {
contract AddStrategy is Script {
string public deployDataPath = string(bytes("script/output/M1_deployment_data.json"));

address WETHStractegyAddress;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,11 +1,10 @@
pragma solidity ^0.8.20;

import "forge-std/Script.sol";
import "forge-std/Test.sol";

import {WETH9} from "../../contracts/mock/WETH9.sol";
import {WETH9} from "../../../contracts/mock/WETH9.sol";

contract DeployWETH9 is Script, Test {
contract DeployWETH9 is Script {
function run() public {
// deploy WETH9
vm.broadcast(msg.sender);
Expand Down
Original file line number Diff line number Diff line change
@@ -1,17 +1,16 @@
pragma solidity ^0.8.20;

import "forge-std/Script.sol";
import "forge-std/Test.sol";

import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol";

import {WETH9} from "../../contracts/mock/WETH9.sol";
import {LagrangeService} from "../../contracts/protocol/LagrangeService.sol";
import {LagrangeCommittee} from "../../contracts/protocol/LagrangeCommittee.sol";
import {VoteWeigher} from "../../contracts/protocol/VoteWeigher.sol";
import {StakeManager} from "../../contracts/library/StakeManager.sol";
import {WETH9} from "../../../contracts/mock/WETH9.sol";
import {LagrangeService} from "../../../contracts/protocol/LagrangeService.sol";
import {LagrangeCommittee} from "../../../contracts/protocol/LagrangeCommittee.sol";
import {VoteWeigher} from "../../../contracts/protocol/VoteWeigher.sol";
import {StakeManager} from "../../../contracts/library/StakeManager.sol";

contract DepositStake is Script, Test {
contract DepositStake is Script {
string public deployedLGRPath = string(bytes("script/output/deployed_lgr.json"));
string public configPath = string(bytes("config/LagrangeService.json"));

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ import "forge-std/Test.sol";
// source .env

// # To deploy and verify our contract
// forge script script/M1_Deploy.s.sol:Deployer_M1 --rpc-url $RPC_URL --private-key $PRIVATE_KEY --broadcast -vvvv
// forge script script/foundry/M1_Deploy.s.sol:Deployer_M1 --rpc-url $RPC_URL --private-key $PRIVATE_KEY --broadcast -vvvv
contract Deployer_M1 is Script, Test {
Vm cheats = Vm(HEVM_ADDRESS);

Expand All @@ -40,7 +40,7 @@ contract Deployer_M1 is Script, Test {
string tokenSymbol;
}

string public deployConfigPath = string(bytes("script/localnet/M1_deploy.config.json"));
string public deployConfigPath = string(bytes("script/foundry/localnet/M1_deploy.config.json"));

// EigenLayer Contracts
ProxyAdmin public eigenLayerProxyAdmin;
Expand Down
File renamed without changes.
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
pragma solidity ^0.8.20;

import "forge-std/Script.sol";
import "forge-std/Test.sol";

import {IStrategy} from "eigenlayer-contracts/src/contracts/interfaces/IStrategy.sol";
import {ISlasher} from "eigenlayer-contracts/src/contracts/interfaces/ISlasher.sol";
Expand All @@ -11,9 +10,8 @@ import {StrategyManager} from "eigenlayer-contracts/src/contracts/core/StrategyM

import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol";

// TODO: referecen the deploy script

contract RegisterOperator is Script, Test {
// TODO: reference the deploy script
contract RegisterOperator is Script {
string public deployDataPath = string(bytes("script/output/M1_deployment_data.json"));
string public deployLGRPath = string(bytes("script/output/deployed_lgr.json"));

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,11 @@ pragma solidity ^0.8.20;

import "@openzeppelin/contracts/proxy/transparent/ProxyAdmin.sol";

import {LagrangeCommittee} from "../../contracts/protocol/LagrangeCommittee.sol";
import {LagrangeService} from "../../contracts/protocol/LagrangeService.sol";
import {LagrangeCommitteeTestnet} from "../../contracts/protocol/testnet/LagrangeCommitteeTestnet.sol";
import {LagrangeServiceTestnet} from "../../contracts/protocol/testnet/LagrangeServiceTestnet.sol";
import {VoteWeigher} from "../../contracts/protocol/VoteWeigher.sol";
import {LagrangeCommittee} from "../../../contracts/protocol/LagrangeCommittee.sol";
import {LagrangeService} from "../../../contracts/protocol/LagrangeService.sol";
import {LagrangeCommitteeTestnet} from "../../../contracts/protocol/testnet/LagrangeCommitteeTestnet.sol";
import {LagrangeServiceTestnet} from "../../../contracts/protocol/testnet/LagrangeServiceTestnet.sol";
import {VoteWeigher} from "../../../contracts/protocol/VoteWeigher.sol";

import "forge-std/Script.sol";
import "forge-std/Test.sol";
Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
12 changes: 6 additions & 6 deletions util/deploy-register.js → script/hardhat/deploy-register.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,15 +3,15 @@ const ethers = require('ethers');
require('dotenv').config();

const serviceABI =
require('../out/LagrangeService.sol/LagrangeService.json').abi;
require('../../out/LagrangeService.sol/LagrangeService.json').abi;
const committeeABI =
require('../out/LagrangeCommittee.sol/LagrangeCommittee.json').abi;
require('../../out/LagrangeCommittee.sol/LagrangeCommittee.json').abi;
const avsDirectoryABI =
require('../out/IAVSDirectory.sol/IAVSDirectory.json').abi;
const deployedAddresses = require('../script/output/deployed_lgr.json');
const m1DeployedAddresses = require('../script/output/M1_deployment_data.json');
require('../../out/IAVSDirectory.sol/IAVSDirectory.json').abi;
const deployedAddresses = require('../output/deployed_lgr.json');
const m1DeployedAddresses = require('../output/M1_deployment_data.json');

const operators = require('../config/operators.json');
const operators = require('../../config/operators.json');

const provider = new ethers.providers.JsonRpcProvider(process.env.RPC_URL);

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
const fs = require('fs');
const { ethers } = require('hardhat');
const deployed_verifiers = require('../script/output/deployed_verifiers.json');
const deployed_verifiers = require('../output/deployed_verifiers.json');

async function main() {
const raw = fs.readFileSync('script/output/deployed_lgr.json');
Expand Down
4 changes: 2 additions & 2 deletions util/deposit-stake.js → script/hardhat/deposit-stake.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ const { exec } = require('child_process');
const fs = require('fs');
require('dotenv').config();

const operators = require('../config/operators.json');
const operators = require('../../config/operators.json');

const rpcURL = process.env.RPC_URL;

Expand All @@ -27,7 +27,7 @@ const batch_size = 10;
for (let i = 0; i < addresses.length; i += batch_size) {
const batch = addresses.slice(i, i + batch_size);
const exec_batch = batch.map((address, index) => {
const command = `forge script script/localnet/Deposit_Stake.s.sol:DepositStake --rpc-url ${rpcURL} --private-key ${
const command = `forge script script/foundry/localnet/Deposit_Stake.s.sol:DepositStake --rpc-url ${rpcURL} --private-key ${
privateKeys[i + index]
} --broadcast -vvvvv --slow`;
console.log(`Starting to deposit stake for address: ${address}`);
Expand Down
2 changes: 1 addition & 1 deletion util/distributor.js → script/hardhat/distributor.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
const ethers = require('ethers');
const fs = require('fs');
require('dotenv').config();
const operators = require('../config/operators.json');
const operators = require('../../config/operators.json');

const PRIVATE_KEY = process.env.PRIVATE_KEY;
const RPC_URL = process.env.RPC_URL;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ async function main() {
}

try {
const config = require('../config/LagrangeService.json');
const config = require('../../config/LagrangeService.json');
operators = [];

op = [];
Expand Down
File renamed without changes.
Loading

0 comments on commit 83449b4

Please sign in to comment.