Label and field selectors¶
Most opentf-ctl commands output structured data.  By default, the output shows all available
elements.
You can use the --selector and --field-selector command line options to filter the output
to only show the elements matching the specified selectors.
Logical operators supported in selector conditions are =, !=, in and notin. 
Multiple conditions may be provided, separated by commas (,).  The conditions are linked by
a logical AND operator. For instance,
this request will return only the channels that have the linux tag and are not idle:
opentf-ctl get channels --field-selector="(linux) in spec.tags,status.phase!=IDLE"
You can use --selector and --field-selector options together.  The conditions will be linked
by a logical AND operator.
Here are the possible selector formats:
key                                # the key or label exists
!key                               # the key or label does not exist
key==value                         # the key exists and has the specified value
key!=value                         # the key exists but has a different value
                                   # or the key does not exist
key in (value1, value2, ...)       # the key exists and its value is in the list
key notin (value1, value2, ...)    # the key exists and has a value not in the
                                   # list or the key does not exist
(value1, value2) in key            # the key contains all values (and possibly
                                   # others)
(value1, value2) notin key         # the key does not contains all the values
                                   # (but it may contain some) or the key does
                                   # not exist
For label selectors, the key is the label’s name.  It may contain dots.  For field selectors,
the key is a series of field names separated by dots.  The last field name may be surrounded
by [ and ] to allow for dots in the field name.
Here are examples of fieldSelector keys:
apiVersion
metadata.name
spec.selector.matchLabels[example.org/label]
[apiVersion]                                    # Invalid
spec[selector][matchLabels][example.org/label]  # Invalid
Warning
You cannot use the [ … ] notation for labelSelector.