Azure Developer CLI (azd) – May 2023 Release

Savannah Ostrowski

We’re pleased to announce that the May 2023 release (0.9.0-beta.1) of the Azure Developer CLI (azd) is now available. You can learn about how to get started with the Azure Developer CLI by visiting our Dev Hub.

This release includes the following features and improvements:

There isn’t a community call this month but there are many sessions that showcase the Azure Developer CLI at Microsoft Build that you should watch:

See you all next month! Now, let’s get into what’s new in version 0.9.0-beta.1!

Support for Azure Spring Apps

We’re excited to announce that the Azure Developer CLI now supports Azure Spring Apps. If you’re unfamiliar, Azure Spring Apps is a service that makes it easy for developers to deploy Spring Boot apps on Azure, without code changes.

To complement our new Azure Spring Apps support, some new templates have been authored to show how you can get up and running quickly with the service:

Azure Spring Apps support for azd is currently in our alpha phase.

To use a template that targets Azure Spring Apps as a host, you should first enable it as a feature.

azd config set alpha.springapps on

We plan to graduate Azure Spring Apps support to beta stage when we have received sufficient user feedback around the experience. Our team would also like to extend thanks to the Azure Spring Apps team for their partnership in delivering this new support for Java developers!

If you have any feedback or questions, let us know on the Azure Developer CLI repo.

Improvements for Azure Container Apps deployments

In this release, we’ve made changes to our Azure Container Apps implementation inline with the other service targets that the Azure Developer CLI supports. Previously, applications using Azure Container Apps performed an extra provision operation to modify container images during deployment. This extra internal provision step introduced some unnecessary complexity.

These changes should yield improved provisioning and deployment speeds for applications using Azure Container Apps as a target host.

Breaking change for applications targeting Azure Container Apps

This update introduces a breaking change for developers using Azure Container Apps as a target host for their application where the Azure Container Apps resources aren’t created as part of the initial azd provision. We suspect that the number of developers impacted by this change is minimal.

If these changes affect your application, there’s a workaround. You can move your Azure Container Apps resources from their own Infrastructure as Code module (in Bicep or Terraform) into the main.bicep or in the infra/ of your project.

UX improvements to azd down

Over the past several releases of the CLI, we have been working to make our command output more consistent. In this release, we’re excited to ship an improved user experience for our azd down command.

Image new down censored

Basic starter template support with azd init

To better support developers looking to create their own azd-compatible templates, we’ve added some new starter template options to azd init when no --template or -t flag is passed in. Previously, if you invoked azd init without specifying a template, you were provided with options to use an empty template or one of the hardcoded templates that the azd team has authored. As of this release, Starter - Bicep (azd-bicep-starter) and Starter - Terraform (azd-terraform-starter) have been added to the list of templates.

These templates contain all the right files to help get you started:

  • An azure.yaml file with examples and comments to guide you
  • Valid Infrastructure as Code files (in either Bicep or Terraform, depending on the starter selected) that sets up azd environment tagging and an empty resource group
  • Starter CI/CD workflows for GitHub Actions (.github/) and Azure Pipelines (.azdo/) so you can test against real Azure resources on every commit
  • .devcontainer/ configurations for editing the application in a Dev Container/Codespaces (includes installing azd and all the right extensions for cloud native development!)

New azd init UX with templates names that describe the local application stack

Additionally, template names have been updated in azd init or azd template list to be more descriptive of the local application stack to help you identify templates that might be a good blueprint for your application’s cloud infrastructure.

New Azure Developer CLI templates

Over the last month, we’ve had some great new templates added to the awesome-azd gallery! Thank you to our open source contributors!

Other changes and enhancements

We have also added smaller enhancements and fixed issues requested by users that should improve your experience working with the Azure Developer CLI. Some notable changes include:

  • env variables created in preprovision script aren’t passed to provision (azure-dev#1714)
  • Unhelpful error message on azd pipeline config (azure-dev#1420)
  • azd pipeline config – GitHub provider – Federated credential – 409 conflict (azure-dev#1482)
  • If no environment has been created yet, azd show --output json asks for one to be named, blocking forever if it’s executed as a background process (azure-dev#1688)
  • Error message on Keyvault isn’t actionable (azure-dev#1431)
  • Login token expires while executing in a GitHub Action workflow in the azd container. (azure-dev#1901)
  • Python CLI not installed, when Python is installed. (azure-dev#1623)
  • Support other Java archive files(*.war, *.ear) (azure-dev#1943)
  • Use respective – update out of date version instructions(Windows, Linux, macOS) (azure-dev#1793)
  • azd env refresh] requires two runs to work (azure-dev#1956)
  • Adjust aks-managed-cluster.bicep to deal with AKS Breaking Change (azure-dev#1814)
  • azd pipeline config Azure Dev Provision fail in pipeline for todo-nodejs-mongo-aks (azure-dev#1871)
  • JSON validation for OS specific hooks (azure-dev#1552)
  • [ARM64] bicep binary doesn’t run on Apple Silicon macOS (azure-dev#1560)
  • azd pipeline provider] Hard to know the valid strings for --auth-type (azure-dev#1488)
  • Breaking: Don’t default language to dotnet (azure-dev#2066)
  • When I run azd init in the wrong place, it by default dumps many files there before I realize it’s the wrong place.] (azure-dev#1638)
  • Add GitHub.vscode-github-actions to the devcontainer.json for Codespaces (azure-dev#2014)
  • Rename ToDo templates to be more descriptive of local application stack (azure-dev#2073)
  • Failed to execute azd pipeline config --provider azdo on Codespaces (azure-dev#1993)

Try out these new improvements by installing the Azure Developer CLI!

You can use the Azure Developer CLI from:

  • Your terminal of choice on Windows, Linux, or macOS.
  • Visual Studio Code or GitHub Codespaces by downloading the extension from the Marketplace, or installing it directly from the extension view (Ctrl + Shift + X, or Cmd + Shift + X for macOS) in Visual Studio Code.
  • Visual Studio by enabling the preview feature flag. You can learn more about the Azure Developer CLI from our Dev Hub documentation. If you run into any problems or have suggestions, file an issue or start a discussion on Azure Developer CLI repo.


Discussion is closed.

Feedback usabilla icon