概要

Bitrise でジョブを定期実行する.お題は以下のとおり.

  • ブログのビルドとデプロイを Bitrise で実行できるようにする
  • 毎日自動で実行することで,予約投稿と同等のことができるようにする

Bitrise でビルドとデプロイができるようにする

このブログは Jekyll で構築している.サーバーへのデプロイは FTP で行っている. ブログのビルドとデプロイは Glynn という gem で一括でできるようにしている.

Bitrise のジョブとしては,以下のタスクを実施すれば良い.

  1. ブログのソースを git clone する
  2. Glynn の設定ファイルをつくる
  3. Glynn を実行する

タスク1は Bitrise の Git Clone Repository ステップを使えば良い.タスク2は Code Signing タブに glynn ファイルをアップロードして,シェルスクリプトで DL すれば良さそう.タスク3もシェルスクリプトを実行するだけ.

Script ステップを定義して以下のようにした.

#!/usr/bin/env bash
# fail if any commands fails
set -e
# debug log
set -x

curl -o _glynn.yml $BITRISEIO_GLYNN_YML_URL

bundle install --path vendor/bundle
bundle exec glynn

Bitrise のスケジューリング

ベータ機能でジョブの定期実行ができる. Start/Schedule a Build からぽちぽち設定するだけ.

form

この機能,だいぶ前からリリースされているっぽいがなぜかまだベータ.

設定ができると Builds タブに表示されるようになる.

build

Jekyll のビルドはデフォルトだと過去日付の投稿しかビルドしないので,投稿には未来の日付を指定しておき,Bitrise で毎日ビルドを実行すれば予約投稿と同等のことができる.

まとめ・感想

  • Bitrise でジョブの定期実行ができた
  • ブラウザからぽちぽちするだけで特に書くことがなかった

ちなみに Glynn はもう更新しないらしい.FTPS 対応ができなくなっていたので Fork してなおした. 確かに Jekyll でビルドだけして,好きな FTP ソフトウェアでアップロードするのが筋が良さそうか.

参考