Skip to content

Commit 0aa941b

Browse files
authored
fix: add base uri for web api (#425)
After APIM is removed, we need to add the base uri for the container app in app configuration and use that in the swagger and when we publish events.
1 parent 934fa93 commit 0aa941b

File tree

11 files changed

+60
-32
lines changed

11 files changed

+60
-32
lines changed

.azure/applications/web-api-eu/main.bicep

+10-6
Original file line numberDiff line numberDiff line change
@@ -9,11 +9,11 @@ param location string
99

1010
@minLength(3)
1111
@secure()
12-
param containerAppEnvironmentId string
12+
param containerAppEnvironmentName string
1313
@minLength(3)
1414
@secure()
1515
param appInsightConnectionString string
16-
@minLength(3)
16+
@minLength(5)
1717
@secure()
1818
param appConfigurationName string
1919
@minLength(3)
@@ -23,8 +23,12 @@ param environmentKeyVaultName string
2323
var namePrefix = 'dp-be-${environment}'
2424
var baseImageUrl = 'ghcr.io/digdir/dialogporten-'
2525

26-
resource appConfig 'Microsoft.AppConfiguration/configurationStores@2023-03-01' existing = {
27-
name: '${namePrefix}-appConfiguration'
26+
resource appConfiguration 'Microsoft.AppConfiguration/configurationStores@2023-03-01' existing = {
27+
name: appConfigurationName
28+
}
29+
30+
resource containerAppEnvironment 'Microsoft.App/managedEnvironments@2023-05-01' existing = {
31+
name: containerAppEnvironmentName
2832
}
2933

3034
var containerAppEnvVars = [
@@ -38,7 +42,7 @@ var containerAppEnvVars = [
3842
}
3943
{
4044
name: 'AZURE_APPCONFIG_URI'
41-
value: appConfig.properties.endpoint
45+
value: appConfiguration.properties.endpoint
4246
}
4347
{
4448
name: 'ASPNETCORE_URLS'
@@ -59,7 +63,7 @@ module containerApp '../../modules/containerApp/main.bicep' = {
5963
image: '${baseImageUrl}webapi:${imageTag}'
6064
location: location
6165
envVariables: containerAppEnvVars
62-
containerAppEnvId: containerAppEnvironmentId
66+
containerAppEnvId: containerAppEnvironment.id
6367
}
6468
}
6569

.azure/applications/web-api-eu/staging.bicepparam

+1-1
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,6 @@ param imageTag = readEnvironmentVariable('IMAGE_TAG')
66

77
// secrets
88
param environmentKeyVaultName = readEnvironmentVariable('ENVIRONMENT_KEY_VAULT_NAME')
9-
param containerAppEnvironmentId = readEnvironmentVariable('CONTAINER_APP_ENVIRONMENT_ID')
9+
param containerAppEnvironmentName = readEnvironmentVariable('CONTAINER_APP_ENVIRONMENT_NAME')
1010
param appInsightConnectionString = readEnvironmentVariable('APP_INSIGHTS_CONNECTION_STRING')
1111
param appConfigurationName = readEnvironmentVariable('APP_CONFIGURATION_NAME')

.azure/applications/web-api-eu/test.bicepparam

+1-1
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,6 @@ param imageTag = readEnvironmentVariable('IMAGE_TAG')
66

77
// secrets
88
param environmentKeyVaultName = readEnvironmentVariable('ENVIRONMENT_KEY_VAULT_NAME')
9-
param containerAppEnvironmentId = readEnvironmentVariable('CONTAINER_APP_ENVIRONMENT_ID')
9+
param containerAppEnvironmentName = readEnvironmentVariable('CONTAINER_APP_ENVIRONMENT_NAME')
1010
param appInsightConnectionString = readEnvironmentVariable('APP_INSIGHTS_CONNECTION_STRING')
1111
param appConfigurationName = readEnvironmentVariable('APP_CONFIGURATION_NAME')

.azure/applications/web-api-migration-job/main.bicep

+6-2
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ param location string
99

1010
@minLength(3)
1111
@secure()
12-
param containerAppEnvironmentId string
12+
param containerAppEnvironmentName string
1313
@minLength(3)
1414
@secure()
1515
param adoConnectionStringSecretUri string
@@ -19,13 +19,17 @@ var baseImageUrl = 'ghcr.io/digdir/dialogporten-'
1919

2020
var name = '${namePrefix}-db-migration-job'
2121

22+
resource containerAppEnvironment 'Microsoft.App/managedEnvironments@2023-05-01' existing = {
23+
name: containerAppEnvironmentName
24+
}
25+
2226
module migrationJob '../../modules/containerAppJob/main.bicep' = {
2327
name: name
2428
params: {
2529
name: name
2630
location: location
2731
image: '${baseImageUrl}migration-bundle:${imageTag}'
28-
containerAppEnvId: containerAppEnvironmentId
32+
containerAppEnvId: containerAppEnvironment.id
2933
adoConnectionStringSecretUri: adoConnectionStringSecretUri
3034
}
3135
}

.azure/applications/web-api-migration-job/staging.bicepparam

+3-3
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@ using './main.bicep'
22

33
param environment = 'staging'
44
param location = 'norwayeast'
5-
param imageTag = readEnvironmentVariable('IMAGE_TAG', '')
6-
param containerAppEnvironmentId = readEnvironmentVariable('CONTAINER_APP_ENVIRONMENT_ID', '')
5+
param imageTag = readEnvironmentVariable('IMAGE_TAG')
6+
param containerAppEnvironmentName = readEnvironmentVariable('CONTAINER_APP_ENVIRONMENT_NAME')
77

88
//secrets
9-
param adoConnectionStringSecretUri = readEnvironmentVariable('ADO_CONNECTION_STRING_SECRET_URI', '')
9+
param adoConnectionStringSecretUri = readEnvironmentVariable('ADO_CONNECTION_STRING_SECRET_URI')

.azure/applications/web-api-migration-job/test.bicepparam

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,5 +5,5 @@ param location = 'norwayeast'
55

66
//secrets
77
param imageTag = readEnvironmentVariable('IMAGE_TAG')
8-
param containerAppEnvironmentId = readEnvironmentVariable('CONTAINER_APP_ENVIRONMENT_ID')
8+
param containerAppEnvironmentName = readEnvironmentVariable('CONTAINER_APP_ENVIRONMENT_NAME')
99
param adoConnectionStringSecretUri = readEnvironmentVariable('ADO_CONNECTION_STRING_SECRET_URI')

.azure/applications/web-api-so/main.bicep

+32-12
Original file line numberDiff line numberDiff line change
@@ -1,30 +1,37 @@
11
targetScope = 'resourceGroup'
22

3-
@minLength(1)
3+
@minLength(3)
44
param imageTag string
5-
@minLength(1)
5+
@minLength(3)
66
param environment string
7-
@minLength(1)
7+
@minLength(3)
88
param location string
99

10-
@minLength(1)
10+
@minLength(3)
1111
@secure()
12-
param containerAppEnvironmentId string
13-
@minLength(1)
12+
param containerAppEnvironmentName string
13+
@minLength(3)
1414
@secure()
1515
param appInsightConnectionString string
16-
@minLength(1)
16+
@minLength(5)
1717
@secure()
1818
param appConfigurationName string
19-
@minLength(1)
19+
@minLength(3)
2020
@secure()
2121
param environmentKeyVaultName string
22+
@minLength(3)
23+
@secure()
24+
param apimUri string
2225

2326
var namePrefix = 'dp-be-${environment}'
2427
var baseImageUrl = 'ghcr.io/digdir/dialogporten-'
2528

26-
resource appConfig 'Microsoft.AppConfiguration/configurationStores@2023-03-01' existing = {
27-
name: '${namePrefix}-appConfiguration'
29+
resource appConfiguration 'Microsoft.AppConfiguration/configurationStores@2023-03-01' existing = {
30+
name: appConfigurationName
31+
}
32+
33+
resource containerAppEnvironment 'Microsoft.App/managedEnvironments@2023-05-01' existing = {
34+
name: containerAppEnvironmentName
2835
}
2936

3037
var containerAppEnvVars = [
@@ -38,7 +45,7 @@ var containerAppEnvVars = [
3845
}
3946
{
4047
name: 'AZURE_APPCONFIG_URI'
41-
value: appConfig.properties.endpoint
48+
value: appConfiguration.properties.endpoint
4249
}
4350
{
4451
name: 'ASPNETCORE_URLS'
@@ -63,7 +70,20 @@ module containerApp '../../modules/containerApp/main.bicep' = {
6370
image: '${baseImageUrl}webapi:${imageTag}'
6471
location: location
6572
envVariables: containerAppEnvVars
66-
containerAppEnvId: containerAppEnvironmentId
73+
containerAppEnvId: containerAppEnvironment.id
74+
}
75+
}
76+
77+
// If the APIM URI is not provided, we will use the default domain of the container app environment. We only do this for the so service.
78+
var baseUri = !empty(apimUri) ? apimUri : 'https://${containerAppName}.${containerAppEnvironment.properties.defaultDomain}'
79+
80+
module appConfigConfigurations '../../modules/appConfiguration/upsertKeyValue.bicep' = {
81+
name: 'AppConfig_Add_DialogPortenBaseUri'
82+
params: {
83+
configStoreName: appConfigurationName
84+
key: 'Application:Dialoporten:BaseUri'
85+
value: baseUri
86+
keyValueType: 'custom'
6787
}
6888
}
6989

.azure/applications/web-api-so/staging.bicepparam

+1-1
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,6 @@ param imageTag = readEnvironmentVariable('IMAGE_TAG')
66

77
// secrets
88
param environmentKeyVaultName = readEnvironmentVariable('ENVIRONMENT_KEY_VAULT_NAME')
9-
param containerAppEnvironmentId = readEnvironmentVariable('CONTAINER_APP_ENVIRONMENT_ID')
9+
param containerAppEnvironmentName = readEnvironmentVariable('CONTAINER_APP_ENVIRONMENT_NAME')
1010
param appInsightConnectionString = readEnvironmentVariable('APP_INSIGHTS_CONNECTION_STRING')
1111
param appConfigurationName = readEnvironmentVariable('APP_CONFIGURATION_NAME')

.azure/applications/web-api-so/test.bicepparam

+1-1
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,6 @@ param imageTag = readEnvironmentVariable('IMAGE_TAG')
66

77
// secrets
88
param environmentKeyVaultName = readEnvironmentVariable('ENVIRONMENT_KEY_VAULT_NAME')
9-
param containerAppEnvironmentId = readEnvironmentVariable('CONTAINER_APP_ENVIRONMENT_ID')
9+
param containerAppEnvironmentName = readEnvironmentVariable('CONTAINER_APP_ENVIRONMENT_NAME')
1010
param appInsightConnectionString = readEnvironmentVariable('APP_INSIGHTS_CONNECTION_STRING')
1111
param appConfigurationName = readEnvironmentVariable('APP_CONFIGURATION_NAME')

.github/workflows/action-deploy-apps.yml

+3-3
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ on:
1414
required: true
1515
AZURE_ENVIRONMENT_KEY_VAULT_NAME:
1616
required: true
17-
AZURE_CONTAINER_APP_ENVIRONMENT_ID:
17+
AZURE_CONTAINER_APP_ENVIRONMENT_NAME:
1818
required: true
1919
AZURE_APP_INSIGHTS_CONNECTION_STRING:
2020
required: true
@@ -72,7 +72,7 @@ jobs:
7272
# IMAGE_TAG: ${{ inputs.gitShortSha }}
7373
# # secrets
7474
# ADO_CONNECTION_STRING_SECRET_URI: ${{ secrets.AZURE_ADO_CONNECTION_STRING_SECRET_URI }}
75-
# CONTAINER_APP_ENVIRONMENT_ID: ${{ secrets.AZURE_CONTAINER_APP_ENVIRONMENT_ID }}
75+
# CONTAINER_APP_ENVIRONMENT_NAME: ${{ secrets.AZURE_CONTAINER_APP_ENVIRONMENT_NAME }}
7676
# with:
7777
# scope: resourcegroup
7878
# template: ./.azure/applications/web-api-migration-job/main.bicep
@@ -139,7 +139,7 @@ jobs:
139139
# parameters
140140
IMAGE_TAG: ${{ inputs.gitShortSha }}
141141
# secrets
142-
CONTAINER_APP_ENVIRONMENT_ID: ${{ secrets.AZURE_CONTAINER_APP_ENVIRONMENT_ID }}
142+
CONTAINER_APP_ENVIRONMENT_NAME: ${{ secrets.AZURE_CONTAINER_APP_ENVIRONMENT_NAME }}
143143
APP_INSIGHTS_CONNECTION_STRING: ${{ secrets.AZURE_APP_INSIGHTS_CONNECTION_STRING }}
144144
APP_CONFIGURATION_NAME: ${{ secrets.AZURE_APP_CONFIGURATION_NAME }}
145145
ENVIRONMENT_KEY_VAULT_NAME: ${{ secrets.AZURE_ENVIRONMENT_KEY_VAULT_NAME }}

.github/workflows/ci-cd-main.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ jobs:
6363
AZURE_RESOURCE_GROUP_NAME: ${{ secrets.AZURE_RESOURCE_GROUP_NAME }}
6464
AZURE_ADO_CONNECTION_STRING_SECRET_URI: ${{ secrets.AZURE_ADO_CONNECTION_STRING_SECRET_URI }}
6565
AZURE_ENVIRONMENT_KEY_VAULT_NAME: ${{ secrets.AZURE_ENVIRONMENT_KEY_VAULT_NAME }}
66-
AZURE_CONTAINER_APP_ENVIRONMENT_ID: ${{ secrets.AZURE_CONTAINER_APP_ENVIRONMENT_ID }}
66+
AZURE_CONTAINER_APP_ENVIRONMENT_NAME: ${{ secrets.AZURE_CONTAINER_APP_ENVIRONMENT_NAME }}
6767
AZURE_APP_INSIGHTS_CONNECTION_STRING: ${{ secrets.AZURE_APP_INSIGHTS_CONNECTION_STRING }}
6868
AZURE_APP_CONFIGURATION_NAME: ${{ secrets.AZURE_APP_CONFIGURATION_NAME }}
6969
with:

0 commit comments

Comments
 (0)