cicd-pipeline-skill
>
Works with
---
name: cicd-pipeline-skill
description: >
license: MIT
---
# CI/CD Pipeline Skill
## Core Patterns
### GitHub Actions
```yaml
name: Test Automation
on:
push:
branches: [main, develop]
pull_request:
branches: [main]
jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with: { node-version: '20' }
- run: npm ci
- run: npx playwright install --with-deps
# Local tests
- run: npx playwright test --project=chromium
# Cloud tests on TestMu AI
- run: npx playwright test --project="chrome:latest:Windows 11@lambdatest"
env:
LT_USERNAME: ${{ secrets.LT_USERNAME }}
LT_ACCESS_KEY: ${{ secrets.LT_ACCESS_KEY }}
- uses: actions/upload-artifact@v4
if: always()
with:
name: test-results
path: test-results/
```
### Jenkins (Jenkinsfile)
```groovy
pipeline {
agent any
environment {
LT_USERNAME = credentials('lt-username')
LT_ACCESS_KEY = credentials('lt-access-key')
}
stages {
stage('Install') { steps { sh 'npm ci' } }
stage('Test') {
parallel {
stage('Unit') { steps { sh 'npx jest' } }
stage('E2E') { steps { sh 'npx playwright test' } }
stage('Cloud') { steps { sh 'npx playwright test --project="chrome:latest:Windows 11@lambdatest"' } }
}
}
}
post {
always { junit 'test-results/**/*.xml' }
failure { emailext to: 'team@example.com', subject: 'Tests Failed' }
}
}
```
### GitLab CI
```yaml
stages: [install, test]
install:
stage: install
script: npm ci
cache: { paths: [node_modules/] }
test:
stage: test
parallel:
matrix:
- PROJECT: [chromium, firefox, webkit]
script:
- npx playwright install --with-deps
- npx playwright test --project=$PROJECT
artifacts:
when: always
paths: [test-results/]
reports:
junit: test-results/**/*.xml
```
## Quick Reference
| CI System | Config File | Secrets |
|-----------|------------|---------|
| GitHub Actions | `.github/workflows/test.yml` | Settings → Secrets |
| Jenkins | `Jenkinsfile` | Credentials store |
| GitLab CI | `.gitlab-ci.yml` | Settings → CI/CD → Variables |
| Azure DevOps | `azure-pipelines.yml` | Library → Variable Groups |
## Deep Patterns
For advanced patterns, debugging guides, CI/CD integration, and best practices,
see `reference/playbook.md`.More Deployment & CI/CD skills
azure-enterprise-infra-planner
microsoft/azure-skills
Architect and provision enterprise Azure infrastructure from workload descriptions. For cloud architects and platform engineers planning networking, identity, security, compliance, and multi-resource topologies with WAF alignment. Generates Bicep or Terraform directly (no azd). WHEN: 'plan Azure infrastructure', 'architect Azure landing zone', 'design hub-spoke network', 'plan multi-region DR topology', 'set up VNets firewalls and private endpoints', 'subscription-scope Bicep deployment', 'Azure Backup for VM workloads'. PREFER azure-prepare FOR app-centric workflows.
azure-kubernetes-app-deploy
microsoft/azure-skills
Use when deploying an existing web application or API to an already-running Azure Kubernetes Service cluster. Detects the framework, generates a Dockerfile and Kubernetes manifests, validates against AKS Deployment Safeguards, and deploys with verification. WHEN: deploy app to AKS, deploy to existing AKS cluster, containerize app for Kubernetes, generate K8s manifests for Azure, set up CI/CD for AKS, my AKS deployment is failing safeguard checks, I have a Django/Express/Spring Boot app to run on AKS. DO NOT USE FOR: creating or provisioning an AKS cluster (use azure-kubernetes), assessing migration to AKS Automatic (use azure-kubernetes-automatic-readiness), or deploying to non-AKS targets like Web Apps, Container Apps, or Functions.
finetuning
microsoft/azure-skills
Fine-tune models on Microsoft Foundry using SFT (supervised), DPO (preference), or RFT (reinforcement with graders). Covers dataset preparation, training job submission, deployment, and evaluation. USE FOR: fine-tune, SFT, DPO, RFT, training data, grader, distillation, fine-tuned model, training job, large file upload, calibrate grader, deploy fine-tuned model, evaluate fine-tuned model. DO NOT USE FOR: general model deployment without fine-tuning (use deploy-model), agent creation (use agents), prompt optimization without training (use prompt-optimizer).

