11 # define PE_VARIANT__H 15 typedef struct clone_variant_data_s {
20 int promoted_node_max;
31 xmlNode *xml_obj_child;
32 } clone_variant_data_t;
34 # define get_clone_variant_data(data, rsc) \ 35 CRM_ASSERT(rsc != NULL); \ 36 CRM_ASSERT(rsc->variant == pe_clone); \ 37 data = (clone_variant_data_t *)rsc->variant_opaque; 39 # elif PE__VARIANT_BUNDLE 49 } pe__bundle_replica_t;
51 enum pe__bundle_mount_flags {
52 pe__bundle_mount_none = 0x00,
55 pe__bundle_mount_subdir = 0x01
70 enum pe__container_agent {
71 PE__CONTAINER_AGENT_UNKNOWN,
72 PE__CONTAINER_AGENT_DOCKER,
73 PE__CONTAINER_AGENT_RKT,
74 PE__CONTAINER_AGENT_PODMAN,
77 #define PE__CONTAINER_AGENT_UNKNOWN_S "unknown" 78 #define PE__CONTAINER_AGENT_DOCKER_S "docker" 79 #define PE__CONTAINER_AGENT_RKT_S "rkt" 80 #define PE__CONTAINER_AGENT_PODMAN_S "podman" 82 typedef struct pe__bundle_variant_data_s {
85 int nreplicas_per_host;
92 char *container_network;
95 gchar *container_host_options;
96 char *container_command;
97 char *launcher_options;
98 const char *attribute_target;
106 enum pe__container_agent agent_type;
107 } pe__bundle_variant_data_t;
109 # define get_bundle_variant_data(data, rsc) \ 110 CRM_ASSERT(rsc != NULL); \ 111 CRM_ASSERT(rsc->variant == pe_container); \ 112 CRM_ASSERT(rsc->variant_opaque != NULL); \ 113 data = (pe__bundle_variant_data_t *)rsc->variant_opaque; \