ページの開発・運用をしております。Pagesとして公開しています。Cronが可能だったので試しに更新の部分だけ移行してみました。Cloudはパブリックリポジトリであれば無料で利用できるCIサービスです。内部ではDroneというOSSのCIプラットフォームを利用しています。Enterpriseという有料のクラウドサービスも提供しています。順に説明していきましょう。Cloudでは無償でキャッシュを利用することができません1。Haskell(というかStack)のCIをしている方ならわかると思いますが、キャッシュなしにビルドするとすごい時間がかかります。コマンドをDockerイメージとしておき、Drone内ではこのイメージを利用して静的ページの生成を行う方針でいきます。Dockerイメージの生成には、StackのDockerインテグレーションを使います。使えなかったからです。Integrationを使うと、その機能を利用することができません。そこで、TravisCIを使って自動ビルドすることにしました。ひげメモ」で記事にしてあるので、細かい話は割愛します。Pullが走るようになり少し遅くなったのが辛いですね(今後要検討)。コマンドの実行を設定します。Tokenを使って再度クローンしていました。使って確認しています。pull_request記法は違うもののそのまま移植ができました。条件(ifやwhen)のところですが、Droneでcronのイベントを指定する方法がわからなかったので、動作しては困るpull_requestだけ弾くようにしました。UI上で行います:これで毎時間masterブランチのビルドが実行されます。Tokenは他の個人のリポジトリも操作できてしまうので、兼ねてからできれば使いたくないなと思っていました(特に個人プロジェクトじゃないHaskell-jpのプロジェクトでは)。Keyに移行しました。Keyを登録する機能はDroneにはありません。tempSecretというのはDrone側で保持・秘匿できる環境変数のような機能です(名前が違うだけでだいたいどのCIプラットフォームにもありますね)。チャンネルにGitHubの通知設定をしているだけでした。HubとSlackを連携できるようになっていました。チャンネルに飛んで来てうるさいので修正したいです4。Slackで声をかけてください(チャンネルはどこでも良いですよ)。ライセンスの下に提供されています。Analyticsでアクセス情報を収集しています。集めた情報は統計的に処理した上で、当ウェブサイトの改善のための参考情報としてのみ使用します。