Senior Devops
This skill provides a complete toolkit for senior DevOps engineers, incorporating modern tools and best practices. It helps automate CI/CD pipelines, generat...
Install
npx promptshop add senior-devopsDetails
What This Skill Does
This skill provides a complete toolkit for senior DevOps engineers, incorporating modern tools and best practices. It helps automate CI/CD pipelines, generate infrastructure-as-code modules, and manage container deployments with rollback support. It's designed for DevOps engineers who need to automate and manage infrastructure and deployments.
When to Use
- Scaffold CI/CD pipelines for GitHub Actions.
- Generate Terraform modules for AWS.
- Orchestrate container deployments with rollback.
- Automate infrastructure provisioning.
- Implement blue-green deployment strategy.
- Manage application deployments to production.
Key Features
- Scaffolds CI/CD pipelines for GitHub Actions and CircleCI.
- Generates Terraform modules for AWS, GCP, and Azure.
- Orchestrates container deployments with rollback support.
- Supports multiple deployment strategies.
- Automates infrastructure provisioning.
- Provides example configurations for common DevOps tasks.
Manual Installation
Manual installation
- View Full Skill Content.
- The complete markdown content that gets installed.
- Senior Devops.
Complete toolkit for senior devops with modern tools and best practices.
Quick Start
Main Capabilities
This skill provides three core capabilities through automated scripts:
-
Script 1: Pipeline Generator — scaffolds CI/CD pipelines for Git.
- Hub Actions or Circle.
- CI.
python scripts/pipeline_generator.py ./app --platform=github --stages=build,test,deploy
Script 2: Terraform Scaffolder — generates and validates IaC modules for AWS/GCP/Azure python scripts/terraform_scaffolder.py ./infra --provider=aws --module=ecs-service --verbose
Script 3: Deployment Manager — orchestrates container deployments with rollback support python scripts/deployment_manager.py deploy --env=production --image=app:1.2.3 --strategy=blue-green
Core Capabilities
1. Pipeline Generator
Scaffolds CI/CD pipeline configurations for GitHub Actions or CircleCI, with stages for build, test, security scan, and deploy.
Example — GitHub Actions workflow:
.github/workflows/ci.yml
name: CI/CD Pipeline on: push: branches: [main, develop] pull_request: branches: [main]
jobs: build-and-test: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - name: Set up Node.js uses: actions/setup-node@v4 with: node-version: '20' cache: 'npm' - run: npm ci - run: npm run lint - run: npm test -- --coverage - name: Upload coverage uses: codecov/codecov-action@v4
build-docker: needs: build-and-test runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - name: Build and push image uses: docker/build-push-action@v5 with: push: ${{ github.ref == 'refs/heads/main' }} tags: ghcr.io/${{ github.repository }}:${{ github.sha }}
deploy:
needs: build-docker
if: github.ref == 'refs/heads/main'
runs-on: ubuntu-latest
steps:
- name: Deploy to ECS
run: |
aws ecs update-service
--cluster production
--service app-service
--force-new-deployment
Usage: python scripts/pipeline_generator.py <project-path> --platform=github|circleci --stages=build,test,deploy
2. Terraform Scaffolder
- Generates, validates, and plans Terraform modules.
- Enforces consistent module structure and runs terraform validate + terraform plan before any apply.
Example — AWS ECS service module:
modules/ecs-service/main.tf
resource "aws_ecs_task_definition" "app" { family = var.service_name requires_compatibilities = ["FARGATE"] network_mode = "awsvpc" cpu = var.cpu memory = var.memory
container_definitions = jsonencode([{ name = var.service_name image = var.container_image essential = true portMappings = [{ containerPort = var.container_port protocol = "tcp" }] environment = [for k, v in var.env_vars : { name = k, value = v }] logConfiguration = { logDriver = "awslogs" options = { awslogs-group = "/ecs/${var.service_name}" awslogs-region = var.aws_region awslogs-stream-prefix = "ecs" } } }]) }
resource "aws_ecs_service" "app" { name = var.service_name cluster = var.cluster_id task_definition = aws_ecs_task_definition.app.arn desired_count = var.desired_count launch_type = "FARGATE"
network_configuration { subnets = var.private_subnet_ids security_groups = [aws_security_group.app.id] assign_public_ip = false }
load_balancer { target_group_arn = aws_lb_target_group.app.arn container_name = var.service_name container_port = var.container_port } }
Usage: python scripts/terraform_scaffolder.py <target-path> --provider=aws|gcp|azure --module=ecs-service|gke-deployment|aks-service [--verbose]
3. Deployment Manager
Orchestrates deployments with blue/green or rolling strategies, health-check gates, and automatic rollback on failure.
Example — Kubernetes blue/green deployment (blue-slot specific elements):
k8s/deployment-blue.yaml
apiVersion: apps/v1 kind: Deployment metadata: name: app-blue labels: app: myapp slot: blue # slot label distinguishes blue from green spec: replicas: 3 selector: matchLabels: app: myapp slot: blue template: metadata: labels: app: myapp slot: blue spec: containers: - name: app image: ghcr.io/org/app:1.2.3 readinessProbe: # gate: pod must pass before traffic switches httpGet: path: /healthz port: 8080 initialDelaySeconds: 10 periodSeconds: 5 resources: requests: cpu: "250m" memory: "256Mi" limits: cpu: "500m" memory: "512Mi"
Usage:
python scripts/deployment_manager.py deploy
--env=staging|production
--image=app:1.2.3
--strategy=blue-green|rolling
--health-check-url=https://app.example.com/healthz
python scripts/deployment_manager.py rollback --env=production --to-version=1.2.2 python scripts/deployment_manager.py --analyze --env=production # audit current state
Resources
Pattern Reference: references/cicd_pipeline_guide.md — detailed CI/CD patterns, best practices, anti-patterns Workflow Guide: references/infrastructure_as_code.md — IaC step-by-step processes, optimization, troubleshooting Technical Guide: references/deployment_strategies.md — deployment strategy configs, security considerations, scalability Tool Scripts: scripts/ directory
Development Workflow
1. Infrastructure Changes (Terraform)
Scaffold or update module
python scripts/terraform_scaffolder.py ./infra --provider=aws --module=ecs-service --verbose
Validate and plan — review diff before applying terraform -chdir=infra init terraform -chdir=infra validate terraform -chdir=infra plan -out=tfplan
Apply only after plan review terraform -chdir=infra apply tfplan
Verify resources are healthy
aws ecs describe-services --cluster production --services app-service
--query 'services[0].{Status:status,Running:runningCount,Desired:desiredCount}'
2. Application Deployment
Generate or update pipeline config
python scripts/pipeline_generator.py . --platform=github --stages=build,test,security,deploy
Build and tag image docker build -t ghcr.io/org/app:$(git rev-parse --short HEAD) . docker push ghcr.io/org/app:$(git rev-parse --short HEAD)
Deploy with health-check gate
python scripts/deployment_manager.py deploy
--env=production
--image=app:$(git rev-parse --short HEAD)
--strategy=blue-green
--health-check-url=https://app.example.com/healthz
Verify pods are running kubectl get pods -n production -l app=myapp kubectl rollout status