<!--- Verify first that your issue is not already reported on GitHub -->
<!--- Also test if the latest release and devel branch are affected too -->
<!--- Complete *all* sections as described, this form is processed automatically -->

##### SUMMARY
All 3 of these providers, do not work properly when converted to a collection. The following error is raise:

  could not find a suitable provider for this module

https://object-storage-ca-ymq-1.vexxhost.net/v1/a0b4156a37f9453eb4ec7db5422272df/ansible_20/20/30f1a39eece8bc37eeb89f05d733d133c707626e/check/ansible-test-network-integration-eos-python27/ca018b0/controller/ara-report/

https://object-storage-ca-ymq-1.vexxhost.net/v1/a0b4156a37f9453eb4ec7db5422272df/ansible_15/15/2b0be560d30c4c24620b0ade29bd62b7fbb57b22/check/ansible-test-network-integration-ios-python37/a516d70/controller/ara-report/

https://object-storage-ca-ymq-1.vexxhost.net/v1/a0b4156a37f9453eb4ec7db5422272df/ansible_15/15/2019f0b07076ca58ddb9e9ac0be65402b477eec1/check/ansible-test-network-integration-iosxr-python27/38b49a0/controller/ara-report/

This appears to be related to how we look up the module / provider for bgp tasks.


##### ISSUE TYPE
- Bug Report

##### COMPONENT NAME
<!--- Write the short name of the module, plugin, task or feature below, use your best guess if unsure -->
eos_bgp
ios_bgp
iosxr_bgp

##### ANSIBLE VERSION
<!--- Paste verbatim output from "ansible --version" between quotes -->
```paste below
ansible stable-2.9
```

##### CONFIGURATION
<!--- Paste verbatim output from "ansible-config dump --only-changed" between quotes -->
```paste below

```

##### OS / ENVIRONMENT
<!--- Provide all relevant information below, e.g. target OS versions, network device firmware, etc. -->
zuul.ansible.com

##### STEPS TO REPRODUCE
<!--- Describe exactly how to reproduce the problem, using a minimal test-case -->
git clone any one of the collections below, then run ansible-test network integration testing.
<!--- Paste example playbooks or commands between quotes below -->
```yaml
https://github.com/ansible-network/ansible_collections.arista.eos
https://github.com/ansible-network/ansible_collections.cisco.ios
https://github.com/ansible-network/ansible_collections.cisco.iosxr

```

<!--- HINT: You can paste gist.github.com links for larger files -->

##### EXPECTED RESULTS
<!--- Describe what you expected to happen when running the steps above -->


##### ACTUAL RESULTS
<!--- Describe what actually happened. If possible run with extra verbosity (-vvvv) -->

<!--- Paste verbatim command output between quotes -->
```paste below
2019-08-31 03:48:50,568 p=zuul u=5694 | <74.63.204.64> EXEC /bin/sh -c 'rm -f -r /home/zuul/.ansible/tmp/ansible-local-5510omNavF/ansible-tmp-1567223329.55-30831165844767/ > /dev/null 2>&1 && sleep 0'
2019-08-31 03:48:50,581 p=zuul u=5510 | The full traceback is:
WARNING: The below traceback may *not* be related to the actual failure.
  File "/tmp/ansible_arista.eos.eos_bgp_payload_qprZAR/ansible_arista.eos.eos_bgp_payload.zip/ansible_collections/arista/eos/plugins/module_utils/network/eos/providers/module.py", line 63, in edit_config
    commands = self.provider.edit_config(current_config)
  File "/tmp/ansible_arista.eos.eos_bgp_payload_qprZAR/ansible_arista.eos.eos_bgp_payload.zip/ansible_collections/arista/eos/plugins/module_utils/network/eos/providers/module.py", line 36, in provider
    cls = providers.get(network_os, self._name, connection_type)
  File "/tmp/ansible_arista.eos.eos_bgp_payload_qprZAR/ansible_arista.eos.eos_bgp_payload.zip/ansible_collections/arista/eos/plugins/module_utils/network/eos/providers/providers.py", line 44, in get
    raise ValueError("could not find a suitable provider for this module")

2019-08-31 03:48:50,587 p=zuul u=5510 | fatal: [eos-4.20.10]: FAILED! => changed=false 
  invocation:
    module_args:
      config:
        address_family: null
        bgp_as: 64496
        log_neighbor_changes: null
        neighbors: null
        networks: null
        redistribute: null
        router_id: 192.0.2.2
      operation: merge
  msg: could not find a suitable provider for this module
```

#
#
from ansible.module_utils.basic import AnsibleModule
from ansible.module_utils.connection import Connection
from ansible.module_utils.network.ios.providers import providers
from ansible.module_utils._text import to_text
class NetworkModule(AnsibleModule):
    fail_on_missing_provider = True
    def __init__(self, connection=None, *args, **kwargs):
        super(NetworkModule, self).__init__(*args, **kwargs)
        if connection is None:
            connection = Connection(self._socket_path)
        self.connection = connection
    @property
    def provider(self):