kubernetes-docs-ja-maintainers向けissue-creatorの紹介

2 min read読了の目安(約1900字

はじめに

Kubernetes公式ドキュメント日本語版を更新するにあたり、Issueを作成してコントリビューションをお待ちしております。新規の方もリピーターの方も歓迎です。

本記事はIssueを作る話です。noteに書いていたのですが、エクスポート(機能あったかな?)せずに退会してしまっていたので記憶を呼び起こして書いてみます。

背景

Issueを作るだけでもいろいろ考えることがあります。

  • どのページが更新対象なのか
  • そのページはどのコミットまで反映されているのか、取り込むべき差分は何か

このあたりがけっこうつらかったので少しでも楽できるようなツールを作りました。

https://github.com/oke-py/issue-creator

使い方

personal access token作成

https://github.com/settings/tokens でGenerate new tokenします。スコープはgistを選択してください。

インストール方法

バイナリを配布しておけよという話ですが、ソースコードを修正しなければならず、そこまで至っていません。

git clone https://github.com/oke-py/issue-creator.git
cd issue-creator

バージョンやリビジョンにあわせて以下を修正します。

修正したらビルドしてインストールします。

go install .

実行

公式ドキュメントのリポジトリに移って作業します。

git clone https://github.com/kubernetes/website.git
cd website
git remote add upstream https://github.com/kubernetes/website.git

環境変数を設定して実行します。

export ISSUE_CREATOR_TOKEN=xxxxxxxx
# ここまで反映済みとなっているリビジョン or ブランチ
# おそらく次回はfb6364d
# 一部のファイルはそこまでできていなのでupstream/release-1.17でよさそう
export IC_OLD_REVISION=upstream/release-1.17
# ここまで反映したいリビジョン or ブランチ
# おそらく次回はupstream/release-1.18ではないか
export IC_NEW_REVISION=fb6364d
# 対象のファイル
export IC_FILEPATH=docs/concepts/workloads/pods/pod-lifecycle.md

git diff $IC_OLD_REVISION $IC_NEW_REVISION -- content/en/$IC_FILEPATH | issue-creator

するとgistにdiffを登録し、Issue作成用URLを返します。それを開いて1クリックでIssueを作成できます。と言いつつ、私は不安がってすべてのリンクを開いて目視確認していました。

おわりに

しばらくメンテナ離脱するので、あとはよろしくお願いいたします。issue-creatorの使い方などサポートすることはできると思うのでお声がけください。