如何获取GitHub自托管macOS运行器的工作目录或标识?
解决GitHub Actions自托管运行器测试结果路径不确定的问题
你可以通过GitHub Actions内置的环境变量直接获取当前运行器的关键路径或标识,无需硬编码运行器名称,以下是具体方案:
1. 使用RUNNER_WORKSPACE直接定位工作目录
这个环境变量会自动指向当前运行器执行任务的_work文件夹路径,是最可靠的方式。修改你的上传步骤如下:
- name: Upload res uses: actions/upload-artifact@v3 with: name: Results path: ${{ runner.workspace }}/android/.../outputs/android-testResults/connected/*.xml
注意:将路径中的
android/...替换为你的项目实际目录结构,runner.workspace已经包含了运行器的_work路径,无需额外拼接运行器名称。
2. 获取当前运行器名称(可选)
如果确实需要用到运行器名称(比如runner_1),可以使用RUNNER_NAME环境变量,示例:
- name: Upload res uses: actions/upload-artifact@v3 with: name: Results path: /Users/User1/github-runners/${{ runner.name }}/_work/android/.../outputs/android-testResults/connected/*.xml
3. 验证环境变量(调试用)
如果想确认变量的实际值,可以在工作流中添加一个步骤输出信息:
- name: Print runner details run: | echo "当前运行器工作目录: $RUNNER_WORKSPACE" echo "当前运行器名称: $RUNNER_NAME"
执行后可以在GitHub Actions日志中看到具体的路径和运行器名称,方便调试路径问题。
内容的提问来源于stack exchange,提问作者AShX
相关产品推荐
相关产品推荐

