我有一个工作流程,它创建一个新分支,其名称保存为环境变量。原因是我需要工作流程在新的干净分支上运行。
1 工作之后我想去看看分行。问题是我似乎无法在“ref”上使用环境变量来检查它。
有没有办法做到这一点 ?或者 github 还不支持这个吗?
示例代码:
- name: Checkout to branch
uses: actions/checkout@v2
with:
repository: org/repo
token: ${{secrets.GIT_TOKEN}}
ref: $NEW_BRANCH_NAME
Run Code Online (Sandbox Code Playgroud)
[编辑] 答案:
对于遇到同样问题的任何人,这就是我最终的做法:首先我创建了一个仅创建并推送一个新分支的作业:
Create-new-Branch:
runs-on: [ self-hosted ]
outputs:
branch_name: ${{ steps.create-branch.outputs.BRANCH_NAME}}
steps:
- name: Checkout master
uses: actions/checkout@v2
with:
repository: org/repo
token: ${{secrets.GIT_TOKEN}}
ref: master
- name: create and push branch
id: create-branch
run: |
export TEST="new-branch-name-`date '+%F'`"
git checkout -b $TEST origin/master
git push -u origin $TEST
echo "::set-output name=BRANCH_NAME::$TEST"
Run Code Online (Sandbox Code Playgroud)
然后在下一个作业中,当我想使用它时,我使用上面作业的作业输出作为存储库名称
Job-Name:
needs: Create-new-Branch
runs-on: [self-hosted] …Run Code Online (Sandbox Code Playgroud)