1
votes

We have Azure DevOps Server 2019 on-prem. That means no unified pipelines, no YAML for release pipeline.

The scenario is this: A stage runs terraform code to provision some resources in Azure. It is necessary to insert manual approval between terraform plan and terraform apply, however, the plan file produced by terraform plan stage must be shared with the terraform apply stage.

I can see these options:

  1. Save the plan file on a shared file system
  2. Save the plan file in a dedicated storage on Azure
  3. Save the plan file somewhere within the Azure DevOps so that stages can access it without defining a dedicated file share or Azure storage
  4. Pass the contents of the plan file as an output variable

I, personally, like the most the last option, but I wonder what are the limitations on the output variable value length? What is the maximum length of a variable in Azure Pipelines? suggests it is around 32KB, which may not be good enough. Given that, is there an option to pass files between stages?

1

1 Answers

0
votes

There is no default task you can use in classic release pipeline. Due to the limitation of a variable, you would need to publish the file to dedicated file share or Azure storage.