A local DevOps readiness checker for safer deployments.
Project description
🩺 Pre-Deploy Doctor
Pre-Deploy Doctor is a local DevOps readiness checker that validates whether your environment is safe to deploy BEFORE you run Docker, kubectl, or CI/CD pipelines.
It runs 100% locally, requires no cloud accounts or AI, and is designed to catch common "stupid" mistakes before they hit your production infrastructure.
🚀 Features
- Docker Health: Checks if Docker is installed and the daemon is actually running.
- Environment Validation: Loads
.envand validates that your required environment variables are set. - Port Conflicts: Identifies if required ports are already in use and shows the conflicting process name.
- Kubernetes Context Safety: Warns you if your
kubectlcontext isn't in your "allowed" list for the project. - Project Structure: Ensures critical files like
Dockerfileare present.
📦 Installation
pip install predeploy-doctor
🛠 Usage
Run inside any project directory:
predeploy check
Configuration (predeploy.yaml)
Create a predeploy.yaml in your project root to customize the checks:
required_env:
- DB_URL
- SECRET_KEY
required_ports:
- 3000
- 5432
kubernetes:
allowed_contexts:
- dev
- staging
- minikube
📋 Sample Output
🩺 Pre-Deploy Doctor Report
✔ Docker is running
✔ Found Dockerfile
✔ All required environment variables are set
❌ Port 3000 already in use (Process: node)
⚠ Kubernetes context 'production' not in allowed list
==============================
Status: ❌ NOT SAFE TO DEPLOY
🔢 Exit Codes
0: All checks passed (or only warnings). Safe to deploy.1: One or more critical checks failed. Deployment should be blocked.
📜 License
MIT
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file predeploy_doctor-0.1.0.tar.gz.
File metadata
- Download URL: predeploy_doctor-0.1.0.tar.gz
- Upload date:
- Size: 5.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6e9804b8b330d4ec81361ec7b04a1396cf8b399183b40194b9ab5fec9f68fcfa
|
|
| MD5 |
a19b9a323a2feedf9d95e84746678313
|
|
| BLAKE2b-256 |
12ae52d68a2a7a49d0bd7c9cd2d12cdc9f617a8127bdb43ffa4173fab09048ab
|
File details
Details for the file predeploy_doctor-0.1.0-py3-none-any.whl.
File metadata
- Download URL: predeploy_doctor-0.1.0-py3-none-any.whl
- Upload date:
- Size: 7.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c5324ed2da17fbf8399920c01a02cf8d3f2869e88eda35ccbd6dd882e521d6a8
|
|
| MD5 |
883b84def42da42e24cbd19fbdc22bde
|
|
| BLAKE2b-256 |
217507602473fb9f936e366e18163e75c4c664f146d54a42db10f77f1654c879
|