I'm using DevOps to deploy Azure Data Factory ARM template
I'm using a deployment pipeline to take artifacts from a prior build pipeline and deploy to various environments (TEST, PROD)
I've created two variable groups: TEST
and PROD
. I've created two deployment "stages" TEST
and PROD
Within the TEST
variable group I've created a bunch of variables reflecting the TEST
specific configuration.
As far as I understand, I now have to manually recreate all of these identically named variables in my PROD
variable group.
Not only that I have to make a copy of my TEST stage
So I basically have two duplicate configs and two duplicate stages
It would make more sense if I had a single stage definition that could be run against different variable groups rather than repeating code and variable group definitions.
It seems strange and redundant to have to do this. I also find it strange that the concept of environments is not specifically called out in doco anywhere
So the specific question is: Is it the correct approach to define a variable group per environment then manually create identical variables in both variable groups?
and a more general question: am I missing something fundamental here or is the product not mature enough yet.
I have not used any other deployment tool in any detail before this and I'm not using YAML (just the UI) so maybe that's the piece I'm missing.
Some moreAnother "What Am I missing" thingsthing:
I've just found that the ARM deployment task does not accept..... a resource group name parameter! It's got to be hard coded!!
In the Resource Group deployment task in the override template parameters field I used the UI to assign variables to parameter values. I had to type the variables in and had to make sure I got the magic notation right.
$(myVariable)
Then I read another stack overflow that indicated if your variable value has a space in it you need to surround it by quotes. This is the second "you need quotes for spaces" issue I have found.
In the Resource Group deployment task in the override template parameters field I used the UI to assign variables to parameter values. I had to type the variables in and had to make sure I got the magic notation right. $(myVariable)
Then I read another stack overflow that indicated if your variable value has a space in it you need to surround it by quotes. This is the second "you need quotes for spaces" issue I have found.