2018年11月14日水曜日

CI/CD Test Night #1/#2 に参加してきた

CI/CD Test Night #1
CI/CD Test Night #2


1日目は、補欠だったのですが当日繰り上がったので参加。
2日目は、当選してたので予定通り参加してきました。
(ブログ参加枠ではないのでテキトーに書きます)


(両日参加でパーカーもらえたようですが、Tシャツを着ていく必要があったようで、思いっきりネタTシャツで行ってしまいもらえなかった・・・)

感想
Bitrise の方が来日してくれたこともあって、Bitrise の話題が多かったです。
Bitrise は自分にとっては使っている CI サービスの1つくらいの認識で、モバイルに強いという印象がある程度でした。
特に自分ではその強みの恩恵を受けてはいないので(iOS/Androidアプリを作っているわけじゃないので)、LT を聞いててみんな使ってるんだなーという感想。あとは Circle CI も強いんだなという感想。


Bitrise をより深く使ってみた
公演でワークフローのヒントをいろいろもらったので、やってみました。

設定の diff と restore
ワークフローとかパイプラインとか作ってるときって、結構トライアンドエラーが多いので Restore できるのはありがたい。
他のサービスよりも diff が見やすいなーと思いました。


並行実行
ワークフローを直列に実行するのではなく、2つに枝分かれさせて並行実行させる方法のブログ記事が紹介されたので、試してみました。



方法としては、別のワークフローをキックするステップが用意されているので、それを入れ込むだけです。
上記ブログで紹介されているのは、「Bitrise Start Build」を使った方法です。
(Bitrise Start Build Step でも Trigger Bitrise workflow でも、どっちでも実現できたましたが、Start Build のほうは待ちができます。)
(Start Build の方は Personal Access Token が、Trigger workflow の方は Build Trigger Token が必要になります。)

やってみた結果としては、そもそも Free プランだと 1並列 だけなので、ビルドが詰まって無理でした。。。


異なるスタックのビルドを1つのワークフローで実行したい
並行実行はできたらいいなくらいだったので、Free プランでできないのは致し方ないですが、
iutest では、iOS / Android ビルドのために、Mac と Ubuntu のスタックをそれぞれ利用しています。
そのため、これまではプロジェクト自体を分けて対応していました。
ただ、1 push に 2 ビルド消費してしまうので、1つのワークフローで iOS / Android ビルドができないかなと思ってました。

ただ単純にワークフローをつないだときに、スタックの切り替えもしてくれると良かったんですが、そううまくはいかないものです。。。



(Hybrid スタック使えばいいんでしょうが、その前に Android ビルド環境を整えねば・・・)
Workflow ごとのバッジがほしい
バッジ集めが趣味なので、ワークフローごとのバッジがほしいなーと思ってます。
(ワークフローで iOS/Android を別途書くことが多いと思うのですが、それぞれでバッジを出したい)
(今は並列実行の件もあってプロジェクト自体を2つ作ってますが・・・そうすると両方の結果を加味したバッジ表示ができないので、それもまた困っているところ)


すでにできるのかもしれないですが、やり方がわからず。
情報あればコメントいただけると嬉しいです。

(ここでワークフロー選択ができるといいんですが。。。)

最後に
Jenkins 以外で CI メインの勉強会って、たぶん初めての参加だったのですが、楽しかったです。
やっぱり CI 面白いですわ。

あとは、Bitrise のワークフローを見直すイイ機会になりました。
今まではただ使ってるって感じだったので、もっと使い倒していこうと思います!
(とりあえず、この記事で書いた未解決な件はもう少し考える)

では。またどこかで。

0 件のコメント:

コメントを投稿