作成した下書き記事をcommit→push→PRすると、markdownを元にはてなブログの下書きを更新する。
下書き記事の作成は以下を参照。
marty-martini.hatenablog.com
詳細
今回もM-Yamashitaさんの記事を参考に、使いやすくカスタマイズした。
詳細は以下の記事を確認する。(ワークフローの説明は全部書いてある、ありがたい)
仕様
- バージョン管理されている
.md
を更新する - commit→push→Pull Requestをメインブランチ向けで作る
- トリガーはメインブランチへのPull Request
- ファイルの変更があったらblogsyncではてなブログの記事を更新する
工夫したところ
記事が更新されたかをフラグ管理して、不要なstepが実行されないようにした。
steps: - name: Checkout uses: actions/checkout@v3 with: fetch-depth: 2 - name: Get changed files in the entries id: changed-files uses: tj-actions/changed-files@v37 with: files: | entries/**/*.md - name: Has Changed files. if: steps.changed-files.outputs.any_changed == 'true' run: | echo "CHANGED_FILES=true" >> $GITHUB_ENV # 記事が更新されていれば、はてなブログ側の記事を更新する(goのインストールは省略) - name: Update hatena blog of draft if: ${{ env.CHANGED_FILES }} run: | ~/go/bin/blogsync push ${{ steps.changed-files.outputs.all_changed_files }}
まとめ
記事投稿が楽になれば書く頻度も増えるので、自動化を推進したり、ツールの移動を極力無くすのがよい。