先月、ブログを移行できないという記事を書いた1が、気づいたらもう完全に移行してしまっている。 備忘録も兼ねてどのような構成や展開をしているかまとめておこうと思う。

利用サービスやツールとして下記の通りで、GitLabにpushすると自動でデプロイされる構成にしている。 完全にマニュアル2通りだと思う。

用途 サービス/ツール
執筆環境 VScode
ホスティング Cloudflare Pages
ビルドシステム Cloudflare Pages
ソースコード管理 GitLab
フレームワーク Hugo
テーマ PaperMod

ちょっと変な事をしている点としては、ソースコードはGitLabでステージングとプロダクションのリポジトリを分けている。 Cloudflare Pagesではリポジトリ毎にアプリケーションが生成される為、2つのアプリケーションが存在している事になる。 そこで現状ではステージングにデプロイしたもので確認してから、ステージングのリポジトリからプロダクションのリポジトリにMRを出している。

本当はこの構成は冗長である。 何故なら、Cloudflare Pagesとしてはブランチ毎にビルドされてデプロイされるから、そのブランチに対応したページを見れば確認ができるのだ。 その確認ページもハッシュ値のURLがサブサブドメインで生成されるので特定されにくく、サブサブドメインのページもCloudflare側の機能で認証を挟める。 Cloudflareとしてもそのようなワークフローを想定していると思われる。

しかし、古い人間なのでどうしても分離したくなってしまう。 概念的にはブランチ毎でも全く同じだが、それでも分離した方が自然に感じてしまう。 更に完全に分離しても無料である。 管理が面倒というわけでもない。 だから分けてしまったというわけだ。

それにしてもこういったものが無料で使えるのだからすごい時代である。 ただ、無料で広告がなくドメインパワーもあるという意味ではnoteを使う事がビジネスとしては正しいとも思う。 こうした構成のブログの優位点は今回のようにブログの構成自体を記事にできる所だろう。 書きたい事がないのに定期的に書きたい人にとってはありがたい話だ。 ネタ帳でも買うべきなんだろうか。