NodeConfig.fromJson constructor

NodeConfig.fromJson(
  1. Map json_
)

Implementation

NodeConfig.fromJson(core.Map json_)
  : this(
      accelerators: (json_['accelerators'] as core.List?)
          ?.map(
            (value) => AcceleratorConfig.fromJson(
              value as core.Map<core.String, core.dynamic>,
            ),
          )
          .toList(),
      advancedMachineFeatures: json_.containsKey('advancedMachineFeatures')
          ? AdvancedMachineFeatures.fromJson(
              json_['advancedMachineFeatures']
                  as core.Map<core.String, core.dynamic>,
            )
          : null,
      bootDisk: json_.containsKey('bootDisk')
          ? BootDisk.fromJson(
              json_['bootDisk'] as core.Map<core.String, core.dynamic>,
            )
          : null,
      bootDiskKmsKey: json_['bootDiskKmsKey'] as core.String?,
      confidentialNodes: json_.containsKey('confidentialNodes')
          ? ConfidentialNodes.fromJson(
              json_['confidentialNodes']
                  as core.Map<core.String, core.dynamic>,
            )
          : null,
      consolidationDelay: json_['consolidationDelay'] as core.String?,
      containerdConfig: json_.containsKey('containerdConfig')
          ? ContainerdConfig.fromJson(
              json_['containerdConfig']
                  as core.Map<core.String, core.dynamic>,
            )
          : null,
      diskSizeGb: json_['diskSizeGb'] as core.int?,
      diskType: json_['diskType'] as core.String?,
      effectiveCgroupMode: json_['effectiveCgroupMode'] as core.String?,
      enableConfidentialStorage:
          json_['enableConfidentialStorage'] as core.bool?,
      ephemeralStorageLocalSsdConfig:
          json_.containsKey('ephemeralStorageLocalSsdConfig')
          ? EphemeralStorageLocalSsdConfig.fromJson(
              json_['ephemeralStorageLocalSsdConfig']
                  as core.Map<core.String, core.dynamic>,
            )
          : null,
      fastSocket: json_.containsKey('fastSocket')
          ? FastSocket.fromJson(
              json_['fastSocket'] as core.Map<core.String, core.dynamic>,
            )
          : null,
      flexStart: json_['flexStart'] as core.bool?,
      gcfsConfig: json_.containsKey('gcfsConfig')
          ? GcfsConfig.fromJson(
              json_['gcfsConfig'] as core.Map<core.String, core.dynamic>,
            )
          : null,
      gpuDirectConfig: json_.containsKey('gpuDirectConfig')
          ? GPUDirectConfig.fromJson(
              json_['gpuDirectConfig'] as core.Map<core.String, core.dynamic>,
            )
          : null,
      gvnic: json_.containsKey('gvnic')
          ? VirtualNIC.fromJson(
              json_['gvnic'] as core.Map<core.String, core.dynamic>,
            )
          : null,
      imageType: json_['imageType'] as core.String?,
      kubeletConfig: json_.containsKey('kubeletConfig')
          ? NodeKubeletConfig.fromJson(
              json_['kubeletConfig'] as core.Map<core.String, core.dynamic>,
            )
          : null,
      labels: (json_['labels'] as core.Map<core.String, core.dynamic>?)?.map(
        (key, value) => core.MapEntry(key, value as core.String),
      ),
      linuxNodeConfig: json_.containsKey('linuxNodeConfig')
          ? LinuxNodeConfig.fromJson(
              json_['linuxNodeConfig'] as core.Map<core.String, core.dynamic>,
            )
          : null,
      localNvmeSsdBlockConfig: json_.containsKey('localNvmeSsdBlockConfig')
          ? LocalNvmeSsdBlockConfig.fromJson(
              json_['localNvmeSsdBlockConfig']
                  as core.Map<core.String, core.dynamic>,
            )
          : null,
      localSsdCount: json_['localSsdCount'] as core.int?,
      localSsdEncryptionMode: json_['localSsdEncryptionMode'] as core.String?,
      loggingConfig: json_.containsKey('loggingConfig')
          ? NodePoolLoggingConfig.fromJson(
              json_['loggingConfig'] as core.Map<core.String, core.dynamic>,
            )
          : null,
      machineType: json_['machineType'] as core.String?,
      maxRunDuration: json_['maxRunDuration'] as core.String?,
      metadata: (json_['metadata'] as core.Map<core.String, core.dynamic>?)
          ?.map((key, value) => core.MapEntry(key, value as core.String)),
      minCpuPlatform: json_['minCpuPlatform'] as core.String?,
      nodeGroup: json_['nodeGroup'] as core.String?,
      oauthScopes: (json_['oauthScopes'] as core.List?)
          ?.map((value) => value as core.String)
          .toList(),
      preemptible: json_['preemptible'] as core.bool?,
      reservationAffinity: json_.containsKey('reservationAffinity')
          ? ReservationAffinity.fromJson(
              json_['reservationAffinity']
                  as core.Map<core.String, core.dynamic>,
            )
          : null,
      resourceLabels:
          (json_['resourceLabels'] as core.Map<core.String, core.dynamic>?)
              ?.map((key, value) => core.MapEntry(key, value as core.String)),
      resourceManagerTags: json_.containsKey('resourceManagerTags')
          ? ResourceManagerTags.fromJson(
              json_['resourceManagerTags']
                  as core.Map<core.String, core.dynamic>,
            )
          : null,
      sandboxConfig: json_.containsKey('sandboxConfig')
          ? SandboxConfig.fromJson(
              json_['sandboxConfig'] as core.Map<core.String, core.dynamic>,
            )
          : null,
      secondaryBootDiskUpdateStrategy:
          json_.containsKey('secondaryBootDiskUpdateStrategy')
          ? SecondaryBootDiskUpdateStrategy.fromJson(
              json_['secondaryBootDiskUpdateStrategy']
                  as core.Map<core.String, core.dynamic>,
            )
          : null,
      secondaryBootDisks: (json_['secondaryBootDisks'] as core.List?)
          ?.map(
            (value) => SecondaryBootDisk.fromJson(
              value as core.Map<core.String, core.dynamic>,
            ),
          )
          .toList(),
      serviceAccount: json_['serviceAccount'] as core.String?,
      shieldedInstanceConfig: json_.containsKey('shieldedInstanceConfig')
          ? ShieldedInstanceConfig.fromJson(
              json_['shieldedInstanceConfig']
                  as core.Map<core.String, core.dynamic>,
            )
          : null,
      soleTenantConfig: json_.containsKey('soleTenantConfig')
          ? SoleTenantConfig.fromJson(
              json_['soleTenantConfig']
                  as core.Map<core.String, core.dynamic>,
            )
          : null,
      spot: json_['spot'] as core.bool?,
      storagePools: (json_['storagePools'] as core.List?)
          ?.map((value) => value as core.String)
          .toList(),
      tags: (json_['tags'] as core.List?)
          ?.map((value) => value as core.String)
          .toList(),
      taints: (json_['taints'] as core.List?)
          ?.map(
            (value) => NodeTaint.fromJson(
              value as core.Map<core.String, core.dynamic>,
            ),
          )
          .toList(),
      windowsNodeConfig: json_.containsKey('windowsNodeConfig')
          ? WindowsNodeConfig.fromJson(
              json_['windowsNodeConfig']
                  as core.Map<core.String, core.dynamic>,
            )
          : null,
      workloadMetadataConfig: json_.containsKey('workloadMetadataConfig')
          ? WorkloadMetadataConfig.fromJson(
              json_['workloadMetadataConfig']
                  as core.Map<core.String, core.dynamic>,
            )
          : null,
    );