Skip to content
Back to skills

Ci Pipeline Patterns

ASecurity

GitHub Actions workflow templates, matrix builds, caching, and monorepo CI strategies

  • 530 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added May 29, 2026
ai-agentsgonodedockergitapisecurity

Works with

  • api

Security analysis

A100/100

Scanned May 29, 2026

npx -y skills add vibeeval/vibecosystem --skill ci-pipeline-patterns --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Ci Pipeline Patterns?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Ci Pipeline Patterns
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/vibeeval-ci-pipeline-patterns/badge)](https://www.skillsdirectory.com/skills/vibeeval-ci-pipeline-patterns)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: ci-pipeline-patterns
description: GitHub Actions workflow templates, matrix builds, caching, and monorepo CI strategies
---

# CI Pipeline Patterns

## GitHub Actions Workflow Template

```yaml
name: CI
on:
  push:
    branches: [main]
  pull_request:
    branches: [main]

concurrency:
  group: ${{ github.workflow }}-${{ github.ref }}
  cancel-in-progress: true

jobs:
  lint-and-type:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-node@v4
        with: { node-version: 20, cache: npm }
      - run: npm ci
      - run: npm run lint
      - run: npm run type-check

  test:
    runs-on: ubuntu-latest
    strategy:
      matrix:
        shard: [1, 2, 3, 4]
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-node@v4
        with: { node-version: 20, cache: npm }
      - run: npm ci
      - run: npm test -- --shard=${{ matrix.shard }}/4

  build:
    needs: [lint-and-type, test]
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-node@v4
        with: { node-version: 20, cache: npm }
      - run: npm ci
      - run: npm run build
      - uses: actions/upload-artifact@v4
        with: { name: build, path: dist/ }
```

## Caching Strategies

```yaml
# npm cache
- uses: actions/cache@v4
  with:
    path: ~/.npm
    key: npm-${{ hashFiles('**/package-lock.json') }}

# Docker layer cache
- uses: docker/build-push-action@v5
  with:
    cache-from: type=gha
    cache-to: type=gha,mode=max

# Turborepo remote cache
- run: npx turbo build --cache-dir=.turbo
```

## Monorepo CI (Affected Only)

```yaml
# Nx affected
- run: npx nx affected --target=test --base=origin/main

# Turborepo
- run: npx turbo run test --filter=...[origin/main]

# Manual path filter
- uses: dorny/paths-filter@v3
  id: changes
  with:
    filters: |
      api: ['packages/api/**']
      web: ['packages/web/**']
```

## Pipeline Security

```yaml
# Secret scanning
- uses: trufflesecurity/trufflehog@main
  with: { extra_args: --only-verified }

# Dependency audit
- run: npm audit --audit-level=high

# SAST
- uses: github/codeql-action/analyze@v3
```

## Checklist

- [ ] Concurrency: cancel-in-progress aktif
- [ ] Cache: npm/pip/go module cache
- [ ] Paralel: test shard veya matrix
- [ ] Security: secret scan + dependency audit
- [ ] Artifact: build output upload
- [ ] Branch protection: require status checks
- [ ] Monorepo: affected-only strategy
- [ ] Timeout: job timeout belirlenmiş

## Anti-Patterns

- Cache key'de sabit string (hash kullan)
- Her push'ta tüm testler (affected-only)
- Secret'ı log'a yazdırma (mask)
- Single job tüm adımlar (paralelize et)
- Manual deploy (CD otomatik olmalı)

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…