Scaffold: HTTP Service Deployment
This document is an entrypoint for service deployment scaffolding. The step-by-step flow is in /.system/skills/ssot/repo/scaffolding/devops-deploy-service/SKILL.md.
1. Purpose & Scope
Purpose: Generate deployment skeleton for running an HTTP service in target environments (Kubernetes, cloud platforms, etc.).
Scope:
- •Creates deployment configuration files
- •Sets up environment-specific configurations
- •Generates deployment scripts
- •Records deployment decisions in workdocs
Out of scope:
- •Actual deployment execution (requires human with credentials)
- •Packaging/Docker build (see devops_packaging_service.md)
- •Job deployment (see devops_deploy_job.md)
- •Infrastructure provisioning
2. Inputs & Preconditions
Required Inputs
| Parameter | Type | Description |
|---|---|---|
service_name | string | Service identifier (matches packaging) |
environment | string | Target environment: dev, staging, prod |
replicas | integer | Number of replicas (default: 1) |
Optional Inputs
| Parameter | Type | Default | Description |
|---|---|---|---|
image_tag | string | latest | Docker image tag |
port | integer | 8080 | Service port |
resources | object | {} | CPU/memory limits |
env_vars | object | {} | Environment variables |
secrets | array | [] | Secret references |
ingress | object | {} | Ingress configuration |
Preconditions
- •Service has been packaged (see devops_packaging_service.md)
- •
/ops/deploy/directory exists - •Human has deployment credentials for target environment
- •Target environment infrastructure exists
3. Step-by-Step Flow (AI + Human)
See /.system/skills/ssot/repo/scaffolding/devops-deploy-service/SKILL.md.
4. Tools & Scripts
| Tool | Purpose |
|---|---|
scripts/devops/scaffold/devops_deploy_service.py | Orchestrator script |
/ops/deploy/scripts/deploy.sh | Generated deploy script |
5. Outputs & Side Effects
Files Created
code
ops/deploy/services/<service_name>/<environment>/ deployment.yaml # Kubernetes Deployment service.yaml # Kubernetes Service ingress.yaml # Ingress (if configured) configmap.yaml # ConfigMap (if env_vars) config.yaml # Deployment configuration deploy.sh # Deployment script README.md # Human-facing documentation
Kubernetes Deployment Template
yaml
# Auto-generated by devops_deploy_service scaffold
apiVersion: apps/v1
kind: Deployment
metadata:
name: <service_name>
namespace: <environment>
spec:
replicas: <replicas>
selector:
matchLabels:
app: <service_name>
template:
metadata:
labels:
app: <service_name>
spec:
containers:
- name: <service_name>
image: <registry>/<service_name>:<image_tag>
ports:
- containerPort: <port>
resources:
limits:
cpu: "500m"
memory: "512Mi"
requests:
cpu: "100m"
memory: "128Mi"
livenessProbe:
httpGet:
path: /health
port: <port>
initialDelaySeconds: 30
periodSeconds: 10
Configuration File
yaml
service_name: <service_name>
environment: <environment>
replicas: <replicas>
image_tag: latest
port: 8080
resources:
limits:
cpu: "500m"
memory: "512Mi"
requests:
cpu: "100m"
memory: "128Mi"
env_vars: {}
secrets: []
ingress:
enabled: false
host: ""
6. Safety & Rollback
Safety Measures
- •
--dry-runalways available for preview - •Human approval required before execution
- •No actual deployment during scaffold
- •Credentials not stored in generated files
- •Production deployments require additional approval
Rollback Procedure
For deployment rollback (human executes):
bash
kubectl rollout undo deployment/<service_name> -n <environment>
For scaffold rollback:
- •Delete the deployment directory:
bash
rm -rf ops/deploy/services/<service_name>/<environment>/
7. Deployment Execution (Human Required)
After scaffold, human executes deployment:
- •
Review configuration:
bashcat ops/deploy/services/<service_name>/<environment>/config.yaml
- •
Apply to cluster:
bashkubectl apply -f ops/deploy/services/<service_name>/<environment>/
- •
Verify deployment:
bashkubectl get pods -n <environment> -l app=<service_name> kubectl logs -n <environment> -l app=<service_name>
- •
Record outcome in workdocs
8. Related Documents
- •
/.system/skills/ssot/repo/scaffolding/devops-deploy-job/templates/deploy_template.md- Deployment knowledge template - •
/.system/skills/ssot/repo/scaffolding/devops-packaging-service/SKILL.md- Service packaging scaffold - •
/.system/skills/ssot/repo/scaffolding/devops-deploy-job/SKILL.md- Job deployment scaffold - •
/ops/deploy/AGENTS.md- Deployment strategy