🔄
GitHub Actionsでsecret変数を使ってAPIからデータを取得する
やりたいこと
GitHub pages用にnpm run build
する前にAPIから情報を取得して静的コンテンツとして使うために実装しました.gitのrepositoryに画像などのコンテンツを履歴としてmain branchに残したくないので,このアプローチを取りました.workflowはこんな感じです.
変数の設定方法
GitHubのレポジトリのWebページからSettings->Security->Secret and variables->Actionsを開きます.
New repository secretをクリックして,変数名と値を入力します.また,usenameの用にsecretにする必要がない変数はaction variablesとして設定できます.
今回は次のように設定しました
- secret:
- PROTOPEDIA_API_KEY: ***
- variables:
- PROTOPEDIA_USERNAME: botamochi6277
変数の呼び出し方
次のような形で変数を呼び出すことができます.
- name: fetch prototypes
run: |
node scripts/fetch_prototype.js ${{vars.PROTOPEDIA_USERNAME}} ${{secrets.PROTOPEDIA_API_KEY}}
Actionのlogを確認すると,secretの方が"***"で隠されているのがわかります.
まとめ
secretを用いてActionを動かすことができました.AWSへのアクセスなどにも応用できそうです.
今回,実際にActionを実行しているレポジトリはこちらです.
Discussion