OSS Consortium


 

日本語 | English

開発基盤部会 Blog

開発基盤部会 Blog >> Article details

2020/08/03

第8回 部会 あまり慣例に従ってないCI/CD実践例のご紹介。

Tweet ThisSend to Facebook | by nishino
 第8回 セルフZoom 部会です。

 前回(第7回)から、3日しか経っていませんが、やります。セルフZoomで動画だし、全く問題ありません。

 今日の部会、タイトルを見ると、「あまり慣例に従ってないなら、紹介する意味ないんじゃないか?」と思われるかもしれませんが、私は(、私自身のプロダクトにそう言う傾向があるので)、「恐らく、CI/CDの慣例に適合しないケースが多々ある。」と思っているので、敢えて、私のプロダクトのあまり慣例に従ってないCI/CD実践例を紹介してみようと思います。



 ...とまぁ、私のプロダクトの場合、以下のような要件で、一般的な、CI/CDとはチョット異なってくるようです。

  • Windowsをターゲットに含まれる。
    • WindowsやLinuxをターゲットとしたクロスコンパイルがある。
    • 故に、ビルド・マシンはWindows + DockerDesktopで構築する。
    • また、Windows上にインストールする必要のあるSDKも多い。
    • GitHubクローンのRunner は Linux上で動作するケースが多い。
    • Jenkinsを、自分で頑張って、Windows上に構築すれば可能。
  • フレームワークやライブラリの場合、
    • テストコードで投資・回収し難い(ペイラインが高い)
      頻繁なリリースが無いと回収(モチベーション維持)が出来ない。
    • 単体テスト(UT)の段階ではCDはあまりやらない。
      Webアプリも、.NET Coreなら、dotnet XXX.dllで起動可能
    • 一般的なCI/CDのプラクティスは、SIの、UT→CT→IT→STの、
      テスト工程のテスト内容、環境差異をあまり考慮していない。

 なお、CDについては、前回の部会で書きましたが、Dockerコンテナを使用してデプロイすると言うケースが増えてくると思います。特に、CT以降のテストにおいては、Dockerコンテナ & Dockerレジストリを使用した、CDを行うシーンが増えてくるとは思います。
09:00 | Impressed! | Voted(0) | Comment(0) | ご報告