skills/lambdatest/agent-skills/cicd-pipeline-skill

cicd-pipeline-skill

SKILL.md

CI/CD Pipeline Skill

Core Patterns

GitHub Actions

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)

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

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.

Weekly Installs
6
GitHub Stars
76
First Seen
Feb 26, 2026
Installed on
opencode5
gemini-cli5
claude-code5
github-copilot5
codex5
kimi-cli5