我确实需要它作为一个环境变量,这是专门针对复合操作的。
在复合操作中,我尝试了许多不同的设置环境变量的方法。我发现做到这一点的唯一方法是在env步骤本身内部使用:
runs:
using: "composite"
steps:
- name: "A step"
env:
BRANCH_REF: "${{ github.ref }}"
run: echo "The branch is $BRANCH_REF"
shell: bash
Run Code Online (Sandbox Code Playgroud)
不幸的是,我需要动态设置这个变量。在常规操作中,我会做类似的事情:
env:
FOO: "${{ secrets.FOO }}"
#...
- run: echo "FOO=${{ github.event.inputs.foo }}" >> $GITHUB_ENV
if: ${{ github.event.inputs.foo != '' }}
Run Code Online (Sandbox Code Playgroud)
因为我做不到,所以我尝试了很多其他方法,但都不起作用。这是我最近的尝试,但也不起作用:
- name: "A step"
run: |
if ${{ github.event.inputs.foo != '' }}
then
echo "Set from manual input: ${{ github.event.inputs.foo }}"
echo "FOO=${{ github.event.inputs.foo }}" >> $GITHUB_ENV
else
echo "Use FOO …Run Code Online (Sandbox Code Playgroud)