10#ifndef PCMK__CRM_COMMON_ACTIONS_INTERNAL__H
11#define PCMK__CRM_COMMON_ACTIONS_INTERNAL__H
16#include <libxml/tree.h>
30#define PCMK__OP_FMT "%s_%s_%u"
39#define pcmk__set_action_flags(action, flags_to_set) do { \
40 (action)->flags = pcmk__set_flags_as(__func__, __LINE__, \
42 "Action", (action)->uuid, \
55#define pcmk__clear_action_flags(action, flags_to_clear) do { \
56 (action)->flags = pcmk__clear_flags_as(__func__, __LINE__, \
58 "Action", (action)->uuid, \
72#define pcmk__set_raw_action_flags(action_flags, action_name, to_set) do { \
73 action_flags = pcmk__set_flags_as(__func__, __LINE__, \
74 LOG_TRACE, "Action", action_name, \
87#define pcmk__clear_raw_action_flags(action_flags, action_name, to_clear) \
89 action_flags = pcmk__clear_flags_as(__func__, __LINE__, LOG_TRACE, \
90 "Action", action_name, \
92 (to_clear), #to_clear); \
238char *
pcmk__op_key(
const char *rsc_id,
const char *op_type, guint interval_ms);
240 const char *op_type);
259static inline const char *
260pcmk__readable_action(
const char *action_name, guint interval_ms) {
261 if ((interval_ms == 0)
277pcmk__is_up_action(
const char *
action)
292pcmk__is_down_action(
const char *
action)
#define PCMK_ACTION_PROMOTE
#define PCMK_ACTION_START
#define PCMK_ACTION_MIGRATE_FROM
#define PCMK_ACTION_MIGRATE_TO
#define PCMK_ACTION_MONITOR
#define PCMK_ACTION_DEMOTE
void pcmk__free_action(gpointer user_data)
void pcmk__filter_op_for_digest(xmlNode *param_set)
@ pcmk__action_inputs_deduplicated
@ pcmk__action_always_in_graph
@ pcmk__action_migration_abort
@ pcmk__action_added_to_graph
@ pcmk__action_migratable
@ pcmk__action_detect_loop
@ pcmk__action_reschedule
@ pcmk__action_attrs_evaluated
char * pcmk__notify_key(const char *rsc_id, const char *notify_type, const char *op_type)
char * pcmk__op_key(const char *rsc_id, const char *op_type, guint interval_ms)
Generate an operation key (RESOURCE_ACTION_INTERVAL)
bool pcmk__is_fencing_action(const char *action)
const char * pcmk__action_text(enum pcmk__action_type action)
@ pcmk__on_fail_reset_remote
@ pcmk__on_fail_restart_container
@ pcmk__on_fail_fence_node
@ pcmk__on_fail_standby_node
enum pcmk__action_type pcmk__parse_action(const char *action_name)
char * pcmk__transition_key(int transition_id, int action_id, int target_rc, const char *node)
const char * pcmk__on_fail_text(enum pcmk__on_fail on_fail)
@ pcmk__action_unspecified
Scheduler API for resource roles.
Type aliases needed to define scheduler objects.
bool pcmk__str_any_of(const char *s,...) G_GNUC_NULL_TERMINATED
int required_runnable_before
pcmk_scheduler_t * scheduler
enum pcmk__requires needs
enum rsc_role_e fail_role
enum pcmk__on_fail on_fail