カルボナーラ街道

計測と観察

CircleCI

供養: auto-merge-helper

リポジトリ github.com 内容 コミット毎に実行されるCIのステータス(Success, Failure, Pendingなど)を確認する処理をGitHub Actions上で動作させる。 作った背景 CircleCIのpath-filtering*1を使うと、コミット毎に実行されるCIが変わるのでステータスチェ…

コミットメッセージを汚さずにCircleCIのCIをスキップさせるようにしたが、汚したほうが楽という結論に至った

TL;DR CircleCIを使ってる場合、コミットメッセージに [skip ci], [ci skip] を含めるとそのコミットに対するCIの実行をスキップできる コミットメッセージを汚したくないので、git notesを使ってスキップする仕組みを作った 日常的に使うには面倒くさいので…

GitHub ステータスはCircleCIのジョブが対象だが、ワークフロー単位で指定したい

モチベーション tokizuoh.hatenablog.com 先日の登壇時のQandAタイムで頂いたコメントに整理がついたのでまとめておく。 頂いたコメント https://speakerdeck.com/tokizuoh/monoreponiokeru-path-filteringli-yong-shi-demo-github-sutetasunorequiredwo-ji-…

【オンライン】CircleCIユーザコミュニティミートアップ に登壇した

イベントURL circleci.connpass.com 発表資料 speakerdeck.com ソースコード github.com リポジトリ名から察することが出来るが今月の1日に思いついたアイデアだった。 所感 初めてのオンライン上での10分尺での登壇は緊張したけど、Zoom上でのクローズドな…

CircleCIで対象ファイルに差分があった時のみワークフローを実行させる

モチベーション GraphQLサーバーのリポジトリからクライアントのリポジトリへのスキーマファイル同期をCircleCIで行っている。 CircleCIのワークフローの実行のタイミングはスキーマファイル(schema.graphqls)に変更があった時だけで良いのでそのタイミン…

CircleCIで終了ステータスが0以外の時に失敗せずに終了させる

モチベーション CircleCIのステップで git commit をした際に差分が無い場合は終了ステータスが1になりワークフローが失敗扱いとなる。これを成功扱いにして終了させたい。 version: 2.1 jobs: update-text: docker: - image: ubuntu:xenial-20210804 steps:…

GraphQLサーバーからクライアントへのスキーマ同期にCircleCIを使ってみた

モチベーション GraphQLサーバーとクライアント間ではスキーマを共有する必要がある。自動化したい。 つくったもの CircleCIのワークフロー実行時にlocalhostでGraphQLサーバーを立てて、Apollo CLI経由でサーバーからスキーマを取得する。取得したスキーマ…

mikefarah/yqを使って複数のYAMLを統合する

開発環境 > yq --version yq (https://github.com/mikefarah/yq/) version 4.25.2 モチベーション CircleCIで複数YAMLを扱う場合はDynamic Configurationを利用し、その際に複数YAMLを1つのYAMLに統合する必要がある。今回はyqを使って2つのYAMLを統合してみ…