GitHub 自托管的操作 Windows-Runner "File not found: 'bash'"

GitHub Actions with a Self Hosted Windows-Runner "File not found: 'bash'"

我正在尝试编写一个在所有平台上 运行 的复合 运行 步骤操作,包括 Windows。

runs:
  using: "composite"
  steps:
    - run: flutter pub get
      working-directory: ${{ inputs.working-dir }}

当我省略 shell 时,出现错误“缺少必需参数 shell”。这很奇怪,因为我只想使用 OS.

的默认值

当我指定 'bash' 时,我的 Windows 运行 用户收到错误 file not found 'bash',尽管根据文档“指定bash shell on Windows,使用 Git 中包含的 bash shell for Windows。" https://docs.github.com/en/actions/reference/workflow-syntax-for-github-actions#using-a-specific-shell

我只想在所有平台上 运行 flutter pub get 从一个动作,使用默认值 shell。有什么简单的方法可以做到这一点吗?

确保包含 bash 可执行文件的文件夹位于 Windows 用户的 PATH 环境变量中,该用户 运行 正在 GitHub行动 运行 纳尔。您引用的文档是关于 运行 由 GitHub.

托管的用户

您收到错误消息,因为复合 运行 操作需要 shell。原因是,除了非常简单的脚本之外,您将无法 运行 不同 shell 中的脚本,因为它们存在很大差异。

另见 the docs