Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 12 additions & 0 deletions nuget.config
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<packageSources>
<clear />
<add key="nuget.org" value="https://api.nuget.org/v3/index.json" />
</packageSources>
<packageSourceMapping>
<packageSource key="nuget.org">
<package pattern="*" />
</packageSource>
</packageSourceMapping>
</configuration>
70 changes: 52 additions & 18 deletions src/Dapr.Common/DaprDefaults.cs
Original file line number Diff line number Diff line change
Expand Up @@ -15,23 +15,57 @@

namespace Dapr;

internal static class DaprDefaults
/// <summary>
/// Provides access to the default and computed values for accessing the Dapr runtime.
/// </summary>
public static class DaprDefaults
{
private static string httpEndpoint = string.Empty;
private static string grpcEndpoint = string.Empty;
private static string daprApiToken = string.Empty;
private static string appApiToken = string.Empty;

public const string DaprApiTokenName = "DAPR_API_TOKEN";
public const string AppApiTokenName = "APP_API_TOKEN";
public const string DaprHttpEndpointName = "DAPR_HTTP_ENDPOINT";
public const string DaprHttpPortName = "DAPR_HTTP_PORT";
public const string DaprGrpcEndpointName = "DAPR_GRPC_ENDPOINT";
public const string DaprGrpcPortName = "DAPR_GRPC_PORT";
// Configured values
private static string _httpEndpoint = string.Empty;
private static string _grpcEndpoint = string.Empty;
private static string _daprApiToken = string.Empty;
private static string _appApiToken = string.Empty;

/// <summary>
/// The name of the environment variable containing the Dapr API token.
/// </summary>
public const string DaprApiTokenEnvironmentVariableName = "DAPR_API_TOKEN";
/// <summary>
/// The name of the environment variable containing the App API token.
/// </summary>
public const string AppApiTokenEnvironmentVariableName = "APP_API_TOKEN";
/// <summary>
/// The name of the environment variable containing the Dapr HTTP endpoint value.
/// </summary>
public const string DaprHttpEndpointEnvironmentVariableName = "DAPR_HTTP_ENDPOINT";
/// <summary>
/// The name of the environment variable containing the Dapr HTTP port value.
/// </summary>
public const string DaprHttpPortEnvironmentVariableName = "DAPR_HTTP_PORT";
/// <summary>
/// The name of the environment variable containing the Dapr GRPC endpoint value.
/// </summary>
public const string DaprGrpcEndpointEnvironmentVariableName = "DAPR_GRPC_ENDPOINT";
/// <summary>
/// The name of the environment variable containing the Dapr GRPC port value.
/// </summary>
public const string DaprGrpcPortEnvironmentVariableName = "DAPR_GRPC_PORT";

/// <summary>
/// The default scheme to use for HTTP communication with the Dapr runtime.
/// </summary>
public const string DefaultDaprScheme = "http";
/// <summary>
/// The default hostname to use for HTTP communication with the Dapr runtime.
/// </summary>
public const string DefaultDaprHost = "localhost";
/// <summary>
/// The default port to use for HTTP communication with the Dapr runtime.
/// </summary>
public const int DefaultHttpPort = 3500;
/// <summary>
/// The default port to use for GRPC communication with the Dapr runtime.
/// </summary>
public const int DefaultGrpcPort = 50001;

/// <summary>
Expand All @@ -40,7 +74,7 @@ internal static class DaprDefaults
/// <param name="configuration">The optional <see cref="IConfiguration"/> to pull the value from.</param>
/// <returns>The value of environment variable DAPR_API_TOKEN</returns>
public static string GetDefaultDaprApiToken(IConfiguration? configuration) =>
GetResourceValue(configuration, DaprApiTokenName) ?? string.Empty;
GetResourceValue(configuration, DaprApiTokenEnvironmentVariableName) ?? string.Empty;

/// <summary>
/// Creates an <see cref="HttpClient"/> configured to communicate with the default Dapr HTTP endpoint.
Expand Down Expand Up @@ -70,7 +104,7 @@ public static HttpClient CreateDefaultHttpClient(IHttpClientFactory httpClientFa
/// <param name="configuration">The optional <see cref="IConfiguration"/> to pull the value from.</param>
/// <returns>The value of environment variable APP_API_TOKEN</returns>
public static string GetDefaultAppApiToken(IConfiguration? configuration) =>
GetResourceValue(configuration, AppApiTokenName) ?? string.Empty;
GetResourceValue(configuration, AppApiTokenEnvironmentVariableName) ?? string.Empty;

/// <summary>
/// Get the value of HTTP endpoint based off environment variables
Expand All @@ -80,8 +114,8 @@ public static string GetDefaultAppApiToken(IConfiguration? configuration) =>
public static string GetDefaultHttpEndpoint(IConfiguration? configuration = null)
{
//Prioritize pulling from the IConfiguration and fallback to the environment variable if not populated
var endpoint = GetResourceValue(configuration, DaprHttpEndpointName);
var port = GetResourceValue(configuration, DaprHttpPortName);
var endpoint = GetResourceValue(configuration, DaprHttpEndpointEnvironmentVariableName);
var port = GetResourceValue(configuration, DaprHttpPortEnvironmentVariableName);

//Use the default HTTP port if we're unable to retrieve/parse the provided port
int? parsedGrpcPort = string.IsNullOrWhiteSpace(port) ? DefaultHttpPort : int.Parse(port);
Expand All @@ -97,8 +131,8 @@ public static string GetDefaultHttpEndpoint(IConfiguration? configuration = null
public static string GetDefaultGrpcEndpoint(IConfiguration? configuration = null)
{
//Prioritize pulling from the IConfiguration and fallback to the environment variable if not populated
var endpoint = GetResourceValue(configuration, DaprGrpcEndpointName);
var port = GetResourceValue(configuration, DaprGrpcPortName);
var endpoint = GetResourceValue(configuration, DaprGrpcEndpointEnvironmentVariableName);
var port = GetResourceValue(configuration, DaprGrpcPortEnvironmentVariableName);

//Use the default gRPC port if we're unable to retrieve/parse the provided port
int? parsedGrpcPort = string.IsNullOrWhiteSpace(port) ? DefaultGrpcPort : int.Parse(port);
Expand Down
18 changes: 9 additions & 9 deletions test/Dapr.Common.Test/DaprDefaultTest.cs
Original file line number Diff line number Diff line change
Expand Up @@ -316,8 +316,8 @@ public void ShouldBuildGrpcEndpointAndPortUsingPrefixedConfiguration()
[Fact]
public void ShouldBuildGrpcEndpointAndPortUsingConfiguration()
{
const string endpointVarName = DaprDefaults.DaprGrpcEndpointName;
const string portVarName = DaprDefaults.DaprGrpcPortName;
const string endpointVarName = DaprDefaults.DaprGrpcEndpointEnvironmentVariableName;
const string portVarName = DaprDefaults.DaprGrpcPortEnvironmentVariableName;
var original_GrpcEndpoint = Environment.GetEnvironmentVariable(endpointVarName);
var original_GrpcPort = Environment.GetEnvironmentVariable(portVarName);

Expand Down Expand Up @@ -452,8 +452,8 @@ public void ShouldBuildGrpcEndpointUsingEnvVarValues()
[Fact]
public void ShouldBuildGrpcEndpointDefaultToLocalhostWithPort()
{
const string endpointVarName = DaprDefaults.DaprGrpcEndpointName;
const string portVarName = DaprDefaults.DaprGrpcPortName;
const string endpointVarName = DaprDefaults.DaprGrpcEndpointEnvironmentVariableName;
const string portVarName = DaprDefaults.DaprGrpcPortEnvironmentVariableName;
var original_grpcEndpoint = Environment.GetEnvironmentVariable(endpointVarName);
var original_grpcPort = Environment.GetEnvironmentVariable(portVarName);

Expand All @@ -479,8 +479,8 @@ public void ShouldBuildGrpcEndpointDefaultToLocalhostWithPort()
[Fact]
public void ShouldBuildGrpcEndpointDefaultToLocalhostWithDefaultPort()
{
const string endpointVarName = DaprDefaults.DaprGrpcEndpointName;
const string portVarName = DaprDefaults.DaprGrpcPortName;
const string endpointVarName = DaprDefaults.DaprGrpcEndpointEnvironmentVariableName;
const string portVarName = DaprDefaults.DaprGrpcPortEnvironmentVariableName;
var original_grpcEndpoint = Environment.GetEnvironmentVariable(endpointVarName);
var original_grpcPort = Environment.GetEnvironmentVariable(portVarName);

Expand All @@ -506,7 +506,7 @@ public void ShouldBuildGrpcEndpointDefaultToLocalhostWithDefaultPort()
[Fact]
public void ShouldBuildApiTokenUsingConfiguration()
{
const string envVarName = DaprDefaults.DaprApiTokenName;
const string envVarName = DaprDefaults.DaprApiTokenEnvironmentVariableName;
var original_ApiToken = Environment.GetEnvironmentVariable(envVarName);

try
Expand All @@ -532,7 +532,7 @@ public void ShouldBuildApiTokenUsingConfiguration()
public void ShouldBuildApiTokenUsingPrefixedConfiguration()
{

const string envVarName = $"test_{DaprDefaults.DaprApiTokenName}";
const string envVarName = $"test_{DaprDefaults.DaprApiTokenEnvironmentVariableName}";
var original_ApiToken = Environment.GetEnvironmentVariable(envVarName);

try
Expand All @@ -559,7 +559,7 @@ public void ShouldBuildApiTokenUsingPrefixedConfiguration()
[Fact]
public void ShouldBuildApiTokenWithEnvVarWhenConfigurationNotAvailable()
{
const string envVarName = DaprDefaults.DaprApiTokenName;
const string envVarName = DaprDefaults.DaprApiTokenEnvironmentVariableName;
var original_ApiToken = Environment.GetEnvironmentVariable(envVarName);
const string apiToken = "abc123";
Environment.SetEnvironmentVariable(envVarName, apiToken);
Expand Down
Loading