You should generally not do this.  If you have content that is distributed,
it should only rely on others of its type.  A standalone role on a
standalone role, or a collection on a collection.  Note that collections
can contain roles.

As such, there is no automatic installation of dependencies.

Should you wish to keep your use of standalone roles with dependencies on
collections you would just have to rely on documentation.  And maybe insert
some form of canary test, that tries to use a module you need, wrapped in a
block/rescue that then provides a friendly error when the module is not
available.

On Mon, Oct 10, 2022 at 8:35 AM Todd Lewis <[email protected]> wrote:

> We have a handful of "common" roles that are used by many of our Ansible
> projects. These projects list their required roles in their respective
> roles/requirements.yml files. Nothing surprising here; it's worked this
> way for years.
>
> With recent maintenance, one of these "common" roles has started using
> bits from a couple of collections — community.general and ansible.utils.
> From reading the docs, I erroneously thought I could specify those
> collections in meta/requirements.yml like so:
>
> ---
> collections:
>   - name: community.general
>   - name: ansible.utils
>
> However, that's wrong. (See this
> <https://github.com/ansible/ansible/issues/73732> for details.) Evidently
> meta/requirements.yml must be in "v1" format, which is just a list of
> roles; no "roles:" or "collections:" dict allowed.
>
> So how does a required role specify the collections on which it depends?
>
> --
> You received this message because you are subscribed to the Google Groups
> "Ansible Project" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/ansible-project/f6fafb0d-b072-4252-9115-4132663221d9n%40googlegroups.com
> <https://groups.google.com/d/msgid/ansible-project/f6fafb0d-b072-4252-9115-4132663221d9n%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
>


-- 
Matt Martz
@sivel
sivel.net

-- 
You received this message because you are subscribed to the Google Groups 
"Ansible Project" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/ansible-project/CAD8N0v-X_3HTBZ-3ex2%2BXh-STOBtdHqTeBHZJEOqMA5KQwjH5g%40mail.gmail.com.

Reply via email to