ClusterLabs / crmsh

Command-line interface for High-Availability cluster management on GNU/Linux systems.
GNU General Public License v2.0
131 stars 94 forks source link

wishlist: crm conf primitive should complain when an ra-package not installed #967

Open aleksei-burlakov opened 2 years ago

aleksei-burlakov commented 2 years ago

When doing crm configure primitive st-ssh stonith:external/ssh params hostlist=node1 the crm would complain ERROR: st-ssh: parameter "hostlist" is not known (because the libglue-devel containing stonith:external/ssh was not installed). The user would rather get the message that stonith:external/ssh or libglue-devel was not installed, than that the parameter "hostlist" is not known.

liangxin1300 commented 2 years ago

@aleksei-burlakov Thanks for pointing this! IMO, maybe crmsh can maintain a map for most used RA, to show which package name that this RA is belonged? OTOH, does resource-agent already have such a map? @zzhou1 @gao-yan What do you think? Good to append to the feature list for next release?

zzhou1 commented 2 years ago

Agree, this Use case is valid to improve User Experience. From the design wise, the code could be generic and flexible to avoid maintenance burden if any. We could add it to the backlog to do further assessment if possible make it to the next release.

liangxin1300 commented 2 years ago

OTOH, does resource-agent already have such a map?

I think it's hard for resource-agent to maintain such a RA-name:package-name map, since for different vendor the package name is different

aleksei-burlakov commented 2 years ago

Maybe, just tell the user the package is not installed, and let him find out which one himself.

liangxin1300 commented 1 year ago

I think for most of RA, exitreason from crm_mon can give more details

Although not for this stonith:external/ssh RA:

* st-ssh_start_0 on hanode1 'error' (1): call=26, status='complete', last-rc-change='Mon Nov 14 09:11:19 2022', queued=0ms, exec=1226ms