Skip to content

Commit 6c06d52

Browse files
add environment variable class
1 parent cf57e87 commit 6c06d52

File tree

3 files changed

+21
-3
lines changed

3 files changed

+21
-3
lines changed
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
// Copyright (c) Microsoft Corporation.
2+
// Licensed under the MIT license.
3+
//
4+
namespace Microsoft.Extensions.Configuration.AzureAppConfiguration
5+
{
6+
/// <summary>
7+
/// Environment variables used to configure Azure App Configuration provider behavior.
8+
/// </summary>
9+
public static class AzureAppConfigurationEnvironmentVariables
10+
{
11+
/// <summary>
12+
/// Environment variable to disable Feature Management schema compatibility.
13+
/// The value of this variable is a boolean string, e.g. "true" or "false".
14+
/// When set to "true", schema compatibility checks for feature flags are disabled,
15+
/// and all feature flags will be interpreted using the Microsoft Feature Flags schema.
16+
/// </summary>
17+
public const string DisableFmSchemaCompatibility = "AZURE_APP_CONFIGURATION_FM_SCHEMA_COMPATIBILITY_DISABLED";
18+
}
19+
}

src/Microsoft.Extensions.Configuration.AzureAppConfiguration/FeatureManagement/FeatureManagementKeyValueAdapter.cs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,6 @@ namespace Microsoft.Extensions.Configuration.AzureAppConfiguration.FeatureManage
1919
{
2020
internal class FeatureManagementKeyValueAdapter : IKeyValueAdapter
2121
{
22-
private const string DisableFmSchemaCompatibilityEnvironmentVariable = "AZURE_APP_CONFIGURATION_FM_SCHEMA_COMPATIBILITY_DISABLED";
2322
private FeatureFlagTracing _featureFlagTracing;
2423
private int _featureFlagIndex = 0;
2524
private bool _fmSchemaCompatibilityDisabled = false;
@@ -32,7 +31,7 @@ public FeatureManagementKeyValueAdapter(FeatureFlagTracing featureFlagTracing)
3231

3332
try
3433
{
35-
fmSchemaCompatibilityDisabled = Environment.GetEnvironmentVariable(DisableFmSchemaCompatibilityEnvironmentVariable);
34+
fmSchemaCompatibilityDisabled = Environment.GetEnvironmentVariable(AzureAppConfigurationEnvironmentVariables.DisableFmSchemaCompatibility);
3635
}
3736
catch (SecurityException) { }
3837

tests/Tests.AzureAppConfiguration/Unit/FeatureManagementTests.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2309,7 +2309,7 @@ public void EnvironmentVariableForcesMicrosoftSchemaForAllFlags()
23092309
try
23102310
{
23112311
// Act - Set environment variable to force Microsoft schema
2312-
Environment.SetEnvironmentVariable("AZURE_APP_CONFIGURATION_FM_SCHEMA_COMPATIBILITY_DISABLED", "true");
2312+
Environment.SetEnvironmentVariable(AzureAppConfigurationEnvironmentVariables.DisableFmSchemaCompatibility, "true");
23132313

23142314
var config = new ConfigurationBuilder()
23152315
.AddAzureAppConfiguration(options =>

0 commit comments

Comments
 (0)