automaticRestart = $automaticRestart; } /** * @return bool */ public function getAutomaticRestart() { return $this->automaticRestart; } /** * Specifies the availability domain to place the instance in. The value must * be a number between 1 and the number of availability domains specified in * the spread placement policy attached to the instance. * * @param int $availabilityDomain */ public function setAvailabilityDomain($availabilityDomain) { $this->availabilityDomain = $availabilityDomain; } /** * @return int */ public function getAvailabilityDomain() { return $this->availabilityDomain; } /** * Specify the time in seconds for host error detection, the value must be * within the range of [90, 330] with the increment of 30, if unset, the * default behavior of host error recovery will be used. * * @param int $hostErrorTimeoutSeconds */ public function setHostErrorTimeoutSeconds($hostErrorTimeoutSeconds) { $this->hostErrorTimeoutSeconds = $hostErrorTimeoutSeconds; } /** * @return int */ public function getHostErrorTimeoutSeconds() { return $this->hostErrorTimeoutSeconds; } /** * Specifies the termination action for the instance. * * Accepted values: DELETE, INSTANCE_TERMINATION_ACTION_UNSPECIFIED, STOP * * @param self::INSTANCE_TERMINATION_ACTION_* $instanceTerminationAction */ public function setInstanceTerminationAction($instanceTerminationAction) { $this->instanceTerminationAction = $instanceTerminationAction; } /** * @return self::INSTANCE_TERMINATION_ACTION_* */ public function getInstanceTerminationAction() { return $this->instanceTerminationAction; } /** * Specifies the maximum amount of time a Local Ssd Vm should wait while * recovery of the Local Ssd state is attempted. Its value should be in * between 0 and 168 hours with hour granularity and the default value being 1 * hour. * * @param Duration $localSsdRecoveryTimeout */ public function setLocalSsdRecoveryTimeout(Duration $localSsdRecoveryTimeout) { $this->localSsdRecoveryTimeout = $localSsdRecoveryTimeout; } /** * @return Duration */ public function getLocalSsdRecoveryTimeout() { return $this->localSsdRecoveryTimeout; } /** * An opaque location hint used to place the instance close to other * resources. This field is for use by internal tools that use the public API. * * @param string $locationHint */ public function setLocationHint($locationHint) { $this->locationHint = $locationHint; } /** * @return string */ public function getLocationHint() { return $this->locationHint; } /** * Specifies the max run duration for the given instance. If specified, the * instance termination action will be performed at the end of the run * duration. * * @param Duration $maxRunDuration */ public function setMaxRunDuration(Duration $maxRunDuration) { $this->maxRunDuration = $maxRunDuration; } /** * @return Duration */ public function getMaxRunDuration() { return $this->maxRunDuration; } /** * The minimum number of virtual CPUs this instance will consume when running * on a sole-tenant node. * * @param int $minNodeCpus */ public function setMinNodeCpus($minNodeCpus) { $this->minNodeCpus = $minNodeCpus; } /** * @return int */ public function getMinNodeCpus() { return $this->minNodeCpus; } /** * A set of node affinity and anti-affinity configurations. Refer * toConfiguring node affinity for more information. Overrides * reservationAffinity. * * @param SchedulingNodeAffinity[] $nodeAffinities */ public function setNodeAffinities($nodeAffinities) { $this->nodeAffinities = $nodeAffinities; } /** * @return SchedulingNodeAffinity[] */ public function getNodeAffinities() { return $this->nodeAffinities; } /** * Defines the maintenance behavior for this instance. For standard instances, * the default behavior is MIGRATE. Forpreemptible instances, the default and * only possible behavior is TERMINATE. For more information, see Set VM * host maintenance policy. * * Accepted values: MIGRATE, TERMINATE * * @param self::ON_HOST_MAINTENANCE_* $onHostMaintenance */ public function setOnHostMaintenance($onHostMaintenance) { $this->onHostMaintenance = $onHostMaintenance; } /** * @return self::ON_HOST_MAINTENANCE_* */ public function getOnHostMaintenance() { return $this->onHostMaintenance; } /** * @param SchedulingOnInstanceStopAction $onInstanceStopAction */ public function setOnInstanceStopAction(SchedulingOnInstanceStopAction $onInstanceStopAction) { $this->onInstanceStopAction = $onInstanceStopAction; } /** * @return SchedulingOnInstanceStopAction */ public function getOnInstanceStopAction() { return $this->onInstanceStopAction; } /** * Defines whether the instance is preemptible. This can only be set during * instance creation or while the instance isstopped and therefore, in a * `TERMINATED` state. SeeInstance Life Cycle for more information on the * possible instance states. * * @param bool $preemptible */ public function setPreemptible($preemptible) { $this->preemptible = $preemptible; } /** * @return bool */ public function getPreemptible() { return $this->preemptible; } /** * Specifies the provisioning model of the instance. * * Accepted values: FLEX_START, RESERVATION_BOUND, SPOT, STANDARD * * @param self::PROVISIONING_MODEL_* $provisioningModel */ public function setProvisioningModel($provisioningModel) { $this->provisioningModel = $provisioningModel; } /** * @return self::PROVISIONING_MODEL_* */ public function getProvisioningModel() { return $this->provisioningModel; } /** * Default is false and there will be 120 seconds between GCE ACPI G2 Soft Off * and ACPI G3 Mechanical Off for Standard VMs and 30 seconds for Spot VMs. * * @param bool $skipGuestOsShutdown */ public function setSkipGuestOsShutdown($skipGuestOsShutdown) { $this->skipGuestOsShutdown = $skipGuestOsShutdown; } /** * @return bool */ public function getSkipGuestOsShutdown() { return $this->skipGuestOsShutdown; } /** * Specifies the timestamp, when the instance will be terminated, inRFC3339 * text format. If specified, the instance termination action will be * performed at the termination time. * * @param string $terminationTime */ public function setTerminationTime($terminationTime) { $this->terminationTime = $terminationTime; } /** * @return string */ public function getTerminationTime() { return $this->terminationTime; } } // Adding a class alias for backwards compatibility with the previous class name. class_alias(Scheduling::class, 'Google_Service_Compute_Scheduling');