CI サービスを活用して Zenn の執筆環境を作る - 序章
はじめに - Zenn と GitHub
この Ariticle は私の記念すべき Zenn 初投稿です。
Zenn は GitHub リポジトリと連携し、GitHub に push した markdown ファイルと同期し
Article や Book を公開できます。
また Zenn CLI を使うことでローカル環境での執筆ができます。
これらエンジニアライクな仕組みが Zenn の特徴の1つといえるでしょう。
というわけで、私は Zenn が GitHub 管理可能である点を最大限に活かすことを目的として、
Zenn を使い Zenn に投稿していきたいと思います。
GitHub リポジトリを作成・連携する
まずは GitHub のリポジトリを作成しましょう。
このような基本的なチュートリアルは Zenn の公式ドキュメントがありますので、そちらに従って作成しましょう。
GitHubリポジトリでZennのコンテンツを管理する | githubとの連携手順 | Zenn
Zenn CLI で記事を書く
Zenn CLI を使用したローカル執筆環境の構築も公式ドキュメントがありますので、そちらに従ってセットアップしましょう。
続いて、記事の書き方もドキュメントに従えばすぐにできると思います。
一通り行うと以下のようにローカルの執筆環境ができあがります。
GitHub リポジトリの公開設定について
Zenn は Book を有料で販売することも可能です。
もしあなたが販売することを考えていないのであれば、 Public リポジトリで良いと思います。
販売を検討しているのであれば、 Private リポジトリになると思います。
(Zenn では有料だが、GitHub では無料で閲覧可能とするならば Public でも良い)
しかしながら、Private リポジトリの場合 CI サービスなど無料の範囲で利用できるサービスの選択肢が狭まってしまいます。
Zenn と GitHub の同期について
Zenn は GitHub の特定のブランチと同期する仕組みになっています。
デフォルトでは master
ブランチです。
新しく article や book を書いたら master
ブランチに PR を出す形にすると CI サービスを利用しやすくなるので、そのスタイルで運用すると良さそうです。
すぐに使えそうな CI サービス
Sider
Sider は国産のレビュー CI サービスです。
PR に対して様々なツールの解析結果をもとにレビューをつけてくれます。
Zenn の場合 Markdown で記述するので remark-lint 、文章を書くので Misspell や Goodcheck 、 LanguageTool がオススメです。
Free プランでは Private リポジトリは扱えませんので注意してください。
Sider - Pricing
GitHub Actions
GitHub Actions は GitHub の CI サービスです。
こちらは Private リポジトリでも Free プランで扱うことが可能です。
(ただし制限あり。2020/9/23 時点では「1か月あたり2,000分」)
GitHub Actions は Sider のようなレビュー(lint)系 CI サービスと異なり、やろうと思えば何でもできます。
CI ワークフローを組む手間はありますが、 Sider と同様に remark-lint などの lint ツールを実行しその結果を PR レビューにすることも可能。
その際に便利なのが reviewdog です。
簡単にセットアップでき、ツールの出力を reviewdog に食わせるだけで PR レビューが実現できます。
最後に
さて本 Article はこちらで最後となります。
この Article は GitHub の Private リポジトリで GitHub Actions を使って誤字脱字などのチェックを行ってからリリースしました。
このあたりの詳細をまた投稿できたらと思っております。
今後とも宜しくお願いします。
Discussion