2020年6月9日火曜日

[CI] Razorops 始めました

iutest の新しい CI サービスとして Razorops を使い始めました。
Razorops とは
Razorops は Container-Native な CI/CD サービスです。
他の Container-Native な CI サービスだと、Drone や Codeship Pro 、Codefresh とかがあげられます。

気になる Pricing は
本ブログで紹介するということは、FREE プランがあります。
ビルド回数無制限なのはありがたいですね。
Docker Layer Caching や Kubernetes GitOps は Basic プランでは使えない、また ENTERPRISE プランだと 20 並行可能となっていますが、Basic プランでは特に記載ないので 1 でしょうか。こちらは実際に使ってみて確認していきたいと思います。

では、さっそく SignUp します。

Sign-Up
GitHub アカウントでのサインナップとかはできないので、まずはメールアドレス等を必要事項を入力します。

「Sign up」ボタンを押すと完了です。
ダッシュボードが開くので、プロジェクトの作成をしていきましょう。



プロジェクト作成
「Create」ボタンを押すとリポジトリの選択が開きます。
今回は GitHub を選択します。まだ GitHub との接続ができてないので、接続を許可しましょう。




Integrations に戻ってくるので、続いて App のインストールをします。
Connect ボタンからインストールをすると接続設定が完了となります。



接続ができたら、Pipelines にもう一度移動しリポジトリの選択をします。


リポジトリの解析が始まるので少し待ちます。

.razorops.yml ファイルが必要になりますが、まだ用意してないのでここでは「Skip」をします。

これで新しいパイプラインが作成できました。
次に YAML を作成しビルドを走らせてみます。

YAML の作成
ドキュメントを参考に YAML ファイルを作成します。
今回 iutest で実施したいのは、既存の Docker コンテナ上でのビルドとテストなので Freesytle のタスクを記述します。


  tasks:
  centos-tests:
    image: srzzumix/gcc3:centos5
    commands:
      - find . -type f \( -name \*.hpp -or -name \*.cpp -or -name \*.ipp \) -exec sed -i -e '1s/^\xEF\xBB\xBF//' {} \;
      - make -C test -j4
      - make -C test test
特に難しい部分はありません。
実行したい image の指定をしてコマンドを列挙するだけです。

実行結果
実行すると以下のようになります。

バッジ
残念ですが、バッジはまだ対応していないようです。
対応予定はあるようとのことでしたので、待ちましょう。
最後に
まだまだ知らない CI サービスがあるもんですね。
Razorops は躓くことなく、すんなり始めることができました。
まだまだ使い始めたところなので、今のところ、特筆するような特徴は見つかってませんが、普通に使える CI サービスだと思いました。
(普通って大事ですよね。)

またアップデートがあったらブログにしたためたいと思います。
では。


0 件のコメント:

コメントを投稿