Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
CCParameter.SuperVerboseParameter,
CCParameter.VerboseParameter
)
argparse_properties = {
'args': (name,),
'kwargs': dict(help=description)
}
def __init__(self):
AbstractEndpoint.__init__(self)
# Note that we most often want the executor substate, so set that
# as a default parameter
self.add_param("substates", "executor")
class StopProposalExecutionEndpoint(AbstractEndpoint):
name = "stop_proposal_execution"
description = "Stop the currently-executing proposal"
http_method = "POST"
can_execute_proposal = False
available_Parameters = (
CCParameter.JSONParameter,
CCParameter.ReviewIDParameter,
)
argparse_properties = {
'args': (name,),
'kwargs': dict(aliases=[name.replace('_', '-'), 'stop'], help=description)
}
class TopicConfigurationEndpoint(AbstractEndpoint):
name = "topic_configuration"
CCParameter.ExcludeRecentlyDemotedBrokersParameter,
CCParameter.ExcludeRecentlyRemovedBrokersParameter,
CCParameter.ExcludedTopicsParameter,
CCParameter.GoalsParameter,
CCParameter.IgnoreProposalCacheParameter,
CCParameter.JSONParameter,
CCParameter.UseReadyDefaultGoalsParameter,
CCParameter.VerboseParameter
)
argparse_properties = {
'args': (name,),
'kwargs': dict(help=description)
}
class RebalanceEndpoint(AbstractEndpoint):
name = "rebalance"
description = "Rebalance the partition distribution in the kafka cluster, according to the specified goals"
http_method = "POST"
can_execute_proposal = True
available_Parameters = (
CCParameter.AllowCapacityEstimationParameter,
CCParameter.ConcurrentLeaderMovementsParameter,
CCParameter.ConcurrentPartitionMovementsPerBrokerParameter,
CCParameter.DestinationBrokerIdsParameter,
CCParameter.DryRunParameter,
CCParameter.ExcludeRecentlyDemotedBrokersParameter,
CCParameter.ExcludeRecentlyRemovedBrokersParameter,
CCParameter.ExcludedTopicsParameter,
CCParameter.GoalsParameter,
CCParameter.IgnoreProposalCacheParameter,
CCParameter.JSONParameter,
CCParameter.ReplicaMovementStrategiesParameter,
CCParameter.ReviewIDParameter,
CCParameter.SkipHardGoalCheckParameter,
CCParameter.UseReadyDefaultGoalsParameter,
CCParameter.VerboseParameter
)
argparse_properties = {
'args': (name,),
'kwargs': dict(help=description)
}
def __init__(self):
AbstractEndpoint.__init__(self)
class RemoveBrokerEndpoint(AbstractEndpoint):
name = "remove_broker"
description = "Remove all partitions from the specified brokers, according to the specified goals"
http_method = "POST"
can_execute_proposal = True
available_Parameters = (
CCParameter.AllowCapacityEstimationParameter,
CCParameter.BrokerIdParameter,
CCParameter.ConcurrentLeaderMovementsParameter,
CCParameter.ConcurrentPartitionMovementsPerBrokerParameter,
CCParameter.DestinationBrokerIdsParameter,
CCParameter.DryRunParameter,
CCParameter.ExcludeRecentlyDemotedBrokersParameter,
CCParameter.ExcludeRecentlyRemovedBrokersParameter,
CCParameter.ExcludedTopicsParameter,
CCParameter.GoalsParameter,
CCParameter.JSONParameter,
CCParameter.SkipHardGoalCheckParameter,
CCParameter.ThrottleRemovedBrokerParameter,
CCParameter.UseReadyDefaultGoalsParameter,
CCParameter.VerboseParameter
)
argparse_properties = {
'args': (name,),
'kwargs': dict(aliases=['remove_brokers', 'remove-broker', 'remove-brokers'], help=description)
}
def __init__(self, broker_ids: Union[str, List[str]]):
AbstractEndpoint.__init__(self)
self.add_param("brokerid", broker_ids)
class ResumeSamplingEndpoint(AbstractEndpoint):
name = "resume_sampling"
description = "Resume metrics load sampling"
http_method = "POST"
can_execute_proposal = False
available_Parameters = {
CCParameter.JSONParameter,
CCParameter.ReasonParameter,
CCParameter.ReviewIDParameter,
}
argparse_properties = {
'args': (name,),
'kwargs': dict(aliases=[name.replace('_', '-')], help=description)
}
class ReviewEndpoint(AbstractEndpoint):
CCParameter.ReplicaMovementStrategiesParameter,
CCParameter.ReviewIDParameter,
CCParameter.SkipURPDemotionParameter,
CCParameter.VerboseParameter
)
argparse_properties = {
'args': (name,),
'kwargs': dict(aliases=['demote_brokers', 'demote-broker', 'demote-brokers'], help=description)
}
def __init__(self, broker_ids: Union[str, List[str]]):
AbstractEndpoint.__init__(self)
self.add_param("brokerid", broker_ids)
class FixOfflineReplicasEndpoint(AbstractEndpoint):
# Warning, this Endpoint is only supported in kafka 1.1 and above
name = "fix_offline_replicas"
description = "Fixes the offline replicas in the cluster (kafka 1.1+ only)"
http_method = "POST"
can_execute_proposal = True
available_Parameters = (
CCParameter.AllowCapacityEstimationParameter,
CCParameter.ConcurrentLeaderMovementsParameter,
CCParameter.ConcurrentPartitionMovementsPerBrokerParameter,
CCParameter.DryRunParameter,
CCParameter.ExcludeRecentlyDemotedBrokersParameter,
CCParameter.ExcludeRecentlyRemovedBrokersParameter,
CCParameter.ExcludedTopicsParameter,
CCParameter.GoalsParameter,
CCParameter.JSONParameter,
CCParameter.ReasonParameter,
name = "pause_sampling"
description = "Pause metrics load sampling"
http_method = "POST"
can_execute_proposal = False
available_Parameters = (
CCParameter.JSONParameter,
CCParameter.ReasonParameter,
CCParameter.ReviewIDParameter,
)
argparse_properties = {
'args': (name,),
'kwargs': dict(aliases=[name.replace('_', '-')], help=description)
}
class ProposalsEndpoint(AbstractEndpoint):
name = "proposals"
description = "Get current proposals"
http_method = "GET"
can_execute_proposal = False
available_Parameters = (
CCParameter.AllowCapacityEstimationParameter,
CCParameter.DataFromParameter,
CCParameter.ExcludeRecentlyDemotedBrokersParameter,
CCParameter.ExcludeRecentlyRemovedBrokersParameter,
CCParameter.ExcludedTopicsParameter,
CCParameter.GoalsParameter,
CCParameter.IgnoreProposalCacheParameter,
CCParameter.JSONParameter,
CCParameter.UseReadyDefaultGoalsParameter,
CCParameter.VerboseParameter
)
description = "Create, approve, or discard reviews"
http_method = "POST"
can_execute_proposal = False
available_Parameters = (
CCParameter.ApproveParameter,
CCParameter.DiscardParameter,
CCParameter.JSONParameter,
CCParameter.ReasonParameter
)
argparse_properties = {
'args': (name,),
'kwargs': dict(help=description)
}
class ReviewBoardEndpoint(AbstractEndpoint):
name = "review_board"
description = "View already-created reviews"
http_method = "GET"
can_execute_proposal = False
available_Parameters = (
CCParameter.JSONParameter,
CCParameter.ReviewIDsParameter
)
argparse_properties = {
'args': (name,),
'kwargs': dict(aliases=[name.replace('_', '-')], help=description)
}
class StateEndpoint(AbstractEndpoint):
name = "state"
description = "Bootstrap the load monitor"
http_method = "GET"
can_execute_proposal = False
available_Parameters = (
CCParameter.ClearMetricsParameter,
CCParameter.EndParameter,
CCParameter.JSONParameter,
CCParameter.StartParameter
)
argparse_properties = {
'args': (name,),
'kwargs': dict(help=description)
}
class DemoteBrokerEndpoint(AbstractEndpoint):
name = "demote_broker"
description = "Remove leadership and preferred leadership from the specified brokers"
http_method = "POST"
can_execute_proposal = True
available_Parameters = (
CCParameter.AllowCapacityEstimationParameter,
CCParameter.BrokerIdParameter,
CCParameter.ConcurrentLeaderMovementsParameter,
CCParameter.DryRunParameter,
CCParameter.ExcludeFollowerDemotionParameter,
CCParameter.ExcludeRecentlyDemotedBrokersParameter,
CCParameter.JSONParameter,
CCParameter.ReasonParameter,
CCParameter.ReplicaMovementStrategiesParameter,
CCParameter.ReviewIDParameter,
CCParameter.SkipURPDemotionParameter,
CCParameter.SkipHardGoalCheckParameter,
CCParameter.ThrottleRemovedBrokerParameter,
CCParameter.UseReadyDefaultGoalsParameter,
CCParameter.VerboseParameter
)
argparse_properties = {
'args': (name,),
'kwargs': dict(aliases=['add_brokers', 'add-broker', 'add-brokers'], help=description)
}
def __init__(self, broker_ids: Union[str, List[str]]):
AbstractEndpoint.__init__(self)
self.add_param("brokerid", broker_ids)
class AdminEndpoint(AbstractEndpoint):
name = "admin"
description = "Used to change runtime configurations on the cruise-control server itself"
http_method = "POST"
can_execute_proposal = False
available_Parameters = (
CCParameter.ConcurrentLeaderMovementsParameter,
CCParameter.ConcurrentPartitionMovementsPerBrokerParameter,
CCParameter.DisableSelfHealingForParameter,
CCParameter.DropRecentlyDemotedBrokersParameter,
CCParameter.DropRecentlyRemovedBrokersParameter,
CCParameter.EnableSelfHealingForParameter,
CCParameter.JSONParameter,
CCParameter.ReviewIDParameter,
)
argparse_properties = {
'args': (name,),