首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将Docker GitHub操作中的二进制文件添加到路径中,以供后续工作流步骤使用

将Docker GitHub操作中的二进制文件添加到路径中,以供后续工作流步骤使用
EN

Stack Overflow用户
提问于 2019-11-16 04:41:40
回答 1查看 695关注 0票数 4

我正在尝试创建一个基于Dockerfile的操作,它将一个程序添加到$PATH中,以便以后的操作可以使用它。我的操作运行的代码如下:

代码语言:javascript
复制
mkdir -p $GITHUB_WORKSPACE/bin
echo "echo Hello, world!" > $GITHUB_WORKSPACE/bin/hello-world
echo "::add-path::$GITHUB_WORKSPACE/bin"

我的测试工作流程是这样使用的:

代码语言:javascript
复制
jobs:
  test:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v1.0.0
      - name: Add program to path
        uses: ./
      - name: Use program
        run: hello-world

这会失败,因为虽然程序已经被添加到$GITHUB_WORKSPACE/bin/hello-world,但在操作和工作空间步骤中,$GITHUB_WORKSPACE的值是不同的。

在操作中是/github/workspace/,而在工作流中是/home/runner/work/setup-gleam/setup-gleam/,因此操作设置的$PATH添加是不正确的。

如何通过基于dockerfile文件的GitHub操作将文件添加到目录中,以使其位于工作流其余部分的路径上?似乎在dockerfile操作和非dockerfile操作之间没有共享可写的$PATH目录。

EN

回答 1

Stack Overflow用户

发布于 2019-12-28 00:42:09

Runner路径存储在$RUNNER_WORKSPACE环境变量中,可用于获取正确的路径。

代码语言:javascript
复制
echo "::add-path::$GITHUB_WORKSPACE/bin" # Make it accessible from docker containers
echo "::add-path::$RUNNER_WORKSPACE/$(basename $GITHUB_REPOSITORY)/bin" # Make it accessible from runner

但它看起来更像是一种变通而不是解决方案。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58884408

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档