Download script/DeployFull.s.sol from lablab-ai-amd-developer-hackathon/proofbridge-liner-safety-kernel: direct link, hf CLI and curl.
- Browser
- Download file 1.44 kB
-
https://huggingface.co/spaces/lablab-ai-amd-developer-hackathon/proofbridge-liner-safety-kernel/resolve/main/script/DeployFull.s.sol
- Command line
-
hf download hf://spaces/lablab-ai-amd-developer-hackathon/proofbridge-liner-safety-kernel/script/DeployFull.s.sol
-
curl -L -o DeployFull.s.sol https://huggingface.co/spaces/lablab-ai-amd-developer-hackathon/proofbridge-liner-safety-kernel/resolve/main/script/DeployFull.s.sol
1.44 kB
| // SPDX-License-Identifier: MIT | |
| pragma solidity ^0.8.20; | |
| import "forge-std/Script.sol"; | |
| import {CircuitBreaker} from "../contracts/CircuitBreaker.sol"; | |
| import {AssetRegistry} from "../contracts/AssetRegistry.sol"; | |
| import {TEEVerifier} from "../contracts/TEEVerifier.sol"; | |
| /// @notice Full deployment: CircuitBreaker (MVP) + AssetRegistry + TEEVerifier. | |
| /// @dev Required env vars: | |
| /// PRIVATE_KEY deployer private key | |
| /// ORACLE_ADDRESS oracle address (may be signer) | |
| /// ENCLAVE_ADDRESS TEE public key (address form) | |
| contract DeployFull is Script { | |
| function run() external { | |
| uint256 deployerPk = vm.envUint("PRIVATE_KEY"); | |
| address oracleAddress = vm.envAddress("ORACLE_ADDRESS"); | |
| address enclaveAddress = vm.envAddress("ENCLAVE_ADDRESS"); | |
| vm.startBroadcast(deployerPk); | |
| CircuitBreaker cb = new CircuitBreaker(); | |
| cb.initialize(oracleAddress); | |
| console.log("CircuitBreaker :", address(cb)); | |
| AssetRegistry registry = new AssetRegistry(); | |
| console.log("AssetRegistry :", address(registry)); | |
| TEEVerifier tee = new TEEVerifier(enclaveAddress, address(registry)); | |
| console.log("TEEVerifier :", address(tee)); | |
| vm.stopBroadcast(); | |
| console.log("---"); | |
| console.log("Oracle :", oracleAddress); | |
| console.log("Enclave :", enclaveAddress); | |
| } | |
| } | |