This sample app is initially taken from quickstart-spring-data-jdbc-postgresql Azure Samples, and then modified for purpose of creating ephemeral test environments.
Once setup a PR againsV this repository will result in creation of a new ephemeral environment for this PR, with a new Azure Resource group which contains an AKS cluster and Postgres SQL database. A version of this application corresponding to the PR commit SHA is then deployed to this ephemeral environment. The creation of Infrastructure and application release are all done using the GitOps way.
The first implemented sample uses ArgoCD (with ApplicationSet + PR Generator), Crossplane Azure Jet Provider (for provisioning / deleting Azure Resources), and Crossplane Helm provider (for releasing / updating the application).
ephemeral-env-infra: This is the Platform repository which contains the manifests / templates to provision the cloud services / resources needed for the ephemeral environment
ephemeral-mgmt: This contains the scripts to bootstrap the management cluster, and applying the ArgoCD ApplicationSet (with PR Generator)