一年ほど放置していたHugoをまた更新していきたい。 記事公開までの流れを見直したので記しておく。

記事公開までの流れ

  1. Obsidianでノートを書く
  2. Hugoで公開するノートはHugo2publicに置く
  3. 記事を公開できるまでになったらHugo用のFront Matterをtemplaterで挿入する
  4. Obsidian gitでGitHubにcommit&push
  5. GitHub Actionが自動実行される
    1. obsdconvでHugo2public内のノートをHugo用に修正しHugo用ディレクトリに出力
    2. GitHub ActionでHugo用にbuild&deployして Netlifyに渡す
  6. Netlifyで公開される

概要

大まかなながれはこんな感じ 以前まではobsdconvを利用していなかったので、Obsidian特有の[[wikilink]] がそのまま表示されたりしていてよろしくなかった。 それを修正してくれたり、本文中のタグを Front Matterに追加してくれたりする。

本当はobsdconvをGitHubActionに組み込みたかったのだけれどGitHubActionのことをちゃんと理解していないのでうまくできず、ローカルで実行している。 GitHub Actionでのやり方わかる方教えてください。 解決済です⇒ 📔 obsdconvを自動化したい

obsdconvを使うならHugo用のFront Matterを挿入する必要もないのでは?と思うがtitleを#1から挿入したあとで#1を消すというオプションがないので、templaterでファイルネームをタイトルに挿入することと、事故防止のために publishをそのタイミングで付与している。

内容はこれ

publish: true
title: <% tp.file.title %>
enableTocContent: true

そのほかはこれまでの流れと同じ。 参考: ObsidianでHugo用ノートを更新したら自動で公開する方法

ファイル構成

ファイル構成も特に変更していないが、やはりobsdconvを導入した分ワンクッション増やした。 Obsidianのみで使用している📁ディレクトリ等を省略すると、下記になる。

Obsidian(vault) ├ Hugo2public ├ Hugo │ ├ content │ │ ├ posts │ │ └ 他略 │ └ 他略 └ 他略

Hugo2public: obsdconvのsrcに設定 posts: obsdconvのdstに設定。Hugoのデフォルト値 Hugo: GitHub Actionでbuild&deployする

変更 2022-02-15

2022-02-14書いて、2022-02-15変わった。 obsdconvをGitHubActionに組み込む方法がわかったので手動の手間がぐっと減った。 流れ3まで済めばあとは自動的に記事が公開されるはず!