yoshikenがプログラミングや日記、ポエムを書いていくページです


GitHub Actions で GitHub Container Registry にpushしたときに403 Forbiddenが出た時の対処法

GitHub Actions と GitHub Container Registry の組み合わせってあんまり美味しくないかもって思ってきた。

このcommit

add ghcr lastest · yoshiken/yoshiken.dev.python@cd50ff6

公式通りに実装したんだけど、 Error: buildx failed with: error: failed to solve: unexpected status: 403 Forbidden って認証が通らなかった。

add ghcr lastest · yoshiken/yoshiken.dev.python@cd50ff6

解決策

403 error on container registry push from GitHub Action - Code to Cloud / GitHub Packages - GitHub Community

I recently started to get this error too, but I found how to solve this.

Basically, seems that GitHub sneakily removed write_packages from GITHUB_TOKEN, but you can add it again by going to your package page, then in “Package settings” (the one in sidebar, not in the tab bar, as the later will redirect you to repository settings) and finally update the section named “Manage Actions access” to add your repository with write access again:

意訳: 最近になって再現しました。

GithubがサイレントにGITHUB_TOKENからwrite_packagesの権限削除したようです。(以下👇の手順の説明

とのこと。ドキュメントを確認しに行くと Maximum access by forked repos がreadになっている。パッケージ側から許可しないとだめっぽい。

Automatic token authentication - GitHub Docs

(日本語だとテーブル崩れてるけど公式だと翻訳のContributing受け付けてないっぽいっぽいんだよねー)

ということで先程の手順を説明

packegeページからpackege setting

Manage Actions access から Add Repository

GitHub Actionsを回しているリポジトリを追加してwriteを選択。(defaultはreadになっているので注意

これでGithub上でrerunするなりempty commitするなりでGG

GitHub Actions rerun · yoshiken/yoshiken.dev.python@55b7f16