首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何为github操作设置环境变量?

如何为github操作设置环境变量?
EN

Stack Overflow用户
提问于 2021-02-04 20:34:33
回答 1查看 192关注 0票数 0

我尝试了一堆不同的版本,但从未设置过环境变量。

这些都不起作用。在所有情况下,变量IMAGE都不存在。

代码语言:javascript
复制
echo "IMAGE=ghcr.io/${GITHUB_REPOSITORY}:${GITHUB_SHA}" >> $GITHUB_ENV
echo ${IMAGE}

env:
    DEPLOYMENT_NAME: my-deployment
代码语言:javascript
复制
echo "IMAGE=ghcr.io/${GITHUB_REPOSITORY}:${GITHUB_SHA}" >> $GITHUB_ENV
echo $IMAGE 

env:
    DEPLOYMENT_NAME: my-deployment
代码语言:javascript
复制
echo "IMAGE=ghcr.io/${GITHUB_REPOSITORY}:${GITHUB_SHA}" >> $GITHUB_ENV
echo ${{ env.IMAGE }}

env:
    DEPLOYMENT_NAME: my-deployment

编辑

更多的实验。我尝试这样设置环境变量。

代码语言:javascript
复制
env:
  IMAGE1: ghcr.io/${GITHUB_REPOSITORY}:${GITHUB_SHA}
  IMAGE2: "ghcr.io/${GITHUB_REPOSITORY}:${GITHUB_SHA}"

这将设置变量-尽管我也希望能够在如上所述的作业中设置它们。但是,以不同的方式打印它们总是导致打印变量名${GITHUB_REPOSITORY}${GITHUB_SHA},而不是它们的内容。

代码语言:javascript
复制
env:
  DEPLOYMENT_NAME: my-deployment
  IMAGE1: ghcr.io/${GITHUB_REPOSITORY}:${GITHUB_SHA}
  IMAGE2: ghcr.io/${GITHUB_REPOSITORY}:${GITHUB_SHA}
...
echo $IMAGE1
echo $IMAGE2
echo ${IMAGE1}
echo ${IMAGE2}
echo "$IMAGE1"
echo "$IMAGE2"
echo "${IMAGE1}"
echo "${IMAGE2}"

ghcr.io/${GITHUB_REPOSITORY}:${GITHUB_SHA}
ghcr.io/${GITHUB_REPOSITORY}:${GITHUB_SHA}
ghcr.io/${GITHUB_REPOSITORY}:${GITHUB_SHA}
ghcr.io/${GITHUB_REPOSITORY}:${GITHUB_SHA}
ghcr.io/${GITHUB_REPOSITORY}:${GITHUB_SHA}
ghcr.io/${GITHUB_REPOSITORY}:${GITHUB_SHA}
ghcr.io/${GITHUB_REPOSITORY}:${GITHUB_SHA}
ghcr.io/${GITHUB_REPOSITORY}:${GITHUB_SHA}

因此,尽管这是一些进展,我仍然想知道变量是如何在job/run中设置的,以及如何打印变量的内容而不是它们的名称。

EN

回答 1

Stack Overflow用户

发布于 2021-02-05 03:28:27

通过job.<job_id>.envjob.<job_id>.steps[*].env设置环境变量的语法与Bash环境变量语法略有不同。不过,您应该能够访问env:声明中的context对象。将所有这些放在一起,为整个作业设置环境变量:

代码语言:javascript
复制
jobs:
  job1: # or whatever you want to name your job
    env:
      DEPLOYMENT_NAME: my-deployment
      IMAGE1: ghcr.io/${{ github.repository }}:${{ github.sha }}
      IMAGE2: ghcr.io/${{ github.repository }}:${{ github.sha }}

另请参见https://docs.github.com/en/actions/reference/workflow-syntax-for-github-actions#jobsjob_idenv

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

https://stackoverflow.com/questions/66045731

复制
相关文章

相似问题

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