Files
aitbc/scripts/workflow
aitbc1 45cc1c8ddb
All checks were successful
Documentation Validation / validate-docs (push) Successful in 9s
refactor: consolidate workflow steps and replace inline commands with script references
📋 Workflow Consolidation:
• Renumbered steps 11-16 to 11-15 for better organization
• Replaced inline sync commands with 12_complete_sync.sh script
• Updated maintenance steps to use 13_maintenance_automation.sh
• Updated production readiness to use 14_production_ready.sh
• Removed duplicate script references and consolidated functionality

🔧 Troubleshooting Updates:
• Replaced keystore setup commands with 01_preflight_setup.sh reference
2026-03-29 17:01:26 +02:00
..

AITBC Multi-Node Blockchain Setup Scripts

This directory contains modular scripts for setting up and managing a multi-node AITBC blockchain network.

Scripts Overview

Core Setup Scripts

  1. 01_preflight_setup.sh - Pre-flight system preparation

    • Stops existing services
    • Updates systemd configurations
    • Sets up environment files
    • Installs CLI tool
    • Creates keystore and directories
  2. 02_genesis_authority_setup.sh - Genesis authority node setup (aitbc1)

    • Pulls latest code
    • Configures genesis authority
    • Creates genesis block
    • Starts blockchain services
  3. 03_follower_node_setup.sh - Follower node setup (aitbc)

    • Configures follower node
    • Sets up cross-node communication
    • Starts follower services
  4. 04_create_wallet.sh - Wallet creation on follower node

    • Creates new wallet using CLI tool
    • Verifies wallet creation
    • Returns wallet address
  5. 05_send_transaction.sh - Transaction sending

    • Sends AIT from genesis to wallet
    • Monitors transaction confirmation
    • Verifies balance update
  6. 06_final_verification.sh - Complete system verification

    • Checks blockchain synchronization
    • Verifies transaction success
    • Tests network health
    • Validates service status

Master Script

  • setup_multinode_blockchain.sh - Master orchestrator script
    • Runs all scripts in sequence
    • Provides interactive execution
    • Includes comprehensive summary
    • Handles error checking

Usage

Individual Script Execution

# Run individual scripts
./01_preflight_setup.sh
./02_genesis_authority_setup.sh
./03_follower_node_setup.sh
./04_create_wallet.sh
./05_send_transaction.sh
./06_final_verification.sh

Master Script Execution

# Run complete setup (interactive)
./setup_multinode_blockchain.sh

# Run complete setup (non-interactive)
echo "y" | ./setup_multinode_blockchain.sh

Script Dependencies

System Requirements

  • aitbc1 node (genesis authority)
  • aitbc node (follower)
  • SSH access between nodes
  • Redis service running
  • Python virtual environment

Environment Variables

  • WALLET_ADDR - Set by wallet creation script
  • GENESIS_ADDR - Set by genesis setup script

File Structure

/opt/aitbc/scripts/workflow/
├── 01_preflight_setup.sh
├── 02_genesis_authority_setup.sh
├── 03_follower_node_setup.sh
├── 04_create_wallet.sh
├── 05_send_transaction.sh
├── 06_final_verification.sh
├── setup_multinode_blockchain.sh
└── README.md

Script Features

Error Handling

  • All scripts use set -e for error detection
  • Comprehensive error messages
  • Graceful failure handling

Logging

  • Clear step-by-step output
  • Progress indicators
  • Success/failure confirmation

Modularity

  • Each script is self-contained
  • Can be run independently
  • State management between scripts

Cross-Node Operations

  • Automatic SSH handling
  • Remote command execution
  • File synchronization

Customization

Environment Modifications

  • Edit .env files for different configurations
  • Modify service names as needed
  • Adjust network settings

Script Parameters

  • Wallet names can be changed
  • Transaction amounts are configurable
  • Network settings are customizable

Troubleshooting

Common Issues

  1. SSH Connection: Verify SSH keys between nodes
  2. Service Failures: Check systemd logs
  3. Network Issues: Verify Redis and RPC connectivity
  4. Permission Errors: Ensure proper file permissions

Debug Mode

Add set -x to scripts for detailed execution tracing.

Log Locations

  • Systemd logs: journalctl -u aitbc-blockchain-*
  • Application logs: /var/log/aitbc/
  • Script logs: Console output

Security Considerations

Password Management

  • Keystore passwords stored in /var/lib/aitbc/keystore/.password
  • Change default password in production
  • Use proper key management

Network Security

  • SSH key authentication recommended
  • Firewall rules for RPC ports
  • Redis security configuration

File Permissions

  • Keystore files: 600 (owner only)
  • Scripts: 755 (executable)
  • Configuration: 644 (readable)

Maintenance

Regular Tasks

  • Monitor blockchain synchronization
  • Check service health
  • Update scripts as needed
  • Backup configurations

Updates

  • Pull latest code changes
  • Update script dependencies
  • Test script modifications
  • Document changes

Integration with Workflow

These scripts are referenced in the main workflow documentation:

  • /opt/aitbc/.windsurf/workflows/multi-node-blockchain-setup.md

The workflow now uses script references instead of inline code, making it:

  • More maintainable
  • Easier to test
  • Reusable components
  • Better organized