#### SUMMARY
<!--- Explain the problem briefly below -->
Installing `amazon.aws` collection fails on ansible/ansible@devel, supposedly because of the embedded symlinks:
```console
ERROR! Unexpected Exception, this is probably a bug: "filename 'tests/unit/mod
ules/placebo_recordings/aws_direct_connect_link_aggregation_group/nonexistent_
lag_status' not found"
```

##### ISSUE TYPE
- Bug Report

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

##### ANSIBLE VERSION
<!--- Paste verbatim output from "ansible --version" between quotes -->
devel

##### CONFIGURATION
<!--- Paste verbatim output from "ansible-config dump --only-changed" between quotes -->
N/A

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

##### STEPS TO REPRODUCE
<!--- Describe exactly how to reproduce the problem, using a minimal test-case -->
Running the install should be enough:
<!--- Paste example playbooks or commands between quotes below -->
```console
$ ANSIBLE_DEBUG=1 ansible-galaxy -vvvv collection install amazon.aws
```

##### EXPECTED RESULTS
<!--- Describe what you expected to happen when running the steps above -->
The collection install should succeed.

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

<!--- Paste verbatim command output between quotes -->
```python-traceback
Exception, this is probably a bug: "filename 'tests/unit/modules/placebo_recordings/aws_direct_connect_link_aggregation_group/nonexistent_lag_status' not found"
the full traceback was:
Traceback (most recent call last):
  File "/home/bcoca/work/ansible/bin/ansible-galaxy", line 123, in <module>
    exit_code = cli.run()
  File "/home/bcoca/work/ansible/lib/ansible/cli/galaxy.py", line 490, in run
    context.CLIARGS['func']()
  File "/home/bcoca/work/ansible/lib/ansible/cli/galaxy.py", line 1057, in execute_install
    self._execute_install_collection(collection_requirements, collection_path)
  File "/home/bcoca/work/ansible/lib/ansible/cli/galaxy.py", line 1079, in _execute_install_collection
    no_deps, force, force_with_deps, allow_pre_release=allow_pre_release)
  File "/home/bcoca/work/ansible/lib/ansible/galaxy/collection.py", line 675, in install_collections
    collection.install(output_path, b_temp_path)
  File "/home/bcoca/work/ansible/lib/ansible/galaxy/collection.py", line 250, in install
    self.install_artifact(b_collection_path, b_temp_path)
  File "/home/bcoca/work/ansible/lib/ansible/galaxy/collection.py", line 275, in install_artifact
    _extract_tar_dir(collection_tar, file_name, b_collection_path)
  File "/home/bcoca/work/ansible/lib/ansible/galaxy/collection.py", line 1387, in _extract_tar_dir
    tar_member = tar.getmember(to_native(dirname, errors='surrogate_or_strict'))
  File "/usr/lib/python3.7/tarfile.py", line 1752, in getmember
    raise KeyError("filename %r not found" % name)
KeyError: "filename 'tests/unit/modules/placebo_recordings/aws_direct_connect_link_aggregation_group/nonexistent_lag_status' not found"
```

"""Download Ansible collections as their tarball from a Galaxy server to the path specified and creates a requirements
    file of the downloaded requirements to be used for an install.
    :param collections: The collections to download, should be a list of tuples with (name, requirement, Galaxy Server).
    :param output_path: The path to download the collections to.
    :param apis: A list of GalaxyAPIs to query when search for a collection.
    :param validate_certs: Whether to validate the certificate if downloading a tarball from a non-Galaxy host.
    :param no_deps: Ignore any collection dependencies and only download the base requirements.
    :param allow_pre_release: Do not ignore pre-release versions when selecting the latest.
    """
    with _tempdir() as b_temp_path:
        display.display("Process install dependency map")
        with _display_progress():
            dep_map = _build_dependency_map(collections, [], b_temp_path, apis, validate_certs, True, True, no_deps,
                                            allow_pre_release=allow_pre_release)
        requirements = []
        display.display("Starting collection download process to '%s'" % output_path)
        with _display_progress():
            for name, requirement in dep_map.items():
                collection_filename = "%s-%s-%s.tar.gz" % (requirement.namespace, requirement.name,
                                                           requirement.latest_version)
                dest_path = os.path.join(output_path, collection_filename)
                requirements.append({'name': collection_filename, 'version': requirement.latest_version})
                display.display("Downloading collection '%s' to '%s'" % (name, dest_path))
                b_temp_download_path = requirement.download(b_temp_path)
                shutil.move(b_temp_download_path, to_bytes(dest_path, errors='surrogate_or_strict'))
            requirements_path = os.path.join(output_path, 'requirements.yml')
            display.display("Writing requirements.yml file of downloaded collections to '%s'" % requirements_path)
            with open(to_bytes(requirements_path, errors='surrogate_or_strict'), mode='wb') as req_fd:
                req_fd.write(to_bytes(yaml.safe_dump({'collections': requirements}), errors='surrogate_or_strict'))
def publish_collection(collection_path, api, wait, timeout):