OceanLaunchSpec

Provides a custom Spotinst Ocean GKE Launch Spec resource.

Example Usage

using Pulumi;
using SpotInst = Pulumi.SpotInst;

class MyStack : Stack
{
    public MyStack()
    {
        var example = new SpotInst.Gke.OceanLaunchSpec("example", new SpotInst.Gke.OceanLaunchSpecArgs
        {
            AutoscaleHeadrooms = 
            {
                new SpotInst.Gke.Inputs.OceanLaunchSpecAutoscaleHeadroomArgs
                {
                    CpuPerUnit = 1000,
                    GpuPerUnit = 0,
                    MemoryPerUnit = 2048,
                    NumOfUnits = 5,
                },
            },
            Labels = 
            {
                new SpotInst.Gke.Inputs.OceanLaunchSpecLabelArgs
                {
                    Key = "labelKey",
                    Value = "labelVal",
                },
            },
            Metadatas = 
            {
                new SpotInst.Gke.Inputs.OceanLaunchSpecMetadataArgs
                {
                    Key = "gci-update-strategy",
                    Value = "update_disabled",
                },
            },
            OceanId = "o-123456",
            SourceImage = "image",
            Taints = 
            {
                new SpotInst.Gke.Inputs.OceanLaunchSpecTaintArgs
                {
                    Effect = "taintEffect",
                    Key = "taintKey",
                    Value = "taintVal",
                },
            },
        });
    }

}

Coming soon!

import pulumi
import pulumi_spotinst as spotinst

example = spotinst.gke.OceanLaunchSpec("example",
    autoscale_headrooms=[{
        "cpuPerUnit": 1000,
        "gpuPerUnit": 0,
        "memoryPerUnit": 2048,
        "numOfUnits": 5,
    }],
    labels=[{
        "key": "labelKey",
        "value": "labelVal",
    }],
    metadatas=[{
        "key": "gci-update-strategy",
        "value": "update_disabled",
    }],
    ocean_id="o-123456",
    source_image="image",
    taints=[{
        "effect": "taintEffect",
        "key": "taintKey",
        "value": "taintVal",
    }])
import * as pulumi from "@pulumi/pulumi";
import * as spotinst from "@pulumi/spotinst";

const example = new spotinst.gke.OceanLaunchSpec("example", {
    autoscaleHeadrooms: [{
        cpuPerUnit: 1000,
        gpuPerUnit: 0,
        memoryPerUnit: 2048,
        numOfUnits: 5,
    }],
    labels: [{
        key: "labelKey",
        value: "labelVal",
    }],
    metadatas: [{
        key: "gci-update-strategy",
        value: "update_disabled",
    }],
    oceanId: "o-123456",
    sourceImage: "image",
    taints: [{
        effect: "taintEffect",
        key: "taintKey",
        value: "taintVal",
    }],
});

Create a OceanLaunchSpec Resource

def OceanLaunchSpec(resource_name, opts=None, autoscale_headrooms=None, labels=None, metadatas=None, ocean_id=None, source_image=None, taints=None, __props__=None);
name string
The unique name of the resource.
args OceanLaunchSpecArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
resource_name str
The unique name of the resource.
opts ResourceOptions
A bag of options that control this resource's behavior.
ctx Context
Context object for the current deployment.
name string
The unique name of the resource.
args OceanLaunchSpecArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name string
The unique name of the resource.
args OceanLaunchSpecArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.

OceanLaunchSpec Resource Properties

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

Inputs

The OceanLaunchSpec resource accepts the following input properties:

Metadatas List<Pulumi.SpotInst.Gke.Inputs.OceanLaunchSpecMetadataArgs>

Cluster’s metadata.

OceanId string

The Ocean cluster ID required for launchSpec create.

SourceImage string

Image URL.

AutoscaleHeadrooms List<Pulumi.SpotInst.Gke.Inputs.OceanLaunchSpecAutoscaleHeadroomArgs>

Set custom headroom per launch spec. provide list of headrooms object.

Labels List<Pulumi.SpotInst.Gke.Inputs.OceanLaunchSpecLabelArgs>

Cluster’s labels.

Taints List<Pulumi.SpotInst.Gke.Inputs.OceanLaunchSpecTaintArgs>

Cluster’s taints.

Metadatas []OceanLaunchSpecMetadata

Cluster’s metadata.

OceanId string

The Ocean cluster ID required for launchSpec create.

SourceImage string

Image URL.

AutoscaleHeadrooms []OceanLaunchSpecAutoscaleHeadroom

Set custom headroom per launch spec. provide list of headrooms object.

Labels []OceanLaunchSpecLabel

Cluster’s labels.

Taints []OceanLaunchSpecTaint

Cluster’s taints.

metadatas OceanLaunchSpecMetadata[]

Cluster’s metadata.

oceanId string

The Ocean cluster ID required for launchSpec create.

sourceImage string

Image URL.

autoscaleHeadrooms OceanLaunchSpecAutoscaleHeadroom[]

Set custom headroom per launch spec. provide list of headrooms object.

labels OceanLaunchSpecLabel[]

Cluster’s labels.

taints OceanLaunchSpecTaint[]

Cluster’s taints.

metadatas List[OceanLaunchSpecMetadata]

Cluster’s metadata.

ocean_id str

The Ocean cluster ID required for launchSpec create.

source_image str

Image URL.

autoscale_headrooms List[OceanLaunchSpecAutoscaleHeadroom]

Set custom headroom per launch spec. provide list of headrooms object.

labels List[OceanLaunchSpecLabel]

Cluster’s labels.

taints List[OceanLaunchSpecTaint]

Cluster’s taints.

Outputs

