1<?php 2/* 3 * Copyright 2014 Google Inc. 4 * 5 * Licensed under the Apache License, Version 2.0 (the "License"); you may not 6 * use this file except in compliance with the License. You may obtain a copy of 7 * the License at 8 * 9 * http://www.apache.org/licenses/LICENSE-2.0 10 * 11 * Unless required by applicable law or agreed to in writing, software 12 * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT 13 * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the 14 * License for the specific language governing permissions and limitations under 15 * the License. 16 */ 17 18namespace Google\Service\Container; 19 20class NodeConfig extends \Google\Collection 21{ 22 protected $collection_key = 'taints'; 23 protected $acceleratorsType = AcceleratorConfig::class; 24 protected $acceleratorsDataType = 'array'; 25 protected $advancedMachineFeaturesType = AdvancedMachineFeatures::class; 26 protected $advancedMachineFeaturesDataType = ''; 27 /** 28 * @var string 29 */ 30 public $bootDiskKmsKey; 31 /** 32 * @var int 33 */ 34 public $diskSizeGb; 35 /** 36 * @var string 37 */ 38 public $diskType; 39 protected $gcfsConfigType = GcfsConfig::class; 40 protected $gcfsConfigDataType = ''; 41 protected $gvnicType = VirtualNIC::class; 42 protected $gvnicDataType = ''; 43 /** 44 * @var string 45 */ 46 public $imageType; 47 protected $kubeletConfigType = NodeKubeletConfig::class; 48 protected $kubeletConfigDataType = ''; 49 /** 50 * @var string[] 51 */ 52 public $labels; 53 protected $linuxNodeConfigType = LinuxNodeConfig::class; 54 protected $linuxNodeConfigDataType = ''; 55 /** 56 * @var int 57 */ 58 public $localSsdCount; 59 /** 60 * @var string 61 */ 62 public $machineType; 63 /** 64 * @var string[] 65 */ 66 public $metadata; 67 /** 68 * @var string 69 */ 70 public $minCpuPlatform; 71 /** 72 * @var string 73 */ 74 public $nodeGroup; 75 /** 76 * @var string[] 77 */ 78 public $oauthScopes; 79 /** 80 * @var bool 81 */ 82 public $preemptible; 83 protected $reservationAffinityType = ReservationAffinity::class; 84 protected $reservationAffinityDataType = ''; 85 protected $sandboxConfigType = SandboxConfig::class; 86 protected $sandboxConfigDataType = ''; 87 /** 88 * @var string 89 */ 90 public $serviceAccount; 91 protected $shieldedInstanceConfigType = ShieldedInstanceConfig::class; 92 protected $shieldedInstanceConfigDataType = ''; 93 /** 94 * @var bool 95 */ 96 public $spot; 97 /** 98 * @var string[] 99 */ 100 public $tags; 101 protected $taintsType = NodeTaint::class; 102 protected $taintsDataType = 'array'; 103 protected $workloadMetadataConfigType = WorkloadMetadataConfig::class; 104 protected $workloadMetadataConfigDataType = ''; 105 106 /** 107 * @param AcceleratorConfig[] 108 */ 109 public function setAccelerators($accelerators) 110 { 111 $this->accelerators = $accelerators; 112 } 113 /** 114 * @return AcceleratorConfig[] 115 */ 116 public function getAccelerators() 117 { 118 return $this->accelerators; 119 } 120 /** 121 * @param AdvancedMachineFeatures 122 */ 123 public function setAdvancedMachineFeatures(AdvancedMachineFeatures $advancedMachineFeatures) 124 { 125 $this->advancedMachineFeatures = $advancedMachineFeatures; 126 } 127 /** 128 * @return AdvancedMachineFeatures 129 */ 130 public function getAdvancedMachineFeatures() 131 { 132 return $this->advancedMachineFeatures; 133 } 134 /** 135 * @param string 136 */ 137 public function setBootDiskKmsKey($bootDiskKmsKey) 138 { 139 $this->bootDiskKmsKey = $bootDiskKmsKey; 140 } 141 /** 142 * @return string 143 */ 144 public function getBootDiskKmsKey() 145 { 146 return $this->bootDiskKmsKey; 147 } 148 /** 149 * @param int 150 */ 151 public function setDiskSizeGb($diskSizeGb) 152 { 153 $this->diskSizeGb = $diskSizeGb; 154 } 155 /** 156 * @return int 157 */ 158 public function getDiskSizeGb() 159 { 160 return $this->diskSizeGb; 161 } 162 /** 163 * @param string 164 */ 165 public function setDiskType($diskType) 166 { 167 $this->diskType = $diskType; 168 } 169 /** 170 * @return string 171 */ 172 public function getDiskType() 173 { 174 return $this->diskType; 175 } 176 /** 177 * @param GcfsConfig 178 */ 179 public function setGcfsConfig(GcfsConfig $gcfsConfig) 180 { 181 $this->gcfsConfig = $gcfsConfig; 182 } 183 /** 184 * @return GcfsConfig 185 */ 186 public function getGcfsConfig() 187 { 188 return $this->gcfsConfig; 189 } 190 /** 191 * @param VirtualNIC 192 */ 193 public function setGvnic(VirtualNIC $gvnic) 194 { 195 $this->gvnic = $gvnic; 196 } 197 /** 198 * @return VirtualNIC 199 */ 200 public function getGvnic() 201 { 202 return $this->gvnic; 203 } 204 /** 205 * @param string 206 */ 207 public function setImageType($imageType) 208 { 209 $this->imageType = $imageType; 210 } 211 /** 212 * @return string 213 */ 214 public function getImageType() 215 { 216 return $this->imageType; 217 } 218 /** 219 * @param NodeKubeletConfig 220 */ 221 public function setKubeletConfig(NodeKubeletConfig $kubeletConfig) 222 { 223 $this->kubeletConfig = $kubeletConfig; 224 } 225 /** 226 * @return NodeKubeletConfig 227 */ 228 public function getKubeletConfig() 229 { 230 return $this->kubeletConfig; 231 } 232 /** 233 * @param string[] 234 */ 235 public function setLabels($labels) 236 { 237 $this->labels = $labels; 238 } 239 /** 240 * @return string[] 241 */ 242 public function getLabels() 243 { 244 return $this->labels; 245 } 246 /** 247 * @param LinuxNodeConfig 248 */ 249 public function setLinuxNodeConfig(LinuxNodeConfig $linuxNodeConfig) 250 { 251 $this->linuxNodeConfig = $linuxNodeConfig; 252 } 253 /** 254 * @return LinuxNodeConfig 255 */ 256 public function getLinuxNodeConfig() 257 { 258 return $this->linuxNodeConfig; 259 } 260 /** 261 * @param int 262 */ 263 public function setLocalSsdCount($localSsdCount) 264 { 265 $this->localSsdCount = $localSsdCount; 266 } 267 /** 268 * @return int 269 */ 270 public function getLocalSsdCount() 271 { 272 return $this->localSsdCount; 273 } 274 /** 275 * @param string 276 */ 277 public function setMachineType($machineType) 278 { 279 $this->machineType = $machineType; 280 } 281 /** 282 * @return string 283 */ 284 public function getMachineType() 285 { 286 return $this->machineType; 287 } 288 /** 289 * @param string[] 290 */ 291 public function setMetadata($metadata) 292 { 293 $this->metadata = $metadata; 294 } 295 /** 296 * @return string[] 297 */ 298 public function getMetadata() 299 { 300 return $this->metadata; 301 } 302 /** 303 * @param string 304 */ 305 public function setMinCpuPlatform($minCpuPlatform) 306 { 307 $this->minCpuPlatform = $minCpuPlatform; 308 } 309 /** 310 * @return string 311 */ 312 public function getMinCpuPlatform() 313 { 314 return $this->minCpuPlatform; 315 } 316 /** 317 * @param string 318 */ 319 public function setNodeGroup($nodeGroup) 320 { 321 $this->nodeGroup = $nodeGroup; 322 } 323 /** 324 * @return string 325 */ 326 public function getNodeGroup() 327 { 328 return $this->nodeGroup; 329 } 330 /** 331 * @param string[] 332 */ 333 public function setOauthScopes($oauthScopes) 334 { 335 $this->oauthScopes = $oauthScopes; 336 } 337 /** 338 * @return string[] 339 */ 340 public function getOauthScopes() 341 { 342 return $this->oauthScopes; 343 } 344 /** 345 * @param bool 346 */ 347 public function setPreemptible($preemptible) 348 { 349 $this->preemptible = $preemptible; 350 } 351 /** 352 * @return bool 353 */ 354 public function getPreemptible() 355 { 356 return $this->preemptible; 357 } 358 /** 359 * @param ReservationAffinity 360 */ 361 public function setReservationAffinity(ReservationAffinity $reservationAffinity) 362 { 363 $this->reservationAffinity = $reservationAffinity; 364 } 365 /** 366 * @return ReservationAffinity 367 */ 368 public function getReservationAffinity() 369 { 370 return $this->reservationAffinity; 371 } 372 /** 373 * @param SandboxConfig 374 */ 375 public function setSandboxConfig(SandboxConfig $sandboxConfig) 376 { 377 $this->sandboxConfig = $sandboxConfig; 378 } 379 /** 380 * @return SandboxConfig 381 */ 382 public function getSandboxConfig() 383 { 384 return $this->sandboxConfig; 385 } 386 /** 387 * @param string 388 */ 389 public function setServiceAccount($serviceAccount) 390 { 391 $this->serviceAccount = $serviceAccount; 392 } 393 /** 394 * @return string 395 */ 396 public function getServiceAccount() 397 { 398 return $this->serviceAccount; 399 } 400 /** 401 * @param ShieldedInstanceConfig 402 */ 403 public function setShieldedInstanceConfig(ShieldedInstanceConfig $shieldedInstanceConfig) 404 { 405 $this->shieldedInstanceConfig = $shieldedInstanceConfig; 406 } 407 /** 408 * @return ShieldedInstanceConfig 409 */ 410 public function getShieldedInstanceConfig() 411 { 412 return $this->shieldedInstanceConfig; 413 } 414 /** 415 * @param bool 416 */ 417 public function setSpot($spot) 418 { 419 $this->spot = $spot; 420 } 421 /** 422 * @return bool 423 */ 424 public function getSpot() 425 { 426 return $this->spot; 427 } 428 /** 429 * @param string[] 430 */ 431 public function setTags($tags) 432 { 433 $this->tags = $tags; 434 } 435 /** 436 * @return string[] 437 */ 438 public function getTags() 439 { 440 return $this->tags; 441 } 442 /** 443 * @param NodeTaint[] 444 */ 445 public function setTaints($taints) 446 { 447 $this->taints = $taints; 448 } 449 /** 450 * @return NodeTaint[] 451 */ 452 public function getTaints() 453 { 454 return $this->taints; 455 } 456 /** 457 * @param WorkloadMetadataConfig 458 */ 459 public function setWorkloadMetadataConfig(WorkloadMetadataConfig $workloadMetadataConfig) 460 { 461 $this->workloadMetadataConfig = $workloadMetadataConfig; 462 } 463 /** 464 * @return WorkloadMetadataConfig 465 */ 466 public function getWorkloadMetadataConfig() 467 { 468 return $this->workloadMetadataConfig; 469 } 470} 471 472// Adding a class alias for backwards compatibility with the previous class name. 473class_alias(NodeConfig::class, 'Google_Service_Container_NodeConfig'); 474