如何在 Circleci config.yml 的作业中生成带有环境变量的文件

How to generate a file with env vars in a job in Circleci config.yml

我正在尝试使用我的 circleci 环境变量在我的 Circleci 配置文件中生成一个 env.ts 文件。我试过下面的代码:

steps:
  - run:
          name: Setup Environment Variables
          command: 
            echo "export const env = { 
              jwtSecret: ${jwtSecret},
              gqlUrl:  ${gqlUrl}, 
              engineAPIToken:  ${engineAPIToken},
              mongodb:  ${mongodb},
              mandrill:  ${mandrill},
              gcpKeyFilename:  ${gcpKeyFilename},
              demo: ${demo}, 
              nats: ${NATS}, 
              usernats:  ${usernats}, 
              passnats:  ${passnats} };" | base64 --wrap=0 > dist/env.ts

但它输出这个:

#!/bin/sh -eo pipefail
# Unable to parse YAML
# mapping values are not allowed here
#  in 'string', line 34, column 24:
#                   jwtSecret: ${jwtSecret},
#                            ^
# 
# -------
# Warning: This configuration was auto-generated to show you the message above.
# Don't rerun this job. Rerunning will have no effect.
false
Exited with code 1

command: |

后忘记写管道了
steps:
  - run:
          name: Setup Environment Variables
          command: |
            echo "export const env = { 
              jwtSecret: '${jwtSecret}',
              gqlUrl:  '${gqlUrl}', 
              engineAPIToken:  '${engineAPIToken}',
              mongodb:  '${mongodb}',
              mandrill:  '${mandrill}',
              gcpKeyFilename:  '${gcpKeyFilename}',
              demo: ${demo}, // it's a boolean
              nats: '${NATS}', 
              usernats:  '${usernats}', 
              passnats:  '${passnats}'
            };" > dist/env.ts

注意:另外我忘记在我的变量周围添加''。