2023-04-30 GitHub Actions パーミッションエラーの解決方法 / GitHub Actions permissions の種類
jekyllでビルドしたページをデプロイする下記のようなGitHub Action workflowを作っていた。
jobs:
gh-pages-deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: 3.1
bundler-cache: true
- name: Jekyll Build
run: bundle exec jekyll build
- name: Deploy
uses: peaceiris/actions-gh-pages@v3
with:
personal_token: $
publish_dir: ./_site
これをそのまま走らせると下記のエラーで止まる。
remote: Write access to repository not granted.
fatal: unable to access 'https://github.com/your/repo/': The requested URL returned error: 403
Writeアクセスがないぞ、というエラー。
この場合、 permissions
でwriteの権限を付与してやるでOK.
permissions:
contents: write
jobs:
gh-pages-deploy:
...
これでbuild成功!!
GitHub Actions permissions の種類
下記のようなpermissionsの種類と設定がある。
permissions:
actions: read|write|none
attestations: read|write|none
checks: read|write|none
contents: read|write|none
deployments: read|write|none
id-token: write|none
issues: read|write|none
discussions: read|write|none
packages: read|write|none
pages: read|write|none
pull-requests: read|write|none
repository-projects: read|write|none
security-events: read|write|none
statuses: read|write|none
権限タイプは下記3つ。
read
: 読み取り権限write
: 書き込み権限none
: 権限なし