Set up continuous deployment

APPLIES TO: yesSDK v4 no SDK v3

This article shows you how to configure continuous deployment for your bot. You can enable continuous deployment to automatically deploy code changes from your source repository to Azure. In this topic, we'll cover setting up continuous deployment for GitHub. For information on setting up continous deployment with other source control systems, see the additional resource section at the bottom of this page.

Prerequisites

Prepare your repository

Make sure that your repository root has the correct files in your project. This will allow you to get automatic builds from the Azure App Service Kudu build server.

Runtime Root directory files
ASP.NET Core .sln or .csproj
Node.js server.js, app.js, or package.json with a start script

Continuous deployment using GitHub

To enable continuous deployment with GitHub, navigate to the App Service page for your bot in the Azure portal.

Click Deployment Center > GitHub > Authorize.

Continous deployment

In the browser window that opens up, click Authorize AzureAppService.

Azure Github Permission

After authorizing the AzureAppService, go back to Deployment Center in the Azure portal.

  1. Click Continue.

  2. Select App Service build service.

  3. Click Continue.

  4. Select Organization, Repository, and Branch.

  5. Click Continue, and then Finish to complete the setup.

At this point, continuous deployment with GitHub is set up. Whenever you commit to the source code repository, your changes will automatically be deployed to the Azure Bot Service.

Disable continuous deployment

While your bot is configured for continuous deployment, you may not use the online code editor to make changes to your bot. If you want to use the online code editor, you can temporarily disable continuous deployment.

To disable continuous deployment, do the following:

  1. In the Azure portal, go to your bot's All App Service settings blade and click Deployment Center.
  2. Click Disconnect to disable continuous deployment. To re-enable continuous deployment, repeat the steps from the appropriate sections above.

Additional resources