feat(chain138): DBIS Rail post-deploy scripts and address inventory updates.
CI/CD Pipeline / Solidity Contracts (push) Failing after 1m21s
CI/CD Pipeline / Security Scanning (push) Successful in 2m33s
CI/CD Pipeline / Lint and Format (push) Failing after 38s
CI/CD Pipeline / Terraform Validation (push) Failing after 24s
CI/CD Pipeline / Kubernetes Validation (push) Successful in 24s
Deploy ChainID 138 / Deploy ChainID 138 (push) Failing after 37s
Validation / validate-genesis (push) Successful in 29s
Validation / validate-terraform (push) Failing after 27s
Validation / validate-kubernetes (push) Failing after 9s
Validation / validate-smart-contracts (push) Failing after 10s
Validation / validate-security (push) Failing after 1m13s
Validation / validate-documentation (push) Failing after 17s
Verify Deployment / Verify Deployment (push) Failing after 54s
CI/CD Pipeline / Solidity Contracts (push) Failing after 1m21s
CI/CD Pipeline / Security Scanning (push) Successful in 2m33s
CI/CD Pipeline / Lint and Format (push) Failing after 38s
CI/CD Pipeline / Terraform Validation (push) Failing after 24s
CI/CD Pipeline / Kubernetes Validation (push) Successful in 24s
Deploy ChainID 138 / Deploy ChainID 138 (push) Failing after 37s
Validation / validate-genesis (push) Successful in 29s
Validation / validate-terraform (push) Failing after 27s
Validation / validate-kubernetes (push) Failing after 9s
Validation / validate-smart-contracts (push) Failing after 10s
Validation / validate-security (push) Failing after 1m13s
Validation / validate-documentation (push) Failing after 17s
Verify Deployment / Verify Deployment (push) Failing after 54s
WireDBISRailPostDeploy/Signers forge scripts, PMM pool registry, and explorer verify refresh. Co-authored-by: Cursor <[email protected]>
This commit is contained in:
@@ -37,6 +37,9 @@ fi
|
||||
|
||||
if [[ -f "$PROXMOX/scripts/verify/run-contract-verification-with-proxy.sh" ]]; then
|
||||
step "Chain 138 Blockscout (forge proxy)" bash "$PROXMOX/scripts/verify/run-contract-verification-with-proxy.sh" || true
|
||||
if [[ -f "$PROXMOX/scripts/verify/verify-dbis-rail-blockscout.sh" ]]; then
|
||||
step "Chain 138 DBIS Rail Blockscout" bash "$PROXMOX/scripts/verify/verify-dbis-rail-blockscout.sh" || true
|
||||
fi
|
||||
else
|
||||
echo "WARN: Proxmox verify proxy not found at $PROXMOX/scripts/verify/" >&2
|
||||
fi
|
||||
|
||||
@@ -1,9 +1,13 @@
|
||||
#!/usr/bin/env bash
|
||||
# Mint all 12 c* tokens on Chain 138 to the deployer.
|
||||
# V1 tokens owned by MultiSig are minted via submitTransaction + executeTransaction.
|
||||
#
|
||||
# Usage: ./scripts/mint-all-c-star-138.sh [amount_human]
|
||||
# amount_human = 1000000 (default = 1M each). 6 decimals.
|
||||
# For cXAUC/cXAUT, amount_human is troy ounces (1 token = 1 troy oz Au), not USD.
|
||||
# Requires: PRIVATE_KEY, RPC_URL_138 in .env.
|
||||
#
|
||||
# Exit: 0 all OK/skipped; 1 one or more mint failures.
|
||||
|
||||
set -euo pipefail
|
||||
|
||||
@@ -13,20 +17,146 @@ cd "$PROJECT_ROOT"
|
||||
[ -f .env ] && set -a && source .env && set +a
|
||||
|
||||
RPC="${RPC_URL_138:-${RPC_URL:-http://192.168.11.211:8545}}"
|
||||
GAS_PRICE="${GAS_PRICE_138:-1000000000}"
|
||||
GAS_LIMIT_MINT="${GAS_LIMIT_MINT:-450000}"
|
||||
GAS_LIMIT_MULTISIG="${GAS_LIMIT_MULTISIG:-600000}"
|
||||
MULTISIG="${ADDR_MULTISIG:-0xb9E29cFa1f89d369671E640d0BB3aD94Cab43965}"
|
||||
AMOUNT_HUMAN="${1:-1000000}"
|
||||
BASE_UNITS=$((AMOUNT_HUMAN * 1000000))
|
||||
MINT_XAU_OZ="${MINT_XAU_OZ:-50}"
|
||||
XAU_BASE_UNITS=$((MINT_XAU_OZ * 1000000))
|
||||
|
||||
[ -n "${PRIVATE_KEY:-}" ] || { echo "PRIVATE_KEY not set"; exit 1; }
|
||||
DEPLOYER=$(cast wallet address "$PRIVATE_KEY" 2>/dev/null) || exit 1
|
||||
|
||||
FAILURES=0
|
||||
|
||||
extract_tx_hash() {
|
||||
local out="$1"
|
||||
echo "$out" | awk '/^transactionHash[[:space:]]/ {print $2; exit}'
|
||||
}
|
||||
|
||||
tx_status_ok() {
|
||||
local txhash="$1"
|
||||
[[ -n "$txhash" && "$txhash" == 0x* ]] || return 1
|
||||
local st
|
||||
st=$(cast receipt "$txhash" status --rpc-url "$RPC" 2>/dev/null | awk '{print $1}' || echo "")
|
||||
[[ "$st" == "1" || "$st" == "true" ]]
|
||||
}
|
||||
|
||||
mint_via_multisig() {
|
||||
local token="$1" sym="$2" amount="$3"
|
||||
local data txhash txid
|
||||
data=$(cast calldata "mint(address,uint256)" "$DEPLOYER" "$amount")
|
||||
echo -n " multisig mint $sym... "
|
||||
txhash=$(cast send "$MULTISIG" \
|
||||
"submitTransaction(address,uint256,bytes)" "$token" 0 "$data" \
|
||||
--rpc-url "$RPC" --private-key "$PRIVATE_KEY" --legacy \
|
||||
--gas-limit "$GAS_LIMIT_MULTISIG" --gas-price "$GAS_PRICE" 2>&1) || {
|
||||
echo "FAIL (submit)"
|
||||
echo "$txhash" | tail -3
|
||||
return 1
|
||||
}
|
||||
local count txid exec_out
|
||||
count=$(cast call "$MULTISIG" "getTransactionCount()(uint256)" --rpc-url "$RPC" 2>/dev/null | awk '{print $1}' || echo "0")
|
||||
if [[ "$count" =~ ^[0-9]+$ && "$count" -gt 0 ]]; then
|
||||
txid=$((count - 1))
|
||||
else
|
||||
echo "FAIL (txid)"
|
||||
return 1
|
||||
fi
|
||||
exec_out=$(cast send "$MULTISIG" "executeTransaction(uint256)" "$txid" \
|
||||
--rpc-url "$RPC" --private-key "$PRIVATE_KEY" --legacy \
|
||||
--gas-limit "$GAS_LIMIT_MULTISIG" --gas-price "$GAS_PRICE" 2>&1) || {
|
||||
echo "FAIL (execute)"
|
||||
echo "$exec_out" | tail -3
|
||||
return 1
|
||||
}
|
||||
txhash=$(extract_tx_hash "$exec_out")
|
||||
if tx_status_ok "$txhash"; then
|
||||
echo "OK (tx $txhash)"
|
||||
return 0
|
||||
fi
|
||||
echo "FAIL (receipt status 0: $txhash)"
|
||||
return 1
|
||||
}
|
||||
|
||||
mint_direct() {
|
||||
local token="$1" sym="$2" amount="$3"
|
||||
local out txhash
|
||||
echo -n " direct mint $sym... "
|
||||
out=$(cast send "$token" "mint(address,uint256)" "$DEPLOYER" "$amount" \
|
||||
--rpc-url "$RPC" --private-key "$PRIVATE_KEY" --legacy \
|
||||
--gas-limit "$GAS_LIMIT_MINT" --gas-price "$GAS_PRICE" 2>&1) || {
|
||||
echo "FAIL (send)"
|
||||
echo "$out" | tail -3
|
||||
return 1
|
||||
}
|
||||
txhash=$(extract_tx_hash "$out")
|
||||
if tx_status_ok "$txhash"; then
|
||||
echo "OK (tx $txhash)"
|
||||
return 0
|
||||
fi
|
||||
echo "FAIL (receipt status 0: $txhash)"
|
||||
return 1
|
||||
}
|
||||
|
||||
mint_one() {
|
||||
local sym="$1" token="$2" amount="$3"
|
||||
local owner lc_dep lc_own
|
||||
owner=$(cast call "$token" "owner()(address)" --rpc-url "$RPC" 2>/dev/null || echo "")
|
||||
lc_dep=$(echo "$DEPLOYER" | tr '[:upper:]' '[:lower:]')
|
||||
lc_own=$(echo "$owner" | tr '[:upper:]' '[:lower:]')
|
||||
lc_ms=$(echo "$MULTISIG" | tr '[:upper:]' '[:lower:]')
|
||||
|
||||
if [[ "$lc_own" == "$lc_dep" ]]; then
|
||||
mint_direct "$token" "$sym" "$amount" || return 1
|
||||
elif [[ "$lc_own" == "$lc_ms" ]]; then
|
||||
mint_via_multisig "$token" "$sym" "$amount" || return 1
|
||||
else
|
||||
echo " SKIP $sym: owner=$owner (not deployer or multisig)"
|
||||
return 0
|
||||
fi
|
||||
}
|
||||
|
||||
echo "=== Mint all c* on Chain 138 ==="
|
||||
echo " Deployer: $DEPLOYER Amount: $AMOUNT_HUMAN tokens each ($BASE_UNITS base)"
|
||||
echo " Deployer: $DEPLOYER"
|
||||
echo " MultiSig: $MULTISIG"
|
||||
echo " Amount: $AMOUNT_HUMAN tokens each ($BASE_UNITS base)"
|
||||
echo " XAU: $MINT_XAU_OZ troy oz each ($XAU_BASE_UNITS base)"
|
||||
echo " Gas: mint=$GAS_LIMIT_MINT multisig=$GAS_LIMIT_MULTISIG"
|
||||
echo ""
|
||||
|
||||
for pair in "cUSDT:0x93E66202A11B1772E55407B32B44e5Cd8eda7f22" "cUSDC:0xf22258f57794CC8E06237084b353Ab30fFfa640b" "cEURC:0x8085961F9cF02b4d800A3c6d386D31da4B34266a" "cEURT:0xdf4b71c61E5912712C1Bdd451416B9aC26949d72" "cGBPC:0x003960f16D9d34F2e98d62723B6721Fb92074aD2" "cGBPT:0x350f54e4D23795f86A9c03988c7135357CCaD97c" "cAUDC:0xD51482e567c03899eecE3CAe8a058161FD56069D" "cJPYC:0xEe269e1226a334182aace90056EE4ee5Cc8A6770" "cCHFC:0x873990849DDa5117d7C644f0aF24370797C03885" "cCADC:0x54dBd40cF05e15906A2C21f600937e96787f5679" "cXAUC:0x290E52a8819A4fbD0714E517225429aA2B70EC6b" "cXAUT:0x94e408E26c6FD8F4ee00b54dF19082FDA07dC96E"; do
|
||||
for pair in \
|
||||
"cUSDT:0x93E66202A11B1772E55407B32B44e5Cd8eda7f22" \
|
||||
"cUSDC:0xf22258f57794CC8E06237084b353Ab30fFfa640b" \
|
||||
"cEURC:0x8085961F9cF02b4d800A3c6d386D31da4B34266a" \
|
||||
"cEURT:0xdf4b71c61E5912712C1Bdd451416B9aC26949d72" \
|
||||
"cGBPC:0x003960f16D9d34F2e98d62723B6721Fb92074aD2" \
|
||||
"cGBPT:0x350f54e4D23795f86A9c03988c7135357CCaD97c" \
|
||||
"cAUDC:0xD51482e567c03899eecE3CAe8a058161FD56069D" \
|
||||
"cJPYC:0xEe269e1226a334182aace90056EE4ee5Cc8A6770" \
|
||||
"cCHFC:0x873990849DDa5117d7C644f0aF24370797C03885" \
|
||||
"cCADC:0x54dBd40cF05e15906A2C21f600937e96787f5679"; do
|
||||
sym="${pair%%:*}"
|
||||
addr="${pair#*:}"
|
||||
echo -n "Minting $sym... "
|
||||
if cast send "$addr" "mint(address,uint256)" "$DEPLOYER" "$BASE_UNITS" --rpc-url "$RPC" --private-key "$PRIVATE_KEY" --legacy --gas-limit 100000 2>/dev/null; then echo "OK"; else echo "FAIL"; fi
|
||||
echo "Minting $sym..."
|
||||
mint_one "$sym" "$addr" "$BASE_UNITS" || FAILURES=$((FAILURES + 1))
|
||||
done
|
||||
echo "Done."
|
||||
|
||||
for pair in \
|
||||
"cXAUC:0x290E52a8819A4fbD0714E517225429aA2B70EC6b" \
|
||||
"cXAUT:0x94e408E26c6FD8F4ee00b54dF19082FDA07dC96E"; do
|
||||
sym="${pair%%:*}"
|
||||
addr="${pair#*:}"
|
||||
echo "Minting $sym ($MINT_XAU_OZ oz)..."
|
||||
mint_one "$sym" "$addr" "$XAU_BASE_UNITS" || FAILURES=$((FAILURES + 1))
|
||||
done
|
||||
|
||||
echo ""
|
||||
if [[ "$FAILURES" -gt 0 ]]; then
|
||||
echo "Done with $FAILURES failure(s)."
|
||||
exit 1
|
||||
fi
|
||||
echo "Done — all mints succeeded."
|
||||
exit 0
|
||||
|
||||
Reference in New Issue
Block a user