GitLab

PHPUnit の Clover XML を Cobertura XML に変換して Gitlab の MR で コードカバレッジの可視化

以下で説明される通り、Gitlab では MR のコード差分画面で行ごとのコードカバレッジを可視化できます。 Test Coverage Visualization | GitLab この機能を利用するためには Cobertura 形式の XML をカバレッジレポートが必要です。PHP の場合 PHPUnit 9.4 …

Gitlab のマージリクエストで PHPUnit のコードカバー率の差分を表示する

PHPUnit のコードカバー率がマージリクエスト(MR)の前後でどのように変化したかの差分を MR の画面に表示するようにしてみたメモ。 .gitlab-ci.yml は次のような内容になります。phpunit でテストを実行するジョブと phpcov でコードカバレッジを計測する…

Gitlab CI でマージリクエストのマージ結果でパイプラインを実行する

Gitlab は マージリクエストに対してそれがマージされた結果を元にパイプラインを実行できます。 Pipelines for Merged Results | GitLab 便利そうですけど、これは gitlab.com なら Silver 以上、セルフホスティングなら Premium 以上じゃないと使えないよ…

Gitlab Runner で分散キャッシュや --docker-volumes を使ってジョブ間のキャッシュを共有する

Gitlab Runner で concurrent が 1 より大きい場合、パイプラインを 1 つの Runner で実行するよう構成したとしてもジョブ間でキャッシュが共有されないことがあります。 例えば concurrent = 4 な Runner で次のパイプラインを実行します。 image: alpine s…

Gitlab CI のアーティファクトをブランチやタグとジョブ名を指定して特定のファイルを取得

以下のような URL で、ブランチやタグとジョブ名を指定して最新のアーティファクトから特定のファイルを取得できます。 https://example.com/projects/:id/jobs/artifacts/:ref_name/raw/*artifact_path?job=name https://example.com/<namespace>/<project>/-/jobs/artifacts/<ref>/r</ref></project></namespace>…

Gitlab Runner のジョブに Amazon ECR のイメージを使う

思うとことあって Qiita に移しました → https://qiita.com/ngyuki/items/719e877c52415e398148

GitLab CI 8.17.2 でジョブが並列に実行されるときの cache の動き

https://github.com/gitlabhq/gitlabhq/tree/v8.17.2/doc/ci/yaml#cache 8.17.2 ではデフォルトではジョブごとブランチごとに有効になっている。つまり・・・ 異なるジョブ同士では共有されない 異なるブランチでは共有されない 同じブランチの同じジョブで…

Gitlab CI でカバレッジレポートを公開するメモ

Jenkins で PHPUnit 実行時に出力したカバレッジレポートを Jenkins 上で閲覧できるようにしているのですが、同じことを Gitlab CI でやるときのメモ。 Jenkins の場合 Jenkins なら HTML Publisher plugin でサクッと PHPUnit のカバレッジレポートを公開で…

Gitlab CI を使ってみるメモ

Jenkins からの移行のために今更だけど使ってみたメモ。 なお、うちの Gitlab はソースから入れていてデータベースも MySQL です。たまにしかバージョンアップしていないのでちょっと古いです(8.17.2)。 参考 https://docs.gitlab.com/ee/ci/ 公式のドキュメ…

CentOS で GitLab を 5.3 から 6.1 にバージョンアップ

CentOS で GitLab を 5.3 から 6.1 にバージョンアップしたのでそのときの手順を残しておきます。 参考 https://github.com/gitlabhq/gitlabhq/blob/master/doc/update/5.3-to-5.4.md https://github.com/gitlabhq/gitlabhq/blob/master/doc/update/5.4-to-6…

GitLab 5.0 を CentOS 6.4 にインストールした

追記 2013/04/08 単に GitLab を動かすだけなら ruby をシステムグローバルにインストールする必要は無いので rvm とか rbenv とか、もしくは /home/git/ruby-1.9.3/ あたりにインストールする方がいいかもしれない。 なんかいろいろ変わったらしいので入れ…