GitHub issueの起票リンクを生成するツールを作った

どうもnasaです。 最近webアプリケーションのパフォーマンスチューニングがいい感じに書いてある本が読みたいお年頃です。おすすめあったら教えてください。

風邪が長引いて悲しいので、ストレスをアウトプットに変えようと思いこのツールを作りました(?)

何を作ったか

GitHubのIssue起票リンクを生成するツールを作りました。

バイトで最近リリース予定の機能があり、試食(動作確認)を上司にお願いしていたのですが、不具合や不適切な文言が多数あり、Issueの起票をしてもらいました。

起票リンクからIssueを立てると、タイトルやラベル、プロジェクトに適切なものが事前にセットされていて、担当者もアサインされているので、パパっと書くことができます。

説明下手ですね、、、

こんなやつです。

これのリンクをどう作っているか聞くと、urlをイジイジして作ってるらしく、ちょっとした生成ツールがあれば便利かなと思い作りました。

今は、コマンドラインで対話的に作るかtoml,yamlファイルを読み込んで作るかの方法でリンクを生成できます。

定義ファイルはこんな感じです。

YAML

repository: k-nasa/menbei
title: title
body: hogehoge
assignees:
    - k-nasa
    - hoge
labels:
    - bug
    - question
projects:
    - k-nasa/menbei/1

TOML

repository = "k-nasa/menbei"
title = "title"
body = "hogehoge"
assignees = ["k-nasa", "hoge"]
labels = ["bug", "question"]
projects = ["k-nasa/menbei/1"]

インストール

よかったら使ってみて!

Homebrewでインストールできます

brew tap k-nasa/homebrew-menbei
brew install menbei

rust環境がある人はcargoでも良いかも

cargo install menbei

以下雑談

GitHubリポジトリ

言語はRustで書きました。 結構雑に書きなぐったので、イケてないなーと思う箇所は自分目線でも結構あります。 そのうちリファクタせねば、、、、

ビジネスロジックのテストを先に書いて実装に入るという順序で実装してみました。 これはTDDでおk? いっつも打鍵しながら動作確認してたんですが、テスト書いて実装したほうが開発体験もいいし、体感的にいつもより早く実装できた気がします。

ただ、テストがあまり書きなれてなくて、ここどうしようかな?と悩む箇所があり(その箇所は結局テスト書いてない)、テストをぱぱっと書けるようになりたいなと思いました。

こんな簡単なツールを作ることでも学べることは意外とあったので、たくさんコード書いていきたいと思いました。

ネタがあまりありませんが、、、

ではレポートからの現実逃避はこの辺にして、泣く泣くレポートを終わらせることにします。

あ、できればGtiHubリポジトリにお星様をください。嬉しくなると思うので、

よかったらメモコマンドも使ってみてください!