todoやらtimesやらをプライベートリポジトリのissueで管理するようになって、そうなると毎日使うissueは自動で作成するようにしたくなった
調べてみたらワークフローが公開されていたので、ちょっと工夫しながら使ってみた
Actionsの登録
create-an-issue
というワークフローを使い、日時でissueを登録するようにした
以下のようなテイストのファイルをcommitする
name: Create a routine issue on every day on: schedule: - cron: '0 21 * * *' #JSTで6時に実行 jobs: build: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 # テンプレートを使用する場合は、リポジトリをチェックアウトする - uses: JasonEtco/create-an-issue@v2 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # このsecretsはデフォルトのもの with: filename: .github/ISSUE_TEMPLATE/templete.md # 自身のテンプレートファイル
ちなみに先にテンプレートファイルを登録しておいたほうが手順的には正しいが、のちの説明の都合上こちらを先に説明した。
テンプレートの登録
基本的には通常のテンプレートと同じフォーマット
--- name: templete name about: for times title: "[times] {{ date | date('add', 1, 'days') | date('YYYY/MM/DD') }}" labels: "times" assignees: assignees name ---
一つ注意点があって、このワークフローではテンプレート内でdate変数を利用できるが、それがUCTのtimezoneなので日本で使おうとするとずれてしまう。
僕の場合、朝の6時に実行したかったのでそうすると現地時間では日付が1日前になる。
それを回避するためにプレースホルダ内で値を書き換えて利用している
上の設定をすれば、毎日指定の時間に指定のフォーマットでissueを登録されるので、あとは適宜編集して活用する。タスク自体軽いので、コレ単体では無料ユーザでも問題ないはず
今のところは順調に稼働してる。