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.awsnative.lightsail.kotlin
import com.pulumi.awsnative.kotlin.inputs.TagArgs
import com.pulumi.awsnative.kotlin.inputs.TagArgsBuilder
import com.pulumi.awsnative.lightsail.InstanceArgs.builder
import com.pulumi.awsnative.lightsail.kotlin.inputs.InstanceAddOnArgs
import com.pulumi.awsnative.lightsail.kotlin.inputs.InstanceAddOnArgsBuilder
import com.pulumi.awsnative.lightsail.kotlin.inputs.InstanceHardwareArgs
import com.pulumi.awsnative.lightsail.kotlin.inputs.InstanceHardwareArgsBuilder
import com.pulumi.awsnative.lightsail.kotlin.inputs.InstanceLocationArgs
import com.pulumi.awsnative.lightsail.kotlin.inputs.InstanceLocationArgsBuilder
import com.pulumi.awsnative.lightsail.kotlin.inputs.InstanceNetworkingArgs
import com.pulumi.awsnative.lightsail.kotlin.inputs.InstanceNetworkingArgsBuilder
import com.pulumi.awsnative.lightsail.kotlin.inputs.InstanceStateArgs
import com.pulumi.awsnative.lightsail.kotlin.inputs.InstanceStateArgsBuilder
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.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.collections.List
import kotlin.jvm.JvmName
/**
* Resource Type definition for AWS::Lightsail::Instance
* @property addOns An array of objects representing the add-ons to enable for the new instance.
* @property availabilityZone The Availability Zone in which to create your instance. Use the following format: us-east-2a (case sensitive). Be sure to add the include Availability Zones parameter to your request.
* @property blueprintId The ID for a virtual private server image (e.g., app_wordpress_4_4 or app_lamp_7_0 ). Use the get blueprints operation to return a list of available images (or blueprints ).
* @property bundleId The bundle of specification information for your virtual private server (or instance ), including the pricing plan (e.g., micro_1_0 ).
* @property hardware The hardware properties for the instance, such as the vCPU count, attached disks, and amount of RAM.
* > The instance restarts when performing an attach disk or detach disk request. This resets the public IP address of your instance if a static IP isn't attached to it.
* @property instanceName The names to use for your new Lightsail instance.
* @property keyPairName The name of your key pair.
* @property location The location for the instance, such as the AWS Region and Availability Zone.
* > The `Location` property is read-only and should not be specified in a create instance or update instance request.
* @property networking The public ports and the monthly amount of data transfer allocated for the instance.
* @property state The status code and the state (for example, `running` ) of the instance.
* > The `State` property is read-only and should not be specified in a create instance or update instance request.
* @property tags An array of key-value pairs to apply to this resource.
* @property userData A launch script you can create that configures a server with additional user data. For example, you might want to run apt-get -y update.
*/
public data class InstanceArgs(
public val addOns: Output>? = null,
public val availabilityZone: Output? = null,
public val blueprintId: Output? = null,
public val bundleId: Output? = null,
public val hardware: Output? = null,
public val instanceName: Output? = null,
public val keyPairName: Output? = null,
public val location: Output? = null,
public val networking: Output? = null,
public val state: Output? = null,
public val tags: Output>? = null,
public val userData: Output? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.awsnative.lightsail.InstanceArgs =
com.pulumi.awsnative.lightsail.InstanceArgs.builder()
.addOns(addOns?.applyValue({ args0 -> args0.map({ args0 -> args0.let({ args0 -> args0.toJava() }) }) }))
.availabilityZone(availabilityZone?.applyValue({ args0 -> args0 }))
.blueprintId(blueprintId?.applyValue({ args0 -> args0 }))
.bundleId(bundleId?.applyValue({ args0 -> args0 }))
.hardware(hardware?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.instanceName(instanceName?.applyValue({ args0 -> args0 }))
.keyPairName(keyPairName?.applyValue({ args0 -> args0 }))
.location(location?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.networking(networking?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.state(state?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.tags(tags?.applyValue({ args0 -> args0.map({ args0 -> args0.let({ args0 -> args0.toJava() }) }) }))
.userData(userData?.applyValue({ args0 -> args0 })).build()
}
/**
* Builder for [InstanceArgs].
*/
@PulumiTagMarker
public class InstanceArgsBuilder internal constructor() {
private var addOns: Output>? = null
private var availabilityZone: Output? = null
private var blueprintId: Output? = null
private var bundleId: Output? = null
private var hardware: Output? = null
private var instanceName: Output? = null
private var keyPairName: Output? = null
private var location: Output? = null
private var networking: Output? = null
private var state: Output? = null
private var tags: Output>? = null
private var userData: Output? = null
/**
* @param value An array of objects representing the add-ons to enable for the new instance.
*/
@JvmName("iseoemvgufuwmsfm")
public suspend fun addOns(`value`: Output>) {
this.addOns = value
}
@JvmName("vdmncucluatirqid")
public suspend fun addOns(vararg values: Output) {
this.addOns = Output.all(values.asList())
}
/**
* @param values An array of objects representing the add-ons to enable for the new instance.
*/
@JvmName("vmqvkbcidmjenaqw")
public suspend fun addOns(values: List