Paramaterize Linked Service per Branch

Copper Contributor

Trying to design our workflow for developing changes to our Data Warehouse in Synapse and want to understand if this approach is possible. 


Say we want to have our Synapse-Live be our current production pipelines, they point at the database 'Prod DWH' in a Dedicated SQL Pool. 


Then, we have a branch for development, that might be modifying the jobs that create tables in the 'Prod DWH'. So, we want to be able to edit the existing pipelines, but have that branch point at the same Dedicated SQL Pool, but the 'Dev DWH' database within. Ideally, I would like the linked service to the Pool be parameterized with the right DB per 'environment', but I'm not seeing a way to do that with the branches. 


Is this possible or would I need to have 2 synapse instances for Dev and Prod, and use some other mechanism?

1 Reply



Don't now if you already find a correct solution. But ideal you need to have 2 Synapse Workspace and within the release (Azure Dev Ops) you can change the db_name. 

You just have to make sure that you parameterize the database name. An even better way is to store the connection string to your SQL Pool in a Keyvault secret and then create a Keyvault per environment and store the database including connection string in it