WayneBartkowski-4236 avatar image
0 Votes"
WayneBartkowski-4236 asked WayneBartkowski-4236 answered

changes to adf database linked service not changing via devops to prod

I have my ADF V2 Development environment connected to devops and am successfully creating a branch, making a change, making a pull request, publishing and releasing into production - also using the MS developed PS script to stop and start triggers and delete deleted pipelines.
Following this normal CI/CD process I recently made a change to the DB Connection linked service - standard Azure SQL database connection.
Previously I was using the manually entered fully qualified domain name like with the database name, sql authentication of user id with password.
The change I made to the DB linked service was to create a parameter for the server name and use this in the domain name so it is now @{linkedService().Server}, I also got the password into a Key Vault and successfully connected this all up in my feature branch. Merged into my master branch and published. It is working fine in the Development environment.
But when I do the release into Production these changes are not being made to the database connection linked service. I can't see where these values are captured in any of the Template files - are changes to existing linked services able to be migrated via devops?


· 2
5 |1600 characters needed characters left characters exceeded

Up to 10 attachments (including images) can be used with a maximum of 3.0 MiB each and 30.0 MiB total.

Hello anonymous user and welcome to Microsoft Q&A.

So if I understand correctly, your previously working solution required you do enter the FQDN of your linked service. The new version parameterized it , but doesn't ask you to change the value. Are you specifying the value as the default value in the linked service parameter, or is it pointing to something else?
I guess a better question is, "Is the change from manual to being parameterized being made in prod?" This helps me understand whether the issue is updating a value, or something else.

By default, the linked service parameter values are not parameterized in the ARM template. I think we can adjust the ARM parameter configuration to make it so these do get overwritten during deployment. However, this will probably affect all linked services, at least of that type.

My apologies, I am thinking in circles and contradicting myself.

0 Votes 0 ·

Hi Martin, Some screenshots may make more sense. When I orginally created the ADF the dev db connxtion was manual like this screenshot of what prod was looking like when they were both in sync. ![201283-prd-db-cnx-was.png][1] Then I made this change to dev and expected this would migrate to prod via devops ![201240-dev-db-connx.png][2] But instead the prod ADF db connxion does not seem to be getting updated during the release process. ![201239-prd-db-cnx-now.png][3] [1]: /answers/storage/attachments/201283-prd-db-cnx-was.png [2]: /answers/storage/attachments/201240-dev-db-connx.png [3]: /answers/storage/attachments/201239-prd-db-cnx-now.png

0 Votes 0 ·

1 Answer

WayneBartkowski-4236 avatar image
1 Vote"
WayneBartkowski-4236 answered

It would seem to me that making a change to the DB Linked service and then following the DevOps process of merge, publish then deploy to prod may not be the best way. To resolve this I created a new branch, deleted this db connxion then created a new connxion, assigned the new connection to the datasets ( which wasn't many) then saved, created a pull request and merge back into the master branch. Then published to adf_publish and did a release. Had to edit the release and go into the global parameters and delete the old dbconnxion line, the newly named dbconnixons was present. Released and it worked fine in Prod.
Probably lesson learned is to have your Linked Services correctly set before initially going to prod otherwise it will be a pain to fix if you have a lot of datasets to edit.

5 |1600 characters needed characters left characters exceeded

Up to 10 attachments (including images) can be used with a maximum of 3.0 MiB each and 30.0 MiB total.