Help us understand the problem. What is going on with this article?

circle ci がめっちゃ混むので [ci skip] を勝手につけたい

More than 3 years have passed since last update.

書く!と勢いこんだものの、書く時間を何か得体の知れないモノに奪われてしまいましたので、
テクニックといいますか、みなさまの開発現場でも使えそうなものを投下しておきます。

circle ci が混んでるやと・・

人数もそれなりに増え、Go言語のコンパイルが日々日々遅くなるばかり。
毎日熾烈なコミットが繰り広げられる現場で、ついにCIが大渋滞してきました。

終わらない・・終わらないんです・・・Circle CIがっ・・・。
一個回るのにxxx分かかるんです。待ってられないのです・・。

image

WIPやと・・・!
レイアウト修正やと・・・! HTMLの修正にテストをがっちり動かす必要あるのか・・!

          ____
        /      \
       /  ─    ─\
     /    ⌒   ⌒  \     ハハッ ワロス
     |       ,ノ(、_, )ヽ    |
      \      トェェェイ   /
       /   _ ヽニソ,  く

てなことでCIを回す必要ないんじゃない? ってコミットを少しでも抑制できればと思っていたところ、
CircleCIの公式ページに、Skip a build - CircleCI という記事にあるとおり、 [ci skip] とコミットメッセージをつけると、CIが回らない・・!

ということで拡張子を判定し、このコミットメッセージを付け足すgithookを書きましたとさ。

/path/to/directory/.git/hooks
$ cat commit-msg
#!/bin/sh

git diff --staged --name-only | grep -e .go -e .ts > /dev/null;

if [ "$?" -ne 0 ]; then
    echo " [ci skip]" >> $PAIRS_ROOT/.git/COMMIT_EDITMSG;
fi

-e .go -e .ts の部分に色んな拡張子を混ぜて、コミットに該当する拡張子がなかったら、コミットメッセージに [ci skip] と勝手につけてくれちゃいます。
この例だと、 .go , .ts がなければ [ci skip] つけちゃいます。

ぜひhookをつくって、快適なCircleCIをお楽しみください♪
(こんな記事で本当にすまん)

Why do not you register as a user and use Qiita more conveniently?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away