【问题标题】:Github actions echo command not creating fileGithub 操作回显命令未创建文件
【发布时间】:2021-09-01 20:59:59
【问题描述】:

我正在将有效的 CircleCI 工作流程转移到 Github Actions。

我在跑步:

runs-on: ubuntu-latest

container: 
  image: google/cloud-sdk:latest

我运行以下命令:

echo ${{ secrets.GCLOUD_API_KEYFILE }} > ./gcloud-api-key.json

在运行此命令之前,gcloud-api-key.json 尚未创建。此命令在 CircleCI 中有效,但在 Github Actions 中出现错误:

/__w/_temp/asd987as89d7cf.sh: 2: /__w/_temp/asd987as89d7cf.sh: type:: not found

有人知道这个错误是什么意思吗?

【问题讨论】:

    标签: github-actions


    【解决方案1】:

    原因是因为我的密钥超过 1 行。一旦我做了一行,它就起作用了。

    【讨论】:

    • 你如何回应超过 1 行的内容?
    【解决方案2】:

    为了使用多于一行的秘密(如秘密 jsons),必须将 base64 编码的秘密保存在 Github 中,使其成为一行。 在 linux 上,编码是通过以下方式完成的:

    cat mysecret.json | base64
    

    然后在动作中你需要使用解码它

    echo ${{ secrets.YOUR_SECRET }} | base64 -d > secret.json
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-01-09
      • 2022-06-14
      • 2021-06-08
      • 2023-02-25
      • 2022-11-11
      • 2020-11-20
      • 2022-12-29
      • 2020-10-07
      相关资源
      最近更新 更多