chore(cleanup): remove obsolete scripts and update paths for production deployment
- Remove dev/scripts/check-file-organization.sh (obsolete organization checker) - Remove dev/scripts/community_onboarding.py (unused 559-line automation script) - Update gpu_miner_host.py log path from /home/oib/windsurf/aitbc to /opt/aitbc - Add service status and standardization badges to README.md
This commit is contained in:
17
systemd/aitbc-blockchain-node.service
Normal file
17
systemd/aitbc-blockchain-node.service
Normal file
@@ -0,0 +1,17 @@
|
||||
[Unit]
|
||||
Description=AITBC Blockchain Node
|
||||
After=network.target
|
||||
|
||||
[Service]
|
||||
Type=simple
|
||||
User=aitbc
|
||||
WorkingDirectory=/opt/aitbc/apps/blockchain-node
|
||||
Environment=PYTHONPATH=/opt/aitbc/apps/blockchain-node/src:/opt/aitbc/apps/blockchain-node/scripts
|
||||
ExecStart=/opt/aitbc/apps/blockchain-node/.venv/bin/python -m aitbc_chain.main
|
||||
Restart=always
|
||||
RestartSec=5
|
||||
StandardOutput=journal
|
||||
StandardError=journal
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
17
systemd/aitbc-blockchain-rpc.service
Normal file
17
systemd/aitbc-blockchain-rpc.service
Normal file
@@ -0,0 +1,17 @@
|
||||
[Unit]
|
||||
Description=AITBC Blockchain RPC API
|
||||
After=network.target aitbc-blockchain-node.service
|
||||
|
||||
[Service]
|
||||
Type=simple
|
||||
User=aitbc
|
||||
WorkingDirectory=/opt/aitbc/apps/blockchain-node
|
||||
Environment=PYTHONPATH=/opt/aitbc/apps/blockchain-node/src:/opt/aitbc/apps/blockchain-node/scripts
|
||||
ExecStart=/opt/aitbc/apps/blockchain-node/.venv/bin/python -m uvicorn aitbc_chain.app:app --host 0.0.0.0 --port 9080 --log-level info
|
||||
Restart=always
|
||||
RestartSec=5
|
||||
StandardOutput=journal
|
||||
StandardError=journal
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
@@ -5,14 +5,14 @@ Wants=network.target
|
||||
|
||||
[Service]
|
||||
Type=simple
|
||||
User=oib
|
||||
Group=oib
|
||||
WorkingDirectory=/opt/coordinator-api
|
||||
Environment=PATH=/opt/coordinator-api/.venv/bin
|
||||
Environment=PYTHONPATH=/opt/coordinator-api/src
|
||||
User=aitbc
|
||||
WorkingDirectory=/opt/aitbc/apps/coordinator-api
|
||||
Environment=PATH=/opt/aitbc/apps/coordinator-api/.venv/bin
|
||||
Environment=PYTHONPATH=/opt/aitbc/apps/coordinator-api/src
|
||||
Environment=MINER_API_KEYS=["miner_test_abc123"]
|
||||
# Python version validation
|
||||
ExecStartPre=/bin/bash -c "python3 --version || (echo 'Python 3.13.5+ required' && exit 1)"
|
||||
ExecStart=/opt/coordinator-api/.venv/bin/python -m uvicorn app.main:app --host 0.0.0.0 --port 8000
|
||||
ExecStart=/opt/aitbc/apps/coordinator-api/.venv/bin/python -m uvicorn app.main:app --host 0.0.0.0 --port 8000
|
||||
ExecReload=/bin/kill -HUP $MAINPID
|
||||
Restart=always
|
||||
RestartSec=5
|
||||
|
||||
@@ -5,13 +5,13 @@ Wants=network.target
|
||||
|
||||
[Service]
|
||||
Type=simple
|
||||
User=root
|
||||
Group=root
|
||||
WorkingDirectory=/opt/exchange-api
|
||||
Environment=PATH=/opt/exchange-api/.venv/bin
|
||||
User=aitbc
|
||||
Group=aitbc
|
||||
WorkingDirectory=/opt/aitbc/apps/trade-exchange
|
||||
Environment=PATH=/opt/aitbc/apps/coordinator-api/.venv/bin
|
||||
# Python version validation
|
||||
ExecStartPre=/bin/bash -c "python3 --version || (echo 'Python 3.13.5+ required' && exit 1)"
|
||||
ExecStart=/opt/exchange-api/.venv/bin/python simple_exchange_api.py
|
||||
ExecStart=/opt/aitbc/apps/coordinator-api/.venv/bin/python simple_exchange_api.py
|
||||
ExecReload=/bin/kill -HUP $MAINPID
|
||||
Restart=always
|
||||
RestartSec=5
|
||||
|
||||
@@ -5,11 +5,12 @@ Wants=network.target
|
||||
|
||||
[Service]
|
||||
Type=simple
|
||||
User=root
|
||||
Group=root
|
||||
WorkingDirectory=/opt/exchange-frontend
|
||||
Environment=PATH=/opt/exchange-frontend/.venv/bin
|
||||
ExecStart=/opt/exchange-frontend/.venv/bin/python server.py --port 3002
|
||||
User=aitbc
|
||||
Group=aitbc
|
||||
WorkingDirectory=/opt/aitbc/apps/trade-exchange
|
||||
Environment=PATH=/opt/aitbc/apps/coordinator-api/.venv/bin
|
||||
Environment=PYTHONPATH=/opt/aitbc/apps/trade-exchange
|
||||
ExecStart=/opt/aitbc/apps/coordinator-api/.venv/bin/python server.py --port 3002
|
||||
ExecReload=/bin/kill -HUP $MAINPID
|
||||
Restart=always
|
||||
RestartSec=5
|
||||
|
||||
@@ -1,20 +1,19 @@
|
||||
[Unit]
|
||||
Description=AITBC Blockchain Explorer UI
|
||||
After=network.target aitbc-blockchain-rpc-1.service aitbc-blockchain-rpc-2.service
|
||||
After=network.target aitbc-blockchain-rpc.service
|
||||
|
||||
[Service]
|
||||
Type=simple
|
||||
User=root
|
||||
User=aitbc
|
||||
Group=aitbc
|
||||
WorkingDirectory=/opt/aitbc/apps/blockchain-explorer
|
||||
# Assuming we will use the venv from coordinator-api or blockchain-node as standard
|
||||
Environment=PATH=/opt/aitbc/apps/coordinator-api/.venv/bin:/usr/local/bin:/usr/bin:/bin
|
||||
# Need to make sure fastapi and uvicorn are available
|
||||
Environment=PYTHONPATH=/opt/aitbc/apps/blockchain-explorer
|
||||
ExecStart=/opt/aitbc/apps/coordinator-api/.venv/bin/python main.py
|
||||
Restart=always
|
||||
RestartSec=5
|
||||
# Adjust logging
|
||||
StandardOutput=syslog
|
||||
StandardError=syslog
|
||||
StandardOutput=journal
|
||||
StandardError=journal
|
||||
SyslogIdentifier=aitbc-explorer
|
||||
|
||||
[Install]
|
||||
|
||||
@@ -1,22 +0,0 @@
|
||||
[Unit]
|
||||
Description=AITBC GPU Miner Client
|
||||
After=network.target
|
||||
Wants=network.target
|
||||
|
||||
[Service]
|
||||
Type=simple
|
||||
User=root
|
||||
Group=root
|
||||
WorkingDirectory=/opt/gpu-miner
|
||||
Environment=PYTHONPATH=/opt/gpu-miner
|
||||
ExecStart=/usr/bin/python3 /opt/gpu-miner/gpu_miner_with_wait.py
|
||||
Restart=on-failure
|
||||
RestartSec=30
|
||||
StartLimitInterval=300
|
||||
StartLimitBurst=5
|
||||
StandardOutput=journal
|
||||
StandardError=journal
|
||||
SyslogIdentifier=aitbc-gpu-miner
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
@@ -5,11 +5,16 @@ Wants=network.target
|
||||
|
||||
[Service]
|
||||
Type=simple
|
||||
User=debian
|
||||
Group=debian
|
||||
WorkingDirectory=/opt/gpu-miner
|
||||
Environment=PYTHONPATH=/opt/gpu-miner
|
||||
ExecStart=/opt/gpu-miner/venv/bin/python /opt/gpu-miner/gpu_miner_simple.py
|
||||
User=aitbc
|
||||
Group=aitbc
|
||||
WorkingDirectory=/opt/aitbc
|
||||
Environment=PYTHONPATH=/home/oib/windsurf/aitbc/dev/gpu
|
||||
Environment=VIRTUAL_ENV=/opt/aitbc/.venv
|
||||
Environment=PYTHONUNBUFFERED=1
|
||||
Environment=PYTHONIOENCODING=utf-8
|
||||
Environment=FORCE_COLOR=1
|
||||
Environment=PATH=/opt/aitbc/.venv/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
|
||||
ExecStart=/bin/bash -c 'exec /opt/aitbc/apps/coordinator-api/.venv/bin/python -u /home/oib/windsurf/aitbc/dev/gpu/gpu_miner_host.py 2>&1 | tee -a /opt/aitbc/logs/host_gpu_miner.log'
|
||||
Restart=on-failure
|
||||
RestartSec=30
|
||||
StartLimitInterval=300
|
||||
@@ -22,7 +27,8 @@ SyslogIdentifier=aitbc-gpu-miner
|
||||
NoNewPrivileges=true
|
||||
PrivateTmp=true
|
||||
ProtectSystem=strict
|
||||
ReadWritePaths=/opt/gpu-miner
|
||||
ProtectHome=true
|
||||
ReadWritePaths=/opt/aitbc/logs /opt/aitbc/data /home/oib/windsurf/aitbc/dev/gpu
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
|
||||
@@ -5,10 +5,12 @@ Wants=network.target
|
||||
|
||||
[Service]
|
||||
Type=simple
|
||||
User=oib
|
||||
Group=oib
|
||||
WorkingDirectory=/opt/gpu-miner
|
||||
ExecStart=/usr/bin/python3 /opt/gpu-miner/gpu_registry_demo.py
|
||||
User=aitbc
|
||||
Group=aitbc
|
||||
WorkingDirectory=/opt/aitbc/apps/gpu-miner
|
||||
Environment=PATH=/opt/aitbc/apps/coordinator-api/.venv/bin
|
||||
Environment=PYTHONPATH=/opt/aitbc/apps/gpu-miner
|
||||
ExecStart=/opt/aitbc/apps/coordinator-api/.venv/bin/python /home/oib/windsurf/aitbc/dev/gpu/gpu_registry_demo.py
|
||||
Restart=always
|
||||
RestartSec=10
|
||||
StandardOutput=journal
|
||||
|
||||
@@ -1,27 +0,0 @@
|
||||
[Unit]
|
||||
Description=AITBC Host GPU Miner Client
|
||||
After=network.target
|
||||
Wants=network.target
|
||||
|
||||
[Service]
|
||||
Type=simple
|
||||
User=oib
|
||||
Group=oib
|
||||
WorkingDirectory=/opt/gpu-miner
|
||||
Environment=PYTHONPATH=/opt/gpu-miner
|
||||
Environment=VIRTUAL_ENV=/opt/gpu-miner/.venv
|
||||
Environment=PYTHONUNBUFFERED=1
|
||||
Environment=PYTHONIOENCODING=utf-8
|
||||
Environment=FORCE_COLOR=1
|
||||
Environment=PATH=/opt/gpu-miner/.venv/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
|
||||
ExecStart=/bin/bash -c 'exec /opt/gpu-miner/.venv/bin/python -u /opt/gpu-miner/scripts/gpu/gpu_miner_host.py 2>&1 | tee -a /opt/gpu-miner/logs/host_gpu_miner.log'
|
||||
Restart=on-failure
|
||||
RestartSec=30
|
||||
StartLimitInterval=300
|
||||
StartLimitBurst=5
|
||||
StandardOutput=journal
|
||||
StandardError=journal
|
||||
SyslogIdentifier=aitbc-host-gpu-miner
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
@@ -5,28 +5,17 @@ Wants=aitbc-coordinator-api.service aitbc-marketplace-enhanced.service
|
||||
|
||||
[Service]
|
||||
Type=simple
|
||||
User=oib
|
||||
Group=oib
|
||||
WorkingDirectory=/home/oib/windsurf/aitbc
|
||||
Environment=PATH=/home/oib/windsurf/aitbc/.venv/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
|
||||
ExecStart=/home/oib/windsurf/aitbc/.venv/bin/python /home/oib/windsurf/aitbc/scripts/geo_load_balancer.py
|
||||
User=aitbc
|
||||
Group=aitbc
|
||||
WorkingDirectory=/opt/aitbc
|
||||
Environment=PATH=/opt/aitbc/apps/coordinator-api/.venv/bin
|
||||
ExecStart=/opt/aitbc/apps/coordinator-api/.venv/bin/python /home/oib/windsurf/aitbc/apps/coordinator-api/scripts/geo_load_balancer.py
|
||||
ExecReload=/bin/kill -HUP $MAINPID
|
||||
KillMode=mixed
|
||||
TimeoutStopSec=5
|
||||
PrivateTmp=true
|
||||
Restart=on-failure
|
||||
Restart=always
|
||||
RestartSec=10
|
||||
|
||||
# Logging
|
||||
StandardOutput=journal
|
||||
StandardError=journal
|
||||
SyslogIdentifier=aitbc-loadbalancer-geo
|
||||
|
||||
# Security
|
||||
NoNewPrivileges=true
|
||||
ProtectSystem=strict
|
||||
ProtectHome=true
|
||||
ReadWritePaths=/home/oib/windsurf/aitbc
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
|
||||
@@ -16,7 +16,7 @@ Environment=DATABASE_URL=postgresql://aitbc:password@localhost:5432/aitbc
|
||||
Environment=ROYALTY_ENABLED=true
|
||||
Environment=LICENSING_ENABLED=true
|
||||
Environment=LOG_LEVEL=INFO
|
||||
ExecStart=/opt/aitbc/.venv/bin/python -m aitbc_marketplace_enhanced.main
|
||||
ExecStart=/opt/aitbc/apps/coordinator-api/.venv/bin/python -m uvicorn app.main:app --host 0.0.0.0 --port 8006
|
||||
ExecReload=/bin/kill -HUP $MAINPID
|
||||
Restart=always
|
||||
RestartSec=10
|
||||
@@ -24,17 +24,5 @@ StandardOutput=journal
|
||||
StandardError=journal
|
||||
SyslogIdentifier=aitbc-marketplace-enhanced
|
||||
|
||||
# Security settings
|
||||
NoNewPrivileges=true
|
||||
PrivateTmp=true
|
||||
ProtectSystem=strict
|
||||
ProtectHome=true
|
||||
ReadWritePaths=/opt/aitbc/logs /opt/aitbc/data
|
||||
LimitNOFILE=65536
|
||||
|
||||
# Resource limits
|
||||
MemoryMax=2G
|
||||
CPUQuota=200%
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
[Unit]
|
||||
Description=AITBC GPU Multi-Modal Service (Port 8003)
|
||||
Description=AITBC Multimodal GPU Service (Port 8003)
|
||||
Documentation=https://docs.aitbc.bubuit.net
|
||||
After=network.target aitbc-coordinator-api.service nvidia-persistenced.service
|
||||
Wants=aitbc-coordinator-api.service
|
||||
@@ -15,13 +15,13 @@ Environment=SERVICE_TYPE=gpu-multimodal
|
||||
Environment=GPU_ENABLED=true
|
||||
Environment=CUDA_VISIBLE_DEVICES=0
|
||||
Environment=LOG_LEVEL=INFO
|
||||
ExecStart=/opt/aitbc/.venv/bin/python -m aitbc_gpu_multimodal.main
|
||||
ExecStart=/opt/aitbc/apps/coordinator-api/.venv/bin/python -m aitbc_gpu_multimodal.main
|
||||
ExecReload=/bin/kill -HUP $MAINPID
|
||||
Restart=always
|
||||
RestartSec=10
|
||||
StandardOutput=journal
|
||||
StandardError=journal
|
||||
SyslogIdentifier=aitbc-gpu-multimodal
|
||||
SyslogIdentifier=aitbc-multimodal-gpu
|
||||
|
||||
# Security settings
|
||||
NoNewPrivileges=true
|
||||
@@ -1,25 +0,0 @@
|
||||
[Unit]
|
||||
Description=AITBC Blockchain Node Service (Python 3.13.5+)
|
||||
After=network.target
|
||||
Wants=network.target
|
||||
|
||||
[Service]
|
||||
Type=simple
|
||||
User=root
|
||||
Group=root
|
||||
WorkingDirectory=/opt/blockchain-node
|
||||
Environment=PATH=/opt/blockchain-node/.venv/bin
|
||||
Environment=PYTHONPATH=/opt/blockchain-node
|
||||
Environment=RUST_LOG=info
|
||||
# Python version validation
|
||||
ExecStartPre=/bin/bash -c "python3 --version || (echo 'Python 3.13.5+ required' && exit 1)"
|
||||
ExecStart=/opt/blockchain-node/.venv/bin/python -m node.main --datadir /opt/blockchain-node/data --rpc-bind 0.0.0.0:8545
|
||||
ExecReload=/bin/kill -HUP $MAINPID
|
||||
Restart=always
|
||||
RestartSec=5
|
||||
StandardOutput=journal
|
||||
StandardError=journal
|
||||
SyslogIdentifier=aitbc-node
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
@@ -5,14 +5,19 @@ Wants=network.target
|
||||
|
||||
[Service]
|
||||
Type=simple
|
||||
User=root
|
||||
Group=root
|
||||
WorkingDirectory=/opt/wallet-daemon
|
||||
Environment=PATH=/opt/wallet-daemon/.venv/bin
|
||||
Environment=PYTHONPATH=/opt/wallet-daemon
|
||||
User=aitbc
|
||||
Group=aitbc
|
||||
WorkingDirectory=/opt/aitbc/apps/coordinator-api
|
||||
Environment=PATH=/opt/aitbc/apps/coordinator-api/.venv/bin
|
||||
Environment=PYTHONPATH=/opt/aitbc/apps/coordinator-api/src
|
||||
Environment=PYTHONUNBUFFERED=1
|
||||
Environment=PYTHONIOENCODING=utf-8
|
||||
Environment=PORT=8001
|
||||
Environment=SERVICE_TYPE=wallet
|
||||
Environment=LOG_LEVEL=INFO
|
||||
# Python version validation
|
||||
ExecStartPre=/bin/bash -c "python3 --version || (echo 'Python 3.13.5+ required' && exit 1)"
|
||||
ExecStart=/opt/wallet-daemon/.venv/bin/python -m wallet_daemon.main --host 0.0.0.0 --port 8001
|
||||
ExecStart=/opt/aitbc/apps/coordinator-api/.venv/bin/python -m uvicorn app.main:app --host 0.0.0.0 --port 8001
|
||||
ExecReload=/bin/kill -HUP $MAINPID
|
||||
Restart=always
|
||||
RestartSec=5
|
||||
|
||||
Reference in New Issue
Block a user