diff --git a/.gitignore b/.gitignore index 85198aa..541edf4 100644 --- a/.gitignore +++ b/.gitignore @@ -3,7 +3,7 @@ cache/ out/ # Ignores development broadcast logs -!/broadcast +/broadcast /broadcast/*/31337/ /broadcast/**/dry-run/ @@ -12,3 +12,5 @@ docs/ # Dotenv file .env +.secret +.infura diff --git a/foundry.toml b/foundry.toml index a2a40da..3fbaec4 100644 --- a/foundry.toml +++ b/foundry.toml @@ -2,7 +2,9 @@ src = "src" out = "out" libs = ["lib"] +fs_permissions = [{ access = "read", path = "./"}] +# See more config options https://github.com/foundry-rs/foundry/tree/master/config +[rpc_endpoints] +goerli = "${GOERLI_RPC_URL}" # Remappings in remappings.txt - -# See more config options https://github.com/gakonst/foundry/tree/master/config \ No newline at end of file diff --git a/script/Counter.s.sol b/script/Counter.s.sol deleted file mode 100644 index 0e546ab..0000000 --- a/script/Counter.s.sol +++ /dev/null @@ -1,12 +0,0 @@ -// SPDX-License-Identifier: UNLICENSED -pragma solidity ^0.8.13; - -import "forge-std/Script.sol"; - -contract CounterScript is Script { - function setUp() public {} - - function run() public { - vm.broadcast(); - } -} diff --git a/script/Deploy.sol b/script/Deploy.sol new file mode 100644 index 0000000..72de3b9 --- /dev/null +++ b/script/Deploy.sol @@ -0,0 +1,21 @@ +pragma solidity ^0.8.4; + +import "forge-std/Script.sol"; +import "../src/BloodX.sol"; +import "../src/StakeX.sol"; + +contract GoerliScript is Script { + function setUp() public {} + + function run() public { + string memory seedPhrase = vm.readFile(".secret"); + uint256 privateKey = vm.deriveKey(seedPhrase, 0); + vm.startBroadcast(privateKey); + + BloodX bloodX = new BloodX("bloodX", "bXXX"); + StakeX stakeX = new StakeX("stakeX", "sXXX", address(bloodX)); + bloodX.setStakingContract(address(stakeX)); + + vm.stopBroadcast(); + } +} \ No newline at end of file