GithubのプロフィールページにSammaryCardを表示する
SammaryCardとは
githubでのCommit数や、Star数をグラフにしたカードです。
プロフィールページに表示することで、アクセスしたユーザーに自身の強みを伝えることができます。
今回は(github-profile-summary-cards)[https://github.com/vn7n24fzkq/github-profile-summary-cards]の使い方について解説します。
※プロフィールページに表示する前提で、リポジトリは作成済みとして解説します。
ワークフローを設定する
表示されるカードは画像ファイルになります。
アクセスのたびに更新されるわけではないため、GithubActionsを使用して定期的に画像の更新をする必要があります。
ワークフローファイルの作成
リポジトリのルートから、「.github/workflows/」配下にワークフローファイルの作成を行います。
拡張子は「yaml」、ファイル名は任意の名前で構いません。
ワークフローの設定
作成したファイルに以下のワークフローを設定します。
name: GitHub-Profile-Summary-Cards
on:
create:
push:
schedule: # 24時間に一回実行されます
- cron: "* */24 * * *" # [1]
workflow_dispatch:
jobs:
build:
runs-on: ubuntu-latest
name: generate
steps:
- uses: actions/checkout@v2
- uses: vn7n24fzkq/github-profile-summary-cards@release
env:
GITHUB_TOKEN: ${{ secrets.ACCESS_TOKEN }}
with:
USERNAME: ${{ github.repository_owner }}
更新の間隔は、[1]の個所を修正することで変更できます。(設定方法)
自動でリポジトリにコミットされるように設定する
作成したワークフローでは、自動でコミットを行うスクリプトが設定されていますが、
コミットを行うにはアクセストークンの設定が必要になります。
トークンを生成する
-
githubの右上のアイコンから「Settings」を押します。
-
左下のナビゲーションペインの下にある「Developer settings」を押します。
-
左のナビゲーションペインから「Tokens(classic)」を押し、「Generate new token」プルダウンメニューの「Generate new token (classic)」を押します。
-
新しくアクセストークンを設定します。
「Note」にはわかりやすい名前、「Expiration」には有効期限を設定します。(「No Expiration」に設定すると無期限になります。)
「select scope」は以下のように設定します。
-
生成すると、ハッシュコードが表示されますのでコピーします。
※このタイミングでコピーをできないと2度と表示されません。
-
プロフィールのリポジトリに移動し、「Setting」→「Secrets and variables」→「Actions」→「New repository secret」からアクセスキーの登録をします。
-
「Name」には「ACCESS_TOKEN」、「Secret」には先ほどコピーしたハッシュコードを貼り付けし、「Add Secret」を押します。
ワークフローのアクセス権限を変更する
デフォルトではワークフローは読み取り専用になっています。
ワークフローからファイルの書き込みができるように設定します。
リポジトリの「Settings」→「Actions」→「General」を選択します。
「Workflow Permissions」を「Read and Write Permissions」に変更します。
手動実行
以上で、定期実行がされるようになりました。
手動で実行したい場合には、リポジトリのタブメニュー「Actions」→「設定したワークフロー名(Github-Profile-Summary-Cards)」→「Run workflow」から実行できます。
プロフィールに表示する
ワークフローが実行されると、リポジトリに「profile-summary-card-output」というフォルダが作成されます。
その中のReadMe.mdにグラフが表示されています。
その中のリンクをコピーすることで使用することができます。
Discussion