CalejoControl/DEPLOYMENT_CHECKLIST.md

2.4 KiB

Calejo Control Adapter - Quick Deployment Checklist

Pre-Deployment Checklist

Server Preparation

  • Target server has Ubuntu 20.04+ or CentOS 8+
  • Docker 20.10+ installed
  • Docker Compose 2.0+ installed
  • Minimum 10GB disk space available
  • Minimum 4GB RAM available
  • Outbound internet access enabled

SSH Key Setup

  • SSH key pair generated for target environment
  • Private key stored in deploy/keys/ with chmod 600
  • Public key deployed to target server
  • SSH connection test successful

Configuration

  • Configuration file updated for target environment
  • Environment variables file created
  • Database credentials configured
  • SCADA endpoints configured
  • Security settings reviewed

Deployment Steps

1. Dry Run (Always do this first!)

python deploy/ssh/deploy-remote.py -c deploy/config/production.yml --dry-run

2. Actual Deployment

python deploy/ssh/deploy-remote.py -c deploy/config/production.yml

3. Post-Deployment Verification

  • Health check: curl http://SERVER_IP:8080/health
  • Service status: docker-compose ps
  • Logs review: docker-compose logs app
  • Validation script: ./deploy/validate-deployment.sh

Quick Commands Reference

Deployment

# Python deployment (recommended)
python deploy/ssh/deploy-remote.py -c deploy/config/production.yml

# Shell script deployment
./deploy/deploy-onprem.sh

# Manual deployment
docker-compose -f docker-compose.production.yml up -d

Verification

# Health check
curl http://SERVER_IP:8080/health

# Service status
docker-compose -f docker-compose.production.yml ps

# Application logs
docker-compose -f docker-compose.production.yml logs app

# Full validation
./deploy/validate-deployment.sh

Troubleshooting

# Check all logs
docker-compose -f docker-compose.production.yml logs

# Restart services
docker-compose -f docker-compose.production.yml restart

# Stop all services
docker-compose -f docker-compose.production.yml down

# SSH to server
ssh -i deploy/keys/production_key root@SERVER_IP

Emergency Contacts

  • Deployment Issues: Check /var/log/calejo/deployment.log
  • Application Issues: Check docker-compose logs app
  • Database Issues: Check docker-compose logs db
  • Network Issues: Verify firewall and port configurations

Remember: Always test deployment in staging environment before production!