* Make `async:true` the default for `invoke` calls (#3750) * Switch away from native grpc impl. (#3728) * Remove usage of the 'deasync' library from @pulumi/pulumi. (#3752) * Only retry as long as we get unavailable back. Anything else continues. (#3769) * Handle all errors for now. (#3781) * Do not assume --yes was present when using pulumi in non-interactive mode (#3793) * Upgrade all paths for sdk and pkg to v2 * Backport C# invoke classes and other recent gen changes (#4288) Adjust C# generation * Replace IDeployment with a sealed class (#4318) Replace IDeployment with a sealed class * .NET: default to args subtype rather than Args.Empty (#4320) * Adding system namespace for Dotnet code gen This is required for using Obsolute attributes for deprecations ``` Iam/InstanceProfile.cs(142,10): error CS0246: The type or namespace name 'ObsoleteAttribute' could not be found (are you missing a using directive or an assembly reference?) [/Users/stack72/code/go/src/github.com/pulumi/pulumi-aws/sdk/dotnet/Pulumi.Aws.csproj] Iam/InstanceProfile.cs(142,10): error CS0246: The type or namespace name 'Obsolete' could not be found (are you missing a using directive or an assembly reference?) [/Users/stack72/code/go/src/github.com/pulumi/pulumi-aws/sdk/dotnet/Pulumi.Aws.csproj] ``` * Fix the nullability of config type properties in C# codegen (#4379)
42 lines
1.4 KiB
C#
42 lines
1.4 KiB
C#
// Copyright 2016-2019, Pulumi Corporation
|
|
|
|
using System.Threading.Tasks;
|
|
|
|
namespace Pulumi
|
|
{
|
|
internal interface IDeployment
|
|
{
|
|
/// <summary>
|
|
/// Returns the current stack name.
|
|
/// </summary>
|
|
string StackName { get; }
|
|
|
|
/// <summary>
|
|
/// Returns the current project name.
|
|
/// </summary>
|
|
string ProjectName { get; }
|
|
|
|
/// <summary>
|
|
/// Whether or not the application is currently being previewed or actually applied.
|
|
/// </summary>
|
|
bool IsDryRun { get; }
|
|
|
|
/// <summary>
|
|
/// Dynamically invokes the function '<paramref name="token"/>', which is offered by a
|
|
/// provider plugin.
|
|
/// <para/>
|
|
/// The result of <see cref="InvokeAsync"/> will be a <see cref="Task"/> resolved to the
|
|
/// result value of the provider plugin.
|
|
/// <para/>
|
|
/// The <paramref name="args"/> inputs can be a bag of computed values(including, `T`s,
|
|
/// <see cref="Task{TResult}"/>s, <see cref="Output{T}"/>s etc.).
|
|
/// </summary>
|
|
Task<T> InvokeAsync<T>(string token, InvokeArgs args, InvokeOptions? options = null);
|
|
|
|
/// <summary>
|
|
/// Same as <see cref="InvokeAsync{T}(string, InvokeArgs, InvokeOptions)"/>, however the
|
|
/// return value is ignored.
|
|
/// </summary>
|
|
Task InvokeAsync(string token, InvokeArgs args, InvokeOptions? options = null);
|
|
}
|
|
}
|