GitLab CI/CDの例
このPagesにはGitLab CI/CDの実装方法を理解するのに役立つ様々な例へのリンクがあります。
例はいくつかの形式で利用できます。コレクションとして
-
.gitlab-ci.yml
GitLabで管理されている、多くの一般的なフレームワークやプログラミング言語のテンプレートファイル。 - 様々な言語のサンプルプロジェクトのリポジトリ。フォークして自分のニーズに合わせて調整することができます。プロジェクトには、NGINXによって提供される静的サイトでレビューアプリを使用する例が含まれています。
- サンプルやその他のリソースは以下にあります。
CI/CDの例
次の表は、このセクションに含まれるステップバイステップのチュートリアル付きの例の一覧です:
使用例 | リソース |
---|---|
Dplでのデプロイメント |
dpl をデプロイツールとして使う. |
GitLab Pages | 静的サイトをデプロイする完全な例については、GitLab Pagesドキュメントを参照してください。 |
E2Eテスト | GitLab CI/CDとWebdriverIOによるエンドツーエンドテスト。 |
マルチプロジェクトパイプライン | マルチプロジェクトパイプラインを使用してビルド、テストデプロイします。 |
npm with semantic-release | semantic-release を使って GitLab パッケージレジストリに npm パッケージを公開します。 |
Laravel、Envoyを使ったPHP | GitLab CI/CDとEnvoyでLaravelアプリケーションをテストし、デプロイします。 |
PHP with npm, SCP | GitLab CI/CDでSCP経由のデプロイでComposerとnpmスクリプトを実行します。 |
PHPUnitを使ったPHP、atoum
| PHP プロジェクトのテスト。 |
Vaultによるシークレット管理 | HashiCorp Vaultによる認証とシークレットの読み取り。 |
貢献した例
その言語のガイドへのリンクを投稿することで、あなたの好きなプログラミング言語を使っている人を助けることができます。これらの貢献したガイドは、外部または別のサンプルプロジェクトでホストされます:
使用例 | リソース |
---|---|
Clojure | GitLab CI/CDでClojureアプリケーションをテストします。 |
ゲーム開発 | GitLab CI/CDによるDevOpsとゲーム開発。 |
Mavenを使ったJava | GitLab CI/CDでMavenプロジェクトをArtifactoryにデプロイする方法。 |
Spring Bootを使ったJava | GitLab CI/CDを使ってCloud FoundryにSpring Bootアプリケーションをデプロイします。 |
RubyとJSの並列テスト | GitLab CI/CDによるRuby & JavaScriptプロジェクトの並列ジョブテスト。 |
HerokuでPython | GitLab CI/CDでPythonアプリケーションをテストしてデプロイします。 |
HerokuでRuby | GitLab CI/CDでRubyアプリケーションをテストし、デプロイします。 |
HerokuでScala | Scalaアプリケーションをテストし、Herokuにデプロイします。 |
CI/CDテンプレート
.gitlab-ci.yml
テンプレートを使って GitLab CI/CD とお気に入りのプログラミング言語やフレームワークを使い始めましょう。
UI で.gitlab-ci.yml
ファイルを作成するとき、これらのテンプレートの中から一つを選ぶことができます:
- Android (
Android.gitlab-ci.yml
) - Android with fastlane (
Android-Fastlane.gitlab-ci.yml
) - Bash (
Bash.gitlab-ci.yml
) - C++ (
C++.gitlab-ci.yml
) - Chef (
Chef.gitlab-ci.yml
) - Clojure (
Clojure.gitlab-ci.yml
) - Composer
Composer.gitlab-ci.yml
- クリスタル (
Crystal.gitlab-ci.yml
) - ダーツ (
Dart.gitlab-ci.yml
) - Django (
Django.gitlab-ci.yml
) - Docker (
Docker.gitlab-ci.yml
) - ドットネット (
dotNET.gitlab-ci.yml
) - dotNET Core (
dotNET-Core.gitlab-ci.yml
) - Elixir (
Elixir.gitlab-ci.yml
) - Flutter (
Flutter.gitlab-ci.yml
) - Go (
Go.gitlab-ci.yml
) - Gradle (
Gradle.gitlab-ci.yml
) - Grails (
Grails.gitlab-ci.yml
) - iOS with fastlane (
iOS-Fastlane.gitlab-ci.yml
) - Julia (
Julia.gitlab-ci.yml
) - Laravel (
Laravel.gitlab-ci.yml
) - LaTeX (
LaTeX.gitlab-ci.yml
) - Maven (
Maven.gitlab-ci.yml
) - Mono (
Mono.gitlab-ci.yml
) - npm (
npm.gitlab-ci.yml
) - Node.js (
Nodejs.gitlab-ci.yml
) - OpenShift (
OpenShift.gitlab-ci.yml
) - Packer (
Packer.gitlab-ci.yml
) - PHP (
PHP.gitlab-ci.yml
) - Python (
Python.gitlab-ci.yml
) - Ruby (
Ruby.gitlab-ci.yml
) - Rust (
Rust.gitlab-ci.yml
) - Scala (
Scala.gitlab-ci.yml
) - Swift (
Swift.gitlab-ci.yml
) - Terraform (
Terraform.gitlab-ci.yml
) - Terraform (
Terraform.latest.gitlab-ci.yml
)
プログラミング言語やフレームワークのテンプレートがこのリストにない場合、貢献することができます。テンプレートを作成するには、テンプレートリストにマージリクエストを提出してください。
GitLabインストールへのテンプレートの追加
自分で管理するGitLabインスタンスに、カスタムのサンプルやテンプレートを追加することができます。GitLab管理者は、インスタンステンプレートリポジトリを指定することができ、そこにはあなたの組織特有のサンプルやテンプレートが含まれています。
その他のリソース
このセクションでは、GitLab CI/CDの様々な使い方に慣れるためのさらなるリソースを提供します。古い記事やビデオは最新のGitLabリリースの状態を反映していない場合があります。
クラウドでのCI/CD
クラウド環境でのGitLab CI/CDの設定例については、こちらをご覧ください:
- GitLab CIでマルチアカウントのAWS SAMデプロイを設定する方法
- ビデオGitLab CI/CDによるKubernetesデプロイの自動化
- DigitalOcean上のGitLab Runnerで継続的デプロイを自動スケールする方法
- GitLab と Helm を使った Kubernetes への自動デプロイによる CI/CD パイプラインの作成方法
- ビデオデモ - GitLabからOpenShiftコンテナクラスタへのデプロイ
- チュートリアルGitLab.com Civo KubernetesインテグレーションとGitpodのセットアップ
以下の概要ビデオもご覧ください:
カスタマーストーリー
GitLab CI/CDを利用したお客様の体験談はこちらをご覧ください:
- Verizon ConnectがGitLabを使ってデータセンターのデプロイを30日から8時間以下に短縮した方法
- Wag! がリリースプロセスを 40 分からわずか 6 分に短縮した方法
- ジャガー・ランドローバーがソフトウェアライフサイクルをスピードアップするためにCIを導入した方法
利用を開始
CIを始めるのに役立ついくつかの例をご覧ください:
GitLab CI/CDの実装
GitLab CI/CDを導入した他の事例については、こちらをご覧ください:
- マルチプロジェクトパイプラインで複数のリポジトリ間のやり取りを効率化する方法
- GitLab CIを使ってGitLabを高速に構築した方法
- Dockerを使ったGitLab CIであらゆることをテストする例
- 職人が見た継続的インテグレーション
- GoツールとGitLab: 上司のように継続的インテグレーションを行う方法
- GitBot - 退屈なGitオペレーションをCIで自動化
- Vue.jsでGitLab CIを使う方法
- ビデオGitLab CI/CD ディープダイブ
- GitLabレビューアプリのDocker化
- GitLab CIによる高速で自然な継続的インテグレーション
- デモGitLabによるCI/CDのアクション
サードパーティのCIツールからGitLabへのマイグレーション
GitLab CI/CDと他のシステムとのインテグレーション
GitLab CI/CDとサードパーティのシステムをインテグレーションする方法については、こちらをご覧ください:
- Sentryの新しいGitLabインテグレーションでエラーの修復を合理化し、短縮する方法
- GitLab CI/CDでスマートホームの設定を簡素化する方法
- デモGitLab + Jira + Jenkinsをご覧ください。
- GitLabのAuto Breakfastの紹介(のようなもの)
モバイル開発
モバイルアプリケーション開発におけるGitLab CI/CDの使い方については、こちらをご覧ください: