<< All versions
Skill v1.0.1
currentAutomated scan100/100aj-geddes/useful-ai-prompts/gitlab-cicd-pipeline
9 files
──Details
PublishedMay 14, 2026 at 09:25 PM
Content Hashsha256:ca853ed5cfad8b9b...
Git SHA3f5182cfd739
Bump Typepatch
──Files
Files (1 file, 2.6 KB)
SKILL.md2.6 KBactive
SKILL.md · 104 lines · 2.6 KB
version: "1.0.1" name: gitlab-cicd-pipeline description: > Design and implement GitLab CI/CD pipelines with stages, jobs, artifacts, and caching. Configure runners, Docker integration, and deployment strategies.
GitLab CI/CD Pipeline
Table of Contents
Overview
Create comprehensive GitLab CI/CD pipelines that automate building, testing, and deployment using GitLab Runner infrastructure and container execution.
When to Use
- GitLab repository CI/CD setup
- Multi-stage build pipelines
- Docker registry integration
- Kubernetes deployment
- Review app deployment
- Cache optimization
- Dependency management
Quick Start
Minimal working example:
yaml
# .gitlab-ci.ymlimage: node:18-alpinevariables:DOCKER_DRIVER: overlay2FF_USE_FASTZIP: "true"stages:- lint- test- build- security- deploy-review- deploy-prodcache:key: ${CI_COMMIT_REF_SLUG}paths:- node_modules/- .npm/lint:stage: lintscript:- npm install// ... (see reference guides for full implementation)
Reference Guides
Detailed implementations in the references/ directory:
| Guide | Contents | |
|---|---|---|
| Complete Pipeline Configuration | Complete Pipeline Configuration | |
| GitLab Runner Configuration | GitLab Runner Configuration | |
| Docker Layer Caching Optimization | Docker Layer Caching Optimization | |
| Multi-Project Pipeline | Multi-Project Pipeline | |
| Kubernetes Deployment | Kubernetes Deployment, Performance Testing Stage, Release Pipeline with Semantic Versioning |
Best Practices
✅ DO
- Use stages to organize pipeline flow
- Implement caching for dependencies
- Use artifacts for test reports
- Set appropriate cache keys
- Implement conditional execution with
onlyandexcept - Use
needs:for job dependencies - Clean up artifacts with
expire_in - Use Docker for consistent environments
- Implement security scanning stages
- Set resource limits for jobs
- Use merge request pipelines
❌ DON'T
- Run tests serially when parallelizable
- Cache everything unnecessarily
- Leave large artifacts indefinitely
- Store secrets in configuration files
- Run privileged Docker without necessity
- Skip security scanning
- Ignore pipeline failures
- Use
only: [main]without proper controls