What is the best practice for updating an already existing web app deployment using ARM

0 votes
I am now studying the best way to perform updates, and one of the hypotheses we are considering is having a specific template that updates the binaries of this application.

The idea is to have a separate template, that only has the web app, an app host and a MSDeploy resource that gets the latest version of the package and reuploads it to that web app.

The only problem I'm seeing with this solution is the ability to handle any changes in configuration that are necessary with newer version of the binaries - we do not want users to have to re-input any parameters they placed for the original deploy (done via a Deploy To Azure button), so, any configurations will have to be performed within the application - the plan is for it to use the Microsoft.WindowsAzure.Management.WebSites library.

The major limitation with using Microsoft.WindowsAzure.Management.WebSites is that you are restricted to authenticating with either a certificate or a service principal. Ideally we would like to find a way for the updates to not need any authentication other than the one you provide when you are deploying the update.

Can anyone help me with this?
Jul 9, 2018 in Other DevOps Questions by shubham
• 7,340 points

1 answer to this question.

0 votes

The Service Principal solution, through the SDK, would allow us to use a Web Job or a Site Extension to perform (automatic or prompted) updates that included configuration changes. However, it would require "too many" privileges - why would a customer trust an application that can, at will, create new resources or update existing ones to increase his Azure bill?

The decision was made to utilize Powershell only for updates - if the customer can see the scripts and authenticate himself, this is not a concern. Sadly, this increases update complexity, but we found it to be a necessary evil.

I hope the above information will be useful for you.

answered Jul 9, 2018 by Atul
• 10,240 points

Related Questions In Other DevOps Questions

0 votes
1 answer

Best practice for successful app deployment

I'd suggest you to write a deployment ...READ MORE

answered Jul 10, 2018 in Other DevOps Questions by DareDev
• 6,890 points
0 votes
1 answer

What is mean by hosting an application and deployment?

Hello, Hosting an application:  Web hosting is a ...READ MORE

answered Feb 24, 2020 in Other DevOps Questions by Niroj
• 82,880 points
0 votes
0 answers
+1 vote
1 answer
+15 votes
2 answers

Git management technique when there are multiple customers and need multiple customization?

Consider this - In 'extended' Git-Flow, (Git-Multi-Flow, ...READ MORE

answered Mar 27, 2018 in DevOps & Agile by DragonLord999
• 8,450 points
0 votes
1 answer

How to get the most recent ebs snapshot using terraform datasource?

It's not available in the latest release ...READ MORE

answered Jul 9, 2018 in Other DevOps Questions by Atul
• 10,240 points
0 votes
1 answer

How do I enable Slack for Bluemix DevOps services beta

Here is where you can take help ...READ MORE

answered Jul 11, 2018 in Other DevOps Questions by Atul
• 10,240 points
webinar_success Thank you for registering Join Edureka Meetup community for 100+ Free Webinars each month JOIN MEETUP GROUP