Azure / Azure/azure-dev

Create initial Spring Boot azd templates

Open
#9,962 0 comments 0 reactions 0 assignees View on GitHub
area/java area/templates
Dominant language
Go
Stars
569
Forks
364
Avg merge
2d 19h
Merged PRs (30d)
136

Description

Create one or two complete Spring Boot azd templates to establish the first working end-to-end experience for the `azure.springboot` extension. The initial workflow should be `azd init -t ` followed by `azd up`.

These templates give us known applications and configurations to develop and test against before we support scanning arbitrary existing Spring Boot projects. They should exercise the extension’s build, provision, deploy, configuration, and validation capabilities without depending on application detection or project inference.

We need to:

- Add one or two Spring Boot azd templates owned by `azure.springboot`.
- Start with:
- A minimal Maven-based Spring Boot REST API.
- A Maven-based Spring Boot application using one representative Azure service, preferably PostgreSQL.
- Include a complete `azure.yaml`, application source, and the infrastructure required for `azd up`.
- Pin the required `azure.springboot` extension version in `azure.yaml`.
- Deploy to Azure Container Apps.
- Use supported Java and Spring Boot versions.
- Use the Maven Wrapper.
- Include Spring Boot Actuator health endpoints.
- Use managed identity and passwordless authentication for Azure resources.
- Ensure each template works with:
- `azd init -t `
- `azd provision`
- `azd deploy`
- `azd up`
- `azd down`
- Use these templates as the first end-to-end fixtures for subsequent extension development.
- Add automated tests that initialize each template, build it, and validate its project configuration.
- Add deployment coverage proving each template reaches a healthy endpoint.
- Document how to use and update the templates.

## Boundaries

- Do not add Spring-specific commands or verbs.
- Do not add an `azd spring` command namespace.
- Do not depend on scanning an existing application, external project translation, or `azd up` without `azure.yaml`.
- Do not make these micro-templates. They are complete azd templates used for initialization and end-to-end validation.
- Do not add Gradle, WAR, App Service, AKS, or Azure Spring Apps support.
- Do not modify azd core.
- Keep implementation within `cli/azd/extensions/azure.springboot/` and extension-specific repository plumbing.

Contributor guide

Open the contributing guide

Research direction

The work is confined to cli/azd/extensions/azure.springboot/ and extension-specific repository plumbing; start by locating the extension entry points and template or test locations there. Add the complete Spring Boot templates and automated initialization, build, configuration, deployment, and health checks described in the issue. Done means the azd init, provision, deploy, up, and down workflows work and usage and update documentation is included.

Written by the indexing model from the issue text.

Assessment

Tech stack
azure, docker, java, postgresql, spring-boot
Domain
backend, cli, cloud, documentation, testing
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.