Skip to content

Commit 08f17e9

Browse files
authored
fix(scripts): deploy warm storage only (#348)
Reviewer @rvagg @ZenGround0 Fixes a few things with the deploy-warm-storage-implementation-only script #### Context Toward #346 #### Changes * remove unused FILBEAM_CONTROLLER_ADDRESS * use existing SIGNATURE_VERIFICATION_LIB_ADDRESS if provided * fix `--libraries` arg * use `-f 0x000000000000000000000000000000000000000000` with `cast call` to skip password prompt
1 parent 1c783a5 commit 08f17e9

File tree

3 files changed

+19
-23
lines changed

3 files changed

+19
-23
lines changed

service_contracts/tools/announce-planned-upgrade.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ if [ -z "$WARM_STORAGE_PROXY_ADDRESS" ]; then
5757
exit 1
5858
fi
5959

60-
PROXY_OWNER=$(cast call "$WARM_STORAGE_PROXY_ADDRESS" "owner()(address)" 2>/dev/null)
60+
PROXY_OWNER=$(cast call -f 0x0000000000000000000000000000000000000000 "$WARM_STORAGE_PROXY_ADDRESS" "owner()(address)" 2>/dev/null)
6161
if [ "$PROXY_OWNER" != "$ADDR" ]; then
6262
echo "Supplied ETH_KEYSTORE ($ADDR) is not the proxy owner ($PROXY_OWNER)."
6363
exit 1

service_contracts/tools/deploy-warm-storage-implementation-only.sh

Lines changed: 14 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -44,11 +44,6 @@ if [ -z "$PAYMENTS_CONTRACT_ADDRESS" ]; then
4444
exit 1
4545
fi
4646

47-
if [ -z "$FILBEAM_CONTROLLER_ADDRESS" ]; then
48-
echo "Warning: FILBEAM_CONTROLLER_ADDRESS not set, using default"
49-
FILBEAM_CONTROLLER_ADDRESS="0x5f7E5E2A756430EdeE781FF6e6F7954254Ef629A"
50-
fi
51-
5247
if [ -z "$FILBEAM_BENEFICIARY_ADDRESS" ]; then
5348
echo "Warning: FILBEAM_BENEFICIARY_ADDRESS not set, using default"
5449
FILBEAM_BENEFICIARY_ADDRESS="0x1D60d2F5960Af6341e842C539985FA297E10d6eA"
@@ -66,32 +61,33 @@ fi
6661

6762
USDFC_TOKEN_ADDRESS="0xb3042734b608a1B16e9e86B374A3f3e389B4cDf0" # USDFC token address on calibnet
6863

69-
# Deploy SignatureVerificationLib first so we can link it into the implementation
70-
echo "Deploying SignatureVerificationLib..."
71-
SIGNATURE_VERIFICATION_LIB_ADDRESS=$(forge create --password "$PASSWORD" --broadcast --nonce $NONCE src/lib/SignatureVerificationLib.sol:SignatureVerificationLib | grep "Deployed to" | awk '{print $3}')
72-
7364
if [ -z "$SIGNATURE_VERIFICATION_LIB_ADDRESS" ]; then
74-
echo "Error: Failed to deploy SignatureVerificationLib"
75-
exit 1
76-
fi
65+
# Deploy SignatureVerificationLib first so we can link it into the implementation
66+
echo "Deploying SignatureVerificationLib..."
67+
export SIGNATURE_VERIFICATION_LIB_ADDRESS=$(forge create --password "$PASSWORD" --broadcast --nonce $NONCE src/lib/SignatureVerificationLib.sol:SignatureVerificationLib | grep "Deployed to" | awk '{print $3}')
7768

78-
echo "SignatureVerificationLib deployed at: $SIGNATURE_VERIFICATION_LIB_ADDRESS"
79-
80-
# Increment nonce for the next deployment
81-
NONCE=$((NONCE + 1))
69+
if [ -z "$SIGNATURE_VERIFICATION_LIB_ADDRESS" ]; then
70+
echo "Error: Failed to deploy SignatureVerificationLib"
71+
exit 1
72+
fi
73+
echo "SignatureVerificationLib deployed at: $SIGNATURE_VERIFICATION_LIB_ADDRESS"
74+
# Increment nonce for the next deployment
75+
NONCE=$((NONCE + 1))
76+
else
77+
echo "Using SignatureVerificationLib at: $SIGNATURE_VERIFICATION_LIB_ADDRESS"
78+
fi
8279

8380
echo ""
8481
echo "Deploying FilecoinWarmStorageService implementation..."
8582
echo "Constructor arguments:"
8683
echo " PDPVerifier: $PDP_VERIFIER_ADDRESS"
8784
echo " FilecoinPayV1: $PAYMENTS_CONTRACT_ADDRESS"
8885
echo " USDFC Token: $USDFC_TOKEN_ADDRESS"
89-
echo " FilBeam Controller Address: $FILBEAM_CONTROLLER_ADDRESS"
9086
echo " FilBeam Beneficiary Address: $FILBEAM_BENEFICIARY_ADDRESS"
9187
echo " ServiceProviderRegistry: $SERVICE_PROVIDER_REGISTRY_PROXY_ADDRESS"
9288
echo " SessionKeyRegistry: $SESSION_KEY_REGISTRY_ADDRESS"
9389

94-
WARM_STORAGE_IMPLEMENTATION_ADDRESS=$(forge create --password "$PASSWORD" --broadcast --nonce $NONCE --libraries "SignatureVerificationLib:$SIGNATURE_VERIFICATION_LIB_ADDRESS" src/FilecoinWarmStorageService.sol:FilecoinWarmStorageService --constructor-args $PDP_VERIFIER_ADDRESS $PAYMENTS_CONTRACT_ADDRESS $USDFC_TOKEN_ADDRESS $FILBEAM_BENEFICIARY_ADDRESS $SERVICE_PROVIDER_REGISTRY_PROXY_ADDRESS $SESSION_KEY_REGISTRY_ADDRESS | grep "Deployed to" | awk '{print $3}')
90+
WARM_STORAGE_IMPLEMENTATION_ADDRESS=$(forge create --password "$PASSWORD" --broadcast --nonce $NONCE --libraries "src/lib/SignatureVerificationLib.sol:SignatureVerificationLib:$SIGNATURE_VERIFICATION_LIB_ADDRESS" src/FilecoinWarmStorageService.sol:FilecoinWarmStorageService --constructor-args $PDP_VERIFIER_ADDRESS $PAYMENTS_CONTRACT_ADDRESS $USDFC_TOKEN_ADDRESS $FILBEAM_BENEFICIARY_ADDRESS $SERVICE_PROVIDER_REGISTRY_PROXY_ADDRESS $SESSION_KEY_REGISTRY_ADDRESS | grep "Deployed to" | awk '{print $3}')
9591

9692
if [ -z "$WARM_STORAGE_IMPLEMENTATION_ADDRESS" ]; then
9793
echo "Error: Failed to deploy FilecoinWarmStorageService implementation"

service_contracts/tools/upgrade.sh

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ if [ -z "$PASSWORD" ]; then
2525
fi
2626

2727
if [ -z "$CHAIN" ]; then
28-
CHAIN=$(cast chain-id")
28+
CHAIN=$(cast chain-id)
2929
if [ -z "$CHAIN" ]; then
3030
echo "Error: Failed to detect chain ID from RPC"
3131
exit 1
@@ -43,18 +43,18 @@ if [ -z "$WARM_STORAGE_PROXY_ADDRESS" ]; then
4343
exit 1
4444
fi
4545

46-
PROXY_OWNER=$(cast call "$WARM_STORAGE_PROXY_ADDRESS" "owner()(address)" 2>/dev/null)
46+
PROXY_OWNER=$(cast call -f 0x0000000000000000000000000000000000000000 "$WARM_STORAGE_PROXY_ADDRESS" "owner()(address)" 2>/dev/null)
4747
if [ "$PROXY_OWNER" != "$ADDR" ]; then
4848
echo "Supplied ETH_KEYSTORE ($ADDR) is not the proxy owner ($PROXY_OWNER)."
4949
exit 1
5050
fi
5151

5252
if [ -z "$WARM_STORAGE_VIEW_ADDRESS" ]; then
53-
WARM_STORAGE_VIEW_ADDRESS=$(cast call "$WARM_STORAGE_PROXY_ADDRESS" "viewContractAddress()(address)" 2>/dev/null)
53+
WARM_STORAGE_VIEW_ADDRESS=$(cast call -f 0x0000000000000000000000000000000000000000 "$WARM_STORAGE_PROXY_ADDRESS" "viewContractAddress()(address)" 2>/dev/null)
5454
fi
5555

5656
# Get the upgrade plan
57-
UPGRADE_PLAN=($(cast call "$WARM_STORAGE_VIEW_ADDRESS" "nextUpgrade()(address,uint96)" 2>/dev/null))
57+
UPGRADE_PLAN=($(cast call -f 0x0000000000000000000000000000000000000000 "$WARM_STORAGE_VIEW_ADDRESS" "nextUpgrade()(address,uint96)" 2>/dev/null))
5858

5959
PLANNED_WARM_STORAGE_IMPLEMENTATION_ADDRESS=${UPGRADE_PLAN[0]}
6060
AFTER_EPOCH=${UPGRADE_PLAN[1]}

0 commit comments

Comments
 (0)