ansible / mazer

Experimental Ansible Galaxy Content Manager
GNU General Public License v3.0
114 stars 18 forks source link

For 'mazer list --content', show fully qualified name #196

Closed alikins closed 5 years ago

alikins commented 5 years ago

Feature Request

Use Case

What problem does this feature solve? Please describe.

The recommended way to reference collection content (e.g., role, module, plugin) from within a playbook is to use the fully qualified name style: namespace.name.my_content_name.

However, there's not an easy way for a playbook author to know the fully qualified name. It would be useful, and less error prone, if mazer could show the fully qualified name.

Proposed Solution

Describe the solution you'd like Alter the mazer list --content output to include the fully qualified name.

Current output example:

repo=alikins.collection_reqs_test, type=repository, version=2.1113.13
repo=alikins.collection_reqs_test, type=roles, name=cole_role, version=2.1113.13
repo=alikins.collection_reqs_test, type=roles, name=bole_role, version=2.1113.13
repo=alikins.collection_reqs_test, type=roles, name=aole_role, version=2.1113.13
repo=alikins.collection_reqs_test, type=callback, name=faux, version=2.1113.13
repo=alikins.collection_reqs_test, type=vars, name=mars_bars, version=2.1113.13
repo=alikins.collection_reqs_test, type=action, name=faux_debug, version=2.1113.13
repo=alikins.collection_reqs_test, type=inventory, name=zero, version=2.1113.13
repo=alikins.collection_reqs_test, type=filter, name=air_quote, version=2.1113.13
repo=alikins.collection_reqs_test, type=module_utils, name=whatever, version=2.1113.13

Potential output example (Note, important part is the concept of the full_name value, the rest of the output is likely to change so don't get hung up on it):

collection=alikins.collection_reqs_test, type=collection, version=2.1113.13
collection=alikins.collection_reqs_test, type=roles, name=cole_role, full_name=alikins.collection_reqs_test.cole_role, version=2.1113.13
collection=alikins.collection_reqs_test, type=roles, name=bole_role, full_name=alikins.collection_reqs_test.bole_role, version=2.1113.13
collection=alikins.collection_reqs_test, type=roles, name=aole_role, full_name=alikins.collection_reqs_test.aole_role, version=2.1113.13
collection=alikins.collection_reqs_test, type=callback, name=faux, full_name=alikins.collection_reqs_test.faux, version=2.1113.13
collection=alikins.collection_reqs_test, type=vars, name=mars_bars, full_name=alikins.collection_reqs_test.mars_bars, version=2.1113.13
collection=alikins.collection_reqs_test, type=action, name=faux_debug, full_name=alikins.collection_reqs_test.faux_debug, version=2.1113.13
collection=alikins.collection_reqs_test, type=inventory, name=zero, full_name=alikins.collection_reqs_test.zero, version=2.1113.13
collection=alikins.collection_reqs_test, type=filter, name=air_quote, full_name=alikins.collection_reqs_test.air_quote, version=2.1113.13
collection=alikins.collection_reqs_test, type=module_utils, name=whatever, full_name=ansible_collections.alikins.collection_reqs_test.plugins.module_utils.whatever, version=2.1113.13

Alternatives

Describe alternatives you've considered

Implementation

Teachability, Documentation, Adoption, Migration Strategy

Should mostly just be a matter of changing the string formats in ansible_galaxy.actions.list._list()