#!/bin/ksh93 # ALTRAN_PROLOG_BEGIN_TAG # This is an automatically generated prolog. # # Copyright (C) Altran ACT S.A.S. 2017,2018,2019,2020,2021,2022. All rights reserved. # # ALTRAN_PROLOG_END_TAG # # @(#) 5881272 43haes/usr/sbin/cluster/events/class_processors.sh, 61aha_r726, 2205A_aha726, May 16 2022 12:15 PM ########################################################################### # # This file is used to define all the operation signatures supported by # clmgr, where an "operation" is defined as the unique combination of a # specific action on a particular class. The file/function that needs to # be invoked for a given operation is defined, along with the options # that are allowed for that operation. All required options must have a # plus sign appended to them. # # These signatures are used to not only know how to invoke an operation, # but also how to validate its input (i.e. the signatures are used to # allow/disallow customer inputs). Further, when the customer requests # syntax help, these definitions are consulted for how to provide it. # # ============================ # !!! IMPORTANT NOTE !!! # ============================ # The clvt/clmgr binary directly parses this file in order to validate # ACTION<==>CLASS mappings. It is critical that the formatting of this # file be consistently maintained. All action sections must be denoted # with a conditional that looks like one of these: # # if [[ $CLMGR_ACTION == "add" ]]; then # elif [[ $CLMGR_ACTION == "delete" ]]; then # # Ideally, nothing else should be on the line, to avoid any parsing # confusion, and not other conditionals that contain the variable # "$CLMGR_ACTION" should be included in the file. # # Last, for any entry added to the "else" section, below, make sure # the key uses the format of "_". If you must deviate # from this, then it is likely that you'll need to add special # handling code to "clvt.c", as well. # # Any time a new entry is made to this file, in addition to normal # functional testing, be sure to also verify that the new entry shows # up correctly in help and error output. # ########################################################################### . $HALIBROOT/log_entry class_processors "$CL" max typeset -l CLMGR_ACTION=$1 typeset -A _CLASS_PROCESSORS ###################### ## ## ADD ## ###################### if [[ $CLMGR_ACTION == "add" ]]; then _CLASS_PROCESSORS=( [cluster]="add_cluster properties RESOURCE_NAME FC_SYNC_INTERVAL \ NODES HEARTBEAT_TYPE REPOSITORIES CLUSTER_IP \ RG_SETTLING_TIME RG_DIST_POLICY MAX_EVENT_TIME \ MAX_RG_PROCESSING_TIME SITE_POLICY_FAILURE_ACTION \ SITE_POLICY_NOTIFY_METHOD \ DAILY_VERIFICATION VERIFICATION_NODE \ VERIFICATION_HOUR VERIFICATION_DEBUGGING \ HEARTBEAT_FREQUENCY GRACE_PERIOD \ SITE_HEARTBEAT_CYCLE SITE_GRACE_PERIOD TYPE \ TEMP_HOSTNAME \ LPM_POLICY HEARTBEAT_FREQUENCY_DURING_LPM \ NETWORK_FAILURE_DETECTION_TIME CAA_AUTO_START_DR \ CAA_REPOS_MODE CAA_CONFIG_TIMEOUT \ LVM_PREFERRED_READ CRIT_DAEMON_RESTART_GRACE_PERIOD \ SKIP_EVENT_PROCESSING_MANAGE_MODE" [repository]="add_repository properties RESOURCE_NAME+ SITE \ NODE DISABLE_VALIDATION" [site]="add_site properties RESOURCE_NAME+ NODES SITE_IP \ RECOVERY_PRIORITY REPOSITORIES" [node]="add_node properties RESOURCE_NAME+ COMMPATH RUN_DISCOVERY \ PERSISTENT_IP NETWORK PREFIX NETMASK START_ON_BOOT \ BROADCAST_ON_START CLINFO_ON_START \ SITE CRIT_DAEMON_RESTART_GRACE_PERIOD" [network]="add_network properties RESOURCE_NAME+ TYPE NETMASK PREFIX PUBLIC UNSTABLE_THRESHOLD UNSTABLE_PERIOD" [interface]="add_interface properties RESOURCE_NAME+ NETWORK+ TYPE \ NODE INTERFACE" [file_collection]="add_file_collection properties RESOURCE_NAME+ \ DESCRIPTION FILES+ SYNC_WITH_CLUSTER \ SYNC_WHEN_CHANGED" [snapshot]="add_snapshot properties RESOURCE_NAME+ DESCRIPTION METHODS MISC_INFO" [resource_group]="add_resource_group properties RESOURCE_NAME+ NODES \ FALLOVER FALLBACK STARTUP \ FALLBACK_AT SERVICE_LABEL APPLICATIONS \ VOLUME_GROUP FORCED_VARYON VG_AUTO_IMPORT FILESYSTEM \ FSCHECK_TOOL RECOVERY_METHOD FS_BEFORE_IPADDR \ EXPORT_FILESYSTEM EXPORT_FILESYSTEM_V4 \ MOUNT_FILESYSTEM STABLE_STORAGE_PATH WPAR_NAME \ NFS_NETWORK SHARED_TAPE_RESOURCES DISK \ AIX_FAST_CONNECT_SERVICES COMMUNICATION_LINKS \ WLM_PRIMARY WLM_SECONDARY MISC_DATA \ NODE_PRIORITY_POLICY NODE_PRIORITY_POLICY_SCRIPT \ NODE_PRIORITY_POLICY_TIMEOUT \ SITE_POLICY SECONDARYNODES MIRROR_GROUP" [application_controller]="add_appserver properties RESOURCE_NAME+ \ STARTSCRIPT+ STOPSCRIPT+ MONITORS STARTUP_MODE \ CPU_USAGE_MONITOR PROCESS_TO_MONITOR_CPU_USAGE \ CPU_USAGE_MONITOR_INTERVAL" [application_monitor]="add_appmonitor properties RESOURCE_NAME+ \ APPLICATIONS TYPE+ MODE+ FAILUREACTION PROCESSES \ OWNER INSTANCECOUNT STABILIZATION RESTARTCOUNT \ RESTARTINTERVAL NOTIFYMETHOD MONITORMETHOD \ MONITORINTERVAL HUNGSIGNAL CLEANUPMETHOD \ RESTARTMETHOD MONITORRETRYCOUNT AMLOGGING" [dependency]="add_dependency TYPE+ PARENT+ CHILD+ STOP+ START+ AFTER+ \ SAME+ GROUPS+ HIGH+ INTERMEDIATE+ LOW+ SERIAL+ \ PARALLEL+" [fallback_timer]="add_fallback_timer properties RESOURCE_NAME+ HOUR+ \ MINUTE+ DAY_OF_WEEK DAY_OF_MONTH MONTH YEAR" [file_system]="add_file_system properties RESOURCE_NAME+ \ TYPE+ UNITS+ SIZE_PER_UNIT PERMISSIONS OPTIONS \ BLOCK_SIZE LV_FOR_LOG INLINE_LOG_SIZE \ EXT_ATTR_FORMAT ENABLE_QUOTA_MGMT EFS \ DISK_ACCOUNTING FRAGMENT_SIZE BYTES_PER_INODE \ ALLOC_GROUP_SIZE VOLUME_GROUP LOGICAL_VOLUME" [logical_volume]="add_logical_volume properties RESOURCE_NAME+ \ VOLUME_GROUP+ LOGICAL_PARTITIONS+ PHYSICAL_VOLUMES \ TYPE POSITION PV_RANGE MAX_PVS_FOR_NEW_ALLOC \ LPART_COPIES WRITE_CONSISTENCY LPARTS_ON_SEPARATE_PVS \ RELOCATE MAX_LPARTS BAD_BLOCK_RELOCATION \ SCHEDULING_POLICY VERIFY_WRITES ALLOCATION_MAP \ STRIPE_SIZE SERIALIZE_IO FIRST_BLOCK_AVAILABLE \ FIRST_COPY_MIRROR_POOL SECOND_COPY_MIRROR_POOL \ THIRD_COPY_MIRROR_POOL GROUP PERMISSIONS LABEL NODE \ ENABLE_LV_ENCRYPTION AUTH_METHOD METHOD_DETAILS \ AUTH_METHOD_NAME" [method]="add_method properties RESOURCE_NAME+ TYPE+ FILE+ DESCRIPTION \ CONTACT EVENTS NODES RETRY TIMEOUT SOURCE" [persistent_ip]="add_persistent_ip properties RESOURCE_NAME+ \ NETWORK+ NODE NETMASK PREFIX" [service_ip]="add_service_ip properties RESOURCE_NAME+ NETWORK+ \ NETMASK PREFIX HWADDR SITE" [tape]="add_tape properties RESOURCE_NAME+ DEVICE+ DESCRIPTION \ STARTSCRIPT START_SYNCHRONOUSLY \ STOPSCRIPT STOP_SYNCHRONOUSLY" [volume_group]="add_volume_group properties RESOURCE_NAME+ NODES+ \ PHYSICAL_VOLUMES+ TYPE RESOURCE_GROUP PPART_SIZE \ MAJOR_NUMBER \ ACTIVATE_ON_RESTART QUORUM_NEEDED LTG_SIZE \ MIGRATE_FAILED_DISKS \ MAX_PHYSICAL_PARTITIONS MAX_LOGICAL_VOLUMES \ MIRROR_POOL_NAME STRICT_MIRROR_POOLS \ CRITICAL FAILUREACTION NOTIFYMETHOD LVM_PREFERRED_READ \ ENABLE_LV_ENCRYPTION" [mirror_pool]="add_mirror_pool properties RESOURCE_NAME+ \ VOLUME_GROUP+ PHYSICAL_VOLUMES STORAGE_LOCATION MODE \ ASYNC_CACHE_LV ASYNC_CACHE_HW_MARK" [ldap_server]="add_ldap_server properties RESOURCE_NAME+ ADMIN_DN+ \ PASSWORD+ BASE_DN+ SSL_KEY+ SSL_PASSWORD+ PORT SCHEMA \ VERSION DB2_INSTANCE_PASSWORD ENCRYPTION_SEED" [ldap_client]="add_ldap_client properties SERVERS+ BIND_DN+ PASSWORD+ \ BASE_DN+ SSL_KEY+ SSL_PASSWORD+ PORT" [user]="add_user properties RESOURCE_NAME+ RESOURCE_GROUP ID PROJECTS \ KEYSTORE_ACCESS ADMIN_KEYSTORE_ACCESS KEYSTORE_MODE \ ALLOW_MODE_CHANGE KEYSTORE_ENCRYPTION FILE_ENCRYPTION \ REGISTRY AUTHENTICATION GROUPS PRIMARY ADMIN_GROUPS \ ROLES SWITCH_USER SU_GROUPS HOME SHELL INFO EXPIRATION \ LOCKED LOGIN REMOTE_LOGIN SCHEDULE MAX_FAILED_LOGINS \ ALLOWED_TTYS DAYS_TO_WARN PASSWORD_VALIDATION_METHODS \ PASSWORD_FILTERS MIN_PASSWORDS REUSE_TIME \ LOCKOUT_DELAY MAX_PASSWORD_AGE MIN_PASSWORD_AGE \ MIN_PASSWORD_LENGTH MIN_PASSWORD_ALPHAS \ MIN_PASSWORD_OTHERS MAX_PASSWORD_REPEATED_CHARS \ MIN_PASSWORD_DIFFERENT \ UMASK AUDIT_CLASSES TRUSTED_PATH PRIMARY_AUTH \ SECONDARY_AUTH ADMINISTRATIVE \ PASSWORD CHANGE_ON_NEXT_LOGIN ALLOW_PASSWORD_CHANGE" [group]="add_group properties RESOURCE_NAME+ RESOURCE_GROUP ID \ ADMINISTRATIVE USERS ADMINS PROJECTS KEYSTORE_MODE \ KEYSTORE_ENCRYPTION KEYSTORE_ACCESS REGISTRY" [efs]="add_efs properties MODE+ VOLUME_GROUP+ SERVICE_IP+ PASSWORD" [storage_agent]="add_storage_agent properties RESOURCE_NAME+ \ TYPE+ ADDRESSES+ USER PASSWORD MASTER PARTNER \ ATTRIBUTES" [storage_system]="add_storage_system properties RESOURCE_NAME+ \ TYPE+ SITE+ AGENTS WWNN VENDOR_ID ATTRIBUTES \ ROLE ADDRESSES PARTNER USER BACKUP_PROFILE" [mirror_pair]="add_mirror_pair properties RESOURCE_NAME+ \ FIRST_DISK+ SECOND_DISK+" [mirror_group]="add_mirror_group properties RESOURCE_NAME+ \ TYPE MODE RECOVERY STORAGE_SYSTEMS MIRROR_PAIRS \ CONSISTENT VENDOR_ID ATTRIBUTES \ HORCM_INSTANCE HORCM_TIMEOUT PAIR_EVENT_TIMEOUT \ VOLUME_GROUPS DISKS HYPERSWAP_ENABLED \ HYPERSWAP_PRIORITY UNPLANNED_HS_TIMEOUT MG_TYPE \ NODE SITE NON_HS_DISK HS_DISK RESYNC" [event]="add_event properties RESOURCE_NAME+ FILE+ DESCRIPTION" [hmc]="add_hmc properties RESOURCE_NAME+ TIMEOUT RETRY_COUNT \ RETRY_DELAY NODES SITES CHECK_HMC USER_NAME PASSWORD" [cod]="add_cod properties RESOURCE_NAME+ USE_DESIRED \ OPTIMAL_MEM OPTIMAL_CPU OPTIMAL_PU OPTIMAL_VP" [nova]="add_nova properties RESOURCE_NAME+ TIMEOUT RETRY_COUNT \ RETRY_DELAY USER_NAME PASSWORD" [backup_profile]="add_backup_profile properties RESOURCE_NAME+ ENABLE_BACKUP+ \ VOLUME_GROUP+ REPLICATED_RESOURCES+ STORAGE_NAME+ BUCKET_NAME+ \ TARGET_LOCATION BACKUP_METHOD+ CLOUD_SERVICE \ COMPRESSION BACKUP_FREQUENCY BACKUP_SCHEDULE INC_BACKUP_FREQ \ NOTIFYMETHOD ENCRYPTION" [backup]="add_backup properties RESOURCE_NAME+" ) ###################### ## ## DELETE ## ###################### elif [[ $CLMGR_ACTION == "delete" ]]; then _CLASS_PROCESSORS=( [cluster]="KLIB_HACMP_delete_cluster NODES" [repository]="delete_repository RESOURCE_NAME+ SITE NODE" [site]="KLIB_HACMP_delete_site RESOURCE_NAME+" [node]="KLIB_HACMP_delete_node RESOURCE_NAME+" [network]="KLIB_HACMP_delete_network RESOURCE_NAME+" [interface]="KLIB_HACMP_delete_interface RESOURCE_NAME+" [file_collection]="KLIB_HACMP_delete_filecollection RESOURCE_NAME+" [snapshot]="KLIB_HACMP_delete_snapshot RESOURCE_NAME+" [resource_group]="KLIB_HACMP_delete_resourcegroup RESOURCE_NAME+" [application_controller]="KLIB_HACMP_delete_appserver RESOURCE_NAME+" [application_monitor]="KLIB_HACMP_delete_appmonitor RESOURCE_NAME+" [dependency]="delete_dependency RESOURCE_NAME+ TYPE RESOURCE_GROUP" [fallback_timer]="KLIB_HACMP_delete_fallback_timer RESOURCE_NAME+" [method]="KLIB_HACMP_delete_method RESOURCE_NAME+ TYPE" [persistent_ip]="KLIB_HACMP_delete_persistent_ip RESOURCE_NAME+" [service_ip]="KLIB_HACMP_delete_service_ip RESOURCE_NAME+" [tape]="KLIB_HACMP_delete_tape RESOURCE_NAME+" [file_system]="KLIB_HACMP_delete_file_system RESOURCE_NAME+ REMOVE_MOUNT_POINT" [logical_volume]="KLIB_HACMP_delete_logical_volume RESOURCE_NAME+" [volume_group]="KLIB_HACMP_delete_volume_group RESOURCE_NAME+" [mirror_pool]="delete_mirror_pool RESOURCE_NAME+ VOLUME_GROUP PHYSICAL_VOLUMES" [ldap_server]="KLIB_HACMP_delete_ldap_server" [ldap_client]="KLIB_HACMP_delete_ldap_client" [user]="delete_user RESOURCE_NAME+ RESOURCE_GROUP REMOVE_AUTH_INFO \ REGISTRY" [group]="delete_group RESOURCE_NAME+ RESOURCE_GROUP REGISTRY" [efs]="KLIB_HACMP_delete_efs" [storage_agent]="KLIB_HACMP_delete_storage_agent RESOURCE_NAME+" [storage_system]="KLIB_HACMP_delete_storage_system RESOURCE_NAME+ BACKUP_PROFILE" [mirror_pair]="KLIB_HACMP_delete_mirror_pair RESOURCE_NAME+" [mirror_group]="KLIB_HACMP_delete_mirror_group RESOURCE_NAME+" [event]="KLIB_HACMP_delete_event RESOURCE_NAME+" [hmc]="KLIB_HACMP_delete_hmc RESOURCE_NAME+" [cod]="KLIB_HACMP_delete_cod RESOURCE_NAME+" [nova]="KLIB_HACMP_delete_nova RESOURCE_NAME+" [backup_profile]="delete_backup_profile RESOURCE_NAME+ \ CANCEL_BACKUP" ) ###################### ## ## MODIFY ## ###################### elif [[ $CLMGR_ACTION == "modify" ]]; then _CLASS_PROCESSORS=( [cluster]="modify_cluster properties NAME FC_SYNC_INTERVAL \ NODES HEARTBEAT_TYPE REPOSITORIES CLUSTER_IP \ RG_SETTLING_TIME RG_DIST_POLICY MAX_EVENT_TIME \ MAX_RG_PROCESSING_TIME SITE_POLICY_FAILURE_ACTION \ SITE_POLICY_NOTIFY_METHOD \ DAILY_VERIFICATION VERIFICATION_NODE \ VERIFICATION_HOUR VERIFICATION_DEBUGGING \ HEARTBEAT_FREQUENCY GRACE_PERIOD \ SITE_HEARTBEAT_CYCLE SITE_GRACE_PERIOD TYPE \ \ SPLIT_POLICY MERGE_POLICY NFS_QUORUM_SERVER LOCAL_QUORUM_DIRECTORY \ REMOTE_QUORUM_DIRECTORY QUARANTINE_POLICY CRITICAL_RG ACTION_PLAN TIEBREAKER \ NOTIFYMETHOD NOTIFY_INTERVAL MAXIMUM_NOTIFICATIONS \ DEFAULT_SURVIVING_SITE APPLY_TO_PPRC_TAKEOVER \ TEMP_HOSTNAME \ LPM_POLICY HEARTBEAT_FREQUENCY_DURING_LPM \ NETWORK_FAILURE_DETECTION_TIME \ CAA_AUTO_START_DR \ CAA_REPOS_MODE CAA_CONFIG_TIMEOUT LVM_PREFERRED_READ CRIT_DAEMON_RESTART_GRACE_PERIOD \ SKIP_EVENT_PROCESSING_MANAGE_MODE BUCKET_NAME CLOUD_SERVICE USE_EXISTING_BUCKET" [site]="modify_site properties RESOURCE_NAME+ NAME NODES SITE_IP \ RECOVERY_PRIORITY REPOSITORIES \ HMCS" [node]="modify_node properties RESOURCE_NAME+ NAME COMMPATH \ PERSISTENT_IP NETWORK PREFIX NETMASK START_ON_BOOT \ BROADCAST_ON_START CLINFO_ON_START \ ENABLE_LIVE_UPDATE HMCS ENABLE_CAA_AFTER_MERGE \ CRIT_DAEMON_RESTART_GRACE_PERIOD" [network]="modify_network properties RESOURCE_NAME+ NAME TYPE \ NETMASK PREFIX PUBLIC RESOURCE_DIST_PREF \ SOURCE_IP UNSTABLE_THRESHOLD UNSTABLE_PERIOD" [interface]="modify_interface properties RESOURCE_NAME+ NETWORK+" [file_collection]="modify_file_collection properties RESOURCE_NAME+ \ NAME DESCRIPTION ADD DELETE REPLACE FILES \ SYNC_WITH_CLUSTER SYNC_WHEN_CHANGED" [log]="modify_log properties RESOURCE_NAME+ DIRECTORY FORMATTING \ TRACE_LEVEL REMOTE_FS" [snapshot]="modify_snapshot properties RESOURCE_NAME+ NAME \ DESCRIPTION " [resource_group]="modify_resource_group properties RESOURCE_NAME+ \ NAME NODES FALLBACK_AT SERVICE_LABEL APPLICATIONS \ VOLUME_GROUP FORCED_VARYON VG_AUTO_IMPORT FILESYSTEM \ FSCHECK_TOOL RECOVERY_METHOD FS_BEFORE_IPADDR \ EXPORT_FILESYSTEM EXPORT_FILESYSTEM_V4 \ MOUNT_FILESYSTEM STABLE_STORAGE_PATH WPAR_NAME \ NFS_NETWORK SHARED_TAPE_RESOURCES DISK \ AIX_FAST_CONNECT_SERVICES COMMUNICATION_LINKS \ WLM_PRIMARY WLM_SECONDARY MISC_DATA \ STARTUP FALLOVER FALLBACK \ NODE_PRIORITY_POLICY NODE_PRIORITY_POLICY_SCRIPT \ NODE_PRIORITY_POLICY_TIMEOUT SITE_POLICY RAW_DISK \ SECONDARYNODES MIRROR_GROUP USERDEFINED_RESOURCES \ MANAGE_RDISK SVCPPRC_REP_RESOURCE SR_REP_RESOURCE \ GENXD_REP_RESOURCE TC_REP_RESOURCE DATA_DIVERGENCE_RECOVERY \ VARYON_WITH_MISSING_UPDATES PPRC_REP_RESOURCE" [application_controller]="modify_appserver properties RESOURCE_NAME+ \ NAME STARTSCRIPT STOPSCRIPT MONITORS STARTUP_MODE \ CPU_USAGE_MONITOR PROCESS_TO_MONITOR_CPU_USAGE \ CPU_USAGE_MONITOR_INTERVAL" [application_monitor]="modify_appmonitor properties RESOURCE_NAME+ \ NAME APPLICATIONS TYPE MODE FAILUREACTION \ PROCESSES OWNER INSTANCECOUNT STABILIZATION \ RESTARTCOUNT RESTARTINTERVAL NOTIFYMETHOD \ MONITORMETHOD MONITORINTERVAL HUNGSIGNAL \ CLEANUPMETHOD RESTARTMETHOD MONITORRETRYCOUNT AMLOGGING" [dependency]="modify_dependency RESOURCE_NAME+ TYPE PARENT CHILD SAME \ HIGH INTERMEDIATE LOW STOP START AFTER SERIAL PARALLEL \ GROUPS" [fallback_timer]="modify_fallback_timer properties RESOURCE_NAME+ YEAR \ MONTH DAY_OF_MONTH DAY_OF_WEEK HOUR MINUTE REPEATS" [method]="modify_method properties RESOURCE_NAME+ TYPE+ NAME \ DESCRIPTION FILE CONTACT EVENTS NODES RETRY TIMEOUT" [persistent_ip]="modify_persistent_ip properties RESOURCE_NAME+ \ NAME NETWORK PREFIX NETMASK" [service_ip]="modify_service_ip properties RESOURCE_NAME+ NAME \ NETWORK NETMASK PREFIX HWADDR SITE" [tape]="modify_tape properties RESOURCE_NAME+ NAME DEVICE DESCRIPTION \ STARTSCRIPT START_SYNCHRONOUSLY \ STOPSCRIPT STOP_SYNCHRONOUSLY" [volume_group]="modify_volume_group properties RESOURCE_NAME+ ADD \ REMOVE MIRROR_POOL_NAME TYPE \ ACTIVATE_ON_RESTART QUORUM_NEEDED LTG_SIZE \ MIGRATE_FAILED_DISKS \ MAX_PHYSICAL_PARTITIONS MAX_LOGICAL_VOLUMES \ STRICT_MIRROR_POOLS CRITICAL FAILUREACTION \ NOTIFYMETHOD SCSIPR_ACTION LVM_PREFERRED_READ \ ENABLE_LV_ENCRYPTION" [physical_volume]="modify_physical_volume properties RESOURCE_NAME+ \ NAME+ SCSIPR_ACTION NODE ALL_NODES" [mirror_pool]="modify_mirror_pool properties RESOURCE_NAME+ \ VOLUME_GROUP+ NAME STORAGE_LOCATION MODE FORCE_SYNC \ ASYNC_CACHE_LV ASYNC_CACHE_HW_MARK ADD REMOVE" [temporal_dependency]="modify_temporal_dependency RESOURCE_NAME+ RESOURCEGROUPCHILDREN" [location_dependency]="modify_location_dependency RESOURCE_NAME+ RESOURCEGROUPLIST" [user]="modify_user properties RESOURCE_NAME+ RESOURCE_GROUP ID \ KEYSTORE_ACCESS ADMIN_KEYSTORE_ACCESS KEYSTORE_MODE \ ALLOW_MODE_CHANGE KEYSTORE_ENCRYPTION FILE_ENCRYPTION \ REGISTRY AUTHENTICATION GROUPS PRIMARY ADMIN_GROUPS \ ROLES SWITCH_USER SU_GROUPS HOME SHELL INFO EXPIRATION \ LOCKED LOGIN REMOTE_LOGIN SCHEDULE MAX_FAILED_LOGINS \ ALLOWED_TTYS DAYS_TO_WARN PASSWORD_VALIDATION_METHODS \ PASSWORD_FILTERS MIN_PASSWORDS REUSE_TIME \ LOCKOUT_DELAY MAX_PASSWORD_AGE MIN_PASSWORD_AGE \ MIN_PASSWORD_LENGTH MIN_PASSWORD_ALPHAS \ MIN_PASSWORD_OTHERS MAX_PASSWORD_REPEATED_CHARS \ MIN_PASSWORD_DIFFERENT \ UMASK AUDIT_CLASSES TRUSTED_PATH PRIMARY_AUTH \ SECONDARY_AUTH PROJECTS ADMINISTRATIVE \ PASSWORD CHANGE_ON_NEXT_LOGIN ALLOW_PASSWORD_CHANGE" [group]="modify_group properties RESOURCE_NAME+ RESOURCE_GROUP ID \ ADMINISTRATIVE USERS ADMINS PROJECTS KEYSTORE_MODE \ KEYSTORE_ENCRYPTION KEYSTORE_ACCESS REGISTRY" [efs]="modify_efs properties MODE VOLUME_GROUP SERVICE_IP PASSWORD" [storage_agent]="modify_storage_agent properties RESOURCE_NAME+ \ NAME ADDRESSES USER PASSWORD ATTRIBUTES" [storage_system]="modify_storage_system properties RESOURCE_NAME+ \ NAME SITE AGENTS WWNN VENDOR_ID ADDRESSES MASTER \ PARTNER ATTRIBUTES USER BACKUP_PROFILE" [mirror_pair]="modify_mirror_pair properties RESOURCE_NAME+ NAME \ FIRST_DISK SECOND_DISK" [mirror_group]="modify_mirror_group properties RESOURCE_NAME+ NAME \ MODE RECOVERY STORAGE_SYSTEMS MIRROR_PAIRS \ DEVICE_GROUPS CONSISTENT VENDOR_ID ATTRIBUTES \ HORCM_INSTANCE HORCM_TIMEOUT PAIR_EVENT_TIMEOUT \ VOLUME_GROUPS DISKS HYPERSWAP_ENABLED \ HYPERSWAP_PRIORITY UNPLANNED_HS_TIMEOUT \ NODE SITE NON_HS_DISK HS_DISK MG_TYPE RESYNC" [event]="modify_event properties RESOURCE_NAME+ NAME FILE DESCRIPTION \ NOTIFY_COMMAND PRE_EVENT_COMMAND \ POST_EVENT_COMMAND PREPOSTFAILS" [hmc]="modify_hmc properties RESOURCE_NAME+ TIMEOUT RETRY_COUNT \ RETRY_DELAY NODES SITES CHECK_HMC USER_NAME PASSWORD" [cod]="modify_cod properties RESOURCE_NAME+ USE_DESIRED \ OPTIMAL_MEM OPTIMAL_CPU OPTIMAL_PU OPTIMAL_VP" [nova]="modify_nova properties RESOURCE_NAME+ TIMEOUT RETRY_COUNT \ RETRY_DELAY USER_NAME PASSWORD" [backup_profile]="modify_backup_profile properties RESOURCE_NAME+ ENABLE_BACKUP \ VOLUME_GROUP REPLICATED_RESOURCES STORAGE_NAME BUCKET_NAME \ TARGET_LOCATION CLOUD_SERVICE COMPRESSION \ BACKUP_FREQUENCY BACKUP_SCHEDULE INC_BACKUP_FREQ \ NOTIFYMETHOD ENCRYPTION" [logical_volume]="modify_logical_volume properties RESOURCE_NAME+ \ TYPE POSITION PV_RANGE MAX_PVS_FOR_NEW_ALLOC \ MAX_LPARTS SCHEDULING_POLICY LABEL LOGICAL_PARTITIONS \ ENABLE_LV_ENCRYPTION AUTH_METHOD METHOD_DETAILS \ AUTH_METHOD_NAME REMOVE_AUTH_METHOD" [file_system]="modify_file_system properties RESOURCE_NAME+ \ UNITS SIZE_PER_UNIT NEW_FS_NAME PERMISSIONS EFS" ) ###################### ## ## Compare ## ###################### elif [[ $CLMGR_ACTION == "compare" ]]; then _CLASS_PROCESSORS=( [cluster]="compare_cluster RESOURCE_NAME+ DIRECTORY \ DISABLE_EXPECT" [snapshot]="compare_snapshot RESOURCE_NAME+ SNAPSHOTPATH \ SECTION PAGER SDIFF_OUTPUT_WIDTH SDIFF_FLAGS" ) ###################### ## ## MOVE ## ###################### elif [[ $CLMGR_ACTION == "move" ]]; then _CLASS_PROCESSORS=( [persistent_ip]="move_persistent_ip RESOURCE_NAME+ INTERFACE+" [resource_group]="move_resource_group RESOURCE_NAME+ NODE SITE STATE SECONDARY" [service_ip]="move_service_ip RESOURCE_NAME+ INTERFACE+" ) ###################### ## ## OFFLINE ## ###################### elif [[ $CLMGR_ACTION == "offline" ]]; then _CLASS_PROCESSORS=( [cluster]="stop_cluster WHEN MANAGE BROADCAST TIMEOUT STOP_CAA" [site]="stop_site RESOURCE_NAME+ WHEN MANAGE BROADCAST TIMEOUT STOP_CAA" [node]="stop_node RESOURCE_NAME WHEN MANAGE BROADCAST TIMEOUT STOP_CAA" [resource_group]="stop_rg RESOURCE_NAME+ NODES MODE PRIMARY SECONDARY" ) ###################### ## ## ONLINE ## ###################### elif [[ $CLMGR_ACTION == "online" ]]; then _CLASS_PROCESSORS=( [cluster]="start_cluster WHEN MANAGE BROADCAST CLINFO FORCE FIX TIMEOUT START_CAA" [site]="start_site RESOURCE_NAME+ WHEN MANAGE BROADCAST CLINFO \ FORCE FIX TIMEOUT START_CAA" [node]="start_node RESOURCE_NAME WHEN MANAGE BROADCAST CLINFO \ FORCE FIX TIMEOUT START_CAA" [resource_group]="start_rg RESOURCE_NAME+ NODES PRIMARY SECONDARY" ) ###################### ## ## REPLACE ## ###################### elif [[ $CLMGR_ACTION == "replace" ]]; then _CLASS_PROCESSORS=( [mirror_group]="replace_mirror_group RESOURCE_NAME NODES SITES SYSTEM_GROUPS REPOSITORY_GROUP" [repository]="replace_repository RESOURCE_NAME SITE NODE" ) ###################### ## ## VIEW ## ###################### elif [[ $CLMGR_ACTION == "view" ]]; then _CLASS_PROCESSORS=( [log]="view_log RESOURCE_NAME+ properties CASE FILTER TAIL HEAD \ DELIMITER" [mirror_group]="view_mirror_group RESOURCE_NAME NODES SITE SYSTEM_GROUPS REPOSITORY_GROUP" [report]="view_report RESOURCE_NAME+ FILE TYPE BEGIN_TIME END_TIME \ TARGETS COMPANY_NAME COMPANY_LOGO SNAPSHOT" [snapshot]="view_snapshot RESOURCE_NAME+ properties CASE FILTER TAIL \ HEAD DELIMITER" ) ###################### ## ## RECOVER ## ###################### elif [[ $CLMGR_ACTION == "recover" ]]; then _CLASS_PROCESSORS=( [cluster]="recover_cluster CANCEL_EVENT" [site]="recover_site RESOURCE_NAME+ CANCEL_EVENT" [node]="recover_node RESOURCE_NAME+ CANCEL_EVENT" ) ###################### ## ## MANAGE ## ###################### elif [[ $CLMGR_ACTION == "manage" ]]; then _CLASS_PROCESSORS=( [collect_log]="collect_logs log DIRECTORY NODES RSCT_LOGS" [discover_cluster]="KLIB_HACMP_run_discovery properties properties" [refresh_mirror_group]="refresh_mirror_group RESOURCE_NAME NODES SITE SYSTEM_GROUPS REPOSITORY_GROUP" [reset_cluster]="KLIB_HACMP_reset_cluster" [restore_snapshot]="restore_snapshot RESOURCE_NAME+ \ CONFIGURE FORCE NODES REPOSITORIES CLUSTER_NAME" [resume_application_controller]="resume_app_monitoring RESOURCE_NAME+ \ RESOURCE_GROUP+" [unlock_cluster]="KLIB_HACMP_unlock_cluster" [undo_changes_node]="KLIB_HACMP_undo_cfg_changes" [hmc_cluster]="modify_cluster_hmc properties \ DEFAULT_HMC_TIMEOUT DEFAULT_HMC_RETRY_COUNT \ DEFAULT_HMC_RETRY_DELAY DEFAULT_HMCS_LIST \ CONNECTION_TYPE" [roha_cluster]="modify_cluster_roha properties \ ALWAYS_START_RG ADJUST_SPP_SIZE FORCE_SYNC_RELEASE \ AGREE_TO_COD_COSTS ONOFF_DAYS RESOURCE_ALLOCATION_ORDER" [security_cluster]="modify_cluster_security properties \ LEVEL ALGORITHM MECHANISM CERTIFICATE PRIVATE_KEY" [suspend_application_controller]="suspend_app_monitoring \ RESOURCE_NAME+ RESOURCE_GROUP+" [mirror_volume_group]="mirror_volume_group RESOURCE_NAME+ NODE \ PHYSICAL_VOLUMES NODE MODE COPIES_PER_LPART \ CHECK_QUORUM EXACT_LV_MAPPING MP_FIRST_COPY \ MP_SECOND_COPY MP_THIRD_COPY" [respond_site]="KLIB_HACMP_respond_site RESOURCE_NAME+" [nova_cluster]="modify_cluster_nova properties \ DEFAULT_NOVA_TIMEOUT DEFAULT_NOVA_RETRY_COUNT \ DEFAULT_NOVA_RETRY_DELAY CONNECTION_TYPE" [cloudroha_cluster]="modify_cluster_cloudroha properties \ ACTION+ AUTHKEY+ SERVICE+ CLOUDTYPE TIMEOUT CLOUDSITE+" [rehearsals_cluster]="cluster_rehearsals RESOURCE_GROUP+" [rbac_refresh_cluster]="KLIB_HACMP_cluster_rbac_refresh" ) ###################### ## ## QUERY/LIST, MISC ## ###################### ## NOTE: any attributes that the customer will be allowed to use in search ## expressions must be specified here *if* they are not already ## specified in the attribute sets for a matching "add" and "modify" ## processors for this class, as defined above. else _CLASS_PROCESSORS=( [query_cluster]="query_cluster properties DEFINED SECURITY SPLIT MERGE HMC ROHA ALL CORE" [query_repository]="KLIB_HACMP_get_repository_attributes RESOURCE_NAME \ properties SITE" [query_site]="KLIB_HACMP_get_site_attributes RESOURCE_NAME properties" [query_node]="KLIB_HACMP_get_node_attributes RESOURCE_NAME properties" [query_network]="KLIB_HACMP_get_network_attributes RESOURCE_NAME \ properties" [query_interface]="KLIB_HACMP_get_interface_attributes RESOURCE_NAME \ properties" [query_file_collection]="KLIB_HACMP_get_filecollection_attributes \ RESOURCE_NAME properties" [query_log]="KLIB_HACMP_get_log_attributes RESOURCE_NAME properties" [query_snapshot]="KLIB_HACMP_get_snapshot_attributes RESOURCE_NAME \ properties" [query_resource_group]="KLIB_HACMP_get_rg_attributes RESOURCE_NAME \ properties" [query_application_controller]="KLIB_HACMP_get_appserver_attributes \ RESOURCE_NAME properties" [query_application_monitor]="KLIB_HACMP_get_appmonitor_attributes \ RESOURCE_NAME properties" [query_dependency]="KLIB_HACMP_get_dependency_attributes RESOURCE_NAME \ properties" [query_fallback_timer]="KLIB_HACMP_get_fallback_timer_attributes \ RESOURCE_NAME properties" [query_file_system]="KLIB_HACMP_get_file_system_attributes \ RESOURCE_NAME properties" [query_logical_volume]="KLIB_HACMP_get_logical_volume_attributes \ RESOURCE_NAME properties FAST" [query_method]="KLIB_HACMP_get_method_attributes RESOURCE_NAME \ properties" [query_persistent_ip]="KLIB_HACMP_get_persistent_ip_attributes \ RESOURCE_NAME properties" [query_physical_volume]="query_physical_volume RESOURCE_NAME \ properties NODES ALL TYPE" [query_service_ip]="KLIB_HACMP_get_service_ip_attributes RESOURCE_NAME \ properties" [query_tape]="KLIB_HACMP_get_tape_attributes RESOURCE_NAME properties" [query_volume_group]="query_volume_group RESOURCE_NAME properties \ FAST" [query_mirror_pool]="KLIB_HACMP_get_mirror_pool_attributes RESOURCE_NAME \ properties" [query_host]="KLIB_HACMP_get_host_attributes properties RESOURCE_NAME" [query_smart_assist]="list_smart_assists TYPE NODES SAID COMPID \ INSTANCEID ENV" [query_temporal_dependency]="query_temporal_dependency RESOURCE_NAME \ properties" [query_location_dependency]="KLIB_HACMP_get_location_dependency_by_type\ RESOURCE_NAME properties" [query_ldap_server]="KLIB_HACMP_get_ldap_server_attributes \ properties" [query_ldap_client]="KLIB_HACMP_get_ldap_client_attributes \ properties" [query_group]="KLIB_HACMP_get_group_attributes RESOURCE_NAME \ properties" [query_user]="query_users RESOURCE_NAME properties TYPE" [query_storage_agent]="KLIB_HACMP_get_storage_agent_attributes \ RESOURCE_NAME properties" [query_storage_system]="query_storage_system \ RESOURCE_NAME properties BACKUP" [query_mirror_pair]="KLIB_HACMP_get_mirror_pair_attributes \ RESOURCE_NAME properties" [query_mirror_group]="KLIB_HACMP_get_mirror_group_attributes \ RESOURCE_NAME properties" [query_event]="KLIB_HACMP_get_event_attributes RESOURCE_NAME \ properties" [query_hmc]="KLIB_HACMP_get_hmc_attributes RESOURCE_NAME properties" [query_cod]="KLIB_HACMP_get_cod_attributes RESOURCE_NAME properties" [query_efs]="KLIB_HACMP_get_efs_attributes properties" [query_nova]="KLIB_HACMP_get_nova_attributes RESOURCE_NAME properties" [query_backup_profile]="KLIB_HACMP_get_backup_profile_attributes RESOURCE_NAME properties" [query_backup_files]="list_backup_files BUCKET_NAME RG_NAME START_TIME END_TIME" [list_repository]="KLIB_HACMP_list_repositories properties NODES" [list_site]="KLIB_HACMP_list_sites properties" [list_node]="KLIB_HACMP_list_nodes properties" [list_host]="KLIB_HACMP_list_hosts properties TYPE" [list_network]="KLIB_HACMP_list_networks properties" [list_interface]="KLIB_HACMP_list_interfaces properties" [list_file_collection]="KLIB_HACMP_list_filecollection properties" [list_log]="KLIB_HACMP_list_logs properties" [list_snapshot]="KLIB_HACMP_list_snapshots properties" [list_resource_group]="KLIB_HACMP_list_resourcegroups properties" [list_application_controller]="KLIB_HACMP_list_appservers properties" [list_application_monitor]="KLIB_HACMP_list_appmonitors properties" [list_dependency]="KLIB_HACMP_list_dependencies properties" [list_file_system]="KLIB_HACMP_list_file_systems properties" [list_fallback_timer]="KLIB_HACMP_list_fallback_timers properties" [list_logical_volume]="KLIB_HACMP_list_logical_volumes properties" [list_method]="KLIB_HACMP_list_methods properties TYPE" [list_persistent_ip]="KLIB_HACMP_list_persistent_ip properties" [list_physical_volume]="list_physical_volumes properties NODES ALL TYPE" [list_service_ip]="KLIB_HACMP_list_service_ip properties" [list_tape]="KLIB_HACMP_list_tapes properties" [list_volume_group]="KLIB_HACMP_list_volume_groups properties" [list_mirror_pool]="KLIB_HACMP_list_mirror_pools properties" [list_smart_assist]="list_smart_assists TYPE NODES SAID COMPID \ INSTANCEID ENV" [list_ldap_server]="KLIB_HACMP_list_ldap_servers properties" [list_user]="list_users properties TYPE" [list_group]="KLIB_HACMP_list_groups properties" [list_efs]="KLIB_HACMP_get_efs_attributes properties" [list_storage_agent]="KLIB_HACMP_list_storage_agents properties" [list_storage_system]="list_storage_system properties BACKUP" [list_mirror_pair]="KLIB_HACMP_list_mirror_pairs properties" [list_mirror_group]="KLIB_HACMP_list_mirror_groups properties" [list_event]="KLIB_HACMP_list_events properties" [list_hmc]="KLIB_HACMP_list_hmcs properties" [list_cod]="KLIB_HACMP_list_cod properties" [list_nova]="KLIB_HACMP_list_novas properties" [list_backup_profile]="KLIB_HACMP_list_backup_profile properties" [list_backup_files]="list_backup_files BUCKET_NAME RG_NAME START_TIME END_TIME" [view_host]="KLIB_HACMP_get_host_info properties RESOURCE_NAME" [verify_method]="verify_methods RESOURCE_NAME+" [verify_cluster]="verify_cluster CHANGES_ONLY DEFAULT_TESTS \ METHODS FIX LOGGING LOGFILE MAX_ERRORS \ SYNC FORCE" [sync_cluster]="sync_cluster FORCE \ VERIFY CHANGES_ONLY DEFAULT_TESTS \ METHODS FIX LOGGING LOGFILE MAX_ERRORS" [sync_file_collection]="KLIB_HACMP_sync_file_collection RESOURCE_NAME+" [runcmd]="KLIB_HACMP_run_command" [local_node]="KLIB_HACMP_get_localnode" [list_temporal_dependency]="" [list_location_dependency]="" [discover_cluster]="KLIB_HACMP_run_discovery properties properties" [discover_interface]="KLIB_HACMP_run_discovery properties properties NODES" [discover_volume_group]="KLIB_HACMP_run_discovery properties properties NODES" ) fi export _CLASS_PROCESSORS log_return_msg 0 class_processors "$LINENO" #============================================================================== # The following, comment block attempts to enforce coding standards when this # file is edited via emacs or vim. This block _must_ appear at the very end # of the file, or the editor will not find it, and it will be ignored. #============================================================================== # Local Variables: # indent-tabs-mode: nil # tab-width: 4 # End: #============================================================================== # vim: tabstop=4 shiftwidth=4 expandtab #==============================================================================