`maven_artifact` uses httplib2 that attempts anonymous access even if user/password is provided.

So access log looks like:

```
/opt/bitnami/apps/artifactory/artifactory_home/logs/request.log:

20191108102644|3|REQUEST|188.163.xxx.xxx|non_authenticated_user|GET|/libs-snapshot-local/xxx/2.14.0-SNAPSHOT/maven-metadata.xml|HTTP/1.1|401|0
20191108102644|2|REQUEST|188.163.xxx.xxx|reader|GET|/libs-snapshot-local/xxx/2.14.0-SNAPSHOT/maven-metadata.xml|HTTP/1.1|200|792
```

Our repository Artifactory blocks access (per IP??) if too many 401 happens.

Ansible then fails with:

```
failed: [stage-server] (item={'name': 'tp-sc', 'jmx_port': 18004}) => {"ansible_loop_var": "item", "changed": false,
  "msg": "Failed to connect to example.com at port 443: [Errno 110] Connection timed out",
  "status": -1,
  "url": "https://example.com/artifactory/libs-snapshot-local/xxx/2.14.0-SNAPSHOT/server-2.14.0-20191108.084713-5.jar.md5"}
```

There is a patch that fixes the behavior of httplib2 : https://github.com/DorianGeraut/maven_artifact_work/commit/5fff2870ba1e8dee864b21eb3a2ea40c10547484

filename = "{artifact_id}{version_part}{classifier}.{extension}".format(
            artifact_id=artifact_id,
            version_part="-{0}".format(version_part) if keep_name else "",
            classifier="-{0}".format(classifier) if classifier else "",
            extension=extension
        )
        dest = posixpath.join(dest, filename)
        b_dest = to_bytes(dest, errors='surrogate_or_strict')
    if os.path.lexists(b_dest) and ((not verify_change) or not downloader.is_invalid_md5(dest, downloader.find_uri_for_artifact(artifact))):
        prev_state = "present"
    if prev_state == "absent":
        try:
            download_error = downloader.download(module.tmpdir, artifact, verify_download, b_dest)
            if download_error is None:
                changed = True
            else:
                module.fail_json(msg="Cannot retrieve the artifact to destination: " + download_error)
        except ValueError as e:
            module.fail_json(msg=e.args[0])
    module.params['dest'] = dest
    file_args = module.load_file_common_arguments(module.params)
    changed = module.set_fs_attributes_if_different(file_args, changed)
    if changed:
        module.exit_json(state=state, dest=dest, group_id=group_id, artifact_id=artifact_id, version=version, classifier=classifier,
                         extension=extension, repository_url=repository_url, changed=changed)
    else:
        module.exit_json(state=state, dest=dest, changed=changed)
if __name__ == '__main__':
    main()