Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
41 commits
Select commit Hold shift + click to select a range
41e181f
Add Azure Container Apps (ACA) deployment and testing pipelines
jestradaMS Mar 26, 2026
de70fb6
Enhance resource group cleanup by adding a check for empty prName
jestradaMS Mar 26, 2026
9d9e130
Update containerCpu parameter type to string and adjust usage in depl…
jestradaMS Mar 26, 2026
4e638d8
Disable deployment and testing stages in PR pipeline
jestradaMS Mar 26, 2026
1b8b3aa
Remove condition check for test stages in PR pipeline
jestradaMS Mar 26, 2026
4e0c2e1
Add SQL AAD admin alignment for FHIR app to prevent login failures du…
jestradaMS Mar 26, 2026
9e81662
fix for uami
jestradaMS Mar 26, 2026
8df6c9b
adding in logging
jestradaMS Mar 26, 2026
5eb0cf5
Refactor SQL AAD admin setup to use system-assigned identity for ACA …
jestradaMS Mar 26, 2026
ef65de1
Update SQL connection string to use ActiveDirectoryManagedIdentity fo…
jestradaMS Mar 26, 2026
ec8d97c
attempt to fix db access
jestradaMS Mar 26, 2026
3fca42f
Increase minimum and maximum replicas for ACA deployment; add SQL dat…
jestradaMS Mar 26, 2026
07f3410
updating db to GP
jestradaMS Mar 27, 2026
23eb956
Updating custom headers test
jestradaMS Mar 27, 2026
68b0201
Updating for versions to use CE
jestradaMS Mar 27, 2026
bde4907
Create CE before deploys
jestradaMS Mar 27, 2026
d3b677d
Merge branch 'main' into users/jestrada/acadeploy
jestradaMS Mar 27, 2026
e92ecb2
Add aca deployment and testing templates for Cosmos DB
jestradaMS Mar 27, 2026
f6e4600
fixing invalid switch
jestradaMS Mar 27, 2026
e26d012
add missing cosmos config
jestradaMS Mar 27, 2026
3619a1f
Add ARM role assignment for DocumentDB Account Contributor in ACA dep…
jestradaMS Mar 27, 2026
d545476
Add ACA deployment support and refactor related configurations
jestradaMS Mar 27, 2026
57344e7
fixing image casing
jestradaMS Mar 27, 2026
437e11b
Add version and appServiceType parameters to ACA variable setting and…
jestradaMS Mar 30, 2026
391c206
Fix indentation for containerAppName parameter in ACA variable settings
jestradaMS Mar 30, 2026
8e050b5
fixing indents
jestradaMS Mar 30, 2026
13071d2
Fix string interpolation for ACA URL resolution in pipeline variables
jestradaMS Mar 30, 2026
9968413
Refactor container resource parameters and update scaling rules in AC…
jestradaMS Apr 1, 2026
20c8942
Update minReplicas to 0 and maxReplicas to 8 in ACA deployment templates
jestradaMS Apr 1, 2026
65453bd
Remove unused conditions for AnalyzeSecurity and aggregateCoverage st…
jestradaMS Apr 1, 2026
dd89362
deleting unused ymls
jestradaMS Apr 1, 2026
4dff9cb
removing aca from the app names
jestradaMS Apr 1, 2026
fdd6a3a
Fixing CI RG name to remove -aca
jestradaMS Apr 1, 2026
bd3e37b
Refactor FHIR ACA templates: remove Cosmos DB JSON template, add SQL …
jestradaMS Apr 1, 2026
3abe8f6
fixing bicep storage suffix
jestradaMS Apr 2, 2026
18bf728
Setting PR min replicas to 3 to match Production scenarios
jestradaMS Apr 2, 2026
41d77c1
Refactor HTTP client usage and enhance retry logic for metadata fetch
jestradaMS Apr 3, 2026
a2d7323
Add warmup path and status properties to FHIR server configuration
jestradaMS Apr 3, 2026
100b30c
Update to 180 seconds for metadata
jestradaMS Apr 3, 2026
646e44d
Merge branch 'users/jestrada/fixtestfhirserver' into users/jestrada/a…
jestradaMS Apr 3, 2026
a9f1dfe
Merge branch 'main' into users/jestrada/acadeploy
jestradaMS Apr 3, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions build/build-variables.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ variables:
DeploymentEnvironmentNameR4BSql: '$(DeploymentEnvironmentNameR4B)-sql'
DeploymentEnvironmentNameR5: '$(DeploymentEnvironmentName)-r5'
DeploymentEnvironmentNameR5Sql: '$(DeploymentEnvironmentNameR5)-sql'
AcaEnvironmentName: '$(DeploymentEnvironmentName)-acae'
# Key Vault names (shorter due to 24 character limit)
KeyVaultNameSql: '$(KeyVaultBaseName)-sql'
KeyVaultNameR4: '$(KeyVaultBaseName)-r4'
Expand Down
120 changes: 86 additions & 34 deletions build/ci-deploy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,49 @@ stages:
azureSubscription: $(ConnectedServiceName)
resourceGroupName: $(ResourceGroupName)

