Kudu is the engine behind Git Deployments in Azure App Service.

It is a Site Extension which is provided with ever App Service.

It provides: * Git integration to a Web Site * an API endpoint for programmatic access to

  • app settings,
  • deployment information,
  • files,
  • active processes,
  • runtime versions,
  • source control information,
  • web hooks
  • web jobs.

The scm service host name is not affected by the presence of custom host names in your site. It always has the pattern above. * The scm site uses single sign on, using your IT:AD:Azure:Account, so if you're already logged on to the Azure portal, you will be able to directly access the site. * If you prefer Basic Auth (why?!?), use ( for mobile services), where you will be prompted for credentials.

  • Use either the user publishing credentials (same as you use for git), or the site level credentials.

It can also run outside of Azure.

In Azure you can access it by using the Source Control Management entry point: *

From the home page you can see listed various REST/JSON based API endpoints, which you can use for several things, such as retrieving the AppSettings, Environment Variables, as well as download and view files (eg: LogFiles).

Note that most of of the information available via the APIs is again listed on the KUDU webpages.

An important tool provided by IT:AD:Kudu is its debug tools.

Kudu provides both a tranditional CMD console, as well as a IT:AD:Powershell console:

You may be wondering what's the point? Why not RDP in? The reason is that when you use an App Service you could be deploying to a VM that you share. In which case when all you needed was a console of some kind, it would be rather unwise to have RDP access to the server…