Kau*_*hik 7 github github-actions
这是我的要求。我为每个环境创建了单独的 GitHub 机密。
例如在 GitHub 中的秘密:
STAGING_USERNAME -> <SOME_VALUE>
PROD_USERNAME -> <SOME_VALUE>
Run Code Online (Sandbox Code Playgroud)
我想构造一个新变量并将其设置在 GitHub env 中,如下所示
name: Build and Deploy to CAA Backend
on:
push:
branches: [ master ]
pull_request:
branches: [ master ]
workflow_dispatch:
inputs:
infraEnv:
description: 'Env (staging/prod)'
required: true
default: 'staging'
jobs:
setup-build-publish:
name: Test, Build, Deploy, Notify
runs-on: ubuntu-latest
steps:
name:
run: |
echo "USERNAME=${{secrets.${{github.event.inputs.infraEnv}}_username}}" >> $GITHUB_ENV
Run Code Online (Sandbox Code Playgroud)
但这会引发语法错误。如何解决这个问题?
mhs*_*ith 11
您可以使用以下函数执行此format
操作:
${{ secrets[format('{0}_username', github.event.inputs.infraEnv)] }}
Run Code Online (Sandbox Code Playgroud)
小智 -2
你需要写一些类似的东西
run: |
echo "USERNAME=${{secrets[github.event.inputs.infraEnv+'_username']}}" >> $GITHUB_ENV
Run Code Online (Sandbox Code Playgroud)
由于 ${{ }} 是一个评估表达式的模板函数,因此您不能嵌套它。相反,将“秘密”哈希视为哈希并构造密钥字符串以实现预期访问。
归档时间: |
|
查看次数: |
3840 次 |
最近记录: |