
Github Actions Templates
- 13.3k installs
- 38.3k repo stars
- Updated July 22, 2026
- wshobson/agents
GitHub Actions Templates is a skill providing production-ready workflow patterns for CI/CD with GitHub Actions.
About
Production-ready GitHub Actions workflow templates for testing, building, and deploying applications. Includes patterns for Docker image builds, Kubernetes deployments, security scanning with Trivy and Snyk, matrix builds for multi-version testing, and reusable workflow composition.
- Production-ready CI/CD workflow templates
- Patterns for Docker builds, Kubernetes, security scanning
- Matrix builds and reusable workflows
Github Actions Templates by the numbers
- 13,332 all-time installs (skills.sh)
- +320 installs in the week ending Jul 28, 2026 (Skillselion tracking)
- Ranked #16 of 1,453 DevOps & CI/CD skills by installs in the Skillselion catalog
- Security screen: LOW risk (skills.sh audit)
- Data as of Jul 28, 2026 (Skillselion catalog sync)
github-actions-templates capabilities & compatibility
- Capabilities
- ci cd · docker builds · kubernetes deployment · security scanning
- Works with
- github · docker · kubernetes
- Use cases
- ci cd
What github-actions-templates says it does
Production-ready GitHub Actions workflow patterns for testing, building, and deploying applications.
npx skills add https://github.com/wshobson/agents --skill github-actions-templatesAdd your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| Installs | 13.3k |
|---|---|
| repo stars | ★ 38.3k |
| Security audit | 3 / 3 scanners passed |
| Last updated | July 22, 2026 |
| Repository | wshobson/agents ↗ |
How do you create GitHub Actions CI/CD workflows?
Setting up continuous integration and deployment pipelines.
Who is it for?
Developers automating testing, building, and deployment of applications.
Skip if: Teams using GitLab CI, Jenkins, or CircleCI who do not run pipelines on GitHub Actions.
When should I use this skill?
A developer sets up CI/CD with GitHub Actions, automates testing on pull requests, or needs Docker build and Kubernetes deploy workflow templates.
What you get
Production-ready .github/workflows YAML files with test, build, Docker push, Kubernetes deploy, and security scan job definitions.
- .github/workflows YAML files
- CI test job definitions
- Docker and Kubernetes deploy workflows
Files
GitHub Actions Templates
Production-ready GitHub Actions workflow patterns for testing, building, and deploying applications.
Purpose
Create efficient, secure GitHub Actions workflows for continuous integration and deployment across various tech stacks.
When to Use
- Automate testing and deployment
- Build Docker images and push to registries
- Deploy to Kubernetes clusters
- Run security scans
- Implement matrix builds for multiple environments
Common Workflow Patterns
Pattern 1: Test Workflow
name: Test
on:
push:
branches: [main, develop]
pull_request:
branches: [main]
jobs:
test:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [18.x, 20.x]
steps:
- uses: actions/checkout@v4
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}
cache: "npm"
- name: Install dependencies
run: npm ci
- name: Run linter
run: npm run lint
- name: Run tests
run: npm test
- name: Upload coverage
uses: codecov/codecov-action@v4
with:
files: ./coverage/lcov.infoReference: See assets/test-workflow.yml
Pattern 2: Build and Push Docker Image
name: Build and Push
on:
push:
branches: [main]
tags: ["v*"]
env:
REGISTRY: ghcr.io
IMAGE_NAME: ${{ github.repository }}
jobs:
build:
runs-on: ubuntu-latest
permissions:
contents: read
packages: write
steps:
- uses: actions/checkout@v4
- name: Log in to Container Registry
uses: docker/login-action@v3
with:
registry: ${{ env.REGISTRY }}
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Extract metadata
id: meta
uses: docker/metadata-action@v5
with:
images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}
tags: |
type=ref,event=branch
type=ref,event=pr
type=semver,pattern={{version}}
type=semver,pattern={{major}}.{{minor}}
- name: Build and push
uses: docker/build-push-action@v5
with:
context: .
push: true
tags: ${{ steps.meta.outputs.tags }}
labels: ${{ steps.meta.outputs.labels }}
cache-from: type=gha
cache-to: type=gha,mode=maxReference: See assets/deploy-workflow.yml
Pattern 3: Deploy to Kubernetes
name: Deploy to Kubernetes
on:
push:
branches: [main]
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Configure AWS credentials
uses: aws-actions/configure-aws-credentials@v4
with:
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
aws-region: us-west-2
- name: Update kubeconfig
run: |
aws eks update-kubeconfig --name production-cluster --region us-west-2
- name: Deploy to Kubernetes
run: |
kubectl apply -f k8s/
kubectl rollout status deployment/my-app -n production
kubectl get services -n production
- name: Verify deployment
run: |
kubectl get pods -n production
kubectl describe deployment my-app -n productionPattern 4: Matrix Build
name: Matrix Build
on: [push, pull_request]
jobs:
build:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
python-version: ["3.9", "3.10", "3.11", "3.12"]
steps:
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install -r requirements.txt
- name: Run tests
run: pytestReference: See assets/matrix-build.yml
Workflow Best Practices
1. Use specific action versions (@v4, not @latest) 2. Cache dependencies to speed up builds 3. Use secrets for sensitive data 4. Implement status checks on PRs 5. Use matrix builds for multi-version testing 6. Set appropriate permissions 7. Use reusable workflows for common patterns 8. Implement approval gates for production 9. Add notification steps for failures 10. Use self-hosted runners for sensitive workloads
Reusable Workflows
# .github/workflows/reusable-test.yml
name: Reusable Test Workflow
on:
workflow_call:
inputs:
node-version:
required: true
type: string
secrets:
NPM_TOKEN:
required: true
jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: ${{ inputs.node-version }}
- run: npm ci
- run: npm testUse reusable workflow:
jobs:
call-test:
uses: ./.github/workflows/reusable-test.yml
with:
node-version: "20.x"
secrets:
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}Security Scanning
name: Security Scan
on:
push:
branches: [main]
pull_request:
branches: [main]
jobs:
security:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Run Trivy vulnerability scanner
uses: aquasecurity/trivy-action@0.28.0
with:
scan-type: "fs"
scan-ref: "."
format: "sarif"
output: "trivy-results.sarif"
- name: Upload Trivy results to GitHub Security
uses: github/codeql-action/upload-sarif@v3
with:
sarif_file: "trivy-results.sarif"
- name: Run Snyk Security Scan
uses: snyk/actions/node@0.4.0
env:
SNYK_TOKEN: ${{ secrets.SNYK_TOKEN }}Deployment with Approvals
name: Deploy to Production
on:
push:
tags: ["v*"]
jobs:
deploy:
runs-on: ubuntu-latest
environment:
name: production
url: https://app.example.com
steps:
- uses: actions/checkout@v4
- name: Deploy application
run: |
echo "Deploying to production..."
# Deployment commands here
- name: Notify Slack
if: success()
uses: slackapi/slack-github-action@v1
with:
webhook-url: ${{ secrets.SLACK_WEBHOOK }}
payload: |
{
"text": "Deployment to production completed successfully!"
}Related Skills
gitlab-ci-patterns- For GitLab CI workflowsdeployment-pipeline-design- For pipeline architecturesecrets-management- For secrets handling
Related skills
How it compares
Pick github-actions-templates over generic YAML help when the target platform is specifically GitHub Actions with test-build-deploy-security patterns.
FAQ
What pipelines does github-actions-templates generate?
github-actions-templates generates GitHub Actions workflow YAML for automated testing, application builds, Docker image pushes to registries, Kubernetes deployments, and security scans. Output lands in .github/workflows as reusable pipeline files.
When should developers use github-actions-templates?
Developers should use github-actions-templates when setting up CI/CD on GitHub Actions, automating pull-request test runs, or creating Docker and Kubernetes deploy workflows. The skill replaces hand-written YAML with production-grade patterns.
Is Github Actions Templates safe to install?
skills.sh reports 3 of 3 security scanners passed. Review the Security Audits panel on this page before installing in production.