1. Packages
  2. Azure Classic
  3. How-to Guides
  4. Todo App Using Azure App Service with SQL Database and Integrated with Azure DevOps

We recommend using Azure Native.

Azure Classic v6.2.0 published on Friday, Sep 27, 2024 by Pulumi

Todo App Using Azure App Service with SQL Database and Integrated with Azure DevOps

azure logo

We recommend using Azure Native.

Azure Classic v6.2.0 published on Friday, Sep 27, 2024 by Pulumi

    View Code Deploy this example with Pulumi

    A Todo List application from Azure Samples GitHub: .NET Core MVC sample for Azure App Service, a web app built with ASP.NET Core, Entity Framework Core and a SQL database.

    Provisions Azure SQL Database and Azure Application Insights to be used in combination with App Service. Defines an Azure DevOps pipeline to deploy in CI/CD environment.

    Running the App manually with Pulumi CLI

    1. Build and publish the ASP.NET Core project:

      $ dotnet publish src
      
    2. Navigate to infra:

      $ cd infra
      
    3. Create a new stack:

      $ pulumi stack init dev
      
    4. Login to Azure CLI (you will be prompted to do this during deployment if you forget this step):

      $ az login
      
    5. Restore NPM dependencies:

      $ npm install
      
    6. Define SQL Server username:

      pulumi config set sqlUsername <value>
      
    7. Define SQL Server password (make it complex enough to satisfy Azure policy):

      pulumi config set --secret sqlPassword <value>
      
    8. Run pulumi up to preview and deploy changes:

      $ pulumi up
      Previewing changes:
      ...
      
      Performing changes:
      ...
      info: 10 changes performed:
          + 10 resources created
      Update duration: 1m14.59910109s
      
    9. Check the deployed website endpoint:

      $ pulumi stack output endpoint
      https://dev-as10d706a2.azurewebsites.net
      $ curl "$(pulumi stack output endpoint)"
      <!DOCTYPE html>
      <html>
      <head>
          <meta charset="utf-8" />
          <meta name="viewport" content="width=device-width, initial-scale=1.0" />
          <title>Index - My ToDoList App</title>
      ...
      

    Integrating with Azure DevOps

    azure-pipeline.yml in the root folder of this example shows a configuration for Azure DevOps using Pulumi task.

    Pulumi task expects a Pulumi access token to be configured as a build variable. Copy your token from Access Tokens page and put it into pulumi.access.token build variable.

    alternative-pipeline folder contains custom scripts and a pipeline to run Pulumi program in environments that have to access to the marketplace.

    Follow Azure DevOps guide for more details.

    azure logo

    We recommend using Azure Native.

    Azure Classic v6.2.0 published on Friday, Sep 27, 2024 by Pulumi