宣伝
GithubのIssue, Pull Requestには連番で番号が振られています。
この番号においてキリ番(キリの良い番号の略)を踏んだときに、誰も祝ってくれないのは寂しくないですか?
kumackey/kiribanを使えば、キリ番を踏んだときにコメントで祝ってくれます!🎉
今までキリ番を踏んだ人のリストや、次のキリ番も予告してくれます。
使い方
READMEに書いてある通りではありますが、このアクションが動作して欲しいリポジトリの.github/workflows
に、以下のようなymlファイルを追加するだけです!
# .github/workflows/kiriban.yml
name: kiriban
on:
issues:
types: [ opened ]
pull_request:
types: [ opened ]
jobs:
kiriban:
runs-on: ubuntu-latest
steps:
- uses: kumackey/kiriban@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
GITHUB_TOKEN
はメッセージをコメントをするために使っています。
開発
キリ番判定
これが本リポジトリのコアロジックです。
キリ番ライブラリとして汎用的に使えるよう、kiribanパッケージとして切り分けてます。
キリ番には大きく分けて3つ存在していると分析し、実装しました。
- 丸まった数字: 10, 200, 3400
- 繰り返される数字: 11, 222, 3333
- 連続する数字: 123, 4567, 98765
他は1221みたいなミラ番をキリ番とするとか、結構キリ番にも宗派があると思います。
pull requestを歓迎しております。
言語
Goを選択してます。
選択してますというか、まともに書ける言語がGoしかない
キリ番には宗派があり、色んな要望に対応できるよう、functional options patternを用いて、オプションで判定方法を変えられるようにしました。
https://github.com/kumackey/kiriban/blob/main/kiriban/options.go
カスタムアクション
リポジトリのrootにaction.yml
を置くことによって、カスタムアクションを作成することができます。
About custom actions - GitHub Docs
Types of actionsはcomposite
で作りました。
javascript
でなければdocker
かcomposite
しかなく、起動時間を気にしてdocker
でなくcomposite
にしました。
Githubのissueのデータ取得やコメント
以下のライブラリを使いました。
google/go-github
その他
番号10から祝ってくれます。
みんな使ってみてね!
あと、issueやpull request、大歓迎です!