- stage: createAcaEnvironment
displayName: 'Create ACA Managed Environment'
dependsOn:
- provisionEnvironment
jobs:
- job: createAcaEnvironment
displayName: 'Create ACA Managed Environment'
pool:
name: '$(DefaultLinuxPool)'
vmImage: '$(LinuxVmImage)'
steps:
- task: AzurePowerShell@5
displayName: 'Create ACA Managed Environment'
inputs:
azureSubscription: $(ConnectedServiceName)
azurePowerShellVersion: latestVersion
pwsh: true
ScriptType: inlineScript
Inline: |
$envName = '$(AcaEnvironmentName)'.ToLowerInvariant()
$rgName = '$(ResourceGroupName)'
$location = '$(ResourceGroupRegion)'

if ($envName.Length -gt 32) {
$envName = $envName.Substring(0, 32).TrimEnd('-')
}

$existing = Get-AzResource -ResourceGroupName $rgName -ResourceType 'Microsoft.App/managedEnvironments' -Name $envName -ErrorAction SilentlyContinue
if ($null -ne $existing) {
Write-Host "ACA managed environment '$envName' already exists."
return
}

Write-Host "Creating ACA managed environment '$envName' in '$rgName'..."
New-AzResourceGroupDeployment `
-Name "aca-env-$envName" `
-ResourceGroupName $rgName `
-TemplateFile $(System.DefaultWorkingDirectory)/samples/templates/aca/aca-environment.bicep `
-environmentName $envName `
-location $location `
-Verbose -ErrorAction Stop
Write-Host "ACA managed environment '$envName' created successfully."

