We're building a Managed Application that will be available on the Commercial Marketplace. This application includes an ASP.NET Core-based App Service, as well as an Azure SQL Database.
How do we deploy the actual code for the App Service? We've tried putting it in a storage account and referencing the URL of the .zip file via WEBSITE_RUN_FROM_PACKAGE, but this is being rejected by the Commercial Marketplace review people. They said:
We do not allow references in external blobs during deployment of a markeplace items. All marketplace packages should be self contained. This means that all those files that you refer to in your git hub must be included in this package and referenced as per the guidance specified here: https://github.com/Azure/azure-quickstart-templates/blob/master/1-CONTRIBUTION-GUIDE/best-practices.md#best-practices
I find it very strange that the Commercial Marketplace review team uses the contributing guidelines of the Azure QuickStart Template repository as their set of policies and standards that they hold apps to.
This aside, I cannot find any examples of how to deploy an App Service purely via ARM template. The very repository that the Commercial Marketplace reviewers are referencing contains an example of how to deploy an app service - https://learn.microsoft.com/en-us/azure/app-service/quickstart-arm-template?pivots=platform-linux - in the example, the code is deployed by specifying an external repostitoryUrl
parameter, which would be doing the very thing that the review team is rejecting us for.
So, how are you actually supposed to build Managed Apps that contain App Services?