Bug 2179388 - Location config command is not intuitive [NEEDINFO]
Summary: Location config command is not intuitive
Keywords:
Status: VERIFIED
Alias: None
Product: Red Hat Enterprise Linux 9
Classification: Red Hat
Component: pcs
Version: 9.0
Hardware: Unspecified
OS: Unspecified
low
low
Target Milestone: rc
: 9.3
Assignee: Ondrej Mular
QA Contact: cluster-qe
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2023-03-17 15:35 UTC by Simon Foucek
Modified: 2023-08-10 15:40 UTC (History)
7 users (show)

Fixed In Version: pcs-0.11.5-1.el9
Doc Type: No Doc Update
Doc Text:
This is a minor update in the man page, it doesn't need to be documented.
Clone Of:
Environment:
Last Closed:
Type: Bug
Target Upstream Version:
Embargoed:
tojeline: needinfo? (sfoucek)


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Issue Tracker CLUSTERQE-6711 0 None None None 2023-05-24 12:14:03 UTC
Red Hat Issue Tracker RHELPLAN-152222 0 None None None 2023-03-17 15:38:13 UTC

Description Simon Foucek 2023-03-17 15:35:36 UTC
Description of problem:
The hint for location config shows the possibility of using regex. At first glance this hint makes it look like it is possible to filter the resource using `regexp%str`. It is not clear that this only shows the location constraints for the regex (even if it is under the `resources` argument)

Version-Release number of selected component (if applicable):
[root@virt-031 ~]# pcs --version
0.10.14



Steps to Reproduce:
[root@virt-031 ~]# pcs constraint location config --help
...
    location [config | show [resources [<resource>...]] | [nodes [<node>...]]]
            [--all] [--full]
        List all the current location constraints that are not expired. If
        'resources' is specified, location constraints are displayed per
        resource (default). If 'nodes' is specified, location constraints are
        displayed per node. If specific nodes or resources are specified then
        we only show information about them. Resource may be either a resource
        id <resource_id> or %<resource_id> or resource%<resource_id>, or a
        resource name regular expression regexp%<resource_pattern>. If --full
        is specified show the internal constraint id's. If --all is
        specified show the expired constraints.

...



Actual results:

It is not clear from the hint and argument that they do not filter the resource location constraints using the regex, but only show the location constraints created for the regex.

Expected results:
The option to display Location constraints created for regex should be under another argument (`regexes`), or it should be clear from the tooltip how the option is used.

Comment 1 Ondrej Mular 2023-03-30 09:49:47 UTC
Documentation has been updated to make description of filtering more clear.

Upstream patch: https://github.com/ClusterLabs/pcs/commit/ff1d564830b3ab922249a796ecfc4a63925ec4c8

Comment 4 Michal Pospisil 2023-05-26 11:35:38 UTC
DevTestResults:

[root@r09-03-b ~]# pcs constraint location config --help
    location [config [resources [<resource reference>...]] | [nodes [<node>...]]]
            [--all] [--full] [--output-format text|cmd|json]
        List all the current location constraints that are not expired.  If
        'resources' is specified, location constraints are displayed per
        resource. If 'nodes' is specified, location constraints are displayed
        per node. If specific nodes, resources or resource name regular
        expressions are specified, only constraints containing those will be
        shown. Resource reference may be either a resource id <resource_id> or
        %<resource_id> or resource%<resource_id>, or a resource name regular
        expression regexp%<resource_pattern>. If --full is specified show the
        internal constraint id's. If --all is specified show the expired
        constraints.
        
        There are 3 formats of output available: 'cmd', 'json' and 'text',
        default is 'text'. Format 'text' is a human friendly output. Format
        'cmd' prints pcs commands which can be used to recreate the same
        configuration. Format 'json' is a machine oriented output of the
        configuration.

The help text is updated.


Note You need to log in before you can comment on or make changes to this bug.