All input properties are implicitly available as output properties. Additionally, the OceanLaunchSpec 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 str
The provider-assigned unique ID for this managed resource.

Look up an Existing OceanLaunchSpec Resource

Get an existing OceanLaunchSpec 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?: OceanLaunchSpecState, opts?: CustomResourceOptions): OceanLaunchSpec
static get(resource_name, id, opts=None, autoscale_headrooms=None, labels=None, metadatas=None, ocean_id=None, source_image=None, taints=None, __props__=None);
func GetOceanLaunchSpec(ctx *Context, name string, id IDInput, state *OceanLaunchSpecState, opts ...ResourceOption) (*OceanLaunchSpec, error)
public static OceanLaunchSpec Get(string name, Input<string> id, OceanLaunchSpecState? state, CustomResourceOptions? opts = null)
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.

The following state arguments are supported:

AutoscaleHeadrooms List<Pulumi.SpotInst.Gke.Inputs.OceanLaunchSpecAutoscaleHeadroomArgs>

Set custom headroom per launch spec. provide list of headrooms object.

Labels List<Pulumi.SpotInst.Gke.Inputs.OceanLaunchSpecLabelArgs>

Cluster’s labels.

Metadatas List<Pulumi.SpotInst.Gke.Inputs.OceanLaunchSpecMetadataArgs>

Cluster’s metadata.

OceanId string

The Ocean cluster ID required for launchSpec create.

SourceImage string

Image URL.

Taints List<Pulumi.SpotInst.Gke.Inputs.OceanLaunchSpecTaintArgs>

Cluster’s taints.

AutoscaleHeadrooms []OceanLaunchSpecAutoscaleHeadroom

Set custom headroom per launch spec. provide list of headrooms object.

Labels []OceanLaunchSpecLabel

Cluster’s labels.

Metadatas []OceanLaunchSpecMetadata

Cluster’s metadata.

OceanId string

The Ocean cluster ID required for launchSpec create.

SourceImage string

Image URL.

Taints []OceanLaunchSpecTaint

Cluster’s taints.

autoscaleHeadrooms OceanLaunchSpecAutoscaleHeadroom[]

Set custom headroom per launch spec. provide list of headrooms object.

labels OceanLaunchSpecLabel[]

Cluster’s labels.

metadatas OceanLaunchSpecMetadata[]

Cluster’s metadata.

oceanId string

The Ocean cluster ID required for launchSpec create.

sourceImage string

Image URL.

taints OceanLaunchSpecTaint[]

Cluster’s taints.

autoscale_headrooms List[OceanLaunchSpecAutoscaleHeadroom]

Set custom headroom per launch spec. provide list of headrooms object.

labels List[OceanLaunchSpecLabel]

Cluster’s labels.

metadatas List[OceanLaunchSpecMetadata]

Cluster’s metadata.

ocean_id str

The Ocean cluster ID required for launchSpec create.

source_image str

Image URL.

taints List[OceanLaunchSpecTaint]

Cluster’s taints.

Supporting Types

OceanLaunchSpecAutoscaleHeadroom

See the input and output API doc for this type.

See the input and output API doc for this type.

See the input and output API doc for this type.

NumOfUnits int

The number of units to retain as headroom, where each unit has the defined headroom CPU, memory and GPU.

CpuPerUnit int

Optionally configure the number of CPUs to allocate for each headroom unit. CPUs are denoted in millicores, where 1000 millicores = 1 vCPU.

GpuPerUnit int

Optionally configure the number of GPUS to allocate for each headroom unit.

MemoryPerUnit int

Optionally configure the amount of memory (MB) to allocate for each headroom unit.

NumOfUnits int

The number of units to retain as headroom, where each unit has the defined headroom CPU, memory and GPU.

CpuPerUnit int

Optionally configure the number of CPUs to allocate for each headroom unit. CPUs are denoted in millicores, where 1000 millicores = 1 vCPU.

GpuPerUnit int

Optionally configure the number of GPUS to allocate for each headroom unit.

MemoryPerUnit int

Optionally configure the amount of memory (MB) to allocate for each headroom unit.

numOfUnits number

The number of units to retain as headroom, where each unit has the defined headroom CPU, memory and GPU.

cpuPerUnit number

Optionally configure the number of CPUs to allocate for each headroom unit. CPUs are denoted in millicores, where 1000 millicores = 1 vCPU.

gpuPerUnit number

Optionally configure the number of GPUS to allocate for each headroom unit.

memoryPerUnit number

Optionally configure the amount of memory (MB) to allocate for each headroom unit.

numOfUnits float

The number of units to retain as headroom, where each unit has the defined headroom CPU, memory and GPU.

cpuPerUnit float

Optionally configure the number of CPUs to allocate for each headroom unit. CPUs are denoted in millicores, where 1000 millicores = 1 vCPU.

gpuPerUnit float

Optionally configure the number of GPUS to allocate for each headroom unit.

memoryPerUnit float

Optionally configure the amount of memory (MB) to allocate for each headroom unit.

OceanLaunchSpecLabel

See the input and output API doc for this type.

See the input and output API doc for this type.

See the input and output API doc for this type.

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

OceanLaunchSpecMetadata

See the input and output API doc for this type.

See the input and output API doc for this type.

See the input and output API doc for this type.

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

OceanLaunchSpecTaint

See the input and output API doc for this type.

See the input and output API doc for this type.

See the input and output API doc for this type.

Effect string
Key string
Value string
Effect string
Key string
Value string
effect string
key string
value string
effect str
key str
value str

Package Details

Repository
https://github.com/pulumi/pulumi-spotinst
License
Apache-2.0
Notes
This Pulumi package is based on the spotinst Terraform Provider.