Skip to content

Commit 7cfeb70

Browse files
kendlelam680claude
andauthored
Add CONTROL_PLANE_REGION to common app settings (#182)
feat: lift CONTROL_PLANE_REGION into common function app settings All three control plane function apps (resource-task, diagnostic-settings-task, scaling-task) now receive CONTROL_PLANE_REGION via commonAppSettings, not just scaling-task. Mirrors the change across both deployment paths so they stay in lockstep: - ARM/Bicep (control_plane.bicep, dist/azuredeploy.json) - Python imperative installer (resource_setup.py) Rebuilt dist artifacts whose contents bundle logging_install/src: - logging_install/dist/azure_logging_install.pyz - integration_quickstart/dist/azure_app_registration_quickstart.pyz - integration_quickstart/dist/azure_log_forwarding_quickstart.pyz Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
1 parent 48d757a commit 7cfeb70

6 files changed

Lines changed: 7 additions & 7 deletions

File tree

Binary file not shown.
Binary file not shown.

azure/logging_install/bicep/control_plane.bicep

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -97,6 +97,7 @@ var commonAppSettings = [
9797
{ name: DD_SITE_SETTING, value: datadogSite }
9898
{ name: DD_TELEMETRY_SETTING, value: datadogTelemetry ? 'true' : 'false' }
9999
{ name: CONTROL_PLANE_ID_SETTING, value: controlPlaneId }
100+
{ name: CONTROL_PLANE_REGION_SETTING, value: controlPlaneLocation }
100101
{ name: AZURE_AUTHORITY_SETTING, value: environment().authentication.loginEndpoint }
101102
{ name: 'AzureWebJobsFeatureFlags', value: 'EnableWorkerIndexing' }
102103
{ name: 'FUNCTIONS_EXTENSION_VERSION', value: '~4' }
@@ -163,7 +164,6 @@ resource scalingTask 'Microsoft.Web/sites@2022-09-01' = {
163164
appSettings: union(commonAppSettings, [
164165
{ name: RESOURCE_GROUP_SETTING, value: controlPlaneResourceGroupName }
165166
{ name: FORWARDER_IMAGE_SETTING, value: forwarderImage }
166-
{ name: CONTROL_PLANE_REGION_SETTING, value: controlPlaneLocation }
167167
{ name: PII_SCRUBBER_RULES_SETTING, value: piiScrubberRules }
168168
])
169169
linuxFxVersion: 'Python|3.11'
-4 Bytes
Binary file not shown.

azure/logging_install/dist/azuredeploy.json

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
"_generator": {
77
"name": "bicep",
88
"version": "0.40.2.10011",
9-
"templateHash": "18303434784922487411"
9+
"templateHash": "4805661646382295969"
1010
}
1111
},
1212
"functions": [
@@ -281,7 +281,7 @@
281281
"_generator": {
282282
"name": "bicep",
283283
"version": "0.40.2.10011",
284-
"templateHash": "8884005524177157862"
284+
"templateHash": "3098917315707782675"
285285
}
286286
},
287287
"parameters": {
@@ -421,7 +421,7 @@
421421
"properties": {
422422
"serverFarmId": "[resourceId('Microsoft.Web/serverfarms', format('control-plane-asp-{0}', parameters('controlPlaneId')))]",
423423
"siteConfig": {
424-
"appSettings": "[union(createArray(createObject('name', variables('STORAGE_CONNECTION_SETTING'), 'value', format('DefaultEndpointsProtocol=https;AccountName={0};EndpointSuffix={1};AccountKey={2}', format('lfostorage{0}', parameters('controlPlaneId')), environment().suffixes.storage, listKeys(resourceId('Microsoft.Storage/storageAccounts', format('lfostorage{0}', parameters('controlPlaneId'))), '2019-06-01').keys[0].value)), createObject('name', variables('DD_API_KEY_SETTING'), 'value', parameters('datadogApiKey')), createObject('name', variables('DD_SITE_SETTING'), 'value', parameters('datadogSite')), createObject('name', variables('DD_TELEMETRY_SETTING'), 'value', if(parameters('datadogTelemetry'), 'true', 'false')), createObject('name', variables('CONTROL_PLANE_ID_SETTING'), 'value', parameters('controlPlaneId')), createObject('name', variables('AZURE_AUTHORITY_SETTING'), 'value', environment().authentication.loginEndpoint), createObject('name', 'AzureWebJobsFeatureFlags', 'value', 'EnableWorkerIndexing'), createObject('name', 'FUNCTIONS_EXTENSION_VERSION', 'value', '~4'), createObject('name', 'FUNCTIONS_WORKER_RUNTIME', 'value', 'python'), createObject('name', 'WEBSITE_CONTENTAZUREFILECONNECTIONSTRING', 'value', format('DefaultEndpointsProtocol=https;AccountName={0};EndpointSuffix={1};AccountKey={2}', format('lfostorage{0}', parameters('controlPlaneId')), environment().suffixes.storage, listKeys(resourceId('Microsoft.Storage/storageAccounts', format('lfostorage{0}', parameters('controlPlaneId'))), '2019-06-01').keys[0].value)), createObject('name', variables('LOG_LEVEL_SETTING'), 'value', parameters('logLevel'))), createArray(createObject('name', variables('MONITORED_SUBSCRIPTIONS_SETTING'), 'value', parameters('monitoredSubscriptions')), createObject('name', variables('RESOURCE_TAG_FILTERS_SETTING'), 'value', parameters('resourceTagFilters'))))]",
424+
"appSettings": "[union(createArray(createObject('name', variables('STORAGE_CONNECTION_SETTING'), 'value', format('DefaultEndpointsProtocol=https;AccountName={0};EndpointSuffix={1};AccountKey={2}', format('lfostorage{0}', parameters('controlPlaneId')), environment().suffixes.storage, listKeys(resourceId('Microsoft.Storage/storageAccounts', format('lfostorage{0}', parameters('controlPlaneId'))), '2019-06-01').keys[0].value)), createObject('name', variables('DD_API_KEY_SETTING'), 'value', parameters('datadogApiKey')), createObject('name', variables('DD_SITE_SETTING'), 'value', parameters('datadogSite')), createObject('name', variables('DD_TELEMETRY_SETTING'), 'value', if(parameters('datadogTelemetry'), 'true', 'false')), createObject('name', variables('CONTROL_PLANE_ID_SETTING'), 'value', parameters('controlPlaneId')), createObject('name', variables('CONTROL_PLANE_REGION_SETTING'), 'value', parameters('controlPlaneLocation')), createObject('name', variables('AZURE_AUTHORITY_SETTING'), 'value', environment().authentication.loginEndpoint), createObject('name', 'AzureWebJobsFeatureFlags', 'value', 'EnableWorkerIndexing'), createObject('name', 'FUNCTIONS_EXTENSION_VERSION', 'value', '~4'), createObject('name', 'FUNCTIONS_WORKER_RUNTIME', 'value', 'python'), createObject('name', 'WEBSITE_CONTENTAZUREFILECONNECTIONSTRING', 'value', format('DefaultEndpointsProtocol=https;AccountName={0};EndpointSuffix={1};AccountKey={2}', format('lfostorage{0}', parameters('controlPlaneId')), environment().suffixes.storage, listKeys(resourceId('Microsoft.Storage/storageAccounts', format('lfostorage{0}', parameters('controlPlaneId'))), '2019-06-01').keys[0].value)), createObject('name', variables('LOG_LEVEL_SETTING'), 'value', parameters('logLevel'))), createArray(createObject('name', variables('MONITORED_SUBSCRIPTIONS_SETTING'), 'value', parameters('monitoredSubscriptions')), createObject('name', variables('RESOURCE_TAG_FILTERS_SETTING'), 'value', parameters('resourceTagFilters'))))]",
425425
"linuxFxVersion": "Python|3.11"
426426
},
427427
"publicNetworkAccess": "Enabled",
@@ -445,7 +445,7 @@
445445
"properties": {
446446
"serverFarmId": "[resourceId('Microsoft.Web/serverfarms', format('control-plane-asp-{0}', parameters('controlPlaneId')))]",
447447
"siteConfig": {
448-
"appSettings": "[union(createArray(createObject('name', variables('STORAGE_CONNECTION_SETTING'), 'value', format('DefaultEndpointsProtocol=https;AccountName={0};EndpointSuffix={1};AccountKey={2}', format('lfostorage{0}', parameters('controlPlaneId')), environment().suffixes.storage, listKeys(resourceId('Microsoft.Storage/storageAccounts', format('lfostorage{0}', parameters('controlPlaneId'))), '2019-06-01').keys[0].value)), createObject('name', variables('DD_API_KEY_SETTING'), 'value', parameters('datadogApiKey')), createObject('name', variables('DD_SITE_SETTING'), 'value', parameters('datadogSite')), createObject('name', variables('DD_TELEMETRY_SETTING'), 'value', if(parameters('datadogTelemetry'), 'true', 'false')), createObject('name', variables('CONTROL_PLANE_ID_SETTING'), 'value', parameters('controlPlaneId')), createObject('name', variables('AZURE_AUTHORITY_SETTING'), 'value', environment().authentication.loginEndpoint), createObject('name', 'AzureWebJobsFeatureFlags', 'value', 'EnableWorkerIndexing'), createObject('name', 'FUNCTIONS_EXTENSION_VERSION', 'value', '~4'), createObject('name', 'FUNCTIONS_WORKER_RUNTIME', 'value', 'python'), createObject('name', 'WEBSITE_CONTENTAZUREFILECONNECTIONSTRING', 'value', format('DefaultEndpointsProtocol=https;AccountName={0};EndpointSuffix={1};AccountKey={2}', format('lfostorage{0}', parameters('controlPlaneId')), environment().suffixes.storage, listKeys(resourceId('Microsoft.Storage/storageAccounts', format('lfostorage{0}', parameters('controlPlaneId'))), '2019-06-01').keys[0].value)), createObject('name', variables('LOG_LEVEL_SETTING'), 'value', parameters('logLevel'))), createArray(createObject('name', variables('RESOURCE_GROUP_SETTING'), 'value', parameters('controlPlaneResourceGroupName'))))]",
448+
"appSettings": "[union(createArray(createObject('name', variables('STORAGE_CONNECTION_SETTING'), 'value', format('DefaultEndpointsProtocol=https;AccountName={0};EndpointSuffix={1};AccountKey={2}', format('lfostorage{0}', parameters('controlPlaneId')), environment().suffixes.storage, listKeys(resourceId('Microsoft.Storage/storageAccounts', format('lfostorage{0}', parameters('controlPlaneId'))), '2019-06-01').keys[0].value)), createObject('name', variables('DD_API_KEY_SETTING'), 'value', parameters('datadogApiKey')), createObject('name', variables('DD_SITE_SETTING'), 'value', parameters('datadogSite')), createObject('name', variables('DD_TELEMETRY_SETTING'), 'value', if(parameters('datadogTelemetry'), 'true', 'false')), createObject('name', variables('CONTROL_PLANE_ID_SETTING'), 'value', parameters('controlPlaneId')), createObject('name', variables('CONTROL_PLANE_REGION_SETTING'), 'value', parameters('controlPlaneLocation')), createObject('name', variables('AZURE_AUTHORITY_SETTING'), 'value', environment().authentication.loginEndpoint), createObject('name', 'AzureWebJobsFeatureFlags', 'value', 'EnableWorkerIndexing'), createObject('name', 'FUNCTIONS_EXTENSION_VERSION', 'value', '~4'), createObject('name', 'FUNCTIONS_WORKER_RUNTIME', 'value', 'python'), createObject('name', 'WEBSITE_CONTENTAZUREFILECONNECTIONSTRING', 'value', format('DefaultEndpointsProtocol=https;AccountName={0};EndpointSuffix={1};AccountKey={2}', format('lfostorage{0}', parameters('controlPlaneId')), environment().suffixes.storage, listKeys(resourceId('Microsoft.Storage/storageAccounts', format('lfostorage{0}', parameters('controlPlaneId'))), '2019-06-01').keys[0].value)), createObject('name', variables('LOG_LEVEL_SETTING'), 'value', parameters('logLevel'))), createArray(createObject('name', variables('RESOURCE_GROUP_SETTING'), 'value', parameters('controlPlaneResourceGroupName'))))]",
449449
"linuxFxVersion": "Python|3.11"
450450
},
451451
"publicNetworkAccess": "Enabled",
@@ -469,7 +469,7 @@
469469
"properties": {
470470
"serverFarmId": "[resourceId('Microsoft.Web/serverfarms', format('control-plane-asp-{0}', parameters('controlPlaneId')))]",
471471
"siteConfig": {
472-
"appSettings": "[union(createArray(createObject('name', variables('STORAGE_CONNECTION_SETTING'), 'value', format('DefaultEndpointsProtocol=https;AccountName={0};EndpointSuffix={1};AccountKey={2}', format('lfostorage{0}', parameters('controlPlaneId')), environment().suffixes.storage, listKeys(resourceId('Microsoft.Storage/storageAccounts', format('lfostorage{0}', parameters('controlPlaneId'))), '2019-06-01').keys[0].value)), createObject('name', variables('DD_API_KEY_SETTING'), 'value', parameters('datadogApiKey')), createObject('name', variables('DD_SITE_SETTING'), 'value', parameters('datadogSite')), createObject('name', variables('DD_TELEMETRY_SETTING'), 'value', if(parameters('datadogTelemetry'), 'true', 'false')), createObject('name', variables('CONTROL_PLANE_ID_SETTING'), 'value', parameters('controlPlaneId')), createObject('name', variables('AZURE_AUTHORITY_SETTING'), 'value', environment().authentication.loginEndpoint), createObject('name', 'AzureWebJobsFeatureFlags', 'value', 'EnableWorkerIndexing'), createObject('name', 'FUNCTIONS_EXTENSION_VERSION', 'value', '~4'), createObject('name', 'FUNCTIONS_WORKER_RUNTIME', 'value', 'python'), createObject('name', 'WEBSITE_CONTENTAZUREFILECONNECTIONSTRING', 'value', format('DefaultEndpointsProtocol=https;AccountName={0};EndpointSuffix={1};AccountKey={2}', format('lfostorage{0}', parameters('controlPlaneId')), environment().suffixes.storage, listKeys(resourceId('Microsoft.Storage/storageAccounts', format('lfostorage{0}', parameters('controlPlaneId'))), '2019-06-01').keys[0].value)), createObject('name', variables('LOG_LEVEL_SETTING'), 'value', parameters('logLevel'))), createArray(createObject('name', variables('RESOURCE_GROUP_SETTING'), 'value', parameters('controlPlaneResourceGroupName')), createObject('name', variables('FORWARDER_IMAGE_SETTING'), 'value', variables('forwarderImage')), createObject('name', variables('CONTROL_PLANE_REGION_SETTING'), 'value', parameters('controlPlaneLocation')), createObject('name', variables('PII_SCRUBBER_RULES_SETTING'), 'value', parameters('piiScrubberRules'))))]",
472+
"appSettings": "[union(createArray(createObject('name', variables('STORAGE_CONNECTION_SETTING'), 'value', format('DefaultEndpointsProtocol=https;AccountName={0};EndpointSuffix={1};AccountKey={2}', format('lfostorage{0}', parameters('controlPlaneId')), environment().suffixes.storage, listKeys(resourceId('Microsoft.Storage/storageAccounts', format('lfostorage{0}', parameters('controlPlaneId'))), '2019-06-01').keys[0].value)), createObject('name', variables('DD_API_KEY_SETTING'), 'value', parameters('datadogApiKey')), createObject('name', variables('DD_SITE_SETTING'), 'value', parameters('datadogSite')), createObject('name', variables('DD_TELEMETRY_SETTING'), 'value', if(parameters('datadogTelemetry'), 'true', 'false')), createObject('name', variables('CONTROL_PLANE_ID_SETTING'), 'value', parameters('controlPlaneId')), createObject('name', variables('CONTROL_PLANE_REGION_SETTING'), 'value', parameters('controlPlaneLocation')), createObject('name', variables('AZURE_AUTHORITY_SETTING'), 'value', environment().authentication.loginEndpoint), createObject('name', 'AzureWebJobsFeatureFlags', 'value', 'EnableWorkerIndexing'), createObject('name', 'FUNCTIONS_EXTENSION_VERSION', 'value', '~4'), createObject('name', 'FUNCTIONS_WORKER_RUNTIME', 'value', 'python'), createObject('name', 'WEBSITE_CONTENTAZUREFILECONNECTIONSTRING', 'value', format('DefaultEndpointsProtocol=https;AccountName={0};EndpointSuffix={1};AccountKey={2}', format('lfostorage{0}', parameters('controlPlaneId')), environment().suffixes.storage, listKeys(resourceId('Microsoft.Storage/storageAccounts', format('lfostorage{0}', parameters('controlPlaneId'))), '2019-06-01').keys[0].value)), createObject('name', variables('LOG_LEVEL_SETTING'), 'value', parameters('logLevel'))), createArray(createObject('name', variables('RESOURCE_GROUP_SETTING'), 'value', parameters('controlPlaneResourceGroupName')), createObject('name', variables('FORWARDER_IMAGE_SETTING'), 'value', variables('forwarderImage')), createObject('name', variables('PII_SCRUBBER_RULES_SETTING'), 'value', parameters('piiScrubberRules'))))]",
473473
"linuxFxVersion": "Python|3.11"
474474
},
475475
"publicNetworkAccess": "Enabled",

azure/logging_install/src/azure_logging_install/resource_setup.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -163,6 +163,7 @@ def set_function_app_env_vars(config: Configuration, function_app_name: str):
163163
"DD_SITE": config.datadog_site,
164164
"DD_TELEMETRY": "true" if config.datadog_telemetry else "false",
165165
"CONTROL_PLANE_ID": config.control_plane_id,
166+
"CONTROL_PLANE_REGION": config.control_plane_region,
166167
"LOG_LEVEL": config.log_level,
167168
}
168169

@@ -180,7 +181,6 @@ def set_function_app_env_vars(config: Configuration, function_app_name: str):
180181
specific_settings = {
181182
"RESOURCE_GROUP": config.control_plane_rg,
182183
"FORWARDER_IMAGE": f"{IMAGE_REGISTRY_URL}/forwarder:latest",
183-
"CONTROL_PLANE_REGION": config.control_plane_region,
184184
"PII_SCRUBBER_RULES": config.pii_scrubber_rules,
185185
}
186186
else:

0 commit comments

Comments
 (0)