gitlab-cicd-pipeline
GitLab CI/CDパイプラインのステージ・ジョブ・アーティファクト・キャッシュを設計・実装します。Runnerの設定やDockerとの連携、デプロイ戦略の構成が必要な際に活用できます。
description の原文を見る
> Design and implement GitLab CI/CD pipelines with stages, jobs, artifacts, and caching. Configure runners, Docker integration, and deployment strategies.
SKILL.md 本文
GitLab CI/CD パイプライン
目次
概要
GitLab Runner インフラストラクチャとコンテナ実行を使用して、ビルド、テスト、デプロイを自動化する包括的な GitLab CI/CD パイプラインを作成します。
使用時期
- GitLab リポジトリの CI/CD セットアップ
- マルチステージビルドパイプライン
- Docker レジストリ統合
- Kubernetes デプロイメント
- Review App デプロイメント
- キャッシュ最適化
- 依存関係管理
クイックスタート
最小限の実装例:
# .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/ ディレクトリの詳細な実装:
| ガイド | 内容 |
|---|---|
Complete Pipeline Configuration | 完全なパイプライン設定 |
GitLab Runner Configuration | GitLab Runner 設定 |
Docker Layer Caching Optimization | Docker レイヤーキャッシング最適化 |
Multi-Project Pipeline | マルチプロジェクトパイプライン |
Kubernetes Deployment | Kubernetes デプロイメント、パフォーマンステストステージ、セマンティックバージョニングを使用したリリースパイプライン |
ベストプラクティス
✅ すべきこと
- ステージを使用してパイプラインフローを整理する
- 依存関係のキャッシングを実装する
- テストレポートに成果物を使用する
- 適切なキャッシュキーを設定する
onlyとexceptでの条件付き実行を実装する- ジョブ依存関係に
needs:を使用する expire_inで成果物をクリーンアップする- 一貫した環境のために Docker を使用する
- セキュリティスキャンステージを実装する
- ジョブのリソース制限を設定する
- マージリクエストパイプラインを使用する
❌ すべきではないこと
- 並列化可能なテストを直列で実行する
- 不要なキャッシングをすべてに行う
- 大きな成果物を無期限に保存する
- シークレットを設定ファイルに保存する
- 必要のない特権付き Docker を実行する
- セキュリティスキャンをスキップする
- パイプライン失敗を無視する
- 適切な制御なしに
only: [main]を使用する
ライセンス: MIT(寛容ライセンスのため全文を引用しています) · 原本リポジトリ
詳細情報
- 作者
- aj-geddes
- ライセンス
- MIT
- 最終更新
- 不明
Source: https://github.com/aj-geddes/useful-ai-prompts / ライセンス: MIT
関連スキル
superpowers-streamer-cli
SuperPowers デスクトップストリーマーの npm パッケージをインストール、ログイン、実行、トラブルシューティングできます。ユーザーが npm から `superpowers-ai` をセットアップしたい場合、メールまたは電話でサインインもしくはアカウント作成を行いたい場合、ストリーマーを起動したい場合、表示されたコントロールリンクを開きたい場合、後で停止したい場合、またはソースコードへのアクセスなしに npm やランタイムの一般的な問題から復旧したい場合に使用します。
catc-client-ops
Catalyst Centerのクライアント操作・監視機能 - 有線・無線クライアントのリスト表示・フィルタリング、MACアドレスによる詳細なクライアント検索、クライアント数分析、時間軸での分析、SSIDおよび周波数帯によるフィルタリング、無線トラブルシューティング機能を提供します。MACアドレスやIPアドレスでのクライアント検索、サイト別やSSID別のクライアント数集計、無線周波数帯の分布分析、Wi-Fi信号の問題調査が必要な場合に活用できます。
ci-cd-and-automation
CI/CDパイプラインの設定を自動化します。ビルドおよびデプロイメントパイプラインの構築または変更時に使用できます。品質ゲートの自動化、CI内のテストランナー設定、またはデプロイメント戦略の確立が必要な場合に活用します。
shipping-and-launch
本番環境へのリリース準備を行います。本番環境へのデプロイ準備が必要な場合、リリース前チェックリストが必要な場合、監視機能の設定を行う場合、段階的なロールアウトを計画する場合、またはロールバック戦略が必要な場合に使用します。
linear-release-setup
Linear Releaseに向けたCI/CD設定を生成します。リリース追跡の設定、LinearのCIパイプライン構築、またはLinearリリースとのデプロイメント連携を実施する際に利用できます。GitHub Actions、GitLab CI、CircleCIなど複数のプラットフォームに対応しています。
tracking-application-response-times
API エンドポイント、データベースクエリ、サービスコール全体にわたるアプリケーションのレスポンスタイムを追跡・最適化できます。パフォーマンス監視やボトルネック特定の際に活用してください。「レスポンスタイムを追跡する」「API パフォーマンスを監視する」「遅延を分析する」といった表現で呼び出せます。