Сделать переменную видимой по шагам в конвейерах Bitbucket? - PullRequest
0 голосов
/ 24 сентября 2018

Я хотел бы разделить переменную за два шага.

Я определяю ее следующим образом:

- export MY_VAR="FOO-$BITBUCKET_BUILD_NUMBER"

, но потом, когда я пытаюсь распечатать ее на другом шаге:

- echo $MY_VAR

пусто.

Как мне поделиться такой переменной?

Ответы [ 2 ]

0 голосов
/ 26 марта 2019

Вы можете скопировать все переменные среды в файл, а затем прочитать их обратно в:

- step1:
  # Export some variables
  - export MY_VAR1="FOO1-$BITBUCKET_BUILD_NUMBER"
  - export MY_VAR2="FOO2-$BITBUCKET_BUILD_NUMBER"
  - echo $MY_VAR1
  - echo $MY_VAR2

  # Copy all the environment variables to a file, as KEY=VALUE, to share to other steps
  - printenv > ENVIRONMENT_VARIABLES.txt

- step2:
  # Read all the previous environment variables from the file, and export them again
  - export $(cat ENVIRONMENT_VARIABLES.txt | xargs)
  - echo $MY_VAR1
  - echo $MY_VAR2

Примечание. Старайтесь избегать использования строк, в которых есть пробелы или символы новой строки (для переменной средыценности).Если вы не избежите их, команда export не сможет прочитать ее.

Дополнительная информация:

0 голосов
/ 05 ноября 2018

Боюсь, но, кажется, невозможно совместно использовать переменную среды от одного шага к другому, НО вы можете определить глобальные переменные среды для всех шагов в настройках проекта в категории pipelines.

Settings -> Pipelines -> Repository Variables
...