MarkdownToPDF: MarkdownからPDFを作成するGitHub Actionsを作成しました

2023年 6月 29日 更新

こんにちは、染宮ねいろです。 GitHubで管理しているMarkdownファイルをGitHub Actionsの力を使って自動生成します。

ねくたりしょんの90%のドキュメントは、ねくたりしょん GitHub Organization で管理しています。

GitHubのプレビューは優秀で、Markdownをフォーマットして表示してくれるのですが、モバイル端末での閲覧や印刷等には不向きです。

そこで、ドキュメントが更新されたタイミングでPDFを生成するActionsを作成しましたので共有します。
PDFにすることにより、どの環境でもストレスなく閲覧することができます。

概要

導入方法

GitHub Actions の設定

/.github/workflows/ に任意の名前のYAMLファイルを作成します。

以下の内容を入力します。

name: '📝 Generate PDF from Markdown'

on:
  workflow_dispatch:

  push:
    paths:
      - 'docs/**'

jobs:
  generate-pdf:
    uses: nct-cherrypick/MarkdownToPDF/.github/workflows/GeneratePDF.yaml@main
    with:
      source-directory: './docs'
      output-directory: './dist'
      is-nest: true
項目内容
on.push.paths.*更新のトリガーにするディレクトリ
jobs.generate-pdf.with.source-directory元データのディレクトリ
jobs.generate-pdf.with.output-directoryPDFファイルの出力先
jobs.generate-pdf.with.is-nest元データのディレクトリがネストしている場合、trueにする

これにより、Actionsページでの手動実行と、元データディレクトリの更新時に自動的にPDFファイルが出力されるようになります。

MarkdownToPDF 設定

/.md-pdf ディレクトリを作成し、さらに以下のファイルを作成します

設定方法は md-to-pdf のページを参考にしてください。

リポジトリ設定

GitHub Actions内からリポジトリにPushするため以下の設定が必要です。