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

com.pulumi.azure.batch.kotlin.outputs.GetPoolResult.kt Maven / Gradle / Ivy

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

package com.pulumi.azure.batch.kotlin.outputs

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

/**
 * A collection of values returned by getPool.
 * @property accountName The Azure Storage Account name.
 * @property autoScales A `auto_scale` block that describes the scale settings when using auto scale.
 * @property certificates One or more `certificate` blocks that describe the certificates installed on each compute node in the pool.
 * @property containerConfigurations The container configuration used in the pool's VMs.
 * @property dataDisks A `data_disks` block describes the data disk settings.
 * @property diskEncryptions A `disk_encryption` block describes the disk encryption configuration applied on compute nodes in the pool.
 * @property displayName
 * @property extensions An `extensions` block describes the extension settings
 * @property fixedScales A `fixed_scale` block that describes the scale settings when using fixed scale.
 * @property id The provider-assigned unique ID for this managed resource.
 * @property interNodeCommunication Whether the pool permits direct communication between nodes. This imposes restrictions on which nodes can be assigned to the pool. Enabling this value can reduce the chance of the requested number of nodes to be allocated in the pool.
 * @property licenseType The type of on-premises license to be used when deploying the operating system.
 * @property maxTasksPerNode The maximum number of tasks that can run concurrently on a single compute node in the pool.
 * @property metadata
 * @property mounts A `mount` block that describes mount configuration.
 * @property name The name of the user account.
 * @property networkConfigurations
 * @property nodeAgentSkuId The SKU of the node agents in the Batch pool.
 * @property nodePlacements A `node_placement` block that describes the placement policy for allocating nodes in the pool.
 * @property osDiskPlacement Specifies the ephemeral disk placement for operating system disk for all VMs in the pool.
 * @property resourceGroupName
 * @property startTasks A `start_task` block that describes the start task settings for the Batch pool.
 * @property storageImageReferences The reference of the storage image used by the nodes in the Batch pool.
 * @property taskSchedulingPolicies A `task_scheduling_policy` block that describes how tasks are distributed across compute nodes in a pool.
 * @property userAccounts A `user_accounts` block that describes the list of user accounts to be created on each node in the pool.
 * @property vmSize The size of the VM created in the Batch pool.
 * @property windows A `windows` block that describes the Windows configuration in the pool.
 */
public data class GetPoolResult(
    public val accountName: String,
    public val autoScales: List,
    public val certificates: List,
    public val containerConfigurations: List,
    public val dataDisks: List,
    public val diskEncryptions: List,
    public val displayName: String,
    public val extensions: List,
    public val fixedScales: List,
    public val id: String,
    public val interNodeCommunication: String,
    public val licenseType: String,
    public val maxTasksPerNode: Int,
    public val metadata: Map,
    public val mounts: List,
    public val name: String,
    public val networkConfigurations: List,
    public val nodeAgentSkuId: String,
    public val nodePlacements: List,
    public val osDiskPlacement: String,
    public val resourceGroupName: String,
    public val startTasks: List,
    public val storageImageReferences: List,
    public val taskSchedulingPolicies: List,
    public val userAccounts: List,
    public val vmSize: String,
    public val windows: List,
) {
    public companion object {
        public fun toKotlin(javaType: com.pulumi.azure.batch.outputs.GetPoolResult): GetPoolResult =
            GetPoolResult(
                accountName = javaType.accountName(),
                autoScales = javaType.autoScales().map({ args0 ->
                    args0.let({ args0 ->
                        com.pulumi.azure.batch.kotlin.outputs.GetPoolAutoScale.Companion.toKotlin(args0)
                    })
                }),
                certificates = javaType.certificates().map({ args0 ->
                    args0.let({ args0 ->
                        com.pulumi.azure.batch.kotlin.outputs.GetPoolCertificate.Companion.toKotlin(args0)
                    })
                }),
                containerConfigurations = javaType.containerConfigurations().map({ args0 ->
                    args0.let({ args0 ->
                        com.pulumi.azure.batch.kotlin.outputs.GetPoolContainerConfiguration.Companion.toKotlin(args0)
                    })
                }),
                dataDisks = javaType.dataDisks().map({ args0 ->
                    args0.let({ args0 ->
                        com.pulumi.azure.batch.kotlin.outputs.GetPoolDataDisk.Companion.toKotlin(args0)
                    })
                }),
                diskEncryptions = javaType.diskEncryptions().map({ args0 ->
                    args0.let({ args0 ->
                        com.pulumi.azure.batch.kotlin.outputs.GetPoolDiskEncryption.Companion.toKotlin(args0)
                    })
                }),
                displayName = javaType.displayName(),
                extensions = javaType.extensions().map({ args0 ->
                    args0.let({ args0 ->
                        com.pulumi.azure.batch.kotlin.outputs.GetPoolExtension.Companion.toKotlin(args0)
                    })
                }),
                fixedScales = javaType.fixedScales().map({ args0 ->
                    args0.let({ args0 ->
                        com.pulumi.azure.batch.kotlin.outputs.GetPoolFixedScale.Companion.toKotlin(args0)
                    })
                }),
                id = javaType.id(),
                interNodeCommunication = javaType.interNodeCommunication(),
                licenseType = javaType.licenseType(),
                maxTasksPerNode = javaType.maxTasksPerNode(),
                metadata = javaType.metadata().map({ args0 -> args0.key.to(args0.value) }).toMap(),
                mounts = javaType.mounts().map({ args0 ->
                    args0.let({ args0 ->
                        com.pulumi.azure.batch.kotlin.outputs.GetPoolMount.Companion.toKotlin(args0)
                    })
                }),
                name = javaType.name(),
                networkConfigurations = javaType.networkConfigurations().map({ args0 ->
                    args0.let({ args0 ->
                        com.pulumi.azure.batch.kotlin.outputs.GetPoolNetworkConfiguration.Companion.toKotlin(args0)
                    })
                }),
                nodeAgentSkuId = javaType.nodeAgentSkuId(),
                nodePlacements = javaType.nodePlacements().map({ args0 ->
                    args0.let({ args0 ->
                        com.pulumi.azure.batch.kotlin.outputs.GetPoolNodePlacement.Companion.toKotlin(args0)
                    })
                }),
                osDiskPlacement = javaType.osDiskPlacement(),
                resourceGroupName = javaType.resourceGroupName(),
                startTasks = javaType.startTasks().map({ args0 ->
                    args0.let({ args0 ->
                        com.pulumi.azure.batch.kotlin.outputs.GetPoolStartTask.Companion.toKotlin(args0)
                    })
                }),
                storageImageReferences = javaType.storageImageReferences().map({ args0 ->
                    args0.let({ args0 ->
                        com.pulumi.azure.batch.kotlin.outputs.GetPoolStorageImageReference.Companion.toKotlin(args0)
                    })
                }),
                taskSchedulingPolicies = javaType.taskSchedulingPolicies().map({ args0 ->
                    args0.let({ args0 ->
                        com.pulumi.azure.batch.kotlin.outputs.GetPoolTaskSchedulingPolicy.Companion.toKotlin(args0)
                    })
                }),
                userAccounts = javaType.userAccounts().map({ args0 ->
                    args0.let({ args0 ->
                        com.pulumi.azure.batch.kotlin.outputs.GetPoolUserAccount.Companion.toKotlin(args0)
                    })
                }),
                vmSize = javaType.vmSize(),
                windows = javaType.windows().map({ args0 ->
                    args0.let({ args0 ->
                        com.pulumi.azure.batch.kotlin.outputs.GetPoolWindow.Companion.toKotlin(args0)
                    })
                }),
            )
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy