CatConsult.AppConfigConfigurationProvider
2.0.0-beta
See the version list below for details.
dotnet add package CatConsult.AppConfigConfigurationProvider --version 2.0.0-beta
NuGet\Install-Package CatConsult.AppConfigConfigurationProvider -Version 2.0.0-beta
<PackageReference Include="CatConsult.AppConfigConfigurationProvider" Version="2.0.0-beta" />
paket add CatConsult.AppConfigConfigurationProvider --version 2.0.0-beta
#r "nuget: CatConsult.AppConfigConfigurationProvider, 2.0.0-beta"
// Install CatConsult.AppConfigConfigurationProvider as a Cake Addin #addin nuget:?package=CatConsult.AppConfigConfigurationProvider&version=2.0.0-beta&prerelease // Install CatConsult.AppConfigConfigurationProvider as a Cake Tool #tool nuget:?package=CatConsult.AppConfigConfigurationProvider&version=2.0.0-beta&prerelease
AWS AppConfig Configuration Provider for .NET
An opinionated .NET Configuration Provider for AWS AppConfig.
Usage
First, download the provider from NuGet:
dotnet add package CatConsult.AppConfigConfigurationProvider
Then add the provider using the AddAppConfig
extension method:
builder.Configuration.AddAppConfig();
By default, the provider will look for a configuration section named AppConfig
.
This can be overriden by specifying a different section name:
builder.Configuration.AddAppConfig("MyCustomName");
Configuration
The provider requires some minimal configuration in order for it to know which AppConfig profiles to load:
{
"AppConfig": {
"Profiles": [
"abc1234:def5678:ghi9123",
"q2w3e25:po92j45:bt9s090:300"
]
}
}
As you can see in the example above, the AppConfig metadata are encoded as a formatted string:
ApplicationId:EnvironmentId:ProfileId[:ReloadAfter]
ReloadAfter
is an optional 4th parameter that configures the reload/refresh period.
It is an integer that represents time in seconds.
If not specified, it defaults to the provider's default setting, which is 90 seconds.
The default ReloadAfter
setting can be overridden as well:
{
"AppConfig": {
"Defaults": {
"ReloadAfter": 120
}
}
}
Sample
A sample ASP.NET Web Application is available in the samples/AppConfigTesting
folder.
In your own AWS environment, copy the contents of yamltest.yml
into a new AppConfig freeform configuration profile.
Then, use dotnet user-secrets
to specify the AppConfig profile:
dotnet user-secrets set "AppConfig:Profiles:0" "abc1234:def5678:ghi9123"
Finally, ensure that you have the correct AWS credentials/profile configured in your environment, and run the sample:
dotnet run
Experiment by changing the configuration on AppConfig and deploying. After a while, you should see the application reload the configuration automatically when you refresh the home page.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net6.0 is compatible. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. |
-
net6.0
- AWSSDK.AppConfigData (>= 3.7.300.16)
- CatConsult.ConfigurationParsers (>= 2.1.0)
- Microsoft.Extensions.Configuration (>= 6.0.0)
- Microsoft.Extensions.Configuration.Abstractions (>= 6.0.0)
- Microsoft.Extensions.Configuration.Binder (>= 6.0.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated | |
---|---|---|---|
2.5.1 | 9,365 | 1/10/2024 | |
2.5.0 | 122 | 1/9/2024 | |
2.0.0 | 149 | 1/2/2024 | |
2.0.0-beta | 152 | 12/8/2023 | |
2.0.0-alpha | 143 | 12/7/2023 | |
1.1.0 | 3,932 | 7/7/2023 | |
1.0.0 | 4,159 | 6/25/2023 |