2020年02月19日 08時00分 公開
特集/連載

継続的な改善の基盤となるCI/CDパイプライン活用術CI/CDパイプラインの活用【後編】

CI/CDパイプラインをいかに使うか。チェックインやリリースのタイミングはいつにするか。CI/CDパイプラインにどのような機能を持たせるか。識者の意見を聞いた。

[Adrian Bridgwater,Computer Weekly]

 前編(Computer Weekly日本語版 1月22日号掲載)では、CI/CDの全体像とCI/CDパイプラインを紹介した。

 後編では、CI/CDパイプラインの活用法を掘り下げる。

ロールバックの実施

iStock.com/Melpomenem

 本誌が話を聞いた専門家は、コードの増加を可能な限り最小限に抑えてCI/CDパイプラインを始めることをアプリケーションチームに推奨する。GitLabで製品管理とCI/CD担当のディレクターを務めるジェイソン・レニー氏は次のように語る。「変更が小さいほど、問題発生時のコードレビュー、テスト、ロールバックが容易になる。その結果、運用環境でのバグや不具合が少なくなる。だがコードレビューを実施しない、十分なテストを行わない、ロールバックする時機を判断するための監視を行わないという状態ではこのようなメリットは得られない」

変更の厳密な管理

 CI/CDパイプラインへの取り込みは、新しいコードがソースコードリポジトリにチェックインされるたびに行われることもあれば、特定のアプリケーションに合わせて毎時間や毎日行われることもある。ベンモシェ氏は次のように話す。「ただし、毎回のイテレーションに行われる変更の数を厳しく管理するには開発者の統制が必要になる。ささいな変更でも重要な機能に影響を与える恐れがある。統合の問題が発生する恐れを減らすには、複数の層で厳密なテストを実施しなければならない。また、単体テスト、静的コードテスト、機能テスト、負荷テスト、耐久テストを高い割合でカバーする必要がある」

 GitLabのレニー氏は次のように述べる。「CI/CDパイプラインの完了にかかる時間が大きな制限因子になる。リリースの頻度をCI/CDパイプラインの時間よりも短くすると、マスター(ソースブランチ)が破損するリスクがある。CI/CDパイプラインで以前の変更が実装されている間に新たな変更が結合されると競合の恐れが生じる。速度を上げると、ステージングでは全てが成功してもマスターでは失敗することになる。Google、Facebook、Uberなどの洗練されたエンジニアリング企業は、これを緩和するために




続きを読むには、[続きを読む]ボタンを押して
ください(PDFをダウンロードします)。






ITmedia マーケティング新着記事

news144.jpg

「BOTANIST」を生んだI-neが上場 強いブランドの秘密とは?
「BOTANIST」運営のI-neが東京証券取引所マザーズに上場。テクノロジーとマーケティング...

news052.jpg

Disney飛躍の立役者ボブ・アイガー氏が語る 「積み上げてきた価値を『崇拝』せず『尊重』せよ」
The Walt Disney Companyを巨大メディア企業に成長させた前CEOのボブ・アイガー氏が、レ...

news048.jpg

組織内のデータの半分以上が「ダークデータ」 回答者の66%――Splunk調査
「ダークデータ」とは活用できていない 、もしくは把握すらできていないデータのこと。