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,
      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,
      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,
    );