CI/CD

CI/CDツールの紹介や使い方に関するチュートリアルやTips

ここでは、様々なツールに焦点を当てた記事やチュートリアルをご紹介します。

CI/CDパイプラインは、現代のソフトウェア開発に必要不可欠なものです。
その背景には、マイクロサービス時代の到来があります。
目まぐるしく変わるビジネス要求に対して、短いリードタイムで確実にサービスを提供し続ける必要があります。
このような状況では、ビルドやデプロイを手動で実施していくのは非効率で、すぐに破綻します。専用ツールのパイプラインで自動化されたプロセスが欠かせません。

cicd pipeline

幅広いCI/CDツールを充実させていく予定ですので、ご参考いただければ幸いです。

Contents

GitHub Actions

#

GitHub ActionsGitHubが提供するCI/CDサービスです。
今やGitHubでホスティングされているプロジェクトでは、かなりの割合で利用されているのではないでしょうか?
制限はありますが、無料で使い始められるところも大きな魅力ですね。
各種ユースケースに対応したカスタムActionも幅広く公開されており、ほとんどのプロジェクトはこれ1つでカバーできると言っても過言ではないでしょう。
今後ますますの拡がりが期待できます。

豆蔵有志でも、特定ユースケースに対応したActionをOSSとして公開しています。

Flux

#

Fluxは、今では様々な領域で普及しているGitOpsのプラクティスを提唱したWeaveworks社が開発した継続的デリバリツールです。
CIとしての機能はありませんが、KubernetesでGitOpsを実践するなら是非抑えておきたいツールです。

ArgoCD

#

ArgoCDはFluxと並んでGitOpsを体現する継続的デリバリツールです。
直感的なUIが魅力で、GitOpsツールとしてかなり有力な選択肢になっているものです。
弊社の社内システムでも、ArgoCDを使ったGitOpsを採用しています。

Dagger

#

Docker開発者によって作成されたツールのDagger
他のCIツールとは違い、コンテナが動く環境であればどんなツールにも組み込むことが可能です。 例えば、GitHub Actions上でDaggerのパイプラインを動かすなんてこともでき、他のCI/CD製品とは一線を画すツールと言えます。
かなり新しいツールですが、パイプラインの新時代を先取りしてみてはいかがでしょうか?

豆蔵デベロッパーサイト - 先週のアクセスランキング
  1. 自然言語処理初心者が「GPT2-japanese」で遊んでみた (2022-07-08)
  2. Tauri でデスクトップアプリ開発を始める (2022-07-08)
  3. Deno による Slack プラットフォーム(オープンベータ) (2022-09-27)
  4. Jest再入門 - 関数・モジュールモック編 (2022-07-03)
  5. ORマッパーのTypeORMをTypeScriptで使う (2022-07-27)
  6. 第1回 OpenAPI Generator を使ったコード生成 (2022-06-04)
  7. 直感が理性に大反抗!「モンティ・ホール問題」 (2022-07-04)
  8. Rust によるデスクトップアプリケーションフレームワーク Tauri (2022-03-06)
  9. 箱ひげ図で外れ値を確認する (2022-05-18)
  10. Nuxt3入門(第1回) - Nuxtがサポートするレンダリングモードを理解する (2022-09-25)