- Introduced Aggregator.sol for Chainlink-compatible oracle functionality, including round-based updates and access control. - Added OracleWithCCIP.sol to extend Aggregator with CCIP cross-chain messaging capabilities. - Created .gitmodules to include OpenZeppelin contracts as a submodule. - Developed a comprehensive deployment guide in NEXT_STEPS_COMPLETE_GUIDE.md for Phase 2 and smart contract deployment. - Implemented Vite configuration for the orchestration portal, supporting both Vue and React frameworks. - Added server-side logic for the Multi-Cloud Orchestration Portal, including API endpoints for environment management and monitoring. - Created scripts for resource import and usage validation across non-US regions. - Added tests for CCIP error handling and integration to ensure robust functionality. - Included various new files and directories for the orchestration portal and deployment scripts.
45 lines
1021 B
Bash
Executable File
45 lines
1021 B
Bash
Executable File
#!/bin/bash
|
|
|
|
set -e
|
|
|
|
# Load test for oracle update frequency
|
|
# Tests oracle under high frequency updates
|
|
|
|
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|
PROJECT_ROOT="$(cd "$SCRIPT_DIR/.." && pwd)"
|
|
|
|
RPC_URL="${RPC_URL:-http://localhost:8545}"
|
|
AGGREGATOR_ADDRESS="${AGGREGATOR_ADDRESS:-}"
|
|
UPDATES="${UPDATES:-1000}"
|
|
RATE="${RATE:-10}" # Updates per second
|
|
|
|
if [ -z "$AGGREGATOR_ADDRESS" ]; then
|
|
echo "Error: AGGREGATOR_ADDRESS not set"
|
|
exit 1
|
|
fi
|
|
|
|
echo "Oracle Load Test"
|
|
echo "RPC URL: $RPC_URL"
|
|
echo "Aggregator: $AGGREGATOR_ADDRESS"
|
|
echo "Updates: $UPDATES"
|
|
echo "Rate: $RATE updates/sec"
|
|
|
|
DELAY=$((1000 / RATE)) # Milliseconds
|
|
|
|
for i in $(seq 1 $UPDATES); do
|
|
PRICE=$((25000000000 + (i * 1000000))) # Increment price
|
|
|
|
cast send "$AGGREGATOR_ADDRESS" \
|
|
"updateAnswer(uint256)" \
|
|
"$PRICE" \
|
|
--rpc-url "$RPC_URL" \
|
|
--private-key "$PRIVATE_KEY" || true
|
|
|
|
if [ $i -lt $UPDATES ]; then
|
|
sleep "0.$DELAY"
|
|
fi
|
|
done
|
|
|
|
echo "Load test complete!"
|
|
|