Ci cd pipelines
Skill itallstartedwithaidea/agent-skills/skills/infrastructure/ci-cd-pipelines
CI/CD Pipelines defines production-grade continuous integration and deployment workflows using GitHub Actions with wrangler deploy, link validation, HTML validation, and automated quality gates.From its SKILL.md
npx -y skills add itallstartedwithaidea/agent-skills --skill ci-cd-pipelinesAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
SKILL.md
5.9 KB, ~1.4k tokens by cl100k_base, as published. Nobody here has run it
CI/CD Pipelines
Part of Agent Skills™ by googleadsagent.ai™
Description
CI/CD Pipelines defines production-grade continuous integration and deployment workflows using GitHub Actions with wrangler deploy, link validation, HTML validation, and automated quality gates. This skill encodes the actual CI/CD patterns used by googleadsagent.ai™ to deploy Workers, validate 18,000+ pages of generated content, and maintain zero-downtime production releases.
A CI pipeline is only as valuable as its gates. This skill goes beyond "run tests and deploy" to include HTML validation (no broken markup in generated pages), internal link checking (no dead links across the city × service matrix), structured data validation (JSON-LD schema compliance), and Lighthouse performance audits. Every merge to main triggers a cascade of validation steps that catch regressions before they reach production.
The deployment pipeline implements progressive rollout: deploy to a staging environment first, run the full validation suite against staging, promote to production only on green, and maintain instant rollback capability via wrangler rollback. Preview deployments for pull requests give reviewers a live URL to test changes before approval.
Use When
- Setting up CI/CD for Cloudflare Workers or Pages projects
- Adding HTML validation or link checking to a pipeline
- Implementing progressive deployment with staging and production
- Automating quality gates for content-heavy sites
- Configuring preview deployments for pull requests
- Building rollback capability into deployment workflows
How It Works
graph TD
A[Push to Branch] --> B[GitHub Actions Trigger]
B --> C[Install Dependencies]
C --> D[Run Unit Tests]
D --> E[Run Type Checking]
E --> F{Branch?}
F -->|PR| G[Deploy to Preview]
F -->|main| H[Deploy to Staging]
G --> I[Run Link Checker on Preview]
H --> J[Run Full Validation Suite]
J --> K[HTML Validation]
J --> L[Link Checking]
J --> M[JSON-LD Validation]
J --> N[Lighthouse Audit]
K --> O{All Green?}
L --> O
M --> O
N --> O
O -->|Yes| P[Promote to Production]
O -->|No| Q[Block + Notify]
I --> R[Comment PR with Preview URL]
The pipeline fans out for validation (HTML, links, JSON-LD, Lighthouse run in parallel) and gates on the aggregate result. Production promotion only occurs when all gates pass.
Implementation
name: CI/CD Pipeline
on:
push:
branches: [main]
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 tsc --noEmit
- run: npm test
deploy-staging:
needs: test
if: github.ref == 'refs/heads/main'
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with: { node-version: "20" }
- run: npm ci
- run: npx wrangler deploy --env staging
env:
CLOUDFLARE_API_TOKEN: ${{ secrets.CF_API_TOKEN }}
validate:
needs: deploy-staging
runs-on: ubuntu-latest
strategy:
matrix:
check: [html, links, jsonld, lighthouse]
steps:
- uses: actions/checkout@v4
- name: HTML Validation
if: matrix.check == 'html'
run: |
npx html-validate "https://staging.googleadsagent.ai" \
--config .htmlvalidate.json
- name: Link Checking
if: matrix.check == 'links'
run: |
npx linkinator https://staging.googleadsagent.ai \
--recurse --timeout 30000 \
--skip "^https://(?!staging\.googleadsagent\.ai)"
- name: JSON-LD Validation
if: matrix.check == 'jsonld'
run: node scripts/validate-jsonld.js --base-url=https://staging.googleadsagent.ai
- name: Lighthouse Audit
if: matrix.check == 'lighthouse'
run: |
npx lhci autorun --config=lighthouserc.json \
--collect.url=https://staging.googleadsagent.ai
deploy-production:
needs: validate
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with: { node-version: "20" }
- run: npm ci
- run: npx wrangler deploy --env production
env:
CLOUDFLARE_API_TOKEN: ${{ secrets.CF_API_TOKEN }}
Best Practices
- Run validation checks in parallel using matrix strategy to minimize pipeline duration
- Store the previous deployment version for instant rollback via
wrangler rollback - Cache
node_modulesand build artifacts between jobs to reduce install time - Set Lighthouse performance budgets and fail the pipeline on regressions
- Use OIDC tokens instead of long-lived API tokens for Cloudflare authentication
- Monitor pipeline duration as a metric—slow pipelines reduce deployment frequency
Platform Compatibility
| Platform | Support | Notes |
|---|---|---|
| Cursor | Full | GitHub Actions authoring |
| VS Code | Full | GitHub Actions extension |
| Windsurf | Full | CI/CD workflow support |
| Claude Code | Full | YAML generation + validation |
| Cline | Full | Pipeline configuration |
| aider | Full | YAML file editing |
Related Skills
Keywords
ci-cd github-actions wrangler-deploy html-validation link-checking lighthouse progressive-deployment quality-gates
© 2026 googleadsagent.ai™ | Agent Skills™ | MIT License
What ships with it
Read from the repository
Just SKILL.md. No reference files, no scripts.
Gives 1 of the 12 instructions most ci cd skills give in ~1.4k tokens
Counted across 343 of the 355 authors here whose files we hold, read 2026-09-06
- Pin third-party actions to full commit SHAin 34 of 343, across 29 files
- Set timeout-minutes on every jobin 23 of 343, across 17 files
- Deploy to staging before productionhere, and in 18 of 343
- Use OIDC instead of stored cloud credentialsin 18 of 343, across 12 files
- Pin action versionsin 14 of 343, across 13 files
- Cache dependencies keyed on the lockfile hashin 14 of 343, across 13 files
- Declare least-privilege permissions at workflow and job levelin 13 of 343, across 7 files
- Pass untrusted values through env variablesin 13 of 343, across 9 files
- Create efficient GitHub Actions workflowsin 11 of 343, across 5 files
- Cache dependencies via setup actions or actions/cachein 11 of 343, across 5 files
- Cache dependencies to speed up buildsin 11 of 343
- Store secrets in secret managersin 11 of 343, across 10 files
Said here and by no other author read
- Run full validation suite against staging
- Promote to production only when all gates pass
- Run validation checks in parallel
- Validate HTML of generated pages
- Check internal links for dead links
- Validate JSON-LD structured data
Grouped from the skills themselves: near-identical wordings counted once, and counted by distinct author, so one author publishing three of these counts once. Length counted with cl100k_base; the agent that loads this file may tokenize it differently.