Files
aitbc/scripts/wrappers/aitbc-blockchain-sync-wrapper.py
aitbc 858790b89e
Some checks failed
CLI Tests / test-cli (push) Failing after 11s
Security Scanning / security-scan (push) Successful in 1m33s
Systemd Sync / sync-systemd (push) Successful in 5s
feat: wire systemd services to use centralized aitbc package
- Create wrapper scripts for all AITBC services using aitbc utilities
- Update 13 systemd service files to use wrapper scripts
- Wrapper scripts use aitbc constants (ENV_FILE, NODE_ENV_FILE, DATA_DIR, LOG_DIR, KEYSTORE_DIR)
- Services migrated: agent-coordinator, agent-daemon, agent-registry, blockchain-event-bridge, blockchain-node, blockchain-p2p, blockchain-rpc, blockchain-sync, coordinator-api, explorer, marketplace, wallet
- Add sys.path setup to cli/aitbc_cli.py for aitbc package access
- Centralized path management via aitbc package
- Consistent environment setup across all services
2026-04-24 22:30:58 +02:00

49 lines
1.6 KiB
Python
Executable File

#!/usr/bin/env python3
"""
Wrapper script for aitbc-blockchain-sync service
Uses centralized aitbc utilities for path configuration
"""
import sys
import os
from pathlib import Path
# Add aitbc to path
sys.path.insert(0, str(Path("/opt/aitbc")))
sys.path.insert(0, str(Path("/opt/aitbc/aitbc")))
from aitbc import ENV_FILE, NODE_ENV_FILE, REPO_DIR, DATA_DIR, LOG_DIR
# Set up environment using aitbc constants
os.environ["AITBC_ENV_FILE"] = str(ENV_FILE)
os.environ["AITBC_NODE_ENV_FILE"] = str(NODE_ENV_FILE)
os.environ["PYTHONPATH"] = f"{REPO_DIR}/apps/blockchain-node/src:{REPO_DIR}/apps/blockchain-node/scripts"
os.environ["DATA_DIR"] = str(DATA_DIR)
os.environ["LOG_DIR"] = str(LOG_DIR)
# Get sync configuration from environment
redis_url = os.getenv("SYNC_REDIS_URL", "redis://localhost:6379")
node_id = os.getenv("SYNC_NODE_ID", "ait18yefwwclgmyu2a74zvv0hj3a3xw6gxsn4akrj963kp069j9xy5ns3kurun")
rpc_port = os.getenv("SYNC_RPC_PORT", "8006")
leader_host = os.getenv("SYNC_LEADER_HOST", "10.1.223.40")
source_host = os.getenv("SYNC_SOURCE_HOST", "10.1.223.40")
source_port = os.getenv("SYNC_SOURCE_PORT", "8006")
import_host = os.getenv("SYNC_IMPORT_HOST", "10.1.223.40")
import_port = os.getenv("SYNC_IMPORT_PORT", "8006")
# Execute the actual service
exec_cmd = [
"/opt/aitbc/venv/bin/python",
"-m",
"aitbc_chain.chain_sync",
"--redis", redis_url,
"--node-id", node_id,
"--rpc-port", rpc_port,
"--leader-host", leader_host,
"--source-host", source_host,
"--source-port", source_port,
"--import-host", import_host,
"--import-port", import_port
]
os.execvp(exec_cmd[0], exec_cmd)