* 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)
55 lines
2 KiB
C#
55 lines
2 KiB
C#
using System.Threading.Tasks;
|
|
|
|
namespace Pulumi
|
|
{
|
|
/// <summary>
|
|
/// Metadata of the deployment that is currently running. Accessible via <see cref="Deployment.Instance"/>.
|
|
/// </summary>
|
|
public sealed class DeploymentInstance : IDeployment
|
|
{
|
|
private readonly IDeployment _deployment;
|
|
|
|
internal DeploymentInstance(IDeployment deployment)
|
|
{
|
|
_deployment = deployment;
|
|
}
|
|
|
|
/// <summary>
|
|
/// Returns the current stack name.
|
|
/// </summary>
|
|
public string StackName => _deployment.StackName;
|
|
|
|
/// <summary>
|
|
/// Returns the current project name.
|
|
/// </summary>
|
|
public string ProjectName => _deployment.ProjectName;
|
|
|
|
/// <summary>
|
|
/// Whether or not the application is currently being previewed or actually applied.
|
|
/// </summary>
|
|
public bool IsDryRun => _deployment.IsDryRun;
|
|
|
|
/// <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>
|
|
public Task<T> InvokeAsync<T>(string token, InvokeArgs args, InvokeOptions? options = null)
|
|
=> _deployment.InvokeAsync<T>(token, args, options);
|
|
|
|
/// <summary>
|
|
/// Same as <see cref="InvokeAsync{T}(string, InvokeArgs, InvokeOptions)"/>, however the
|
|
/// return value is ignored.
|
|
/// </summary>
|
|
public Task InvokeAsync(string token, InvokeArgs args, InvokeOptions? options = null)
|
|
=> _deployment.InvokeAsync(token, args, options);
|
|
|
|
internal IDeploymentInternal Internal => (IDeploymentInternal)_deployment;
|
|
}
|
|
}
|