1. Packages
  2. Spotinst
  3. API Docs
  4. ElastigroupAzureV3
Spotinst v3.81.0 published on Monday, Jun 24, 2024 by Pulumi

spotinst.ElastigroupAzureV3

Explore with Pulumi AI

spotinst logo
Spotinst v3.81.0 published on Monday, Jun 24, 2024 by Pulumi

    Create ElastigroupAzureV3 Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new ElastigroupAzureV3(name: string, args: ElastigroupAzureV3Args, opts?: CustomResourceOptions);
    @overload
    def ElastigroupAzureV3(resource_name: str,
                           args: ElastigroupAzureV3Args,
                           opts: Optional[ResourceOptions] = None)
    
    @overload
    def ElastigroupAzureV3(resource_name: str,
                           opts: Optional[ResourceOptions] = None,
                           network: Optional[ElastigroupAzureV3NetworkArgs] = None,
                           spot_sizes: Optional[Sequence[str]] = None,
                           resource_group_name: Optional[str] = None,
                           fallback_to_on_demand: Optional[bool] = None,
                           region: Optional[str] = None,
                           os: Optional[str] = None,
                           od_sizes: Optional[Sequence[str]] = None,
                           min_size: Optional[int] = None,
                           custom_data: Optional[str] = None,
                           name: Optional[str] = None,
                           max_size: Optional[int] = None,
                           managed_service_identities: Optional[Sequence[ElastigroupAzureV3ManagedServiceIdentityArgs]] = None,
                           on_demand_count: Optional[int] = None,
                           login: Optional[ElastigroupAzureV3LoginArgs] = None,
                           images: Optional[Sequence[ElastigroupAzureV3ImageArgs]] = None,
                           draining_timeout: Optional[int] = None,
                           spot_percentage: Optional[int] = None,
                           desired_capacity: Optional[int] = None,
                           tags: Optional[Sequence[ElastigroupAzureV3TagArgs]] = None)
    func NewElastigroupAzureV3(ctx *Context, name string, args ElastigroupAzureV3Args, opts ...ResourceOption) (*ElastigroupAzureV3, error)
    public ElastigroupAzureV3(string name, ElastigroupAzureV3Args args, CustomResourceOptions? opts = null)
    public ElastigroupAzureV3(String name, ElastigroupAzureV3Args args)
    public ElastigroupAzureV3(String name, ElastigroupAzureV3Args args, CustomResourceOptions options)
    
    type: spotinst:ElastigroupAzureV3
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

    name string
    The unique name of the resource.
    args ElastigroupAzureV3Args
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args ElastigroupAzureV3Args
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args ElastigroupAzureV3Args
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args ElastigroupAzureV3Args
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args ElastigroupAzureV3Args
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Example

    The following reference example uses placeholder values for all input properties.

    var elastigroupAzureV3Resource = new SpotInst.ElastigroupAzureV3("elastigroupAzureV3Resource", new()
    {
        Network = new SpotInst.Inputs.ElastigroupAzureV3NetworkArgs
        {
            NetworkInterfaces = new[]
            {
                new SpotInst.Inputs.ElastigroupAzureV3NetworkNetworkInterfaceArgs
                {
                    AssignPublicIp = false,
                    IsPrimary = false,
                    SubnetName = "string",
                    AdditionalIpConfigs = new[]
                    {
                        new SpotInst.Inputs.ElastigroupAzureV3NetworkNetworkInterfaceAdditionalIpConfigArgs
                        {
                            Name = "string",
                            PrivateIpVersion = "string",
                        },
                    },
                    ApplicationSecurityGroups = new[]
                    {
                        new SpotInst.Inputs.ElastigroupAzureV3NetworkNetworkInterfaceApplicationSecurityGroupArgs
                        {
                            Name = "string",
                            ResourceGroupName = "string",
                        },
                    },
                },
            },
            ResourceGroupName = "string",
            VirtualNetworkName = "string",
        },
        SpotSizes = new[]
        {
            "string",
        },
        ResourceGroupName = "string",
        FallbackToOnDemand = false,
        Region = "string",
        Os = "string",
        OdSizes = new[]
        {
            "string",
        },
        MinSize = 0,
        CustomData = "string",
        Name = "string",
        MaxSize = 0,
        ManagedServiceIdentities = new[]
        {
            new SpotInst.Inputs.ElastigroupAzureV3ManagedServiceIdentityArgs
            {
                Name = "string",
                ResourceGroupName = "string",
            },
        },
        OnDemandCount = 0,
        Login = new SpotInst.Inputs.ElastigroupAzureV3LoginArgs
        {
            UserName = "string",
            Password = "string",
            SshPublicKey = "string",
        },
        Images = new[]
        {
            new SpotInst.Inputs.ElastigroupAzureV3ImageArgs
            {
                Customs = new[]
                {
                    new SpotInst.Inputs.ElastigroupAzureV3ImageCustomArgs
                    {
                        ImageName = "string",
                        ResourceGroupName = "string",
                    },
                },
                Marketplaces = new[]
                {
                    new SpotInst.Inputs.ElastigroupAzureV3ImageMarketplaceArgs
                    {
                        Offer = "string",
                        Publisher = "string",
                        Sku = "string",
                        Version = "string",
                    },
                },
            },
        },
        DrainingTimeout = 0,
        SpotPercentage = 0,
        DesiredCapacity = 0,
        Tags = new[]
        {
            new SpotInst.Inputs.ElastigroupAzureV3TagArgs
            {
                Key = "string",
                Value = "string",
            },
        },
    });
    
    example, err := spotinst.NewElastigroupAzureV3(ctx, "elastigroupAzureV3Resource", &spotinst.ElastigroupAzureV3Args{
    	Network: &spotinst.ElastigroupAzureV3NetworkArgs{
    		NetworkInterfaces: spotinst.ElastigroupAzureV3NetworkNetworkInterfaceArray{
    			&spotinst.ElastigroupAzureV3NetworkNetworkInterfaceArgs{
    				AssignPublicIp: pulumi.Bool(false),
    				IsPrimary:      pulumi.Bool(false),
    				SubnetName:     pulumi.String("string"),
    				AdditionalIpConfigs: spotinst.ElastigroupAzureV3NetworkNetworkInterfaceAdditionalIpConfigArray{
    					&spotinst.ElastigroupAzureV3NetworkNetworkInterfaceAdditionalIpConfigArgs{
    						Name:             pulumi.String("string"),
    						PrivateIpVersion: pulumi.String("string"),
    					},
    				},
    				ApplicationSecurityGroups: spotinst.ElastigroupAzureV3NetworkNetworkInterfaceApplicationSecurityGroupArray{
    					&spotinst.ElastigroupAzureV3NetworkNetworkInterfaceApplicationSecurityGroupArgs{
    						Name:              pulumi.String("string"),
    						ResourceGroupName: pulumi.String("string"),
    					},
    				},
    			},
    		},
    		ResourceGroupName:  pulumi.String("string"),
    		VirtualNetworkName: pulumi.String("string"),
    	},
    	SpotSizes: pulumi.StringArray{
    		pulumi.String("string"),
    	},
    	ResourceGroupName:  pulumi.String("string"),
    	FallbackToOnDemand: pulumi.Bool(false),
    	Region:             pulumi.String("string"),
    	Os:                 pulumi.String("string"),
    	OdSizes: pulumi.StringArray{
    		pulumi.String("string"),
    	},
    	MinSize:    pulumi.Int(0),
    	CustomData: pulumi.String("string"),
    	Name:       pulumi.String("string"),
    	MaxSize:    pulumi.Int(0),
    	ManagedServiceIdentities: spotinst.ElastigroupAzureV3ManagedServiceIdentityArray{
    		&spotinst.ElastigroupAzureV3ManagedServiceIdentityArgs{
    			Name:              pulumi.String("string"),
    			ResourceGroupName: pulumi.String("string"),
    		},
    	},
    	OnDemandCount: pulumi.Int(0),
    	Login: &spotinst.ElastigroupAzureV3LoginArgs{
    		UserName:     pulumi.String("string"),
    		Password:     pulumi.String("string"),
    		SshPublicKey: pulumi.String("string"),
    	},
    	Images: spotinst.ElastigroupAzureV3ImageArray{
    		&spotinst.ElastigroupAzureV3ImageArgs{
    			Customs: spotinst.ElastigroupAzureV3ImageCustomArray{
    				&spotinst.ElastigroupAzureV3ImageCustomArgs{
    					ImageName:         pulumi.String("string"),
    					ResourceGroupName: pulumi.String("string"),
    				},
    			},
    			Marketplaces: spotinst.ElastigroupAzureV3ImageMarketplaceArray{
    				&spotinst.ElastigroupAzureV3ImageMarketplaceArgs{
    					Offer:     pulumi.String("string"),
    					Publisher: pulumi.String("string"),
    					Sku:       pulumi.String("string"),
    					Version:   pulumi.String("string"),
    				},
    			},
    		},
    	},
    	DrainingTimeout: pulumi.Int(0),
    	SpotPercentage:  pulumi.Int(0),
    	DesiredCapacity: pulumi.Int(0),
    	Tags: spotinst.ElastigroupAzureV3TagArray{
    		&spotinst.ElastigroupAzureV3TagArgs{
    			Key:   pulumi.String("string"),
    			Value: pulumi.String("string"),
    		},
    	},
    })
    
    var elastigroupAzureV3Resource = new ElastigroupAzureV3("elastigroupAzureV3Resource", ElastigroupAzureV3Args.builder()
        .network(ElastigroupAzureV3NetworkArgs.builder()
            .networkInterfaces(ElastigroupAzureV3NetworkNetworkInterfaceArgs.builder()
                .assignPublicIp(false)
                .isPrimary(false)
                .subnetName("string")
                .additionalIpConfigs(ElastigroupAzureV3NetworkNetworkInterfaceAdditionalIpConfigArgs.builder()
                    .name("string")
                    .privateIpVersion("string")
                    .build())
                .applicationSecurityGroups(ElastigroupAzureV3NetworkNetworkInterfaceApplicationSecurityGroupArgs.builder()
                    .name("string")
                    .resourceGroupName("string")
                    .build())
                .build())
            .resourceGroupName("string")
            .virtualNetworkName("string")
            .build())
        .spotSizes("string")
        .resourceGroupName("string")
        .fallbackToOnDemand(false)
        .region("string")
        .os("string")
        .odSizes("string")
        .minSize(0)
        .customData("string")
        .name("string")
        .maxSize(0)
        .managedServiceIdentities(ElastigroupAzureV3ManagedServiceIdentityArgs.builder()
            .name("string")
            .resourceGroupName("string")
            .build())
        .onDemandCount(0)
        .login(ElastigroupAzureV3LoginArgs.builder()
            .userName("string")
            .password("string")
            .sshPublicKey("string")
            .build())
        .images(ElastigroupAzureV3ImageArgs.builder()
            .customs(ElastigroupAzureV3ImageCustomArgs.builder()
                .imageName("string")
                .resourceGroupName("string")
                .build())
            .marketplaces(ElastigroupAzureV3ImageMarketplaceArgs.builder()
                .offer("string")
                .publisher("string")
                .sku("string")
                .version("string")
                .build())
            .build())
        .drainingTimeout(0)
        .spotPercentage(0)
        .desiredCapacity(0)
        .tags(ElastigroupAzureV3TagArgs.builder()
            .key("string")
            .value("string")
            .build())
        .build());
    
    elastigroup_azure_v3_resource = spotinst.ElastigroupAzureV3("elastigroupAzureV3Resource",
        network=spotinst.ElastigroupAzureV3NetworkArgs(
            network_interfaces=[spotinst.ElastigroupAzureV3NetworkNetworkInterfaceArgs(
                assign_public_ip=False,
                is_primary=False,
                subnet_name="string",
                additional_ip_configs=[spotinst.ElastigroupAzureV3NetworkNetworkInterfaceAdditionalIpConfigArgs(
                    name="string",
                    private_ip_version="string",
                )],
                application_security_groups=[spotinst.ElastigroupAzureV3NetworkNetworkInterfaceApplicationSecurityGroupArgs(
                    name="string",
                    resource_group_name="string",
                )],
            )],
            resource_group_name="string",
            virtual_network_name="string",
        ),
        spot_sizes=["string"],
        resource_group_name="string",
        fallback_to_on_demand=False,
        region="string",
        os="string",
        od_sizes=["string"],
        min_size=0,
        custom_data="string",
        name="string",
        max_size=0,
        managed_service_identities=[spotinst.ElastigroupAzureV3ManagedServiceIdentityArgs(
            name="string",
            resource_group_name="string",
        )],
        on_demand_count=0,
        login=spotinst.ElastigroupAzureV3LoginArgs(
            user_name="string",
            password="string",
            ssh_public_key="string",
        ),
        images=[spotinst.ElastigroupAzureV3ImageArgs(
            customs=[spotinst.ElastigroupAzureV3ImageCustomArgs(
                image_name="string",
                resource_group_name="string",
            )],
            marketplaces=[spotinst.ElastigroupAzureV3ImageMarketplaceArgs(
                offer="string",
                publisher="string",
                sku="string",
                version="string",
            )],
        )],
        draining_timeout=0,
        spot_percentage=0,
        desired_capacity=0,
        tags=[spotinst.ElastigroupAzureV3TagArgs(
            key="string",
            value="string",
        )])
    
    const elastigroupAzureV3Resource = new spotinst.ElastigroupAzureV3("elastigroupAzureV3Resource", {
        network: {
            networkInterfaces: [{
                assignPublicIp: false,
                isPrimary: false,
                subnetName: "string",
                additionalIpConfigs: [{
                    name: "string",
                    privateIpVersion: "string",
                }],
                applicationSecurityGroups: [{
                    name: "string",
                    resourceGroupName: "string",
                }],
            }],
            resourceGroupName: "string",
            virtualNetworkName: "string",
        },
        spotSizes: ["string"],
        resourceGroupName: "string",
        fallbackToOnDemand: false,
        region: "string",
        os: "string",
        odSizes: ["string"],
        minSize: 0,
        customData: "string",
        name: "string",
        maxSize: 0,
        managedServiceIdentities: [{
            name: "string",
            resourceGroupName: "string",
        }],
        onDemandCount: 0,
        login: {
            userName: "string",
            password: "string",
            sshPublicKey: "string",
        },
        images: [{
            customs: [{
                imageName: "string",
                resourceGroupName: "string",
            }],
            marketplaces: [{
                offer: "string",
                publisher: "string",
                sku: "string",
                version: "string",
            }],
        }],
        drainingTimeout: 0,
        spotPercentage: 0,
        desiredCapacity: 0,
        tags: [{
            key: "string",
            value: "string",
        }],
    });
    
    type: spotinst:ElastigroupAzureV3
    properties:
        customData: string
        desiredCapacity: 0
        drainingTimeout: 0
        fallbackToOnDemand: false
        images:
            - customs:
                - imageName: string
                  resourceGroupName: string
              marketplaces:
                - offer: string
                  publisher: string
                  sku: string
                  version: string
        login:
            password: string
            sshPublicKey: string
            userName: string
        managedServiceIdentities:
            - name: string
              resourceGroupName: string
        maxSize: 0
        minSize: 0
        name: string
        network:
            networkInterfaces:
                - additionalIpConfigs:
                    - name: string
                      privateIpVersion: string
                  applicationSecurityGroups:
                    - name: string
                      resourceGroupName: string
                  assignPublicIp: false
                  isPrimary: false
                  subnetName: string
            resourceGroupName: string
            virtualNetworkName: string
        odSizes:
            - string
        onDemandCount: 0
        os: string
        region: string
        resourceGroupName: string
        spotPercentage: 0
        spotSizes:
            - string
        tags:
            - key: string
              value: string
    

    ElastigroupAzureV3 Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    The ElastigroupAzureV3 resource accepts the following input properties:

    Outputs

    All input properties are implicitly available as output properties. Additionally, the ElastigroupAzureV3 resource produces the following output properties:

    Id string
    The provider-assigned unique ID for this managed resource.
    Id string
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.
    id string
    The provider-assigned unique ID for this managed resource.
    id str
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.

    Look up Existing ElastigroupAzureV3 Resource

    Get an existing ElastigroupAzureV3 resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

    public static get(name: string, id: Input<ID>, state?: ElastigroupAzureV3State, opts?: CustomResourceOptions): ElastigroupAzureV3
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            custom_data: Optional[str] = None,
            desired_capacity: Optional[int] = None,
            draining_timeout: Optional[int] = None,
            fallback_to_on_demand: Optional[bool] = None,
            images: Optional[Sequence[ElastigroupAzureV3ImageArgs]] = None,
            login: Optional[ElastigroupAzureV3LoginArgs] = None,
            managed_service_identities: Optional[Sequence[ElastigroupAzureV3ManagedServiceIdentityArgs]] = None,
            max_size: Optional[int] = None,
            min_size: Optional[int] = None,
            name: Optional[str] = None,
            network: Optional[ElastigroupAzureV3NetworkArgs] = None,
            od_sizes: Optional[Sequence[str]] = None,
            on_demand_count: Optional[int] = None,
            os: Optional[str] = None,
            region: Optional[str] = None,
            resource_group_name: Optional[str] = None,
            spot_percentage: Optional[int] = None,
            spot_sizes: Optional[Sequence[str]] = None,
            tags: Optional[Sequence[ElastigroupAzureV3TagArgs]] = None) -> ElastigroupAzureV3
    func GetElastigroupAzureV3(ctx *Context, name string, id IDInput, state *ElastigroupAzureV3State, opts ...ResourceOption) (*ElastigroupAzureV3, error)
    public static ElastigroupAzureV3 Get(string name, Input<string> id, ElastigroupAzureV3State? state, CustomResourceOptions? opts = null)
    public static ElastigroupAzureV3 get(String name, Output<String> id, ElastigroupAzureV3State state, CustomResourceOptions options)
    Resource lookup is not supported in YAML
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:

    Supporting Types

    ElastigroupAzureV3Image, ElastigroupAzureV3ImageArgs

    ElastigroupAzureV3ImageCustom, ElastigroupAzureV3ImageCustomArgs

    ElastigroupAzureV3ImageMarketplace, ElastigroupAzureV3ImageMarketplaceArgs

    Offer string
    Publisher string
    Sku string
    Version string
    Offer string
    Publisher string
    Sku string
    Version string
    offer String
    publisher String
    sku String
    version String
    offer string
    publisher string
    sku string
    version string
    offer str
    publisher str
    sku str
    version str
    offer String
    publisher String
    sku String
    version String

    ElastigroupAzureV3Login, ElastigroupAzureV3LoginArgs

    UserName string
    Password string
    SshPublicKey string
    UserName string
    Password string
    SshPublicKey string
    userName String
    password String
    sshPublicKey String
    userName string
    password string
    sshPublicKey string
    userName String
    password String
    sshPublicKey String

    ElastigroupAzureV3ManagedServiceIdentity, ElastigroupAzureV3ManagedServiceIdentityArgs

    Name string
    ResourceGroupName string
    Name string
    ResourceGroupName string
    name String
    resourceGroupName String
    name string
    resourceGroupName string
    name String
    resourceGroupName String

    ElastigroupAzureV3Network, ElastigroupAzureV3NetworkArgs

    ElastigroupAzureV3NetworkNetworkInterface, ElastigroupAzureV3NetworkNetworkInterfaceArgs

    ElastigroupAzureV3NetworkNetworkInterfaceAdditionalIpConfig, ElastigroupAzureV3NetworkNetworkInterfaceAdditionalIpConfigArgs

    Name string
    PrivateIpVersion string
    Name string
    PrivateIpVersion string
    name String
    privateIpVersion String
    name string
    privateIpVersion string
    name String
    privateIpVersion String

    ElastigroupAzureV3NetworkNetworkInterfaceApplicationSecurityGroup, ElastigroupAzureV3NetworkNetworkInterfaceApplicationSecurityGroupArgs

    Name string
    ResourceGroupName string
    Name string
    ResourceGroupName string
    name String
    resourceGroupName String
    name string
    resourceGroupName string
    name String
    resourceGroupName String

    ElastigroupAzureV3Tag, ElastigroupAzureV3TagArgs

    Key string
    Value string
    Key string
    Value string
    key String
    value String
    key string
    value string
    key str
    value str
    key String
    value String

    Package Details

    Repository
    Spotinst pulumi/pulumi-spotinst
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the spotinst Terraform Provider.
    spotinst logo
    Spotinst v3.81.0 published on Monday, Jun 24, 2024 by Pulumi