Есть ли способ извлечь вывод сценария bash в Azure Pipeline? - PullRequest
0 голосов
/ 19 февраля 2020

У меня есть множество bash сценариев с различными переменными, которые передаются в различные сценарии.

Мне было интересно, смогу ли я извлечь вывод сценария bash, который активируется Azure Конвейер будет переменной конвейера для остальной части времени выполнения конвейера?

Пример: foo=$(date + %Y%m%d_%H%M%S) output: 20200219_143400, я хотел бы получить выходные данные для последующего использования в конвейере.

1 Ответ

1 голос
/ 19 февраля 2020

Зависит от того, как вы проектируете свой конвейер, вы можете использовать Azure Переменные конвейера :

  1. Внутри той же работы:
- job: Job1
  steps:
  - bash: |
      $WORKDIR/foo.sh
      echo "##vso[task.setvariable variable=foo]$foo"
    name: FooStep
  - bash: |
      $WORKDIR/nextscript.sh $(FooStep.foo)
    name: NextScript

# ...
Различные задания:
- job: Job1
  steps:
  - bash: |
      $WORKDIR/foo.sh
      echo "##vso[task.setvariable variable=foo;isOutput=true]$foo"
    name: FooStep
- job: Job2
  dependsOn: Job1
  steps:
  - bash: |
      $WORKDIR/job2script.sh $[ dependencies.Job1.outputs['FooStep.foo'] ]
    name: Job2ScriptStep

# ...

Итак, вам нужно «распечатать на конвейерную консоль», указав ##vso[task.setvariable] все переменные, которые нужно сохранить для вывода, а затем передать их в качестве аргументов сценариев значения.

...