gitlab-cicd-pipeline について
GitLab Runner とコンテナー実行を使い、ビルド、テスト、デプロイを自動化する GitLab CI/CD パイプライン作成スキルです。設定、キャッシュ、Runner、複数プロジェクトのフロー、Kubernetes へのデプロイを扱います。
主な機能
- 01複数ステージのパイプライン設計
- 02GitLab Runner の設定
- 03依存関係と Docker レイヤーのキャッシュ
- 04複数プロジェクトのパイプラインガイド
- 05Kubernetes デプロイガイド
活用シーン
- 01GitLab リポジトリの CI/CD 設定
- 02複数ステージのパイプライン構築
- 03アプリケーションの Kubernetes へのデプロイ
- 04依存関係と Docker レイヤーキャッシュの最適化
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ aj-geddes/ useful-ai-prompts --skill gitlab-cicd-pipelineインストール後、Claude Code で/gitlab-cicd-pipelineを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/complete-pipeline-configuration.mddocker-layer-caching-optimization.mdgitlab-runner-configuration.mdkubernetes-deployment.mdmulti-project-pipeline.mdscripts/validate-pipeline.shtemplates/pipeline.yaml詳細
GitLab CI/CD パイプライン
目次
概要
GitLab Runner インフラストラクチャとコンテナー実行を使用して、ビルド、テスト、デプロイを自動化する包括的な GitLab CI/CD パイプラインを作成します。
使用する場面
- GitLab リポジトリの CI/CD セットアップ
- 複数ステージのビルドパイプライン
- Docker レジストリとの連携
- Kubernetes へのデプロイ
- レビューアプリのデプロイ
- キャッシュの最適化
- 依存関係の管理
クイックスタート
最小限の動作例:
# .gitlab-ci.yml
image: node:18-alpine
variables:
DOCKER_DRIVER: overlay2
FF_USE_FASTZIP: "true"
stages:
- lint
- test
- build
- security
- deploy-review
- deploy-prod
cache:
key: ${CI_COMMIT_REF_SLUG}
paths:
- node_modules/
- .npm/
lint:
stage: lint
script:
- npm install
// ... (see reference guides for full implementation)
リファレンスガイド
詳細な実装については、references/ ディレクトリを参照してください:
| ガイド | 内容 |
|---|---|
| 完全なパイプライン構成 | 完全なパイプライン構成 |
| GitLab Runner の構成 | GitLab Runner の構成 |
| Docker レイヤーキャッシュの最適化 | Docker レイヤーキャッシュの最適化 |
| マルチプロジェクトパイプライン | マルチプロジェクトパイプライン |
| Kubernetes へのデプロイ | Kubernetes へのデプロイ、パフォーマンステストのステージ、セマンティックバージョニングを使ったリリースパイプライン |
ベストプラクティス
✅ 推奨事項
- ステージを使ってパイプラインの流れを整理します
- 依存関係にキャッシュを実装します
- テストレポートにアーティファクトを使用します
- 適切なキャッシュキーを設定します
onlyとexceptを使って条件付き実行を実装します- ジョブの依存関係には
needs:を使用します expire_inを使ってアーティファクトをクリーンアップします- 一貫性のある環境には Docker を使用します
- セキュリティスキャンのステージを実装します
- ジョブのリソース制限を設定します
- マージリクエストパイプラインを使用します
❌ 避けること
- 並列実行できるテストを直列に実行しないでください
- 不要なものまでキャッシュしないでください
- 大きなアーティファクトを無期限に残さないでください
- 設定ファイルにシークレットを保存しないでください
- 必要なく Docker を特権モードで実行しないでください
- セキュリティスキャンを省略しないでください
- パイプラインの失敗を無視しないでください
- 適切な制御なしに
only: [main]を使用しないでください
コメント
Markdown 対応