Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
rohitg00 avatar

K8s Rollouts

  • 9 installs
  • 941 repo stars
  • Updated April 8, 2026
  • rohitg00/kubectl-mcp-server

Helps with ai & agent building tasks during AI-assisted development.

About

k8s-rollouts is a Claude Code skill for ai & agent building. It helps solo builders move faster with AI-assisted coding.

  • k8s-rollouts
  • AI & Agent Building
  • AI-coding skill

K8s Rollouts by the numbers

  • 9 all-time installs (skills.sh)
  • Ranked #12,152 of 16,546 AI & Agent Building skills by installs in the Skillselion catalog
  • Data as of Aug 5, 2026 (Skillselion catalog sync)
npx skills add https://github.com/rohitg00/kubectl-mcp-server --skill k8s-rollouts

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs9
repo stars941
Last updatedApril 8, 2026
Repositoryrohitg00/kubectl-mcp-server

What it does

Helps with ai & agent building tasks during AI-assisted development.

Files

SKILL.mdMarkdownGitHub ↗

Progressive Delivery with Argo Rollouts & Flagger

Manage progressive deployments using kubectl-mcp-server's rollout tools (11 tools).

When to Apply

Use this skill when:

  • User mentions: "canary", "blue-green", "progressive delivery", "Argo Rollouts", "Flagger"
  • Operations: rolling out new versions, traffic splitting, automated rollbacks
  • Keywords: "gradual rollout", "traffic shift", "analysis run", "promote", "abort"

Priority Rules

PriorityRuleImpactTools
1Detect Argo Rollouts installation firstCRITICALrollouts_detect_tool
2Check rollout status before promotingHIGHrollout_status_tool
3Monitor analysis runs for failuresHIGHanalysis_runs_list_tool
4Abort immediately on critical failuresCRITICALrollout_abort_tool

Quick Reference

TaskToolExample
Detect Argo Rolloutsrollouts_detect_toolrollouts_detect_tool()
List rolloutsrollouts_list_toolrollouts_list_tool(namespace)
Get rollout statusrollout_status_toolrollout_status_tool(name, namespace)
Promote rolloutrollout_promote_toolrollout_promote_tool(name, namespace)

Check Installation

rollouts_detect_tool()

Argo Rollouts

List Rollouts

rollouts_list_tool(namespace="default")

# Shows:
# - Rollout name
# - Strategy (canary/blueGreen)
# - Status
# - Desired/Ready replicas

Get Rollout Details

rollout_get_tool(name="my-rollout", namespace="default")

# Shows:
# - Spec (strategy, steps)
# - Status (phase, conditions)
# - Current step

Check Rollout Status

rollout_status_tool(name="my-rollout", namespace="default")

# Returns detailed status with:
# - Current step index
# - Canary weight
# - Stable/canary replicasets

Promote Rollout

# Promote to next step
rollout_promote_tool(name="my-rollout", namespace="default")

# Full promote (skip remaining steps)
rollout_promote_tool(name="my-rollout", namespace="default", full=True)

Abort Rollout

rollout_abort_tool(name="my-rollout", namespace="default")
# Reverts to stable version

Retry Rollout

rollout_retry_tool(name="my-rollout", namespace="default")
# Retry failed rollout

Restart Rollout

rollout_restart_tool(name="my-rollout", namespace="default")
# Triggers new rollout with same spec

Analysis Runs

# List analysis runs
analysis_runs_list_tool(namespace="default")

# Analysis runs verify rollout health:
# - Prometheus metrics
# - Web hooks
# - Custom jobs

Create Canary Rollout

kubectl_apply(manifest="""
apiVersion: argoproj.io/v1alpha1
kind: Rollout
metadata:
  name: my-rollout
  namespace: default
spec:
  replicas: 5
  strategy:
    canary:
      steps:
      - setWeight: 20
      - pause: {duration: 1m}
      - setWeight: 40
      - pause: {duration: 1m}
      - setWeight: 60
      - pause: {duration: 1m}
      - setWeight: 80
      - pause: {duration: 1m}
  selector:
    matchLabels:
      app: my-app
  template:
    metadata:
      labels:
        app: my-app
    spec:
      containers:
      - name: app
        image: my-app:v2
        ports:
        - containerPort: 8080
""")

Create Blue-Green Rollout

kubectl_apply(manifest="""
apiVersion: argoproj.io/v1alpha1
kind: Rollout
metadata:
  name: my-rollout
  namespace: default
spec:
  replicas: 3
  strategy:
    blueGreen:
      activeService: my-app-active
      previewService: my-app-preview
      autoPromotionEnabled: false
  selector:
    matchLabels:
      app: my-app
  template:
    metadata:
      labels:
        app: my-app
    spec:
      containers:
      - name: app
        image: my-app:v2
""")

Flagger

List Canaries

flagger_canaries_list_tool(namespace="default")

# Shows:
# - Canary name
# - Status (Initialized, Progressing, Succeeded, Failed)
# - Weight

Get Canary Details

flagger_canary_get_tool(name="my-canary", namespace="default")

Create Flagger Canary

kubectl_apply(manifest="""
apiVersion: flagger.app/v1beta1
kind: Canary
metadata:
  name: my-canary
  namespace: default
spec:
  targetRef:
    apiVersion: apps/v1
    kind: Deployment
    name: my-app
  service:
    port: 80
  analysis:
    interval: 30s
    threshold: 5
    maxWeight: 50
    stepWeight: 10
    metrics:
    - name: request-success-rate
      threshold: 99
      interval: 1m
    - name: request-duration
      threshold: 500
      interval: 1m
""")

Progressive Delivery Workflows

Canary Deployment

1. rollouts_list_tool(namespace)
2. # Update image in rollout
3. rollout_status_tool(name, namespace)  # Monitor progress
4. rollout_promote_tool(name, namespace)  # Promote when ready
5. # Or: rollout_abort_tool(name, namespace) if issues

Blue-Green Deployment

1. rollout_get_tool(name, namespace)  # Check current state
2. # Update image
3. rollout_status_tool(name, namespace)  # Wait for preview ready
4. # Test preview service
5. rollout_promote_tool(name, namespace)  # Switch traffic

Troubleshooting

Rollout Stuck

1. rollout_status_tool(name, namespace)  # Check current step
2. analysis_runs_list_tool(namespace)  # Check analysis
3. get_events(namespace)  # Check events
4. # If analysis failing:
   rollout_abort_tool(name, namespace)

Canary Failing Analysis

1. analysis_runs_list_tool(namespace)
2. # Check metrics source (Prometheus, etc.)
3. # Verify threshold configuration
4. rollout_retry_tool(name, namespace)  # Retry if transient

Related Skills

  • k8s-deploy - Standard deployments
  • k8s-service-mesh - Traffic management with Istio

Related skills

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.