- stage: createNsp
displayName: 'Create Network Security Perimeter'
dependsOn:
Expand Down Expand Up @@ -113,15 +156,16 @@ stages:
- aadTestEnvironment
- DockerBuild
- createNsp
- createAcaEnvironment
jobs:
- template: ./jobs/provision-deploy.yml
- template: ./jobs/provision-deploy-cosmos-aca.yml
parameters:
version: Stu3
webAppName: $(DeploymentEnvironmentName)
appServicePlanName: $(appServicePlanName)
appServicePlanResourceGroup: $(appServicePlanResourceGroup)
acaEnvironmentName: $(AcaEnvironmentName)
keyVaultName: $(KeyVaultBaseName)
subscription: $(ConnectedServiceName)
resourceGroup: $(DeploymentEnvironmentName)
resourceGroup: $(ResourceGroupName)
testEnvironmentUrl: $(TestApplicationResource)
imageTag: $(ImageTag)
reindexEnabled: true
Expand All @@ -132,16 +176,17 @@ stages:
- aadTestEnvironment
- DockerBuild
- deploySqlServer
- createAcaEnvironment
jobs:
- template: ./jobs/provision-deploy.yml
- template: ./jobs/provision-deploy-aca.yml
parameters:
version: Stu3
sql: true
webAppName: $(DeploymentEnvironmentNameSql)
appServicePlanName: $(appServicePlanName)
appServicePlanResourceGroup: $(appServicePlanResourceGroup)
acaEnvironmentName: $(AcaEnvironmentName)
keyVaultName: $(KeyVaultNameSql)
subscription: $(ConnectedServiceName)
resourceGroup: $(DeploymentEnvironmentName)
resourceGroup: $(ResourceGroupName)
testEnvironmentUrl: $(TestApplicationResource)
imageTag: $(ImageTag)
schemaAutomaticUpdatesEnabled: 'auto'
Expand All @@ -155,15 +200,16 @@ stages:
- aadTestEnvironment
- DockerBuild
- createNsp
- createAcaEnvironment
jobs:
- template: ./jobs/provision-deploy.yml
- template: ./jobs/provision-deploy-cosmos-aca.yml
parameters:
version: R4
webAppName: $(DeploymentEnvironmentNameR4)
appServicePlanName: $(appServicePlanName)
appServicePlanResourceGroup: $(appServicePlanResourceGroup)
acaEnvironmentName: $(AcaEnvironmentName)
keyVaultName: $(KeyVaultNameR4)
subscription: $(ConnectedServiceName)
resourceGroup: $(DeploymentEnvironmentName)
resourceGroup: $(ResourceGroupName)
testEnvironmentUrl: $(TestApplicationResource)
imageTag: $(ImageTag)
reindexEnabled: true
Expand All @@ -174,16 +220,17 @@ stages:
- aadTestEnvironment
- DockerBuild
- deploySqlServer
- createAcaEnvironment
jobs:
- template: ./jobs/provision-deploy.yml
- template: ./jobs/provision-deploy-aca.yml
parameters:
version: R4
sql: true
webAppName: $(DeploymentEnvironmentNameR4Sql)
appServicePlanName: $(appServicePlanName)
appServicePlanResourceGroup: $(appServicePlanResourceGroup)
acaEnvironmentName: $(AcaEnvironmentName)
keyVaultName: $(KeyVaultNameR4Sql)
subscription: $(ConnectedServiceName)
resourceGroup: $(DeploymentEnvironmentName)
resourceGroup: $(ResourceGroupName)
testEnvironmentUrl: $(TestApplicationResource)
imageTag: $(ImageTag)
schemaAutomaticUpdatesEnabled: 'auto'
Expand All @@ -197,15 +244,16 @@ stages:
- aadTestEnvironment
- DockerBuild
- createNsp
- createAcaEnvironment
jobs:
- template: ./jobs/provision-deploy.yml
- template: ./jobs/provision-deploy-cosmos-aca.yml
parameters:
version: R4B
webAppName: $(DeploymentEnvironmentNameR4B)
appServicePlanName: $(appServicePlanName)
appServicePlanResourceGroup: $(appServicePlanResourceGroup)
acaEnvironmentName: $(AcaEnvironmentName)
keyVaultName: $(KeyVaultNameR4B)
subscription: $(ConnectedServiceName)
resourceGroup: $(DeploymentEnvironmentName)
resourceGroup: $(ResourceGroupName)
testEnvironmentUrl: $(TestApplicationResource)
imageTag: $(ImageTag)
reindexEnabled: true
Expand All @@ -216,37 +264,40 @@ stages:
- aadTestEnvironment
- DockerBuild
- deploySqlServer
- createAcaEnvironment
jobs:
- template: ./jobs/provision-deploy.yml
- template: ./jobs/provision-deploy-aca.yml
parameters:
version: R4B
sql: true
webAppName: $(DeploymentEnvironmentNameR4BSql)
appServicePlanName: $(appServicePlanName)
appServicePlanResourceGroup: $(appServicePlanResourceGroup)
acaEnvironmentName: $(AcaEnvironmentName)
keyVaultName: $(KeyVaultNameR4BSql)
subscription: $(ConnectedServiceName)
resourceGroup: $(DeploymentEnvironmentName)
resourceGroup: $(ResourceGroupName)
testEnvironmentUrl: $(TestApplicationResource)
sqlServerName: $(DeploymentEnvironmentName)
sqlComputeTier: 'Hyperscale'
imageTag: $(ImageTag)
schemaAutomaticUpdatesEnabled: 'auto'
sqlServerName: $(DeploymentEnvironmentName)
sqlComputeTier: 'Hyperscale'
reindexEnabled: true

- stage: deployR5
displayName: 'Deploy R5 CosmosDB Site'
dependsOn:
- aadTestEnvironment
- DockerBuild
- createNsp
- createAcaEnvironment
jobs:
- template: ./jobs/provision-deploy.yml
- template: ./jobs/provision-deploy-cosmos-aca.yml
parameters:
version: R5
webAppName: $(DeploymentEnvironmentNameR5)
appServicePlanName: $(appServicePlanName)
appServicePlanResourceGroup: $(appServicePlanResourceGroup)
acaEnvironmentName: $(AcaEnvironmentName)
keyVaultName: $(KeyVaultNameR5)
subscription: $(ConnectedServiceName)
resourceGroup: $(DeploymentEnvironmentName)
resourceGroup: $(ResourceGroupName)
testEnvironmentUrl: $(TestApplicationResource)
imageTag: $(ImageTag)
reindexEnabled: true
Expand All @@ -257,16 +308,17 @@ stages:
- aadTestEnvironment
- DockerBuild
- deploySqlServer
- createAcaEnvironment
jobs:
- template: ./jobs/provision-deploy.yml
- template: ./jobs/provision-deploy-aca.yml
parameters:
version: R5
sql: true
webAppName: $(DeploymentEnvironmentNameR5Sql)
appServicePlanName: $(appServicePlanName)
appServicePlanResourceGroup: $(appServicePlanResourceGroup)
acaEnvironmentName: $(AcaEnvironmentName)
keyVaultName: $(KeyVaultNameR5Sql)
subscription: $(ConnectedServiceName)
resourceGroup: $(DeploymentEnvironmentName)
resourceGroup: $(ResourceGroupName)
testEnvironmentUrl: $(TestApplicationResource)
imageTag: $(ImageTag)
schemaAutomaticUpdatesEnabled: 'auto'
Expand Down
Loading
Loading