Some checks failed
API Endpoint Tests / test-api-endpoints (push) Successful in 19s
Blockchain Synchronization Verification / sync-verification (push) Failing after 2s
Integration Tests / test-service-integration (push) Successful in 3m1s
Multi-Node Blockchain Health Monitoring / health-check (push) Failing after 7s
P2P Network Verification / p2p-verification (push) Successful in 9s
Python Tests / test-python (push) Successful in 28s
Security Scanning / security-scan (push) Successful in 55s
Systemd Sync / sync-systemd (push) Successful in 17s
Remove default fallback for API_KEY_HASH_SECRET in tenant context middleware and management service, requiring explicit environment variable configuration. Migrate keystore password handling from /etc/aitbc/keystore_password to /etc/aitbc/credentials/keystore_password with 600 permissions. Add load-keystore-secrets.sh pre-start hook and /run/aitbc/secrets/.env environment file to blockchain-node, blockchain
42 lines
949 B
Desktop File
42 lines
949 B
Desktop File
[Unit]
|
|
Description=AITBC Production Blockchain Node
|
|
After=network.target postgresql.service redis.service
|
|
Wants=postgresql.service redis.service
|
|
|
|
[Service]
|
|
Type=simple
|
|
User=root
|
|
Group=root
|
|
WorkingDirectory=/opt/aitbc
|
|
Environment=PATH=/usr/bin:/usr/local/bin:/usr/bin:/bin
|
|
ExecStartPre=/opt/aitbc/scripts/utils/load-keystore-secrets.sh
|
|
EnvironmentFile=/run/aitbc/secrets/.env
|
|
EnvironmentFile=/etc/aitbc/.env
|
|
EnvironmentFile=/etc/aitbc/node.env
|
|
ExecStart=/opt/aitbc/venv/bin/python /opt/aitbc/scripts/wrappers/aitbc-blockchain-node-wrapper.py
|
|
ExecReload=/bin/kill -HUP $MAINPID
|
|
KillMode=mixed
|
|
TimeoutStopSec=10
|
|
|
|
# Production reliability
|
|
Restart=always
|
|
RestartSec=5
|
|
|
|
# Production logging
|
|
StandardOutput=journal
|
|
StandardError=journal
|
|
SyslogIdentifier=aitbc-blockchain
|
|
|
|
# Production security
|
|
NoNewPrivileges=true
|
|
ProtectHome=true
|
|
|
|
# Production performance
|
|
LimitNOFILE=65536
|
|
LimitNPROC=4096
|
|
MemoryMax=2G
|
|
CPUQuota=50%
|
|
|
|
[Install]
|
|
WantedBy=multi-user.target
|