Some checks failed
AITBC CI/CD Pipeline / lint-and-test (3.11) (push) Has been cancelled
AITBC CI/CD Pipeline / lint-and-test (3.12) (push) Has been cancelled
AITBC CI/CD Pipeline / lint-and-test (3.13) (push) Has been cancelled
AITBC CI/CD Pipeline / test-cli (push) Has been cancelled
AITBC CI/CD Pipeline / test-services (push) Has been cancelled
AITBC CI/CD Pipeline / test-production-services (push) Has been cancelled
AITBC CI/CD Pipeline / security-scan (push) Has been cancelled
AITBC CI/CD Pipeline / build (push) Has been cancelled
AITBC CI/CD Pipeline / deploy-staging (push) Has been cancelled
AITBC CI/CD Pipeline / deploy-production (push) Has been cancelled
AITBC CI/CD Pipeline / performance-test (push) Has been cancelled
AITBC CI/CD Pipeline / docs (push) Has been cancelled
AITBC CI/CD Pipeline / release (push) Has been cancelled
AITBC CI/CD Pipeline / notify (push) Has been cancelled
Security Scanning / Bandit Security Scan (apps/coordinator-api/src) (push) Has been cancelled
Security Scanning / Bandit Security Scan (cli/aitbc_cli) (push) Has been cancelled
Security Scanning / Bandit Security Scan (packages/py/aitbc-core/src) (push) Has been cancelled
Security Scanning / Bandit Security Scan (packages/py/aitbc-crypto/src) (push) Has been cancelled
Security Scanning / Bandit Security Scan (packages/py/aitbc-sdk/src) (push) Has been cancelled
Security Scanning / Bandit Security Scan (tests) (push) Has been cancelled
Security Scanning / CodeQL Security Analysis (javascript) (push) Has been cancelled
Security Scanning / CodeQL Security Analysis (python) (push) Has been cancelled
Security Scanning / Dependency Security Scan (push) Has been cancelled
Security Scanning / Container Security Scan (push) Has been cancelled
Security Scanning / OSSF Scorecard (push) Has been cancelled
Security Scanning / Security Summary Report (push) Has been cancelled
AITBC CLI Level 1 Commands Test / test-cli-level1 (3.11) (push) Has been cancelled
AITBC CLI Level 1 Commands Test / test-cli-level1 (3.12) (push) Has been cancelled
AITBC CLI Level 1 Commands Test / test-cli-level1 (3.13) (push) Has been cancelled
AITBC CLI Level 1 Commands Test / test-summary (push) Has been cancelled
- Remove debugging service documentation (DEBUgging_SERVICES.md) - Remove development logs policy and quick reference guides - Remove E2E test creation summary - Remove gift certificate example file - Remove GitHub pull summary documentation
90 lines
2.5 KiB
Bash
90 lines
2.5 KiB
Bash
#!/bin/bash
|
|
# Deploy GPU Miner to AITBC Container
|
|
|
|
echo "🚀 Deploying GPU Miner to AITBC Container..."
|
|
|
|
# Check if container is accessible
|
|
echo "1. Checking container access..."
|
|
sudo incus exec aitbc -- whoami
|
|
|
|
# Copy GPU miner files
|
|
echo "2. Copying GPU miner files..."
|
|
sudo incus file push /home/oib/windsurf/aitbc/gpu_miner_with_wait.py aitbc/home/oib/
|
|
sudo incus file push /home/oib/windsurf/aitbc/gpu_registry_demo.py aitbc/home/oib/
|
|
|
|
# Install dependencies
|
|
echo "3. Installing dependencies..."
|
|
sudo incus exec aitbc -- pip install httpx fastapi uvicorn psutil
|
|
|
|
# Create GPU miner service
|
|
echo "4. Creating GPU miner service..."
|
|
cat << 'EOF' | sudo tee /tmp/gpu-miner.service
|
|
[Unit]
|
|
Description=AITBC GPU Miner Client
|
|
After=network.target
|
|
|
|
[Service]
|
|
Type=simple
|
|
User=oib
|
|
WorkingDirectory=/home/oib
|
|
ExecStart=/usr/bin/python3 gpu_miner_with_wait.py
|
|
Restart=always
|
|
RestartSec=30
|
|
StandardOutput=journal
|
|
StandardError=journal
|
|
|
|
[Install]
|
|
WantedBy=multi-user.target
|
|
EOF
|
|
|
|
sudo incus file push /tmp/gpu-miner.service aitbc/tmp/
|
|
sudo incus exec aitbc -- sudo mv /tmp/gpu-miner.service /etc/systemd/system/
|
|
sudo incus exec aitbc -- sudo systemctl daemon-reload
|
|
sudo incus exec aitbc -- sudo systemctl enable gpu-miner.service
|
|
sudo incus exec aitbc -- sudo systemctl start gpu-miner.service
|
|
|
|
# Create GPU registry service
|
|
echo "5. Creating GPU registry service..."
|
|
cat << 'EOF' | sudo tee /tmp/gpu-registry.service
|
|
[Unit]
|
|
Description=AITBC GPU Registry
|
|
After=network.target
|
|
|
|
[Service]
|
|
Type=simple
|
|
User=oib
|
|
WorkingDirectory=/home/oib
|
|
ExecStart=/usr/bin/python3 gpu_registry_demo.py
|
|
Restart=always
|
|
RestartSec=10
|
|
StandardOutput=journal
|
|
StandardError=journal
|
|
|
|
[Install]
|
|
WantedBy=multi-user.target
|
|
EOF
|
|
|
|
sudo incus file push /tmp/gpu-registry.service aitbc/tmp/
|
|
sudo incus exec aitbc -- sudo mv /tmp/gpu-registry.service /etc/systemd/system/
|
|
sudo incus exec aitbc -- sudo systemctl daemon-reload
|
|
sudo incus exec aitbc -- sudo systemctl enable gpu-registry.service
|
|
sudo incus exec aitbc -- sudo systemctl start gpu-registry.service
|
|
|
|
# Check services
|
|
echo "6. Checking services..."
|
|
echo "GPU Miner Service:"
|
|
sudo incus exec aitbc -- sudo systemctl status gpu-miner.service --no-pager
|
|
|
|
echo -e "\nGPU Registry Service:"
|
|
sudo incus exec aitbc -- sudo systemctl status gpu-registry.service --no-pager
|
|
|
|
# Show access URLs
|
|
echo -e "\n✅ Deployment complete!"
|
|
echo "Access URLs:"
|
|
echo " - Container IP: 10.1.223.93"
|
|
echo " - GPU Registry: http://10.1.223.93:8091/miners/list"
|
|
echo " - Coordinator API: http://10.1.223.93:8000"
|
|
|
|
echo -e "\nTo check GPU status:"
|
|
echo " curl http://10.1.223.93:8091/miners/list"
|