All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.pulumi.gcp.compute.kotlin.outputs.GetImageResult.kt Maven / Gradle / Ivy

@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.gcp.compute.kotlin.outputs

import kotlin.Boolean
import kotlin.Int
import kotlin.String
import kotlin.Suppress
import kotlin.collections.List
import kotlin.collections.Map

/**
 * A collection of values returned by getImage.
 * @property archiveSizeBytes The size of the image tar.gz archive stored in Google Cloud Storage in bytes.
 * @property creationTimestamp The creation timestamp in RFC3339 text format.
 * @property description An optional description of this image.
 * @property diskSizeGb The size of the image when restored onto a persistent disk in gigabytes.
 * @property family The family name of the image.
 * @property filter
 * @property id The provider-assigned unique ID for this managed resource.
 * @property imageEncryptionKeySha256 The [RFC 4648 base64](https://tools.ietf.org/html/rfc4648#section-4)
 * encoded SHA-256 hash of the [customer-supplied encryption key](https://cloud.google.com/compute/docs/disks/customer-supplied-encryption)
 * that protects this image.
 * @property imageId The unique identifier for the image.
 * @property labelFingerprint A fingerprint for the labels being applied to this image.
 * @property labels All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
 * @property licenses A list of applicable license URI.
 * @property mostRecent
 * @property name The name of the image.
 * @property project
 * @property selfLink The URI of the image.
 * @property sourceDisk The URL of the source disk used to create this image.
 * @property sourceDiskEncryptionKeySha256 The [RFC 4648 base64](https://tools.ietf.org/html/rfc4648#section-4)
 * encoded SHA-256 hash of the [customer-supplied encryption key](https://cloud.google.com/compute/docs/disks/customer-supplied-encryption)
 * that protects this image.
 * @property sourceDiskId The ID value of the disk used to create this image.
 * @property sourceImageId The ID value of the image used to create this image.
 * @property status The status of the image. Possible values are **FAILED**, **PENDING**, or **READY**.
 */
public data class GetImageResult(
    public val archiveSizeBytes: Int,
    public val creationTimestamp: String,
    public val description: String,
    public val diskSizeGb: Int,
    public val family: String,
    public val filter: String? = null,
    public val id: String,
    public val imageEncryptionKeySha256: String,
    public val imageId: String,
    public val labelFingerprint: String,
    public val labels: Map,
    public val licenses: List,
    public val mostRecent: Boolean? = null,
    public val name: String,
    public val project: String,
    public val selfLink: String,
    public val sourceDisk: String,
    public val sourceDiskEncryptionKeySha256: String,
    public val sourceDiskId: String,
    public val sourceImageId: String,
    public val status: String,
) {
    public companion object {
        public fun toKotlin(javaType: com.pulumi.gcp.compute.outputs.GetImageResult): GetImageResult =
            GetImageResult(
                archiveSizeBytes = javaType.archiveSizeBytes(),
                creationTimestamp = javaType.creationTimestamp(),
                description = javaType.description(),
                diskSizeGb = javaType.diskSizeGb(),
                family = javaType.family(),
                filter = javaType.filter().map({ args0 -> args0 }).orElse(null),
                id = javaType.id(),
                imageEncryptionKeySha256 = javaType.imageEncryptionKeySha256(),
                imageId = javaType.imageId(),
                labelFingerprint = javaType.labelFingerprint(),
                labels = javaType.labels().map({ args0 -> args0.key.to(args0.value) }).toMap(),
                licenses = javaType.licenses().map({ args0 -> args0 }),
                mostRecent = javaType.mostRecent().map({ args0 -> args0 }).orElse(null),
                name = javaType.name(),
                project = javaType.project(),
                selfLink = javaType.selfLink(),
                sourceDisk = javaType.sourceDisk(),
                sourceDiskEncryptionKeySha256 = javaType.sourceDiskEncryptionKeySha256(),
                sourceDiskId = javaType.sourceDiskId(),
                sourceImageId = javaType.sourceImageId(),
                status = javaType.status(),
            )
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy