ci: refactor Gitea workflows to use environment variables for workspace paths
Some checks failed
Cross-Node Transaction Testing / transaction-test (push) Has been cancelled
Deploy to Testnet / deploy-testnet (push) Has been cancelled
Multi-Node Stress Testing / stress-test (push) Has been cancelled
API Endpoint Tests / test-api-endpoints (push) Successful in 29s
CLI Tests / test-cli (push) Failing after 13s
Contract Performance Benchmarks / benchmark-gas-usage (push) Successful in 1m39s
Contract Performance Benchmarks / benchmark-execution-time (push) Successful in 1m30s
Contract Performance Benchmarks / benchmark-throughput (push) Successful in 1m33s
Documentation Validation / validate-docs (push) Failing after 12s
Documentation Validation / validate-policies-strict (push) Successful in 4s
Integration Tests / test-service-integration (push) Successful in 2m42s
JavaScript SDK Tests / test-js-sdk (push) Successful in 8s
Multi-Chain Island Architecture Tests / test-multi-chain-island (push) Successful in 3s
Multi-Node Blockchain Health Monitoring / health-check (push) Successful in 3s
P2P Network Verification / p2p-verification (push) Successful in 3s
Package Tests / Python package - aitbc-agent-sdk (push) Failing after 33s
Package Tests / Python package - aitbc-core (push) Successful in 17s
Package Tests / Python package - aitbc-crypto (push) Successful in 12s
Package Tests / Python package - aitbc-sdk (push) Successful in 13s
Package Tests / JavaScript package - aitbc-sdk-js (push) Successful in 7s
Package Tests / JavaScript package - aitbc-token (push) Successful in 16s
Production Tests / Production Integration Tests (push) Failing after 7s
Python Tests / test-python (push) Failing after 47s
Rust ZK Components Tests / test-rust-zk (push) Successful in 38s
Security Scanning / security-scan (push) Successful in 38s
Smart Contract Tests / test-solidity (map[name:aitbc-contracts path:contracts]) (push) Failing after 1m41s
Smart Contract Tests / test-solidity (map[name:aitbc-token path:packages/solidity/aitbc-token]) (push) Successful in 16s
Smart Contract Tests / test-foundry (push) Failing after 16s
Smart Contract Tests / lint-solidity (push) Successful in 22s
Smart Contract Tests / deploy-contracts (push) Successful in 1m47s
Staking Tests / test-staking-service (push) Failing after 4s
Staking Tests / test-staking-integration (push) Has been skipped
Staking Tests / test-staking-contract (push) Has been skipped
Staking Tests / run-staking-test-runner (push) Has been skipped
Systemd Sync / sync-systemd (push) Successful in 27s
Contract Performance Benchmarks / compare-benchmarks (push) Successful in 2s

- Added WORKSPACE env variable to all workflow jobs
- Changed hardcoded workspace paths to use ${{ env.WORKSPACE }}
- Updated paths in api-endpoint-tests.yml, build-miner-binary.yml, cli-level1-tests.yml, contract-benchmarks.yml, cross-node-transaction-testing.yml, and deployment-tests.yml
- Standardized workspace path references across all workflow files
This commit is contained in:
aitbc
2026-05-11 14:52:36 +02:00
parent 99205f97b0
commit 5ffba8fb1f
23 changed files with 458 additions and 317 deletions

View File

