Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance. Project price only 1 $
You can buy this project and download/modify it how often you want.
Build cloud applications and infrastructure by combining the safety and reliability of infrastructure as code with the power of the Kotlin programming language.
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.azurenative.compute.kotlin
import com.pulumi.azurenative.compute.VirtualMachineScaleSetVMRunCommandArgs.builder
import com.pulumi.azurenative.compute.kotlin.inputs.RunCommandInputParameterArgs
import com.pulumi.azurenative.compute.kotlin.inputs.RunCommandInputParameterArgsBuilder
import com.pulumi.azurenative.compute.kotlin.inputs.RunCommandManagedIdentityArgs
import com.pulumi.azurenative.compute.kotlin.inputs.RunCommandManagedIdentityArgsBuilder
import com.pulumi.azurenative.compute.kotlin.inputs.VirtualMachineRunCommandScriptSourceArgs
import com.pulumi.azurenative.compute.kotlin.inputs.VirtualMachineRunCommandScriptSourceArgsBuilder
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import com.pulumi.kotlin.applySuspend
import kotlin.Boolean
import kotlin.Int
import kotlin.Pair
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.collections.List
import kotlin.collections.Map
import kotlin.jvm.JvmName
/**
* Describes a Virtual Machine run command.
* Azure REST API version: 2023-03-01. Prior API version in Azure Native 1.x: 2021-03-01.
* Other available API versions: 2023-07-01, 2023-09-01, 2024-03-01, 2024-07-01.
* ## Example Usage
* ### Create VirtualMachineScaleSet VM run command.
* ```csharp
* using System.Collections.Generic;
* using System.Linq;
* using Pulumi;
* using AzureNative = Pulumi.AzureNative;
* return await Deployment.RunAsync(() =>
* {
* var virtualMachineScaleSetVMRunCommand = new AzureNative.Compute.VirtualMachineScaleSetVMRunCommand("virtualMachineScaleSetVMRunCommand", new()
* {
* AsyncExecution = false,
* ErrorBlobManagedIdentity = null,
* ErrorBlobUri = "https://mystorageaccount.blob.core.windows.net/mycontainer/MyScriptError.txt",
* InstanceId = "0",
* Location = "West US",
* OutputBlobManagedIdentity = new AzureNative.Compute.Inputs.RunCommandManagedIdentityArgs
* {
* ClientId = "22d35efb-0c99-4041-8c5b-6d24db33a69a",
* },
* OutputBlobUri = "https://mystorageaccount.blob.core.windows.net/myscriptoutputcontainer/MyScriptoutput.txt",
* Parameters = new[]
* {
* new AzureNative.Compute.Inputs.RunCommandInputParameterArgs
* {
* Name = "param1",
* Value = "value1",
* },
* new AzureNative.Compute.Inputs.RunCommandInputParameterArgs
* {
* Name = "param2",
* Value = "value2",
* },
* },
* ResourceGroupName = "myResourceGroup",
* RunAsPassword = "",
* RunAsUser = "user1",
* RunCommandName = "myRunCommand",
* Source = new AzureNative.Compute.Inputs.VirtualMachineRunCommandScriptSourceArgs
* {
* ScriptUri = "https://mystorageaccount.blob.core.windows.net/scriptcontainer/MyScript.ps1",
* ScriptUriManagedIdentity = new AzureNative.Compute.Inputs.RunCommandManagedIdentityArgs
* {
* ObjectId = "4231e4d2-33e4-4e23-96b2-17888afa6072",
* },
* },
* TimeoutInSeconds = 3600,
* TreatFailureAsDeploymentFailure = true,
* VmScaleSetName = "myvmScaleSet",
* });
* });
* ```
* ```go
* package main
* import (
* compute "github.com/pulumi/pulumi-azure-native-sdk/compute/v2"
* "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
* )
* func main() {
* pulumi.Run(func(ctx *pulumi.Context) error {
* _, err := compute.NewVirtualMachineScaleSetVMRunCommand(ctx, "virtualMachineScaleSetVMRunCommand", &compute.VirtualMachineScaleSetVMRunCommandArgs{
* AsyncExecution: pulumi.Bool(false),
* ErrorBlobManagedIdentity: nil,
* ErrorBlobUri: pulumi.String("https://mystorageaccount.blob.core.windows.net/mycontainer/MyScriptError.txt"),
* InstanceId: pulumi.String("0"),
* Location: pulumi.String("West US"),
* OutputBlobManagedIdentity: &compute.RunCommandManagedIdentityArgs{
* ClientId: pulumi.String("22d35efb-0c99-4041-8c5b-6d24db33a69a"),
* },
* OutputBlobUri: pulumi.String("https://mystorageaccount.blob.core.windows.net/myscriptoutputcontainer/MyScriptoutput.txt"),
* Parameters: compute.RunCommandInputParameterArray{
* &compute.RunCommandInputParameterArgs{
* Name: pulumi.String("param1"),
* Value: pulumi.String("value1"),
* },
* &compute.RunCommandInputParameterArgs{
* Name: pulumi.String("param2"),
* Value: pulumi.String("value2"),
* },
* },
* ResourceGroupName: pulumi.String("myResourceGroup"),
* RunAsPassword: pulumi.String(""),
* RunAsUser: pulumi.String("user1"),
* RunCommandName: pulumi.String("myRunCommand"),
* Source: &compute.VirtualMachineRunCommandScriptSourceArgs{
* ScriptUri: pulumi.String("https://mystorageaccount.blob.core.windows.net/scriptcontainer/MyScript.ps1"),
* ScriptUriManagedIdentity: &compute.RunCommandManagedIdentityArgs{
* ObjectId: pulumi.String("4231e4d2-33e4-4e23-96b2-17888afa6072"),
* },
* },
* TimeoutInSeconds: pulumi.Int(3600),
* TreatFailureAsDeploymentFailure: pulumi.Bool(true),
* VmScaleSetName: pulumi.String("myvmScaleSet"),
* })
* if err != nil {
* return err
* }
* return nil
* })
* }
* ```
* ```java
* package generated_program;
* import com.pulumi.Context;
* import com.pulumi.Pulumi;
* import com.pulumi.core.Output;
* import com.pulumi.azurenative.compute.VirtualMachineScaleSetVMRunCommand;
* import com.pulumi.azurenative.compute.VirtualMachineScaleSetVMRunCommandArgs;
* import com.pulumi.azurenative.compute.inputs.RunCommandManagedIdentityArgs;
* import com.pulumi.azurenative.compute.inputs.RunCommandInputParameterArgs;
* import com.pulumi.azurenative.compute.inputs.VirtualMachineRunCommandScriptSourceArgs;
* import java.util.List;
* import java.util.ArrayList;
* import java.util.Map;
* import java.io.File;
* import java.nio.file.Files;
* import java.nio.file.Paths;
* public class App {
* public static void main(String[] args) {
* Pulumi.run(App::stack);
* }
* public static void stack(Context ctx) {
* var virtualMachineScaleSetVMRunCommand = new VirtualMachineScaleSetVMRunCommand("virtualMachineScaleSetVMRunCommand", VirtualMachineScaleSetVMRunCommandArgs.builder()
* .asyncExecution(false)
* .errorBlobManagedIdentity()
* .errorBlobUri("https://mystorageaccount.blob.core.windows.net/mycontainer/MyScriptError.txt")
* .instanceId("0")
* .location("West US")
* .outputBlobManagedIdentity(RunCommandManagedIdentityArgs.builder()
* .clientId("22d35efb-0c99-4041-8c5b-6d24db33a69a")
* .build())
* .outputBlobUri("https://mystorageaccount.blob.core.windows.net/myscriptoutputcontainer/MyScriptoutput.txt")
* .parameters(
* RunCommandInputParameterArgs.builder()
* .name("param1")
* .value("value1")
* .build(),
* RunCommandInputParameterArgs.builder()
* .name("param2")
* .value("value2")
* .build())
* .resourceGroupName("myResourceGroup")
* .runAsPassword("")
* .runAsUser("user1")
* .runCommandName("myRunCommand")
* .source(VirtualMachineRunCommandScriptSourceArgs.builder()
* .scriptUri("https://mystorageaccount.blob.core.windows.net/scriptcontainer/MyScript.ps1")
* .scriptUriManagedIdentity(RunCommandManagedIdentityArgs.builder()
* .objectId("4231e4d2-33e4-4e23-96b2-17888afa6072")
* .build())
* .build())
* .timeoutInSeconds(3600)
* .treatFailureAsDeploymentFailure(true)
* .vmScaleSetName("myvmScaleSet")
* .build());
* }
* }
* ```
* ## Import
* An existing resource can be imported using its type token, name, and identifier, e.g.
* ```sh
* $ pulumi import azure-native:compute:VirtualMachineScaleSetVMRunCommand myRunCommand /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualMachines/{instanceId}/runCommands/{runCommandName}
* ```
* @property asyncExecution Optional. If set to true, provisioning will complete as soon as the script starts and will not wait for script to complete.
* @property errorBlobManagedIdentity User-assigned managed identity that has access to errorBlobUri storage blob. Use an empty object in case of system-assigned identity. Make sure managed identity has been given access to blob's container with 'Storage Blob Data Contributor' role assignment. In case of user-assigned identity, make sure you add it under VM's identity. For more info on managed identity and Run Command, refer https://aka.ms/ManagedIdentity and https://aka.ms/RunCommandManaged
* @property errorBlobUri Specifies the Azure storage blob where script error stream will be uploaded. Use a SAS URI with read, append, create, write access OR use managed identity to provide the VM access to the blob. Refer errorBlobManagedIdentity parameter.
* @property instanceId The instance ID of the virtual machine.
* @property location Resource location
* @property outputBlobManagedIdentity User-assigned managed identity that has access to outputBlobUri storage blob. Use an empty object in case of system-assigned identity. Make sure managed identity has been given access to blob's container with 'Storage Blob Data Contributor' role assignment. In case of user-assigned identity, make sure you add it under VM's identity. For more info on managed identity and Run Command, refer https://aka.ms/ManagedIdentity and https://aka.ms/RunCommandManaged
* @property outputBlobUri Specifies the Azure storage blob where script output stream will be uploaded. Use a SAS URI with read, append, create, write access OR use managed identity to provide the VM access to the blob. Refer outputBlobManagedIdentity parameter.
* @property parameters The parameters used by the script.
* @property protectedParameters The parameters used by the script.
* @property resourceGroupName The name of the resource group.
* @property runAsPassword Specifies the user account password on the VM when executing the run command.
* @property runAsUser Specifies the user account on the VM when executing the run command.
* @property runCommandName The name of the virtual machine run command.
* @property source The source of the run command script.
* @property tags Resource tags
* @property timeoutInSeconds The timeout in seconds to execute the run command.
* @property treatFailureAsDeploymentFailure Optional. If set to true, any failure in the script will fail the deployment and ProvisioningState will be marked as Failed. If set to false, ProvisioningState would only reflect whether the run command was run or not by the extensions platform, it would not indicate whether script failed in case of script failures. See instance view of run command in case of script failures to see executionMessage, output, error: https://aka.ms/runcommandmanaged#get-execution-status-and-results
* @property vmScaleSetName The name of the VM scale set.
*/
public data class VirtualMachineScaleSetVMRunCommandArgs(
public val asyncExecution: Output? = null,
public val errorBlobManagedIdentity: Output? = null,
public val errorBlobUri: Output? = null,
public val instanceId: Output? = null,
public val location: Output? = null,
public val outputBlobManagedIdentity: Output? = null,
public val outputBlobUri: Output? = null,
public val parameters: Output>? = null,
public val protectedParameters: Output>? = null,
public val resourceGroupName: Output? = null,
public val runAsPassword: Output? = null,
public val runAsUser: Output? = null,
public val runCommandName: Output? = null,
public val source: Output? = null,
public val tags: Output