### Summary

The `ansible-galaxy` command has a [`--timeout` parameter](https://docs.ansible.com/ansible/latest/cli/ansible-galaxy.html#cmdoption-ansible-galaxy-collection-install-timeout) for most of its sub-commands but it seems to be only configurable on the command line.

I'd like to be able to configure it via environment variable, probably `ANSIBLE_GALAXY_TIMEOUT` or something similar.

### Issue Type

Feature Idea

### Component Name

galaxy

### Additional Information

The reason this is so useful is that it would work implicitly, for example when `ansible-galaxy` is being called by other commands like `molecule` or `ansible-lint`, or anything else that calls it on your behalf.

Sometimes you can customize aspects of the call by configuring those applications, but that's not always the easiest thing to do.

For example in molecule, we could set it in the [`dependency` step's `options`](https://molecule.readthedocs.io/en/latest/configuration.html#molecule.dependency.ansible_galaxy.AnsibleGalaxy), but that's not always ideal.

I have a shared CI pipeline that runs molecule across many ansible and python versions in parallel, and multiple instances of that pipeline may run in parallel for testing a single collection, resulting in dozens of simultaneous connections to my internal galaxy server which will eventually work but end up timing out.

I'd prefer to tune the timeout once in the definition of the shared pipeline, but I cannot because that pipeline calls `molecule`, using each collection's own molecule configuration, so I would have to modify every collection to set the timeout in this case.

If I had an environment variable, I could set that in the shared pipeline and not need to modify the collections (this is already how I set the server URL for example).

### Code of Conduct

- [X] I agree to follow the Ansible Code of Conduct
from __future__ import (absolute_import, division, print_function)
__metaclass__ = type
import json
import os
import pytest
import re
import tarfile
import tempfile
import uuid
from hashlib import sha256
from io import BytesIO
from unittest.mock import MagicMock, mock_open, patch
import ansible.constants as C
from ansible import context
from ansible.cli.galaxy import GalaxyCLI
from ansible.errors import AnsibleError
from ansible.galaxy import api, collection, token
from ansible.module_utils.common.text.converters import to_bytes, to_native, to_text
from ansible.module_utils.six.moves import builtins
from ansible.utils import context_objects as co
from ansible.utils.display import Display
from ansible.utils.hashing import secure_hash_s
from ansible.utils.sentinel import Sentinel
@pytest.fixture(autouse='function')
def reset_cli_args():