![](/img/trans.png)
[英]Permission denied: Shared volume write and Read failing on Github Actions
[英]GitHub Actions workflow error: Permission denied
我正在運行 GitHub 操作工作流,但由於以下錯誤而失敗。
Unhandled exception:
FileSystemException: Cannot create file, path = '/github/home/.flutter' (OS Error: Permission denied, errno = 13)
我查看了 GitHub Actions 的工作流語法,但找不到任何說明來解決這個問題。
我的構建文件如下所示:
name: Flutter CI
on: [push]
jobs:
build:
runs-on: ubuntu-latest
container:
image: cirrusci/flutter:v1.7.8-hotfix.4
steps:
- uses: actions/checkout@v1
- name: Install dependencies
run: flutter pub get
working-directory: my_app
- name: Run tests
run: flutter test
終於有時間查看它並添加sudo
解決了它。
該圖像與用戶cirrus
一起運行。 還需要提供完整路徑:
sudo /home/cirrus/sdks/flutter/bin/flutter pub get
來自GitHub docs :
Linux和macOS虛擬機均使用無密碼sudo運行。 當您需要執行命令或安裝需要比當前用戶更多特權的工具時,可以使用sudo而不需要提供密碼。
除了將 sudo 添加到所有失敗的步驟之外,您還可以只修改容器配置:
container:
image: cirrusci/flutter:v1.7.8-hotfix.4
options: --user root
說明:該問題是由於 cirrusci/flutter:v1.7.8-hotfix.4 映像上的默認用戶無權訪問由 github 掛載到此 docker 映像中的某些目錄而引起的。 包括給您帶來麻煩的/github
目錄。 添加options: --user root
user options: --user root
到容器配置可確保默認用戶成為 root,這樣您就無需在每一步都執行 sudo。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.