1 type derived from ParameterResource
Aspire.Hosting (1)
58 instantiations of ParameterResource
Aspire.Hosting (7)
ParameterResourceBuilderExtensions.cs (7)
33new ParameterResource(
89new ParameterResource(
113new ParameterResource(
149new ParameterResource(name, p => GetParameterValue(builder.Configuration, name, value), secret)
284var parameter = new ParameterResource(builder.Resource.Name, _ => "", secret: true);
349var parameterResource = new ParameterResource(name, defaultValue => GetParameterValue(builder.Configuration, name, defaultValue), secret)
377var parameterResource = new ParameterResource(name, defaultValue => GetParameterValue(builder.Configuration, name, defaultValue), secret);
Aspire.Hosting.Azure.Tests (3)
Aspire.Hosting.Garnet.Tests (1)
Aspire.Hosting.GitHub.Models.Tests (3)
Aspire.Hosting.Keycloak.Tests (1)
Aspire.Hosting.Milvus.Tests (5)
Aspire.Hosting.MongoDB.Tests (4)
Aspire.Hosting.MySql.Tests (2)
Aspire.Hosting.Nats.Tests (2)
Aspire.Hosting.OpenAI.Tests (2)
Aspire.Hosting.Oracle.Tests (3)
Aspire.Hosting.PostgreSQL.Tests (4)
Aspire.Hosting.Qdrant.Tests (2)
Aspire.Hosting.RabbitMQ.Tests (2)
Aspire.Hosting.Redis.Tests (1)
Aspire.Hosting.SqlServer.Tests (2)
Aspire.Hosting.Tests (13)
ExpressionResolverTests.cs (4)
51data.Add(new ExpressionResolverTestData(false, new ParameterResource("SecretParameter", _ => "SecretParameter", secret: true)), null, ("SecretParameter", true));
52data.Add(new ExpressionResolverTestData(false, new ParameterResource("NonSecretParameter", _ => "NonSecretParameter", secret: false)), null, ("NonSecretParameter", false));
320{ "SecretParameter", ReferenceExpression.Create("SecretParameter", [new ParameterResource("SecretParameter", _ => "SecretParameter", secret: true)], [], [null]) },
321{ "NonSecretParameter", ReferenceExpression.Create("NonSecretParameter", [new ParameterResource("NonSecretParameter", _ => "NonSecretParameter", secret: false)], [], [null]) },
Aspire.Hosting.Valkey.Tests (1)
456 references to ParameterResource
Aspire.Hosting (91)
ContainerResourceBuilderExtensions.cs (7)
1042/// Thrown when <see cref="ContainerResourceBuilderExtensions.WithBuildArg{T}(IResourceBuilder{T}, string, IResourceBuilder{ParameterResource})"/> is
1047/// The <see cref="ContainerResourceBuilderExtensions.WithBuildArg{T}(IResourceBuilder{T}, string, IResourceBuilder{ParameterResource})"/> extension method
1066public static IResourceBuilder<T> WithBuildArg<T>(this IResourceBuilder<T> builder, string name, IResourceBuilder<ParameterResource> value) where T : ContainerResource
1089/// Thrown when <see cref="ContainerResourceBuilderExtensions.WithBuildSecret{T}(IResourceBuilder{T}, string, IResourceBuilder{ParameterResource})"/> is
1094/// The <see cref="ContainerResourceBuilderExtensions.WithBuildSecret{T}(IResourceBuilder{T}, string, IResourceBuilder{ParameterResource})"/> extension method
1096/// variable-based secret being passed to the build process. The value of the environment variable is the value of the secret referenced by the <see cref="ParameterResource"/>.
1113public static IResourceBuilder<T> WithBuildSecret<T>(this IResourceBuilder<T> builder, string name, IResourceBuilder<ParameterResource> value) where T : ContainerResource
Orchestrator\ParameterProcessor.cs (22)
33private readonly List<ParameterResource> _unresolvedParameters = [];
44public async Task InitializeParametersAsync(IEnumerable<ParameterResource> parameterResources, bool waitForResolution = false)
48foreach (var parameterResource in parameterResources)
105var referencedParameters = new Dictionary<string, ParameterResource>();
110var explicitParameters = model.Resources.OfType<ParameterResource>();
126private async Task CollectDependentParameterResourcesAsync(DistributedApplicationModel model, Dictionary<string, ParameterResource> referencedParameters, CancellationToken cancellationToken)
136foreach (var parameter in dependencies.OfType<ParameterResource>())
143private async Task ProcessParameterAsync(ParameterResource parameterResource)
195private void AddSetParameterCommand(ParameterResource parameterResource)
230private static bool HasParameterValue(ParameterResource parameterResource)
249public async Task SetParameterAsync(ParameterResource parameterResource, CancellationToken cancellationToken = default)
329public async Task DeleteParameterAsync(ParameterResource parameterResource, CancellationToken cancellationToken = default)
417private async Task ApplyParameterValueAsync(ParameterResource parameterResource, string inputValue, bool saveToDeploymentState, CancellationToken cancellationToken = default)
452internal async Task HandleUnresolvedParametersAsync(IList<ParameterResource> unresolvedParameters, CancellationToken cancellationToken)
483var resourceInputs = new List<(ParameterResource ParameterResource, InteractionInput Input)>();
485foreach (var parameter in unresolvedParameters)
554private void OnParameterResolved(IList<ParameterResource> unresolvedParameters, ParameterResource parameter)
564private async Task SaveParametersToDeploymentStateAsync(IEnumerable<ParameterResource> parameters, CancellationToken cancellationToken)
567foreach (var parameter in parameters)
592private async Task UpdateParameterStateAsync(ParameterResource parameterResource, string value, ResourceStateSnapshot? state)
ParameterResourceBuilderExtensions.cs (22)
27public static IResourceBuilder<ParameterResource> AddParameter(this IDistributedApplicationBuilder builder, [ResourceName] string name, bool secret = false)
52public static IResourceBuilder<ParameterResource> AddParameter(this IDistributedApplicationBuilder builder, [ResourceName] string name, string value, bool publishValueAsDefault = false, bool secret = false)
73public static IResourceBuilder<ParameterResource> AddParameter(this IDistributedApplicationBuilder builder, string name, Func<string> valueGetter, bool publishValueAsDefault = false, bool secret = false)
106public static IResourceBuilder<ParameterResource> AddParameterFromConfiguration(this IDistributedApplicationBuilder builder, string name, string configurationKey, bool secret = false)
136public static IResourceBuilder<ParameterResource> AddParameter(this IDistributedApplicationBuilder builder, [ResourceName] string name, ParameterDefault value, bool secret = false, bool persist = false)
166public static IResourceBuilder<ParameterResource> WithDescription(this IResourceBuilder<ParameterResource> builder, string description, bool enableMarkdown = false)
198public static IResourceBuilder<ParameterResource> WithCustomInput(this IResourceBuilder<ParameterResource> builder, Func<ParameterResource, InteractionInput> createInput)
223where T : ParameterResource
284var parameter = new ParameterResource(builder.Resource.Name, _ => "", secret: true);
303/// <returns>The created <see cref="ParameterResource"/>.</returns>
308public static ParameterResource CreateDefaultPasswordParameter(
333/// Creates a new <see cref="ParameterResource"/> that has a generated value using the <paramref name="parameterDefault"/>.
342/// <returns>The created <see cref="ParameterResource"/>.</returns>
343public static ParameterResource CreateGeneratedParameter(
349var parameterResource = new ParameterResource(name, defaultValue => GetParameterValue(builder.Configuration, name, defaultValue), secret)
363/// Creates a new <see cref="ParameterResource"/>.
371/// <returns>The created <see cref="ParameterResource"/>.</returns>
372public static ParameterResource CreateParameter(IDistributedApplicationBuilder builder, string name, bool secret)
377var parameterResource = new ParameterResource(name, defaultValue => GetParameterValue(builder.Configuration, name, defaultValue), secret);
Aspire.Hosting.Azure (36)
Aspire.Hosting.Azure.AppContainers (11)
ContainerAppExtensions.cs (10)
26/// <para>The <see cref="ConfigureCustomDomain(ContainerApp, IResourceBuilder{ParameterResource}, IResourceBuilder{ParameterResource})"/> extension method
28/// <para>The <see cref="ConfigureCustomDomain(ContainerApp, IResourceBuilder{ParameterResource}, IResourceBuilder{ParameterResource})"/> method is used
31/// <para>The <see cref="ConfigureCustomDomain(ContainerApp, IResourceBuilder{ParameterResource}, IResourceBuilder{ParameterResource})"/> method takes
42/// passing them to the <see cref="ConfigureCustomDomain(ContainerApp, IResourceBuilder{ParameterResource}, IResourceBuilder{ParameterResource})"/>
58public static void ConfigureCustomDomain(this ContainerApp app, IResourceBuilder<ParameterResource> customDomain, IResourceBuilder<ParameterResource> certificateName)
Aspire.Hosting.Azure.AppService (5)
Aspire.Hosting.Azure.KeyVault (5)
AzureKeyVaultResourceExtensions.cs (5)
38/// Use the <see cref="AddSecret(IResourceBuilder{AzureKeyVaultResource}, string, ParameterResource)"/> methods to add secrets to the Key Vault:
180public static IResourceBuilder<AzureKeyVaultSecretResource> AddSecret(this IResourceBuilder<AzureKeyVaultResource> builder, string name, IResourceBuilder<ParameterResource> parameterResource)
195public static IResourceBuilder<AzureKeyVaultSecretResource> AddSecret(this IResourceBuilder<AzureKeyVaultResource> builder, string name, ParameterResource parameterResource)
236public static IResourceBuilder<AzureKeyVaultSecretResource> AddSecret(this IResourceBuilder<AzureKeyVaultResource> builder, [ResourceName] string name, string secretName, IResourceBuilder<ParameterResource> parameterResource)
252public static IResourceBuilder<AzureKeyVaultSecretResource> AddSecret(this IResourceBuilder<AzureKeyVaultResource> builder, [ResourceName] string name, string secretName, ParameterResource parameterResource)
Aspire.Hosting.Azure.PostgreSQL (10)
Aspire.Hosting.Azure.ServiceBus (1)
Aspire.Hosting.Azure.Tests (27)
Aspire.Hosting.Docker (7)
Aspire.Hosting.Docker.Tests (1)
Aspire.Hosting.Garnet (4)
Aspire.Hosting.Garnet.Tests (1)
Aspire.Hosting.GitHub.Models (8)
Aspire.Hosting.GitHub.Models.Tests (3)
Aspire.Hosting.Keycloak (7)
Aspire.Hosting.Keycloak.Tests (4)
Aspire.Hosting.Kubernetes (5)
Aspire.Hosting.Milvus (5)
Aspire.Hosting.Milvus.Tests (6)
Aspire.Hosting.MongoDB (7)
Aspire.Hosting.MongoDB.Tests (8)
Aspire.Hosting.MySql (5)
Aspire.Hosting.MySql.Tests (7)
Aspire.Hosting.Nats (7)
Aspire.Hosting.Nats.Tests (6)
Aspire.Hosting.OpenAI (4)
Aspire.Hosting.OpenAI.Tests (2)
Aspire.Hosting.Oracle (4)
Aspire.Hosting.Oracle.Tests (4)
Aspire.Hosting.Orleans (2)
Aspire.Hosting.PostgreSQL (9)
Aspire.Hosting.PostgreSQL.Tests (9)
Aspire.Hosting.Qdrant (5)
Aspire.Hosting.Qdrant.Tests (3)
Aspire.Hosting.RabbitMQ (7)
Aspire.Hosting.RabbitMQ.Tests (6)
Aspire.Hosting.Redis (6)
Aspire.Hosting.Redis.Tests (1)
Aspire.Hosting.Seq (1)
Aspire.Hosting.SqlServer (6)
Aspire.Hosting.SqlServer.Tests (6)
Aspire.Hosting.Tests (97)
Orchestrator\ParameterProcessorTests.cs (66)
39foreach (var param in parameters)
65foreach (var param in parameters)
81var secretParam = CreateParameterResource("secret", "secretValue", secret: true);
111var parameterWithMissingValue = CreateParameterWithMissingValue("missingParam");
127var parameterWithMissingValue = CreateParameterWithMissingValue("missingParam");
145var parameterWithMissingValue = CreateParameterWithMissingValue("missingParam");
160var parameterWithError = CreateParameterWithGenericError("errorParam");
183var param1 = CreateParameterWithMissingValue("param1");
184var param2 = CreateParameterWithMissingValue("param2");
185var secretParam = CreateParameterWithMissingValue("secretParam", secret: true);
187List<ParameterResource> parameters = [param1, param2, secretParam];
189foreach (var param in parameters)
279var parameterWithMissingValue = CreateParameterWithMissingValue("missingParam");
321var parameterWithMissingValue = CreateParameterWithMissingValue("missingParam");
345var parameterWithError = CreateParameterWithGenericError("errorParam");
374var parameter = CreateParameterWithMissingValue("testParam");
416var param1 = CreateParameterWithMissingValue("param1");
420var param2 = CreateParameterWithMissingValue("param2");
424List<ParameterResource> parameters = [param1, param2];
426foreach (var param in parameters)
467var secretParam = CreateParameterWithMissingValue("secretParam", secret: true);
471List<ParameterResource> parameters = [secretParam];
504var param = CreateParameterWithMissingValue("param1");
507List<ParameterResource> parameters = [param];
543var param = CreateParameterWithMissingValue("param1");
546List<ParameterResource> parameters = [param];
593var explicitParameterResource = model.Resources.OfType<ParameterResource>().First(p => p.Name == "explicitParam");
594var referencedParameterResource = model.Resources.OfType<ParameterResource>().First(p => p.Name == "referencedParam");
638var explicitParameterResource = model.Resources.OfType<ParameterResource>().Single();
664var parameterResource = model.Resources.OfType<ParameterResource>().Single();
687var parameterResource = model.Resources.OfType<ParameterResource>().Single();
709var parameterResource = model.Resources.OfType<ParameterResource>().Single();
735var parameterResource = model.Resources.OfType<ParameterResource>().Single();
765var parameters = model.Resources.OfType<ParameterResource>().ToList();
768foreach (var param in parameters)
806var parameterResource = model.Resources.OfType<ParameterResource>().Single();
840var parameters = model.Resources.OfType<ParameterResource>().ToList();
843var parameterResource = parameters[0];
857var parameter = CreateParameterResource("testParam", "testValue");
877var parameter = CreateParameterResource("testParam", "testValue");
897var parameter = CreateParameterResource("testParam", "initialValue");
940var parameter = CreateParameterResource("testParam", "initialValue");
974var parameter = CreateParameterResource("secretParam", "secretValue", secret: true);
1017var parameter = CreateParameterWithMissingValue("testParam");
1068var parameter = CreateParameterWithMissingValue("testParam");
1194private static ParameterResource CreateParameterResource(string name, string value, bool secret = false)
1203private static ParameterResource CreateParameterWithMissingValue(string name, bool secret = false)
1208private static ParameterResource CreateParameterWithGenericError(string name)
1233var parameterWithGenerateDefault = new ParameterResource(
1269List<ParameterResource> parameters = [connectionStringParam];
1304var regularParam = new ParameterResource(
1310List<ParameterResource> parameters = [regularParam];
1345var customParam = new ParameterResource(
1354List<ParameterResource> parameters = [customParam];
1388var parameter = CreateParameterResource("testParam", "initialValue");
1441var parameter = CreateParameterResource("testParam", "initialValue");
1497var parameter = CreateParameterResource("testParam", "initialValue");
1534var parameter = CreateParameterResource("testParam", "initialValue");
Aspire.Hosting.Valkey (4)
Aspire.Hosting.Valkey.Tests (1)
Aspire.Playground.Tests (2)