34
17

More than 3 years have passed since last update.

GitHubのIssueをスプレッドシートで一括生成

Last updated at Posted at 2017-12-15

Githubでプロジェクトを進めていく時、タスク分けをIssueで管理をしているのですが、
GithubのUIってIssueを一気に作れないんですよね。
いちいち毎回POSTしてポチポチしていかないと、、、

プロジェクト始める前の作業であんまり時間取られたくもないので、ちょっとしたツールを作ってみました。

このツールでできること

  • Issueをボタン一つで複数作れる

-> Excelの見積書とか使ってたら、見積書コピペするだけでIssueが勝手にできちゃいます。

作ったもの

https://docs.google.com/spreadsheets/d/1tuS1ekAV7rR1v6s0OrFA3n3nwVwo5ciyN39bVNl5KSM/edit?usp=sharing
*必ず自分の環境に一旦落とし、他人のアクセスができない状態にした上で使用してください。

ここから飛べます。

ソースコードはこちら

使用したのはGoogle Spread SheetとGoogle Apps Script。

Spread Sheetに入力された値を成形、JSONに変換した上で、
GithubのAPIに対してGoogle Apps ScriptからデータをPOSTすることでIssueを作成しています。

使い方

必要な情報はGithubの
- リポジトリユーザー名
- リポジトリ名
- アクセストークン

の三つだけ。

アクセストークンを作る

Githubで右上のアイコンを押して

Settings -> Developer Settings -> Personal Access Tokens -> Create New Tokens

から作成ができます。
これ一つでOrganization上のディレクトリにもアクセスできてしまうので、権限に関してはしっかり設定しましょう。

github.png

今回はこんな形で設定しています。
間違ってもdelete_repoにはチェックつけないように、、、
アクセストークンの管理は厳重に。

IssueBuilderを使ってみよう

アクセストークンができたら、準備OKです。

https://docs.google.com/spreadsheets/d/1tuS1ekAV7rR1v6s0OrFA3n3nwVwo5ciyN39bVNl5KSM/edit?usp=sharing
このリンクを開いて、左上のメニューから

ファイル -> コピーを作成

を押して自分の環境にIssueBuilderを落とします。
他のユーザーから見える状態になっていないか、必ず事前に確認をしてください。

Issue Builderを開いて、ユーザー名、リポジトリ名、アクセストークンを入力します。
*必ず自分の環境に落とし、他人のアクセスができない状態にした上で入力してください。

data.png

次に作成したいIssue名とホディを書きます。
add.png

ボディはマークダウンで書いてもちゃんと認識してくれます。

実行!

「Issueを作成」ボタンを押すとIssueが自動生成されます。

result.png

できましたー
画面遷移がない上に、アクセストークンさえ作ってしまえば、ユーザー名とリポジトリ名を入力するだけでIssueが作れちゃいます。思ってたより便利だった。笑

今後の拡張

とりあえずぱぱっと作ったのでまだタイトルとボディしか追加できません。
ラベル貼るとかはすんなりできそうですので、いつか作るかもしれません。

追記

ラベルの作成機能を追加しました。
ラベル欄にラベル名を入力すると、入力した名前のラベルを貼ります。
複数ラベルを貼りたい場合は、

「ラベル1,ラベル2,ラベル3」

といった形で区切っていただくと、三つのラベルができます。

34
17
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
34
17