Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

🤔 Consider the priority of Info modules #105

Open
displague opened this issue Jun 28, 2023 · 0 comments
Open

🤔 Consider the priority of Info modules #105

displague opened this issue Jun 28, 2023 · 0 comments

Comments

@displague
Copy link
Member

displague commented Jun 28, 2023

SUMMARY

We've noticed that when _info modules do not exist for a resource, users quickly and rather easily adopt the HTTP URLLib pattern of consuming the API within Ansible.

In many ways, the Ansible collection strives to be unopinionated and act as a passthru to the upstream API. There are several ways, however, in which the collection tries to simplify API usage patterns to provide a more consistent interface:

  • HTTP Headers (UserAgent, X-Auth-Token, Content-Type and Accept)
  • Future: additional and alternate headers needed for authentication and access to other Equinix APIs
  • Future: token requests (OAuth Client Credential flow)
  • Future: "helpers"
  • Pagination, Sort, and filtering parameters
  • Predictable resource access conventions
    • modules with common accessor names and common fields
    • _info modules

Through User-Agent headers, we have insights into what modules are being used against the Equinix Metal APIs. We know that URLLib is a popular choice, especially when a first party module does not exist.

We would like to explore the benefits of these sorts of modules to help us prioritize the addition _info modules.

  • Is there a direct user benefit to having create/read(import)/update/delete modules and info (read/list) modules created at the same time?
  • Should we wait until an _info module is requested before implementing it?
  • Should we recommend users adopt HTTP URLLib based solutions in the interim?
  • Does this impact first-party adoption later?

In the URLLib consumption model, we would have different usage patterns between Metal, NE, Fabric, etc. What kind of experience does this create?

See https://docs.ansible.com/ansible/latest/dev_guide/developing_modules_best_practices.html#scoping-your-module-s for advice that applies to this topic.

ISSUE TYPE
  • Research
COMPONENT NAME

Future Info modules.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant