HEX
Server: Apache
System: Linux scp1.abinfocom.com 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64
User: confeduphaar (1010)
PHP: 8.1.33
Disabled: exec,passthru,shell_exec,system
Upload Files
File: //lib/mysqlsh/lib/python3.8/site-packages/oci/container_engine/models/node_eviction_settings.py
# coding: utf-8
# Copyright (c) 2016, 2025, Oracle and/or its affiliates.  All rights reserved.
# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.

# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20180222


from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel  # noqa: F401
from oci.decorators import init_model_state_from_kwargs


@init_model_state_from_kwargs
class NodeEvictionSettings(object):
    """
    Node Eviction Configuration
    """

    def __init__(self, **kwargs):
        """
        Initializes a new NodeEvictionSettings object with values from keyword arguments.
        The following keyword arguments are supported (corresponding to the getters/setters of this class):

        :param eviction_grace_duration:
            The value to assign to the eviction_grace_duration property of this NodeEvictionSettings.
        :type eviction_grace_duration: str

        :param is_force_action_after_grace_duration:
            The value to assign to the is_force_action_after_grace_duration property of this NodeEvictionSettings.
        :type is_force_action_after_grace_duration: bool

        """
        self.swagger_types = {
            'eviction_grace_duration': 'str',
            'is_force_action_after_grace_duration': 'bool'
        }
        self.attribute_map = {
            'eviction_grace_duration': 'evictionGraceDuration',
            'is_force_action_after_grace_duration': 'isForceActionAfterGraceDuration'
        }
        self._eviction_grace_duration = None
        self._is_force_action_after_grace_duration = None

    @property
    def eviction_grace_duration(self):
        """
        Gets the eviction_grace_duration of this NodeEvictionSettings.
        Duration after which OKE will give up eviction of the pods on the node. PT0M will indicate you want to perform node action without cordon and drain.
        Default PT60M, Min PT0M, Max: PT60M. Format ISO 8601 e.g PT30M


        :return: The eviction_grace_duration of this NodeEvictionSettings.
        :rtype: str
        """
        return self._eviction_grace_duration

    @eviction_grace_duration.setter
    def eviction_grace_duration(self, eviction_grace_duration):
        """
        Sets the eviction_grace_duration of this NodeEvictionSettings.
        Duration after which OKE will give up eviction of the pods on the node. PT0M will indicate you want to perform node action without cordon and drain.
        Default PT60M, Min PT0M, Max: PT60M. Format ISO 8601 e.g PT30M


        :param eviction_grace_duration: The eviction_grace_duration of this NodeEvictionSettings.
        :type: str
        """
        self._eviction_grace_duration = eviction_grace_duration

    @property
    def is_force_action_after_grace_duration(self):
        """
        Gets the is_force_action_after_grace_duration of this NodeEvictionSettings.
        If the node action should be performed if not all the pods can be evicted in the grace period


        :return: The is_force_action_after_grace_duration of this NodeEvictionSettings.
        :rtype: bool
        """
        return self._is_force_action_after_grace_duration

    @is_force_action_after_grace_duration.setter
    def is_force_action_after_grace_duration(self, is_force_action_after_grace_duration):
        """
        Sets the is_force_action_after_grace_duration of this NodeEvictionSettings.
        If the node action should be performed if not all the pods can be evicted in the grace period


        :param is_force_action_after_grace_duration: The is_force_action_after_grace_duration of this NodeEvictionSettings.
        :type: bool
        """
        self._is_force_action_after_grace_duration = is_force_action_after_grace_duration

    def __repr__(self):
        return formatted_flat_dict(self)

    def __eq__(self, other):
        if other is None:
            return False

        return self.__dict__ == other.__dict__

    def __ne__(self, other):
        return not self == other