ka2n blog

Technology and beer

werckerのstore stepを早く終わらせる

werckerでCIしている時、最後にstoreというstepが勝手に挿入される。 これはビルドしたコンテナをそのままデプロイするため、一旦イメージファイルにして保存している(のだろうと思う)。なにもしないと5分くらいかかっていた。

ビルド結果をそのまま使ってデプロイするには便利だけど、単純に別のサービスをキックしてデプロイするにはこのstepは不要。イメージファイルの書き出しなので、ファイルシステムの変更が少なければ早いはず。ということでビルド中に作成したファイルを削除することにした。

# wercker.yml

build:
  steps:
    - script:
       name: install
        code: npm install && gulp build # etc

    - script:
       name: cleaup
        code: |
           rm -rf node_modules # 40MBくらい
           rm -rf distribute # gulpの成果物, 10MBくらい

buildのstepsの最後にcleaupってタスクを定義して消す。これで1分ほどでstoreが終わるようになった。