ブログを更新しました。

Hexo + GitHub-Pagesを使っていたが40記事程度しかないのにビルドが超遅くなって5秒くらいかかる。
しかもテーマの中にconfigファイルがある関係で作業PCを変えるとDisqusのコメントが消える等の問題を抱えていた。

NetlifyでHugoで作った静的サイトをホスティングしてビルドを自動化する
この記事が魅力的だったのでGitHub-Pagesから移行してみた。
めっちゃ楽ちん速攻でハマった。

Netlify の登録

まずGitHub、GitLab、BitbucketのOAuthに対応しているサービス。
チョイスが渋いだけじゃなくて、OAuthログインしたらすぐにリポジトリ指定してね、アップするから。 登録から30秒で公開出来るしいたれり尽くせりで素晴らしい。

Hugo, Node.js, Ruby, PHPが最初から入ってて、
後はリポジトリとコマンド、公開ディレクトリを放り込むだけで完成。

Deploy settings

  • Repository: https://github.com/miyabisun/blog
  • Build command: hugo –buildDrafts –theme=hugo_theme_robust
  • Publish directory: public/
  • Production branch: master
  • Branch deploys: Deploy only the production branch and its deploy previews
  • Public deploy logs: Logs are public

Build environment variables

  • HUGO_VERSION: v0.40.3

速度を検証

$ hugo --theme=hugo_theme_robust --buildDrafts

                   | EN
+------------------+-----+
  Pages            | 139
  Paginator pages  |  10
  Non-page files   |   0
  Static files     |   2
  Processed images |   0
  Aliases          |  26
  Sitemaps         |   1
  Cleaned          |   0

Total in 319 ms

40記事で0.3秒、やるじゃん!

ハマった箇所

いくら更新してもNetlifyで更新されない。
単にTypoしていたようで、hugo --theme=hugo_theme_robust --buildDraftsにローカル検証用のpostサブコマンドが混入していた。
デプロイコマンドを変更してコミット。

今度はHexoから無理やり持ってきたMarkdownはヘッダー部が一部対応しておらず
エラーが出ていたのでビルドがこけていた。

この辺を修正して再度アップ、デプロイには30秒程のタイムラグがあるものの無事更新された。
Jenkinsを10倍楽にしたようなコンソール結果確認画面もあって凄い。

感想

  • Hugoは前評判通り爆速、Hexoの10倍位の速度が出る
  • Netlifyは次世代のブログ管理サイト、是非使うべき

参考サイト