patroni.tags module
Tags handling.
- class patroni.tags.TagsView on GitHub
Bases:
ABC
An abstract class that encapsulates all the
tags
logic.Child classes that want to use provided facilities must implement
tags
abstract property.- _abc_impl = <_abc._abc_data object>
- static _filter_tags(tags: Dict[str, Any]) → Dict[str, Any]View on GitHub
Get tags configured for this node, if any.
Handle both predefined Patroni tags and custom defined tags.
Note
A custom tag is any tag added to the configuration
tags
section that is not one ofclonefrom
,nofailover
,noloadbalance
ornosync
.For the Patroni predefined tags, the returning object will only contain them if they are enabled as they all are boolean values that default to disabled.
- Returns:
a dictionary of tags set for this node. The key is the tag name, and the value is the corresponding tag value.
- property failover_priority: int
Common logic for obtaining the value of
failover_priority
fromtags
if defined.If
nofailover
is defined asTrue
, this will return0
. Otherwise, it will return the value offailover_priority
, defaulting to1
if it’s not defined or invalid.