GitHub Actions を使ってissueをつくる
概要
- GitHub Actionsを使って日誌をつける。
- 日誌は templateを使う
- issue作成は JasonEtco/create-an-issueを使ったworkflowで行いました
- 日誌作成は2種類
- 手動でworkflowを実行する
- shcheduleを使って毎日時にworkflowを実行する
リポジトリ
手順
workflowを追加
.github/workflows/create_daily_issue.yaml を追加する。
name: Create daily work issue
on:
# schedule:
# - cron: '0 0 * * MON-FRI' # 毎日動かしたい場合は、3行目、4行目のコメントアウトを外す
workflow_dispatch:
jobs:
create_hoge_issue:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: create issue by template
uses: JasonEtco/create-an-issue@5d9504915f79f9cc6d791934b8ef34f2353dd74d
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
filename: .github/fuga-template.md
説明
下記の箇所のコメントアウトを外すと毎日平日の9時にこのワークフローが自動実行されます。
時間の指定の仕方など使い方は、ドキュメントスケジュールしたイベントを参照ください。
# schedule:
# - cron: '0 0 * * MON-FRI' # 毎日動かしたい場合は、3行目、4行目のコメントアウトを外す
手動でワークフローを動かしたい場合は on:
に workflow_dispatch
を追加します。
詳細は手動イベントを参照ください。
workflow_dispatch:
外部のGitHub Actionsをうごかします。ここで着目して欲しいのは SHAをつかっていることです。これは、下記の アクションを完全なコミット SHA にピン止めする
のためです。
特定の SHA にピン止めすると、有効な Git オブジェクトペイロードに対して SHA-1 衝突を生成する必要があるため、悪意のある人がアクションのリポジトリにバックドアを追加するリスクを軽減できます
参考までに、下記のcommitを参照しています。
5d9504915f79f9cc6d791934b8ef34f2353dd74dです。
uses: JasonEtco/create-an-issue@5d9504915f79f9cc6d791934b8ef34f2353dd74d
issueを作る際に使うtemplateファイル名をwithで追加します。
with:
filename: .github/fuga-template.md
issue templateを追加
issueを作る時のtemplateを追加します。
ファイル名は前記で指定した fuga-template.md
です。もちろんこのファイル名は任意に変更出来ます。
.github/fuga-template.md
---
title: 日誌{{ date | date('YYYY') }}年{{ date | date('MM') }}月{{ date | date('DD') }}日
assignees:
labels:
---
### 今日予定していること
#### プロジェクト
* 予定とゴールを書く
### お昼までやったこと
* いまのところやったこと
### 今日やったこと
* ゴールを書く
issueのtitle, assigness, labelsは下記のUsageを参照ください。
JasonEtco/create-an-issue Readme Usage
日付の参照は JasonEtco/create-an-issue Readme dates を参照ください。
参考
手動でGitHub Actions workflowを動かす
Actionsタブの Run workflowからRun workflow(緑色のボタン)を押すと手動で実行できます。
Discussion