github - GitHub Action“set-env”导致“没有这样的文件或目录”
问题描述
尝试根据当前提交的 SHA 设置一个环境变量,该 SHA 稍后将用作文件名。我尝试了许多“set-env”变体,无论是否具有动态值,并且每次构建失败时:
Setup Additional Environment Variables0s
##[error]No such file or directory
Run echo ::set-env name=TEST_FILE::test-${GITHUB_SHA}
echo ::set-env name=TEST_FILE::test-${GITHUB_SHA}
shell: /bin/bash -e {0}
##[error]No such file or directory
steps:
- uses: actions/checkout@v2
- uses: actions/setup-node@v1
with:
node-version: ${{ matrix.node }}
- name: Setup Additional Environment Variables
run: echo ::set-env name=TEST_FILE::test-${GITHUB_SHA}
解决方案
您可以使用github
上下文来获取sha值。这是适合我的配置:
.github/workflows/test.yml
name: Test
on: push
jobs:
test:
name: Test env var
timeout-minutes: 5
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2.1.0
- name: Set env var
run: |
echo "::set-env name=TEST_FILE_NAME::test-${{ github.sha }}"
- name: Create file
run: |
mkdir temp
cd temp
touch $TEST_FILE_NAME
ls -la
结果:
推荐阅读
- javascript - 悬停后永久显示图像的颜色
- playframework - 无法创建 play_evolutions 表
- amazon-web-services - 在 AWS 上托管静态网页时,如何让我的电子邮件注册表单正常工作?
- node.js - 将脚本标记添加到 Sabre 静态站点生成器时出错
- css - 如何防止孩子继承 3d 转换 CSS3?
- flutter - 如何使颤振小部件的一部分表现得像堆栈
- android - 如果我给出像文件夹名称/图片名称这样的图像路径,它会显示在 windows 平台上,但不会在 xamarin 中的 Android 中显示
- python - 列名称为“开始”的字典列排列
- python - If/else Python 3:Else 语句不起作用
- javascript - 如何使用反应路由器将数据从页面传递到另一个页面