CommunityToolkit.Aspire.GoFeatureFlag
9.4.0
Prefix Reserved
See the version list below for details.
dotnet add package CommunityToolkit.Aspire.GoFeatureFlag --version 9.4.0
NuGet\Install-Package CommunityToolkit.Aspire.GoFeatureFlag -Version 9.4.0
<PackageReference Include="CommunityToolkit.Aspire.GoFeatureFlag" Version="9.4.0" />
<PackageVersion Include="CommunityToolkit.Aspire.GoFeatureFlag" Version="9.4.0" />
<PackageReference Include="CommunityToolkit.Aspire.GoFeatureFlag" />
paket add CommunityToolkit.Aspire.GoFeatureFlag --version 9.4.0
#r "nuget: CommunityToolkit.Aspire.GoFeatureFlag, 9.4.0"
#addin nuget:?package=CommunityToolkit.Aspire.GoFeatureFlag&version=9.4.0
#tool nuget:?package=CommunityToolkit.Aspire.GoFeatureFlag&version=9.4.0
CommunityToolkit.Aspire.GoFeatureFlag
Registers a GoFeatureFlagProvider in the DI container for connecting to a GO Feature Flag instance.
Getting started
Install the package
Install the .NET Aspire GO Feature Flag Client library with NuGet:
dotnet add package CommunityToolkit.Aspire.GoFeatureFlag
Usage example
In the Program.cs file of your project, call the AddGoFeatureFlagClient
extension method to register a GoFeatureFlagProvider
for use via the dependency injection container. The method takes a connection name parameter.
builder.AddGoFeatureFlagClient("goff");
Configuration
The .NET Aspire GO Feature Flag Client integration provides multiple options to configure the server connection based on the requirements and conventions of your project.
Use a connection string
When using a connection string from the ConnectionStrings
configuration section, you can provide the name of the connection string when calling builder.AddGoFeatureFlagClient()
:
builder.AddGoFeatureFlagClient("goff");
And then the connection string will be retrieved from the ConnectionStrings
configuration section:
{
"ConnectionStrings": {
"goff": "Endpoint=http://localhost:19530/"
}
}
Use configuration providers
The .NET Aspire GO Feature Flag Client integration supports Microsoft.Extensions.Configuration. It loads the GoFeatureFlagClientSettings
from configuration by using the Aspire:GoFeatureFlag:Client
key. Example appsettings.json
that configures some of the options:
{
"Aspire": {
"GoFeatureFlag": {
"Client": {
"Endpoint": "http://localhost:19530/",
"MasterKey": "123456!@#$%"
}
}
}
}
Use inline delegates
Also you can pass the Action<GoFeatureFlagClientSettings> configureSettings
delegate to set up some or all the options inline, for example to set the API key from code:
builder.AddGoFeatureFlagClient("goff", settings => settings.ProviderOptions.ApiKey = "123456!@#$%");
AppHost extensions
In your AppHost project, install the CommunityToolkit.Aspire.Hosting.GoFeatureFlag
library with NuGet:
dotnet add package CommunityToolkit.Aspire.Hosting.GoFeatureFlag
Then, in the Program.cs file of AppHost
, register a GO Feature Flag instance and consume the connection using the following methods:
var goff = builder.AddGoFeatureFlag("goff");
var myService = builder.AddProject<Projects.MyService>()
.WithReference(goff);
The WithReference
method configures a connection in the MyService
project named goff
. In the Program.cs file of MyService
, the GO Feature Flag connection can be consumed using:
builder.AddGoFeatureFlagClient("goff");
Then, in your service, inject GoFeatureFlagProvider
and use it to interact with the GO Feature Flag API:
public class MyService(GoFeatureFlagProvider goFeatureFlagProvider)
{
// ...
}
Additional documentation
- https://github.com/thomaspoignant/go-feature-flag
- https://learn.microsoft.com/dotnet/aspire/community-toolkit/hosting-go-feature-flag
Feedback & contributing
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net8.0 is compatible. 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 is compatible. 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. |
-
net8.0
- AspNetCore.HealthChecks.Uris (>= 9.0.0)
- Microsoft.Extensions.Configuration.Binder (>= 9.0.4)
- Microsoft.Extensions.Diagnostics.HealthChecks (>= 9.0.4)
- Microsoft.Extensions.Hosting.Abstractions (>= 9.0.4)
- OpenFeature.Contrib.GOFeatureFlag (>= 0.2.1)
- OpenTelemetry.Extensions.Hosting (>= 1.11.1)
-
net9.0
- AspNetCore.HealthChecks.Uris (>= 9.0.0)
- Microsoft.Extensions.Configuration.Binder (>= 9.0.4)
- Microsoft.Extensions.Diagnostics.HealthChecks (>= 9.0.4)
- Microsoft.Extensions.Hosting.Abstractions (>= 9.0.4)
- OpenFeature.Contrib.GOFeatureFlag (>= 0.2.1)
- OpenTelemetry.Extensions.Hosting (>= 1.11.1)
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 |
---|---|---|
9.4.1-beta.280 | 87 | a day ago |
9.4.1-beta.279 | 86 | a day ago |
9.4.1-beta.277 | 124 | 10 days ago |
9.4.1-beta.276 | 118 | 10 days ago |
9.4.1-beta.275 | 114 | 10 days ago |
9.4.1-beta.274 | 114 | 10 days ago |
9.4.1-beta.273 | 110 | 10 days ago |
9.4.1-beta.272 | 111 | 10 days ago |
9.4.1-beta.271 | 112 | 10 days ago |
9.4.1-beta.270 | 120 | 13 days ago |
9.4.0 | 146 | 13 days ago |
9.4.0-beta.269 | 121 | 13 days ago |
9.4.0-beta.268 | 115 | 13 days ago |
9.3.1-beta.267 | 120 | 13 days ago |
9.3.1-beta.266 | 48 | 14 days ago |
9.3.1-beta.265 | 139 | 18 days ago |
9.3.1-beta.264 | 145 | 18 days ago |
9.3.1-beta.263 | 143 | 18 days ago |
9.3.1-beta.262 | 151 | 18 days ago |
9.3.1-beta.260 | 122 | 22 days ago |
9.3.1-beta.259 | 116 | 25 days ago |
9.3.1-beta.258 | 120 | 25 days ago |
9.3.1-beta.257 | 120 | 25 days ago |
9.3.1-beta.256 | 120 | 25 days ago |
9.3.1-beta.255 | 116 | 25 days ago |
9.3.1-beta.254 | 118 | 25 days ago |
9.3.1-beta.253 | 118 | a month ago |
9.3.1-beta.252 | 95 | a month ago |
9.3.1-beta.250 | 95 | a month ago |
9.3.1-beta.249 | 95 | a month ago |
9.3.1-beta.248 | 92 | a month ago |
9.3.1-beta.247 | 94 | a month ago |
9.3.1-beta.244 | 445 | a month ago |
9.3.1-beta.242 | 445 | a month ago |
9.3.1-beta.241 | 112 | a month ago |
9.3.0 | 145 | a month ago |
9.3.0-beta.239 | 111 | a month ago |
9.2.2-beta.237 | 114 | a month ago |
9.2.2-beta.236 | 78 | 2 months ago |
9.2.2-beta.230 | 106 | 2 months ago |
9.2.2-beta.229 | 108 | 2 months ago |
9.2.2-beta.228 | 123 | 2 months ago |
9.2.2-beta.227 | 121 | 2 months ago |
9.2.2-beta.226 | 122 | 2 months ago |
9.2.2-beta.225 | 118 | 2 months ago |
9.2.2-beta.224 | 125 | 2 months ago |
9.2.2-beta.223 | 120 | 2 months ago |
9.2.2-beta.222 | 128 | 2 months ago |
9.2.2-beta.220 | 116 | 2 months ago |
9.2.2-beta.218 | 120 | 2 months ago |
9.2.2-beta.217 | 163 | 2 months ago |
9.2.2-beta.216 | 166 | 2 months ago |
9.2.2-beta.215 | 166 | 2 months ago |
9.2.2-beta.214 | 162 | 2 months ago |
9.2.2-beta.213 | 156 | 2 months ago |
9.2.2-beta.212 | 157 | 2 months ago |
9.2.2-beta.211 | 164 | 2 months ago |
9.2.2-beta.210 | 166 | 2 months ago |
9.2.2-beta.208 | 57 | 2 months ago |
9.2.1 | 99 | 2 months ago |
9.2.1-beta.207 | 89 | 2 months ago |
9.2.1-beta.206 | 53 | 2 months ago |
9.2.1-beta.205 | 53 | 2 months ago |
9.2.1-beta.204 | 51 | 2 months ago |
9.2.1-beta.203 | 54 | 2 months ago |
9.2.0 | 104 | 2 months ago |
9.2.0-beta.202 | 51 | 2 months ago |
9.2.0-beta.201 | 52 | 2 months ago |
9.2.0-beta.199 | 53 | 2 months ago |
9.2.0-beta.198 | 49 | 2 months ago |
9.1.1-beta.197 | 56 | 2 months ago |
9.1.1-beta.196 | 54 | 2 months ago |
9.1.1-beta.195 | 50 | 2 months ago |
9.1.1-beta.194 | 54 | 2 months ago |
9.1.1-beta.193 | 56 | 2 months ago |
9.1.1-beta.192 | 60 | 2 months ago |
9.1.1-beta.191 | 51 | 2 months ago |
9.1.1-beta.190 | 60 | 2 months ago |
9.1.1-beta.189 | 54 | 2 months ago |
9.1.1-beta.188 | 59 | 2 months ago |
9.1.1-beta.187 | 63 | 2 months ago |
9.1.1-beta.183 | 58 | 2 months ago |
9.1.1-beta.182 | 63 | 3 months ago |
9.1.1-beta.181 | 78 | 3 months ago |
9.1.1-beta.180 | 60 | 3 months ago |
9.1.1-beta.178 | 62 | 3 months ago |
9.1.1-beta.177 | 64 | 3 months ago |
9.1.1-beta.176 | 64 | 3 months ago |
9.1.1-beta.175 | 63 | 3 months ago |
9.1.1-beta.173 | 62 | 3 months ago |
9.1.1-beta.169 | 62 | 3 months ago |
9.1.1-beta.168 | 59 | 3 months ago |