Files
aitbc/scripts/compile_contracts.sh
oib 7bb2905cca Update database paths and fix foreign key references across coordinator API
- Change SQLite database path from `/home/oib/windsurf/aitbc/data/` to `/opt/data/`
- Fix foreign key references to use correct table names (users, wallets, gpu_registry)
- Replace governance router with new governance and community routers
- Add multi-modal RL router to main application
- Simplify DEPLOYMENT_READINESS_REPORT.md to focus on production deployment status
- Update governance router with decentralized DAO voting
2026-02-26 19:32:06 +01:00

74 lines
2.0 KiB
Bash
Executable File

#!/bin/bash
echo "=== AITBC Smart Contract Compilation ==="
# Check if solc is installed
if ! command -v solc &> /dev/null; then
echo "Error: solc (Solidity compiler) not found"
echo "Please install solc: npm install -g solc"
exit 1
fi
# Create artifacts directory
mkdir -p artifacts
mkdir -p cache
# Contract files to compile
contracts=(
"contracts/AIPowerRental.sol"
"contracts/AITBCPaymentProcessor.sol"
"contracts/PerformanceVerifier.sol"
"contracts/DisputeResolution.sol"
"contracts/EscrowService.sol"
"contracts/DynamicPricing.sol"
"test/contracts/MockERC20.sol"
"test/contracts/MockZKVerifier.sol"
"test/contracts/MockGroth16Verifier.sol"
)
echo "Compiling contracts..."
# Compile each contract
for contract in "${contracts[@]}"; do
if [ -f "$contract" ]; then
echo "Compiling $contract..."
# Extract contract name from file path
contract_name=$(basename "$contract" .sol)
# Compile with solc
solc --bin --abi --optimize --output-dir artifacts \
--base-path . \
--include-path node_modules/@openzeppelin/contracts/node_modules/@openzeppelin/contracts \
"$contract"
if [ $? -eq 0 ]; then
echo "$contract_name compiled successfully"
else
echo "$contract_name compilation failed"
exit 1
fi
else
echo "⚠️ Contract file not found: $contract"
fi
done
echo ""
echo "=== Compilation Summary ==="
echo "✅ All contracts compiled successfully"
echo "📁 Artifacts saved to: artifacts/"
echo "📋 ABI files available for integration"
# List compiled artifacts
echo ""
echo "Compiled artifacts:"
ls -la artifacts/*.bin 2>/dev/null | wc -l | xargs echo "Binary files:"
ls -la artifacts/*.abi 2>/dev/null | wc -l | xargs echo "ABI files:"
echo ""
echo "=== Next Steps ==="
echo "1. Review compilation artifacts"
echo "2. Run integration tests"
echo "3. Deploy to testnet"
echo "4. Perform security audit"