Septeni Engineer's Blog

セプテーニ・オリジナルのエンジニアが綴る技術ブログ

GitLab CI で Scala のテストを雑に速くする方法

こんにちは。 .gitlab-ci.yml を書くのが好きな河内です。

社内では GitLab をホスティングして使っています。 GitLab の機能追加速度はすごいですね。 毎月22日にリリースされることになっており、毎回それなりに機能追加されています。

さて、11月22日にリリースされた GitLab 11.5 では CI ジョブの設定に parallel 属性が追加されました。

about.gitlab.com

parallel 属性を指定すると、その数のジョブが並列に実行されます。 各ジョブには CI_NODE_TOTAL (並列ジョブの総数)と CI_NODE_INDEX (自身のジョブのインデックス)が設定されます。

例えば parallel: 4 と指定した場合、4 つのジョブが並列実行されます。 それら全てのジョブで CI_NODE_TOTAL 環境変数は 4 に設定されます。 CI_NODE_INDEX は各ジョブで 1 から 4 までの数字が設定されます。

各ジョブはこれら2つの環境変数を参照して、作業を分担することが想定されています。

続きを読む

Amazon EC2 リザーブドインスタンス調査

節約大好き、中途三年目になりました堀越です。

サーバーコストは地味に痛いですよね。
コスト削減活動の一貫として既存プロダクトをリザーブインスタンス(以下、RI)に、
乗せる動きとなっています。

とはいうものの、前提としてあまりRIの知識があまりなかったので、
技術調査ついでにアウトプットすることとしました。

RIに関するエントリは既に多く出ていますが、そのあたりはご了承くださいませ。

続きを読む

BigQuery で複数の配列をフラット化する

こんにちは、中途で入社してからちょうど丸 1 年がたちました田邊(@emaggame)です。最近は React + TypeScript を利用したフロントエンドや Scala による Web API 開発もそこそこに、Akka Stream によるデータ収集や BigQuery での集計といったこともしており、毎日たのしく過ごしています。

BigQuery、最近さわり始めていろいろできるんだなあと今さらながら感動しているところです。本エントリではちょっとした Tips として、複数の配列を含むレコードをフラット化する方法についてご紹介します。

続きを読む