使用命令在CircleCI中设置环境变量

问题描述 投票:1回答:2

我正在尝试通过将其作为命令('echo $ CIRCLE_SHA1 | cut -c -7')运行来将环境变量(SHORT_HASH)设置为更短的github哈希。

所以,我希望哈希'b1e5ef8acff51c9218ccbf7152fae1d2049d03c5'缩短为'b1e5ef8'

这是我的circle.yml的精简版

machine:
  python:
    version: 2.7.3
  services:
    - docker
  environment:
    SHORT_HASH: 'echo $CIRCLE_SHA1 | cut -c -7'
    BUILD_TAG: $CIRCLE_BUILD_NUM-$SHORT_HASH

我查看了circleci文档,但我没有找到这样的东西。 https://circleci.com/docs/environment-variables

circleci
2个回答
5
投票

代码在shell中执行,因此您需要在要评估的短语周围使用反引号或$()方法。这个:

SHORT_HASH: $(echo $CIRCLE_SHA1 | cut -c -7)

0
投票

一种方法是将导出语句附加到$BASH_ENV这是一个例子:

version: 2
jobs:
  build:
    docker:
      - image: buildpack-deps:jessie
    working_directory: ~/project
    steps:
      - checkout
      - run: |
        bar_var="foo-bar"
        echo 'export FOO_ENV_VAR="${bar_var}"' >> $BASH_ENV
      - run:
          command: |
            echo $FOO_ENV_VAR
© www.soinside.com 2019 - 2024. All rights reserved.