@@ -97,6 +97,7 @@ Activate this skill when:
"broadcaster_installed": {"type": "boolean"},
"gossip_backend_configured": {"type": "boolean"},
"chain_roles_correct": {"type": "boolean"},
"sync_config_correct": {"type": "boolean"},
"redis_subscriptions_active": {"type": "boolean"},
"block_production_correct": {"type": "boolean"},
"cross_chain_sync_working": {"type": "boolean"}
@@ -145,6 +146,16 @@ gossip_backend=broadcast
gossip_broadcast_url=redis://10.1.223.93:6379
EOF
# Configure blockchain.env sync parameters
# As hub of ait-mainnet, it doesn't need to sync mainnet from others
# As member of ait-testnet, it syncs testnet from aitbc1
cat > /etc/aitbc/blockchain.env << EOF
SYNC_SOURCE_HOST=aitbc1
SYNC_LEADER_HOST=aitbc1
SYNC_CHAIN_ID=ait-testnet
default_peer_rpc_url=http://aitbc1:8006
EOF
# Restart blockchain node
systemctl restart aitbc-blockchain-node
```
@@ -157,7 +168,17 @@ block_production_chains=ait-testnet
supported_chains=ait-mainnet,ait-testnet
gossip_backend=broadcast
gossip_broadcast_url=redis://10.1.223.93:6379
default_peer_rpc_url=http://10.1.223.93:8006
default_peer_rpc_url=http://aitbc:8006
EOF'
# Configure blockchain.env sync parameters
# As hub of ait-testnet, it doesn't need to sync testnet from others
# As member of ait-mainnet, it syncs mainnet from aitbc
ssh aitbc1 'cat > /etc/aitbc/blockchain.env << EOF
SYNC_SOURCE_HOST=aitbc
SYNC_LEADER_HOST=aitbc
SYNC_CHAIN_ID=ait-mainnet
default_peer_rpc_url=http://aitbc:8006
EOF'
# Restart blockchain node
@@ -172,7 +193,16 @@ block_production_chains=
supported_chains=ait-mainnet,ait-testnet
gossip_backend=broadcast
gossip_broadcast_url=redis://10.1.223.93:6379
default_peer_rpc_url=http://10.1.223.93:8006
default_peer_rpc_url=http://aitbc:8006
EOF'
# Configure blockchain.env sync parameters
# As member of both chains, it syncs mainnet from aitbc and testnet from aitbc1
ssh gitea-runner 'cat > /etc/aitbc/blockchain.env << EOF
SYNC_SOURCE_HOST=aitbc
SYNC_LEADER_HOST=aitbc
SYNC_CHAIN_ID=ait-mainnet
default_peer_rpc_url=http://aitbc:8006
EOF'
# Restart blockchain node
@@ -181,6 +211,38 @@ ssh gitea-runner 'systemctl restart aitbc-blockchain-node'
### 2. Validate Configuration
#### Sync Configuration Parameters
```bash
# SYNC_SOURCE_HOST: The node to sync blocks from for the specified chain
# SYNC_LEADER_HOST: The consensus leader node for the specified chain
# SYNC_CHAIN_ID: The chain ID to sync from the source/leader
# For member nodes, these should point to the hub of that chain:
# - Member of ait-mainnet: SYNC_SOURCE_HOST=aitbc, SYNC_LEADER_HOST=aitbc, SYNC_CHAIN_ID=ait-mainnet
# - Member of ait-testnet: SYNC_SOURCE_HOST=aitbc1, SYNC_LEADER_HOST=aitbc1, SYNC_CHAIN_ID=ait-testnet
# For hub nodes, these can point to themselves or be omitted for their hub chain
# but should point to the other hub for their member chain
# Common misconfigurations to avoid:
# - SYNC_SOURCE_HOST pointing to self (causes sync loop, no actual sync)
# - SYNC_CHAIN_ID mismatched with the chain being synced
# - SYNC_LEADER_HOST pointing to wrong hub for consensus
```
#### Check Sync Configuration
```bash
# Check sync parameters on all nodes
grep -E "SYNC_SOURCE_HOST|SYNC_LEADER_HOST|SYNC_CHAIN_ID" /etc/aitbc/blockchain.env
ssh aitbc1 'grep -E "SYNC_SOURCE_HOST|SYNC_LEADER_HOST|SYNC_CHAIN_ID" /etc/aitbc/blockchain.env'
ssh gitea-runner 'grep -E "SYNC_SOURCE_HOST|SYNC_LEADER_HOST|SYNC_CHAIN_ID" /etc/aitbc/blockchain.env'
# Expected:
# aitbc: SYNC_SOURCE_HOST=aitbc1, SYNC_LEADER_HOST=aitbc1, SYNC_CHAIN_ID=ait-testnet
# aitbc1: SYNC_SOURCE_HOST=aitbc, SYNC_LEADER_HOST=aitbc, SYNC_CHAIN_ID=ait-mainnet
# gitea-runner: SYNC_SOURCE_HOST=aitbc, SYNC_LEADER_HOST=aitbc, SYNC_CHAIN_ID=ait-mainnet
```
#### Check Broadcaster Module Installation
```bash
# Check on all nodes
@@ -254,6 +316,26 @@ ssh gitea-runner 'journalctl -u aitbc-blockchain-node --since "5 minutes ago" --
### 3. Troubleshoot Common Issues
#### Sync Configuration Misconfiguration
```bash
# Symptom: Node stuck at low block height while other nodes are much higher
# Root Cause: SYNC_SOURCE_HOST pointing to self instead of hub node
# Check current sync configuration
grep -E "SYNC_SOURCE_HOST|SYNC_LEADER_HOST|SYNC_CHAIN_ID" /etc/aitbc/blockchain.env
# Fix: Point to correct hub for the chain being synced
# For aitbc1 (member of ait-mainnet):
ssh aitbc1 'sudo sed -i "s/SYNC_SOURCE_HOST=aitbc1/SYNC_SOURCE_HOST=aitbc/" /etc/aitbc/blockchain.env'
ssh aitbc1 'sudo sed -i "s/SYNC_LEADER_HOST=aitbc1/SYNC_LEADER_HOST=aitbc/" /etc/aitbc/blockchain.env'
ssh aitbc1 'sudo sed -i "s/SYNC_CHAIN_ID=ait-testnet/SYNC_CHAIN_ID=ait-mainnet/" /etc/aitbc/blockchain.env'
# Restart service to apply changes
ssh aitbc1 'sudo systemctl restart aitbc-blockchain-node'
# Verify sync is working by checking block height increase over time
```
#### Missing Broadcaster Module
```bash
# Symptom: Node not receiving gossip messages
@@ -415,6 +497,7 @@ ssh gitea-runner 'systemctl stop aitbc-blockchain-node && rm -rf /var/lib/aitbc/
"broadcaster_installed": true,
"gossip_backend_configured": true,
"chain_roles_correct": true,
"sync_config_correct": true,
"redis_subscriptions_active": true,
"block_production_correct": true,
"cross_chain_sync_working": true
@@ -429,7 +512,8 @@ ssh gitea-runner 'systemctl stop aitbc-blockchain-node && rm -rf /var/lib/aitbc/
"recommendations": [
"Monitor gossip sync regularly",
"Run validation test daily",
"Check Redis subscriber counts weekly"
"Check Redis subscriber counts weekly",
"Verify sync configuration after node restarts"
]
}
```