WerckerやめてCircleCIに移行


Wercker から CircleCI へ

WordPressからGitHub Pages + hugoに移行した で書いたとおり GitHub と Hugo で Blog 書くことにしたものの、Wercker の UI がなんか微妙だったのと、仕事で CircleCI 使ってるのでいっその事移行することにした。

circle.yml

こんな感じに

machine:
  timezone: Asia/Tokyo

checkout:
  post:
    - git submodule update --init --recursive

dependencies:
  pre:
    - go get -v github.com/spf13/hugo
    - git config --global user.name "nobu666"
    - git config --global user.email "ogata.nobu@gmail.com"

test:
  override:
   - echo

deployment:
  master:
    branch: master
    commands:
      - git clone git@github.com:nobu666/nobu666.github.io.git public
      - hugo
      - cd public && git add . && git commit -m "[ci skip] publish"; if [ $? -eq 0 ]; then git push origin master; else :; fi

test 部分はなんか書いとかないと warning が出てしまうので適当に。deployment のとこは、 README だけ変えたいときとかに git commit が空振りしたエラーになるのを避けるため条件分岐している。

CircleCI 側の設定

  1. CircleCI の Project Settings で設定画面を開く
  2. Permissons にある Checkout SSH keys を開く
  3. GitHub の Authorize をする
  4. Create and add 的なボタンがあるのでそれをポチる

リポジトリは2つ使っていて、ソースに nobu666/nobu666.com 、公開用に nobu666/nobu666.github.io を使っている。branch で分ければ1つでもできると思うが、非公開にする必要ないし、2つ作ってしまっていいと思う。