Closed
Bug 1178089
Opened 9 years ago
Closed 9 years ago
python-client: taskcluster requires an exact version for requests library (2.4.3)
Categories
(Taskcluster :: General, defect)
Taskcluster
General
Tracking
(Not tracked)
RESOLVED
FIXED
People
(Reporter: parkouss, Assigned: jhford)
References
Details
The taskcluster python client requires the requests library to be at version 2.4.3 exactly. This is causing me trouble for mozregression as we require >=2.5.1.
I *feel* that taskcluster should not require an exact version of requests, as it is inteded to be used as a library. Plus requests really seems safe in term of API changes, so maybe you could just replace the required version with >=2.4.3 ?
I got this kind of error:
https://travis-ci.org/parkouss/mozregression#L486
Comment 1•9 years ago
|
||
The same we will hit with mozdownload once will we make use of taskcluster too. So I agree to Julien's proposal.
Comment 2•9 years ago
|
||
Hi John,
I looked into this, but had some problems running the tests - any idea what might be up with my environment?
I had a look at travis, and it also is failing, but only for one test: https://travis-ci.org/jhford/taskcluster-client.py/jobs/41642975
Thanks,
Pete
(taskcluster-client.py)pmoore@Peters-iMac:~/git/taskcluster-client.py master $ make test
FLAKE8=env-python/bin/flake8 PYTHON=env-python/bin/python \
NODE_BIN=/Users/pmoore/git/taskcluster-client.py/node-v0.10.33-darwin-x64/bin/node NOSE=env-python/bin/nosetests ./test.sh
Linting
Done linting
setup.py tests
running test
running egg_info
writing requirements to taskcluster.egg-info/requires.txt
writing taskcluster.egg-info/PKG-INFO
writing top-level names to taskcluster.egg-info/top_level.txt
writing dependency_links to taskcluster.egg-info/dependency_links.txt
reading manifest file 'taskcluster.egg-info/SOURCES.txt'
writing manifest file 'taskcluster.egg-info/SOURCES.txt'
running build_ext
test_mock_auth_ascii_encodable_unicode (test.test_client.TestAuthenticationMockServer) ... ERROR
test_mock_auth_ascii_encoding_fail (test.test_client.TestAuthenticationMockServer) ... ok
test_mock_auth_bad_scope (test.test_client.TestAuthenticationMockServer) ... ERROR
test_mock_auth_expired (test.test_client.TestAuthenticationMockServer) ... ERROR
test_mock_auth_invalid (test.test_client.TestAuthenticationMockServer) ... ERROR
test_mock_auth_signed_url (test.test_client.TestAuthenticationMockServer) ... ERROR
test_mock_auth_signed_url_bad_credentials (test.test_client.TestAuthenticationMockServer) ... ERROR
test_mock_auth_works (test.test_client.TestAuthenticationMockServer) ... ERROR
test_mock_auth_works_with_small_scope (test.test_client.TestAuthenticationMockServer) ... ERROR
test_mock_is_up (test.test_client.TestAuthenticationMockServer) ... ERROR
test_builds_surl_keyword (test.test_client.TestBuildSignedUrl) ... ok
test_builds_surl_positional (test.test_client.TestBuildSignedUrl) ... ok
test_build_url_keyword (test.test_client.TestBuildUrl) ... ok
test_build_url_positional (test.test_client.TestBuildUrl) ... ok
test_fails_to_build_not_enough_args (test.test_client.TestBuildUrl) ... ok
test_fails_to_build_url_for_missing_method (test.test_client.TestBuildUrl) ... ok
test_creates_methods (test.test_client.TestMakeApiCall) ... ok
test_hits_no_args_no_input (test.test_client.TestMakeApiCall) ... ok
test_hits_no_args_with_input (test.test_client.TestMakeApiCall) ... ok
test_hits_two_args_no_input (test.test_client.TestMakeApiCall) ... ok
test_hits_two_args_with_input (test.test_client.TestMakeApiCall) ... ok
test_input_is_procesed (test.test_client.TestMakeApiCall) ... ok
test_kwargs (test.test_client.TestMakeApiCall) ... ok
test_methods_setup_correctly (test.test_client.TestMakeApiCall) ... ok
test_missing_input_raises (test.test_client.TestMakeApiCall) ... ok
test_mixing_kw_and_positional_fails (test.test_client.TestMakeApiCall) ... ok
test_exhaust_retries_try_status_code (test.test_client.TestMakeHttpRequest) ... ok
test_failure_connection_errors (test.test_client.TestMakeHttpRequest) ... ok
test_failure_status_code (test.test_client.TestMakeHttpRequest) ... ok
test_success_fifth_try_connection_errors (test.test_client.TestMakeHttpRequest) ... ok
test_success_fifth_try_status_code (test.test_client.TestMakeHttpRequest) ... ok
test_success_first_try (test.test_client.TestMakeHttpRequest) ... ok
test_change_default_doesnt_change_previous_instances (test.test_client.TestOptions) ... ok
test_credentials_which_cannot_be_encoded_in_unicode_work (test.test_client.TestOptions) ... ok
test_defaults_should_work (test.test_client.TestOptions) ... ok
test_int_args (test.test_client.TestProcessArgs) ... ok
test_invalid_missing_arg_positional (test.test_client.TestProcessArgs) ... ok
test_invalid_not_enough_args (test.test_client.TestProcessArgs) ... ok
test_invalid_not_enough_args_because_of_overwriting (test.test_client.TestProcessArgs) ... ok
test_invalid_positional_not_string_empty_dict (test.test_client.TestProcessArgs) ... ok
test_invalid_positional_not_string_non_empty_dict (test.test_client.TestProcessArgs) ... ok
test_invalid_too_many_keyword_args (test.test_client.TestProcessArgs) ... ok
test_invalid_too_many_positional_args (test.test_client.TestProcessArgs) ... ok
test_keyword_and_positional (test.test_client.TestProcessArgs) ... ok
test_keyword_args_only (test.test_client.TestProcessArgs) ... ok
test_no_args (test.test_client.TestProcessArgs) ... ok
test_positional_args_only (test.test_client.TestProcessArgs) ... ok
test_invalid_one_sub (test.test_client.TestSubArgsInRoute) ... ok
test_invalid_route_no_arg (test.test_client.TestSubArgsInRoute) ... ok
test_invalid_route_no_sub (test.test_client.TestSubArgsInRoute) ... ok
test_valid_no_subs (test.test_client.TestSubArgsInRoute) ... ok
test_valid_one_sub (test.test_client.TestSubArgsInRoute) ... ok
test_both_args_and_kwargs (test.test_client.TestTopicExchange) ... ok
test_constant (test.test_client.TestTopicExchange) ... ok
test_does_insertion (test.test_client.TestTopicExchange) ... ok
test_exchange (test.test_client.TestTopicExchange) ... ok
test_exchange_trailing_slash (test.test_client.TestTopicExchange) ... ok
test_no_args_no_kwargs (test.test_client.TestTopicExchange) ... ok
test_string_pass_through (test.test_client.TestTopicExchange) ... ok
test_too_many_star_args (test.test_client.TestTopicExchange) ... ok
test_has_no_spaces (test.test_utils.DumpJsonTests) ... ok
test_serializes_aware_date (test.test_utils.DumpJsonTests) ... ok
test_serializes_naive_date (test.test_utils.DumpJsonTests) ... ok
test_aware (test.test_utils.StringDateTests) ... ok
test_naive (test.test_utils.StringDateTests) ... ok
test_encode_string_for_b64_header (test.test_utils.TestBase64Utils) ... ok
test_makeb64urlsafe (test.test_utils.TestBase64Utils) ... ok
test_makeb64urlunsafe (test.test_utils.TestBase64Utils) ... ok
test_failure (test.test_utils.TestMakeSingleHttpRequest) ... ok
test_success_no_payload (test.test_utils.TestMakeSingleHttpRequest) ... ok
test_success_payload (test.test_utils.TestMakeSingleHttpRequest) ... ok
test_success_put_file (test.test_utils.TestPutfile) ... ok
test_slug_id (test.test_utils.TestSlugId) ... ok
======================================================================
ERROR: test_mock_auth_ascii_encodable_unicode (test.test_client.TestAuthenticationMockServer)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/Users/pmoore/git/taskcluster-client.py/test/test_client.py", line 518, in test_mock_auth_ascii_encodable_unicode
result = client.getCredentials('admin')
File "/Users/pmoore/git/taskcluster-client.py/taskcluster/client.py", line 455, in apiCall
return self._makeApiCall(e, *args, **kwargs)
File "/Users/pmoore/git/taskcluster-client.py/taskcluster/client.py", line 232, in _makeApiCall
return self._makeHttpRequest(entry['method'], route, payload)
File "/Users/pmoore/git/taskcluster-client.py/taskcluster/client.py", line 382, in _makeHttpRequest
superExc=rerr
TaskclusterConnectionError: ('Failed to establish connection', ConnectionError(ProtocolError('Connection aborted.', error(61, 'Connection refused')),))
-------------------- >> begin captured logging << --------------------
taskcluster.client: DEBUG: credentials key scrubbed from logging output
taskcluster.client: DEBUG: {'baseUrl': 'http://localhost:5555/v1', 'maxRetries': 5, 'exchangePrefix': 'test/v1', 'signedUrlExpiration': 900}
taskcluster.client: DEBUG: Found a positional argument: admin
taskcluster.client: DEBUG: After processing positional arguments, we have: {'clientId': 'admin'}
taskcluster.client: DEBUG: After keyword arguments, we have: {'clientId': 'admin'}
taskcluster.client: DEBUG: Route is: client/admin/credentials
taskcluster.client: DEBUG: Full URL used is: http://localhost:5555/v1/client/admin/credentials
hawk.client: DEBUG: parsed URL parts: {'hostname': 'localhost',
'path': '/v1/client/admin/credentials',
'port': 5555,
'query': '',
'resource': '/v1/client/admin/credentials',
'scheme': 'http'}
hawk.client: DEBUG: artifacts={'app': None,
'dlg': None,
'ext': 'e30=',
'hash': None,
'host': 'localhost',
'method': 'get',
'nonce': 'c5vqVU',
'port': 5555,
'resource': '/v1/client/admin/credentials',
'ts': 1435583382}
taskcluster.client: DEBUG: Making attempt 0
taskcluster.utils: DEBUG: Making a GET request to http://localhost:5555/v1/client/admin/credentials
taskcluster.utils: DEBUG: HTTP Headers: {'Authorization': 'Hawk id="admin", ts="1435583382", nonce="c5vqVU", ext="e30=", mac="t/CAT88GBq3KjdJ+PPca2ERxn31qulqVJdLIsW/rLPA="'}
taskcluster.utils: DEBUG: HTTP Payload: None (limit 100 char)
requests.packages.urllib3.connectionpool: INFO: Starting new HTTP connection (1): localhost
taskcluster.client: WARNING: Retrying because of: ('Connection aborted.', error(61, 'Connection refused'))
taskcluster.client: INFO: Sleeping 0.10 seconds for exponential backoff
hawk.client: DEBUG: parsed URL parts: {'hostname': 'localhost',
'path': '/v1/client/admin/credentials',
'port': 5555,
'query': '',
'resource': '/v1/client/admin/credentials',
'scheme': 'http'}
hawk.client: DEBUG: artifacts={'app': None,
'dlg': None,
'ext': 'e30=',
'hash': None,
'host': 'localhost',
'method': 'get',
'nonce': 'ZrBTAS',
'port': 5555,
'resource': '/v1/client/admin/credentials',
'ts': 1435583382}
taskcluster.client: DEBUG: Making attempt 1
taskcluster.utils: DEBUG: Making a GET request to http://localhost:5555/v1/client/admin/credentials
taskcluster.utils: DEBUG: HTTP Headers: {'Authorization': 'Hawk id="admin", ts="1435583382", nonce="ZrBTAS", ext="e30=", mac="+WPycIXOYOofi0ZD6lU/6aT3/8KKNJ7u4E1bdcuPbbA="'}
taskcluster.utils: DEBUG: HTTP Payload: None (limit 100 char)
requests.packages.urllib3.connectionpool: INFO: Starting new HTTP connection (1): localhost
taskcluster.client: WARNING: Retrying because of: ('Connection aborted.', error(61, 'Connection refused'))
taskcluster.client: INFO: Sleeping 0.40 seconds for exponential backoff
hawk.client: DEBUG: parsed URL parts: {'hostname': 'localhost',
'path': '/v1/client/admin/credentials',
'port': 5555,
'query': '',
'resource': '/v1/client/admin/credentials',
'scheme': 'http'}
hawk.client: DEBUG: artifacts={'app': None,
'dlg': None,
'ext': 'e30=',
'hash': None,
'host': 'localhost',
'method': 'get',
'nonce': 'fCoJjD',
'port': 5555,
'resource': '/v1/client/admin/credentials',
'ts': 1435583383}
taskcluster.client: DEBUG: Making attempt 2
taskcluster.utils: DEBUG: Making a GET request to http://localhost:5555/v1/client/admin/credentials
taskcluster.utils: DEBUG: HTTP Headers: {'Authorization': 'Hawk id="admin", ts="1435583383", nonce="fCoJjD", ext="e30=", mac="VFfiPZo9z/w/I1IaB6KezbTrUgBngOcs20CGmGPHw/U="'}
taskcluster.utils: DEBUG: HTTP Payload: None (limit 100 char)
requests.packages.urllib3.connectionpool: INFO: Starting new HTTP connection (1): localhost
taskcluster.client: WARNING: Retrying because of: ('Connection aborted.', error(61, 'Connection refused'))
taskcluster.client: INFO: Sleeping 0.90 seconds for exponential backoff
hawk.client: DEBUG: parsed URL parts: {'hostname': 'localhost',
'path': '/v1/client/admin/credentials',
'port': 5555,
'query': '',
'resource': '/v1/client/admin/credentials',
'scheme': 'http'}
hawk.client: DEBUG: artifacts={'app': None,
'dlg': None,
'ext': 'e30=',
'hash': None,
'host': 'localhost',
'method': 'get',
'nonce': 'PiS5cb',
'port': 5555,
'resource': '/v1/client/admin/credentials',
'ts': 1435583384}
taskcluster.client: DEBUG: Making attempt 3
taskcluster.utils: DEBUG: Making a GET request to http://localhost:5555/v1/client/admin/credentials
taskcluster.utils: DEBUG: HTTP Headers: {'Authorization': 'Hawk id="admin", ts="1435583384", nonce="PiS5cb", ext="e30=", mac="vYaAnPDKvDrsWfpC31NQE35tF0uk74oeKJRrE/jKFCI="'}
taskcluster.utils: DEBUG: HTTP Payload: None (limit 100 char)
requests.packages.urllib3.connectionpool: INFO: Starting new HTTP connection (1): localhost
taskcluster.client: WARNING: Retrying because of: ('Connection aborted.', error(61, 'Connection refused'))
taskcluster.client: INFO: Sleeping 1.60 seconds for exponential backoff
hawk.client: DEBUG: parsed URL parts: {'hostname': 'localhost',
'path': '/v1/client/admin/credentials',
'port': 5555,
'query': '',
'resource': '/v1/client/admin/credentials',
'scheme': 'http'}
hawk.client: DEBUG: artifacts={'app': None,
'dlg': None,
'ext': 'e30=',
'hash': None,
'host': 'localhost',
'method': 'get',
'nonce': 'oNIx1P',
'port': 5555,
'resource': '/v1/client/admin/credentials',
'ts': 1435583385}
taskcluster.client: DEBUG: Making attempt 4
taskcluster.utils: DEBUG: Making a GET request to http://localhost:5555/v1/client/admin/credentials
taskcluster.utils: DEBUG: HTTP Headers: {'Authorization': 'Hawk id="admin", ts="1435583385", nonce="oNIx1P", ext="e30=", mac="td/TTSjZp4YKdWQqzl5/0ymUo2d6OF4gV/eh2ly1iwk="'}
taskcluster.utils: DEBUG: HTTP Payload: None (limit 100 char)
requests.packages.urllib3.connectionpool: INFO: Starting new HTTP connection (1): localhost
taskcluster.client: WARNING: Retrying because of: ('Connection aborted.', error(61, 'Connection refused'))
taskcluster.client: INFO: Sleeping 2.50 seconds for exponential backoff
hawk.client: DEBUG: parsed URL parts: {'hostname': 'localhost',
'path': '/v1/client/admin/credentials',
'port': 5555,
'query': '',
'resource': '/v1/client/admin/credentials',
'scheme': 'http'}
hawk.client: DEBUG: artifacts={'app': None,
'dlg': None,
'ext': 'e30=',
'hash': None,
'host': 'localhost',
'method': 'get',
'nonce': 'M13_XK',
'port': 5555,
'resource': '/v1/client/admin/credentials',
'ts': 1435583388}
taskcluster.client: DEBUG: Making attempt 5
taskcluster.utils: DEBUG: Making a GET request to http://localhost:5555/v1/client/admin/credentials
taskcluster.utils: DEBUG: HTTP Headers: {'Authorization': 'Hawk id="admin", ts="1435583388", nonce="M13_XK", ext="e30=", mac="72IBej1Jr/hUHqTlbrMoL5I8g/1AbM4STMR+HJMf96M="'}
taskcluster.utils: DEBUG: HTTP Payload: None (limit 100 char)
requests.packages.urllib3.connectionpool: INFO: Starting new HTTP connection (1): localhost
--------------------- >> end captured logging << ---------------------
======================================================================
ERROR: test_mock_auth_bad_scope (test.test_client.TestAuthenticationMockServer)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/Users/pmoore/git/taskcluster-client.py/test/test_client.py", line 551, in test_mock_auth_bad_scope
client.getCredentials('admin')
File "/Users/pmoore/git/taskcluster-client.py/taskcluster/client.py", line 455, in apiCall
return self._makeApiCall(e, *args, **kwargs)
File "/Users/pmoore/git/taskcluster-client.py/taskcluster/client.py", line 232, in _makeApiCall
return self._makeHttpRequest(entry['method'], route, payload)
File "/Users/pmoore/git/taskcluster-client.py/taskcluster/client.py", line 382, in _makeHttpRequest
superExc=rerr
TaskclusterConnectionError: ('Failed to establish connection', ConnectionError(ProtocolError('Connection aborted.', error(61, 'Connection refused')),))
-------------------- >> begin captured logging << --------------------
taskcluster.client: DEBUG: credentials key scrubbed from logging output
taskcluster.client: DEBUG: {'baseUrl': 'http://localhost:5555/v1', 'maxRetries': 5, 'exchangePrefix': 'test/v1', 'signedUrlExpiration': 900}
taskcluster.client: DEBUG: Found a positional argument: admin
taskcluster.client: DEBUG: After processing positional arguments, we have: {'clientId': 'admin'}
taskcluster.client: DEBUG: After keyword arguments, we have: {'clientId': 'admin'}
taskcluster.client: DEBUG: Route is: client/admin/credentials
taskcluster.client: DEBUG: Full URL used is: http://localhost:5555/v1/client/admin/credentials
hawk.client: DEBUG: parsed URL parts: {'hostname': 'localhost',
'path': '/v1/client/admin/credentials',
'port': 5555,
'query': '',
'resource': '/v1/client/admin/credentials',
'scheme': 'http'}
hawk.client: DEBUG: artifacts={'app': None,
'dlg': None,
'ext': 'e30=',
'hash': None,
'host': 'localhost',
'method': 'get',
'nonce': 'OCxmT5',
'port': 5555,
'resource': '/v1/client/admin/credentials',
'ts': 1435583388}
taskcluster.client: DEBUG: Making attempt 0
taskcluster.utils: DEBUG: Making a GET request to http://localhost:5555/v1/client/admin/credentials
taskcluster.utils: DEBUG: HTTP Headers: {'Authorization': 'Hawk id="badScope", ts="1435583388", nonce="OCxmT5", ext="e30=", mac="U6Fw3ehGov82pWccF/wfBEjUXUz5a8qQpdyrZCZNWt8="'}
taskcluster.utils: DEBUG: HTTP Payload: None (limit 100 char)
requests.packages.urllib3.connectionpool: INFO: Starting new HTTP connection (1): localhost
taskcluster.client: WARNING: Retrying because of: ('Connection aborted.', error(61, 'Connection refused'))
taskcluster.client: INFO: Sleeping 0.10 seconds for exponential backoff
hawk.client: DEBUG: parsed URL parts: {'hostname': 'localhost',
'path': '/v1/client/admin/credentials',
'port': 5555,
'query': '',
'resource': '/v1/client/admin/credentials',
'scheme': 'http'}
hawk.client: DEBUG: artifacts={'app': None,
'dlg': None,
'ext': 'e30=',
'hash': None,
'host': 'localhost',
'method': 'get',
'nonce': 'fZL9lj',
'port': 5555,
'resource': '/v1/client/admin/credentials',
'ts': 1435583388}
taskcluster.client: DEBUG: Making attempt 1
taskcluster.utils: DEBUG: Making a GET request to http://localhost:5555/v1/client/admin/credentials
taskcluster.utils: DEBUG: HTTP Headers: {'Authorization': 'Hawk id="badScope", ts="1435583388", nonce="fZL9lj", ext="e30=", mac="oLDa5FQia+GRXrsnGMPsgw8eQXrX31T31Sk6wkrO6GM="'}
taskcluster.utils: DEBUG: HTTP Payload: None (limit 100 char)
requests.packages.urllib3.connectionpool: INFO: Starting new HTTP connection (1): localhost
taskcluster.client: WARNING: Retrying because of: ('Connection aborted.', error(61, 'Connection refused'))
taskcluster.client: INFO: Sleeping 0.40 seconds for exponential backoff
hawk.client: DEBUG: parsed URL parts: {'hostname': 'localhost',
'path': '/v1/client/admin/credentials',
'port': 5555,
'query': '',
'resource': '/v1/client/admin/credentials',
'scheme': 'http'}
hawk.client: DEBUG: artifacts={'app': None,
'dlg': None,
'ext': 'e30=',
'hash': None,
'host': 'localhost',
'method': 'get',
'nonce': 'Ipubrf',
'port': 5555,
'resource': '/v1/client/admin/credentials',
'ts': 1435583388}
taskcluster.client: DEBUG: Making attempt 2
taskcluster.utils: DEBUG: Making a GET request to http://localhost:5555/v1/client/admin/credentials
taskcluster.utils: DEBUG: HTTP Headers: {'Authorization': 'Hawk id="badScope", ts="1435583388", nonce="Ipubrf", ext="e30=", mac="cfDRYTV+oJnG5qMjvZTJJ3Dh6QKN9SDyJ9QhtauV86A="'}
taskcluster.utils: DEBUG: HTTP Payload: None (limit 100 char)
requests.packages.urllib3.connectionpool: INFO: Starting new HTTP connection (1): localhost
taskcluster.client: WARNING: Retrying because of: ('Connection aborted.', error(61, 'Connection refused'))
taskcluster.client: INFO: Sleeping 0.90 seconds for exponential backoff
hawk.client: DEBUG: parsed URL parts: {'hostname': 'localhost',
'path': '/v1/client/admin/credentials',
'port': 5555,
'query': '',
'resource': '/v1/client/admin/credentials',
'scheme': 'http'}
hawk.client: DEBUG: artifacts={'app': None,
'dlg': None,
'ext': 'e30=',
'hash': None,
'host': 'localhost',
'method': 'get',
'nonce': 'yghbwZ',
'port': 5555,
'resource': '/v1/client/admin/credentials',
'ts': 1435583389}
taskcluster.client: DEBUG: Making attempt 3
taskcluster.utils: DEBUG: Making a GET request to http://localhost:5555/v1/client/admin/credentials
taskcluster.utils: DEBUG: HTTP Headers: {'Authorization': 'Hawk id="badScope", ts="1435583389", nonce="yghbwZ", ext="e30=", mac="csiKuP6geuBj7666WJDSmCJ6C05dov3IEENZo7C4xv4="'}
taskcluster.utils: DEBUG: HTTP Payload: None (limit 100 char)
requests.packages.urllib3.connectionpool: INFO: Starting new HTTP connection (1): localhost
taskcluster.client: WARNING: Retrying because of: ('Connection aborted.', error(61, 'Connection refused'))
taskcluster.client: INFO: Sleeping 1.60 seconds for exponential backoff
hawk.client: DEBUG: parsed URL parts: {'hostname': 'localhost',
'path': '/v1/client/admin/credentials',
'port': 5555,
'query': '',
'resource': '/v1/client/admin/credentials',
'scheme': 'http'}
hawk.client: DEBUG: artifacts={'app': None,
'dlg': None,
'ext': 'e30=',
'hash': None,
'host': 'localhost',
'method': 'get',
'nonce': '6CFXYY',
'port': 5555,
'resource': '/v1/client/admin/credentials',
'ts': 1435583391}
taskcluster.client: DEBUG: Making attempt 4
taskcluster.utils: DEBUG: Making a GET request to http://localhost:5555/v1/client/admin/credentials
taskcluster.utils: DEBUG: HTTP Headers: {'Authorization': 'Hawk id="badScope", ts="1435583391", nonce="6CFXYY", ext="e30=", mac="eAQC/IRx3koFampN0dhq0OpDqWnnGerdFnTg4q6OEEc="'}
taskcluster.utils: DEBUG: HTTP Payload: None (limit 100 char)
requests.packages.urllib3.connectionpool: INFO: Starting new HTTP connection (1): localhost
taskcluster.client: WARNING: Retrying because of: ('Connection aborted.', error(61, 'Connection refused'))
taskcluster.client: INFO: Sleeping 2.50 seconds for exponential backoff
hawk.client: DEBUG: parsed URL parts: {'hostname': 'localhost',
'path': '/v1/client/admin/credentials',
'port': 5555,
'query': '',
'resource': '/v1/client/admin/credentials',
'scheme': 'http'}
hawk.client: DEBUG: artifacts={'app': None,
'dlg': None,
'ext': 'e30=',
'hash': None,
'host': 'localhost',
'method': 'get',
'nonce': 'NAnyUz',
'port': 5555,
'resource': '/v1/client/admin/credentials',
'ts': 1435583393}
taskcluster.client: DEBUG: Making attempt 5
taskcluster.utils: DEBUG: Making a GET request to http://localhost:5555/v1/client/admin/credentials
taskcluster.utils: DEBUG: HTTP Headers: {'Authorization': 'Hawk id="badScope", ts="1435583393", nonce="NAnyUz", ext="e30=", mac="TpqEZ8P36x+BMlILYs75kxNQKMfvBx3q8s7f3FVCCBk="'}
taskcluster.utils: DEBUG: HTTP Payload: None (limit 100 char)
requests.packages.urllib3.connectionpool: INFO: Starting new HTTP connection (1): localhost
--------------------- >> end captured logging << ---------------------
======================================================================
ERROR: test_mock_auth_expired (test.test_client.TestAuthenticationMockServer)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/Users/pmoore/git/taskcluster-client.py/test/test_client.py", line 540, in test_mock_auth_expired
client.getCredentials('admin')
File "/Users/pmoore/git/taskcluster-client.py/taskcluster/client.py", line 455, in apiCall
return self._makeApiCall(e, *args, **kwargs)
File "/Users/pmoore/git/taskcluster-client.py/taskcluster/client.py", line 232, in _makeApiCall
return self._makeHttpRequest(entry['method'], route, payload)
File "/Users/pmoore/git/taskcluster-client.py/taskcluster/client.py", line 382, in _makeHttpRequest
superExc=rerr
TaskclusterConnectionError: ('Failed to establish connection', ConnectionError(ProtocolError('Connection aborted.', error(61, 'Connection refused')),))
-------------------- >> begin captured logging << --------------------
taskcluster.client: DEBUG: credentials key scrubbed from logging output
taskcluster.client: DEBUG: {'baseUrl': 'http://localhost:5555/v1', 'maxRetries': 5, 'exchangePrefix': 'test/v1', 'signedUrlExpiration': 900}
taskcluster.client: DEBUG: Found a positional argument: admin
taskcluster.client: DEBUG: After processing positional arguments, we have: {'clientId': 'admin'}
taskcluster.client: DEBUG: After keyword arguments, we have: {'clientId': 'admin'}
taskcluster.client: DEBUG: Route is: client/admin/credentials
taskcluster.client: DEBUG: Full URL used is: http://localhost:5555/v1/client/admin/credentials
hawk.client: DEBUG: parsed URL parts: {'hostname': 'localhost',
'path': '/v1/client/admin/credentials',
'port': 5555,
'query': '',
'resource': '/v1/client/admin/credentials',
'scheme': 'http'}
hawk.client: DEBUG: artifacts={'app': None,
'dlg': None,
'ext': 'e30=',
'hash': None,
'host': 'localhost',
'method': 'get',
'nonce': 'VO1y3C',
'port': 5555,
'resource': '/v1/client/admin/credentials',
'ts': 1435583393}
taskcluster.client: DEBUG: Making attempt 0
taskcluster.utils: DEBUG: Making a GET request to http://localhost:5555/v1/client/admin/credentials
taskcluster.utils: DEBUG: HTTP Headers: {'Authorization': 'Hawk id="expired", ts="1435583393", nonce="VO1y3C", ext="e30=", mac="n7zidiVW5Kldvo1a97mugTH88yVBBlwtt1nyJdeaylQ="'}
taskcluster.utils: DEBUG: HTTP Payload: None (limit 100 char)
requests.packages.urllib3.connectionpool: INFO: Starting new HTTP connection (1): localhost
taskcluster.client: WARNING: Retrying because of: ('Connection aborted.', error(61, 'Connection refused'))
taskcluster.client: INFO: Sleeping 0.10 seconds for exponential backoff
hawk.client: DEBUG: parsed URL parts: {'hostname': 'localhost',
'path': '/v1/client/admin/credentials',
'port': 5555,
'query': '',
'resource': '/v1/client/admin/credentials',
'scheme': 'http'}
hawk.client: DEBUG: artifacts={'app': None,
'dlg': None,
'ext': 'e30=',
'hash': None,
'host': 'localhost',
'method': 'get',
'nonce': '3rN3Q6',
'port': 5555,
'resource': '/v1/client/admin/credentials',
'ts': 1435583394}
taskcluster.client: DEBUG: Making attempt 1
taskcluster.utils: DEBUG: Making a GET request to http://localhost:5555/v1/client/admin/credentials
taskcluster.utils: DEBUG: HTTP Headers: {'Authorization': 'Hawk id="expired", ts="1435583394", nonce="3rN3Q6", ext="e30=", mac="Yv+UM6a2jHDvTWfF+ty21Ddgzpy7XDBgG/YH5yav9lE="'}
taskcluster.utils: DEBUG: HTTP Payload: None (limit 100 char)
requests.packages.urllib3.connectionpool: INFO: Starting new HTTP connection (1): localhost
taskcluster.client: WARNING: Retrying because of: ('Connection aborted.', error(61, 'Connection refused'))
taskcluster.client: INFO: Sleeping 0.40 seconds for exponential backoff
hawk.client: DEBUG: parsed URL parts: {'hostname': 'localhost',
'path': '/v1/client/admin/credentials',
'port': 5555,
'query': '',
'resource': '/v1/client/admin/credentials',
'scheme': 'http'}
hawk.client: DEBUG: artifacts={'app': None,
'dlg': None,
'ext': 'e30=',
'hash': None,
'host': 'localhost',
'method': 'get',
'nonce': 'jZUc22',
'port': 5555,
'resource': '/v1/client/admin/credentials',
'ts': 1435583394}
taskcluster.client: DEBUG: Making attempt 2
taskcluster.utils: DEBUG: Making a GET request to http://localhost:5555/v1/client/admin/credentials
taskcluster.utils: DEBUG: HTTP Headers: {'Authorization': 'Hawk id="expired", ts="1435583394", nonce="jZUc22", ext="e30=", mac="vzhSgXwM1mGvZ6+ZQ1FiHdFBYs6P5shTrekYwvlQh30="'}
taskcluster.utils: DEBUG: HTTP Payload: None (limit 100 char)
requests.packages.urllib3.connectionpool: INFO: Starting new HTTP connection (1): localhost
taskcluster.client: WARNING: Retrying because of: ('Connection aborted.', error(61, 'Connection refused'))
taskcluster.client: INFO: Sleeping 0.90 seconds for exponential backoff
hawk.client: DEBUG: parsed URL parts: {'hostname': 'localhost',
'path': '/v1/client/admin/credentials',
'port': 5555,
'query': '',
'resource': '/v1/client/admin/credentials',
'scheme': 'http'}
hawk.client: DEBUG: artifacts={'app': None,
'dlg': None,
'ext': 'e30=',
'hash': None,
'host': 'localhost',
'method': 'get',
'nonce': 'X9--9z',
'port': 5555,
'resource': '/v1/client/admin/credentials',
'ts': 1435583395}
taskcluster.client: DEBUG: Making attempt 3
taskcluster.utils: DEBUG: Making a GET request to http://localhost:5555/v1/client/admin/credentials
taskcluster.utils: DEBUG: HTTP Headers: {'Authorization': 'Hawk id="expired", ts="1435583395", nonce="X9--9z", ext="e30=", mac="9RSqN4AarYXVW0suWiC/D6IMo8ZVTiF/W46h0T55eRI="'}
taskcluster.utils: DEBUG: HTTP Payload: None (limit 100 char)
requests.packages.urllib3.connectionpool: INFO: Starting new HTTP connection (1): localhost
taskcluster.client: WARNING: Retrying because of: ('Connection aborted.', error(61, 'Connection refused'))
taskcluster.client: INFO: Sleeping 1.60 seconds for exponential backoff
hawk.client: DEBUG: parsed URL parts: {'hostname': 'localhost',
'path': '/v1/client/admin/credentials',
'port': 5555,
'query': '',
'resource': '/v1/client/admin/credentials',
'scheme': 'http'}
hawk.client: DEBUG: artifacts={'app': None,
'dlg': None,
'ext': 'e30=',
'hash': None,
'host': 'localhost',
'method': 'get',
'nonce': 'EjU79t',
'port': 5555,
'resource': '/v1/client/admin/credentials',
'ts': 1435583396}
taskcluster.client: DEBUG: Making attempt 4
taskcluster.utils: DEBUG: Making a GET request to http://localhost:5555/v1/client/admin/credentials
taskcluster.utils: DEBUG: HTTP Headers: {'Authorization': 'Hawk id="expired", ts="1435583396", nonce="EjU79t", ext="e30=", mac="FZXNN0b/9pOM9gWDyic5S9hCiRhjs0HeBdR4J3uUtMM="'}
taskcluster.utils: DEBUG: HTTP Payload: None (limit 100 char)
requests.packages.urllib3.connectionpool: INFO: Starting new HTTP connection (1): localhost
taskcluster.client: WARNING: Retrying because of: ('Connection aborted.', error(61, 'Connection refused'))
taskcluster.client: INFO: Sleeping 2.50 seconds for exponential backoff
hawk.client: DEBUG: parsed URL parts: {'hostname': 'localhost',
'path': '/v1/client/admin/credentials',
'port': 5555,
'query': '',
'resource': '/v1/client/admin/credentials',
'scheme': 'http'}
hawk.client: DEBUG: artifacts={'app': None,
'dlg': None,
'ext': 'e30=',
'hash': None,
'host': 'localhost',
'method': 'get',
'nonce': 'ibPY8T',
'port': 5555,
'resource': '/v1/client/admin/credentials',
'ts': 1435583399}
taskcluster.client: DEBUG: Making attempt 5
taskcluster.utils: DEBUG: Making a GET request to http://localhost:5555/v1/client/admin/credentials
taskcluster.utils: DEBUG: HTTP Headers: {'Authorization': 'Hawk id="expired", ts="1435583399", nonce="ibPY8T", ext="e30=", mac="sp/c2XUtHNgobNi2BZTpaRv37JRJ1SYrXhBEj5eUjO4="'}
taskcluster.utils: DEBUG: HTTP Payload: None (limit 100 char)
requests.packages.urllib3.connectionpool: INFO: Starting new HTTP connection (1): localhost
--------------------- >> end captured logging << ---------------------
======================================================================
ERROR: test_mock_auth_invalid (test.test_client.TestAuthenticationMockServer)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/Users/pmoore/git/taskcluster-client.py/test/test_client.py", line 508, in test_mock_auth_invalid
client.getCredentials('admin')
File "/Users/pmoore/git/taskcluster-client.py/taskcluster/client.py", line 455, in apiCall
return self._makeApiCall(e, *args, **kwargs)
File "/Users/pmoore/git/taskcluster-client.py/taskcluster/client.py", line 232, in _makeApiCall
return self._makeHttpRequest(entry['method'], route, payload)
File "/Users/pmoore/git/taskcluster-client.py/taskcluster/client.py", line 382, in _makeHttpRequest
superExc=rerr
TaskclusterConnectionError: ('Failed to establish connection', ConnectionError(ProtocolError('Connection aborted.', error(61, 'Connection refused')),))
-------------------- >> begin captured logging << --------------------
taskcluster.client: DEBUG: credentials key scrubbed from logging output
taskcluster.client: DEBUG: {'baseUrl': 'http://localhost:5555/v1', 'maxRetries': 5, 'exchangePrefix': 'test/v1', 'signedUrlExpiration': 900}
taskcluster.client: DEBUG: Found a positional argument: admin
taskcluster.client: DEBUG: After processing positional arguments, we have: {'clientId': 'admin'}
taskcluster.client: DEBUG: After keyword arguments, we have: {'clientId': 'admin'}
taskcluster.client: DEBUG: Route is: client/admin/credentials
taskcluster.client: DEBUG: Full URL used is: http://localhost:5555/v1/client/admin/credentials
hawk.client: DEBUG: parsed URL parts: {'hostname': 'localhost',
'path': '/v1/client/admin/credentials',
'port': 5555,
'query': '',
'resource': '/v1/client/admin/credentials',
'scheme': 'http'}
hawk.client: DEBUG: artifacts={'app': None,
'dlg': None,
'ext': 'e30=',
'hash': None,
'host': 'localhost',
'method': 'get',
'nonce': 'nWnsWX',
'port': 5555,
'resource': '/v1/client/admin/credentials',
'ts': 1435583399}
taskcluster.client: DEBUG: Making attempt 0
taskcluster.utils: DEBUG: Making a GET request to http://localhost:5555/v1/client/admin/credentials
taskcluster.utils: DEBUG: HTTP Headers: {'Authorization': 'Hawk id="unknown", ts="1435583399", nonce="nWnsWX", ext="e30=", mac="KPJxB+vYE8RVLRbsVDwV3s9T3NtwQKh1UPMlTx3YcTI="'}
taskcluster.utils: DEBUG: HTTP Payload: None (limit 100 char)
requests.packages.urllib3.connectionpool: INFO: Starting new HTTP connection (1): localhost
taskcluster.client: WARNING: Retrying because of: ('Connection aborted.', error(61, 'Connection refused'))
taskcluster.client: INFO: Sleeping 0.10 seconds for exponential backoff
hawk.client: DEBUG: parsed URL parts: {'hostname': 'localhost',
'path': '/v1/client/admin/credentials',
'port': 5555,
'query': '',
'resource': '/v1/client/admin/credentials',
'scheme': 'http'}
hawk.client: DEBUG: artifacts={'app': None,
'dlg': None,
'ext': 'e30=',
'hash': None,
'host': 'localhost',
'method': 'get',
'nonce': 'CBYC8D',
'port': 5555,
'resource': '/v1/client/admin/credentials',
'ts': 1435583399}
taskcluster.client: DEBUG: Making attempt 1
taskcluster.utils: DEBUG: Making a GET request to http://localhost:5555/v1/client/admin/credentials
taskcluster.utils: DEBUG: HTTP Headers: {'Authorization': 'Hawk id="unknown", ts="1435583399", nonce="CBYC8D", ext="e30=", mac="Wn7a8vV0NY8JaaFkAQXyB5YRJ53xQRo2+9NIWiojjS0="'}
taskcluster.utils: DEBUG: HTTP Payload: None (limit 100 char)
requests.packages.urllib3.connectionpool: INFO: Starting new HTTP connection (1): localhost
taskcluster.client: WARNING: Retrying because of: ('Connection aborted.', error(61, 'Connection refused'))
taskcluster.client: INFO: Sleeping 0.40 seconds for exponential backoff
hawk.client: DEBUG: parsed URL parts: {'hostname': 'localhost',
'path': '/v1/client/admin/credentials',
'port': 5555,
'query': '',
'resource': '/v1/client/admin/credentials',
'scheme': 'http'}
hawk.client: DEBUG: artifacts={'app': None,
'dlg': None,
'ext': 'e30=',
'hash': None,
'host': 'localhost',
'method': 'get',
'nonce': 'bq9_id',
'port': 5555,
'resource': '/v1/client/admin/credentials',
'ts': 1435583399}
taskcluster.client: DEBUG: Making attempt 2
taskcluster.utils: DEBUG: Making a GET request to http://localhost:5555/v1/client/admin/credentials
taskcluster.utils: DEBUG: HTTP Headers: {'Authorization': 'Hawk id="unknown", ts="1435583399", nonce="bq9_id", ext="e30=", mac="gEWwweUGenDRnqKpBiGEUz4XQvv/yct1pND0/7fFhpc="'}
taskcluster.utils: DEBUG: HTTP Payload: None (limit 100 char)
requests.packages.urllib3.connectionpool: INFO: Starting new HTTP connection (1): localhost
taskcluster.client: WARNING: Retrying because of: ('Connection aborted.', error(61, 'Connection refused'))
taskcluster.client: INFO: Sleeping 0.90 seconds for exponential backoff
hawk.client: DEBUG: parsed URL parts: {'hostname': 'localhost',
'path': '/v1/client/admin/credentials',
'port': 5555,
'query': '',
'resource': '/v1/client/admin/credentials',
'scheme': 'http'}
hawk.client: DEBUG: artifacts={'app': None,
'dlg': None,
'ext': 'e30=',
'hash': None,
'host': 'localhost',
'method': 'get',
'nonce': 'tDePF9',
'port': 5555,
'resource': '/v1/client/admin/credentials',
'ts': 1435583400}
taskcluster.client: DEBUG: Making attempt 3
taskcluster.utils: DEBUG: Making a GET request to http://localhost:5555/v1/client/admin/credentials
taskcluster.utils: DEBUG: HTTP Headers: {'Authorization': 'Hawk id="unknown", ts="1435583400", nonce="tDePF9", ext="e30=", mac="O4ulF6cEhTJ4oIRx/doChNuZIXcRsfHo6PgruHozA2A="'}
taskcluster.utils: DEBUG: HTTP Payload: None (limit 100 char)
requests.packages.urllib3.connectionpool: INFO: Starting new HTTP connection (1): localhost
taskcluster.client: WARNING: Retrying because of: ('Connection aborted.', error(61, 'Connection refused'))
taskcluster.client: INFO: Sleeping 1.60 seconds for exponential backoff
hawk.client: DEBUG: parsed URL parts: {'hostname': 'localhost',
'path': '/v1/client/admin/credentials',
'port': 5555,
'query': '',
'resource': '/v1/client/admin/credentials',
'scheme': 'http'}
hawk.client: DEBUG: artifacts={'app': None,
'dlg': None,
'ext': 'e30=',
'hash': None,
'host': 'localhost',
'method': 'get',
'nonce': 'dbpFy9',
'port': 5555,
'resource': '/v1/client/admin/credentials',
'ts': 1435583402}
taskcluster.client: DEBUG: Making attempt 4
taskcluster.utils: DEBUG: Making a GET request to http://localhost:5555/v1/client/admin/credentials
taskcluster.utils: DEBUG: HTTP Headers: {'Authorization': 'Hawk id="unknown", ts="1435583402", nonce="dbpFy9", ext="e30=", mac="LEvUSsyIX+2DQn32XRtjO2DR4vVYQSxfD5be5poxdH0="'}
taskcluster.utils: DEBUG: HTTP Payload: None (limit 100 char)
requests.packages.urllib3.connectionpool: INFO: Starting new HTTP connection (1): localhost
taskcluster.client: WARNING: Retrying because of: ('Connection aborted.', error(61, 'Connection refused'))
taskcluster.client: INFO: Sleeping 2.50 seconds for exponential backoff
hawk.client: DEBUG: parsed URL parts: {'hostname': 'localhost',
'path': '/v1/client/admin/credentials',
'port': 5555,
'query': '',
'resource': '/v1/client/admin/credentials',
'scheme': 'http'}
hawk.client: DEBUG: artifacts={'app': None,
'dlg': None,
'ext': 'e30=',
'hash': None,
'host': 'localhost',
'method': 'get',
'nonce': 'Oz5IIA',
'port': 5555,
'resource': '/v1/client/admin/credentials',
'ts': 1435583404}
taskcluster.client: DEBUG: Making attempt 5
taskcluster.utils: DEBUG: Making a GET request to http://localhost:5555/v1/client/admin/credentials
taskcluster.utils: DEBUG: HTTP Headers: {'Authorization': 'Hawk id="unknown", ts="1435583404", nonce="Oz5IIA", ext="e30=", mac="unzmGSOA0K7Z8dvi2q4HWUkpldzahraaO2+X7lLBPu0="'}
taskcluster.utils: DEBUG: HTTP Payload: None (limit 100 char)
requests.packages.urllib3.connectionpool: INFO: Starting new HTTP connection (1): localhost
--------------------- >> end captured logging << ---------------------
======================================================================
ERROR: test_mock_auth_signed_url (test.test_client.TestAuthenticationMockServer)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/Users/pmoore/git/taskcluster-client.py/test/test_client.py", line 580, in test_mock_auth_signed_url
response = requests.get(signedUrl)
File "/Users/pmoore/git/taskcluster-client.py/env-python/lib/python2.7/site-packages/requests/api.py", line 69, in get
return request('get', url, params=params, **kwargs)
File "/Users/pmoore/git/taskcluster-client.py/env-python/lib/python2.7/site-packages/requests/api.py", line 50, in request
response = session.request(method=method, url=url, **kwargs)
File "/Users/pmoore/git/taskcluster-client.py/env-python/lib/python2.7/site-packages/requests/sessions.py", line 465, in request
resp = self.send(prep, **send_kwargs)
File "/Users/pmoore/git/taskcluster-client.py/env-python/lib/python2.7/site-packages/requests/sessions.py", line 573, in send
r = adapter.send(request, **kwargs)
File "/Users/pmoore/git/taskcluster-client.py/env-python/lib/python2.7/site-packages/requests/adapters.py", line 415, in send
raise ConnectionError(err, request=request)
ConnectionError: ('Connection aborted.', error(61, 'Connection refused'))
-------------------- >> begin captured logging << --------------------
taskcluster.client: DEBUG: credentials key scrubbed from logging output
taskcluster.client: DEBUG: {'baseUrl': 'http://localhost:5555/v1', 'maxRetries': 5, 'exchangePrefix': 'test/v1', 'signedUrlExpiration': 900}
taskcluster.client: DEBUG: Found a positional argument: admin
taskcluster.client: DEBUG: After processing positional arguments, we have: {'clientId': 'admin'}
taskcluster.client: DEBUG: After keyword arguments, we have: {'clientId': 'admin'}
requests.packages.urllib3.connectionpool: INFO: Starting new HTTP connection (1): localhost
--------------------- >> end captured logging << ---------------------
======================================================================
ERROR: test_mock_auth_signed_url_bad_credentials (test.test_client.TestAuthenticationMockServer)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/Users/pmoore/git/taskcluster-client.py/test/test_client.py", line 594, in test_mock_auth_signed_url_bad_credentials
r = requests.get(signedUrl)
File "/Users/pmoore/git/taskcluster-client.py/env-python/lib/python2.7/site-packages/requests/api.py", line 69, in get
return request('get', url, params=params, **kwargs)
File "/Users/pmoore/git/taskcluster-client.py/env-python/lib/python2.7/site-packages/requests/api.py", line 50, in request
response = session.request(method=method, url=url, **kwargs)
File "/Users/pmoore/git/taskcluster-client.py/env-python/lib/python2.7/site-packages/requests/sessions.py", line 465, in request
resp = self.send(prep, **send_kwargs)
File "/Users/pmoore/git/taskcluster-client.py/env-python/lib/python2.7/site-packages/requests/sessions.py", line 573, in send
r = adapter.send(request, **kwargs)
File "/Users/pmoore/git/taskcluster-client.py/env-python/lib/python2.7/site-packages/requests/adapters.py", line 415, in send
raise ConnectionError(err, request=request)
ConnectionError: ('Connection aborted.', error(61, 'Connection refused'))
-------------------- >> begin captured logging << --------------------
taskcluster.client: DEBUG: credentials key scrubbed from logging output
taskcluster.client: DEBUG: {'baseUrl': 'http://localhost:5555/v1', 'maxRetries': 5, 'exchangePrefix': 'test/v1', 'signedUrlExpiration': 900}
taskcluster.client: DEBUG: Found a positional argument: admin
taskcluster.client: DEBUG: After processing positional arguments, we have: {'clientId': 'admin'}
taskcluster.client: DEBUG: After keyword arguments, we have: {'clientId': 'admin'}
requests.packages.urllib3.connectionpool: INFO: Starting new HTTP connection (1): localhost
--------------------- >> end captured logging << ---------------------
======================================================================
ERROR: test_mock_auth_works (test.test_client.TestAuthenticationMockServer)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/Users/pmoore/git/taskcluster-client.py/test/test_client.py", line 485, in test_mock_auth_works
result = client.getCredentials('admin')
File "/Users/pmoore/git/taskcluster-client.py/taskcluster/client.py", line 455, in apiCall
return self._makeApiCall(e, *args, **kwargs)
File "/Users/pmoore/git/taskcluster-client.py/taskcluster/client.py", line 232, in _makeApiCall
return self._makeHttpRequest(entry['method'], route, payload)
File "/Users/pmoore/git/taskcluster-client.py/taskcluster/client.py", line 382, in _makeHttpRequest
superExc=rerr
TaskclusterConnectionError: ('Failed to establish connection', ConnectionError(ProtocolError('Connection aborted.', error(61, 'Connection refused')),))
-------------------- >> begin captured logging << --------------------
taskcluster.client: DEBUG: credentials key scrubbed from logging output
taskcluster.client: DEBUG: {'baseUrl': 'http://localhost:5555/v1', 'maxRetries': 5, 'exchangePrefix': 'test/v1', 'signedUrlExpiration': 900}
taskcluster.client: DEBUG: Found a positional argument: admin
taskcluster.client: DEBUG: After processing positional arguments, we have: {'clientId': 'admin'}
taskcluster.client: DEBUG: After keyword arguments, we have: {'clientId': 'admin'}
taskcluster.client: DEBUG: Route is: client/admin/credentials
taskcluster.client: DEBUG: Full URL used is: http://localhost:5555/v1/client/admin/credentials
hawk.client: DEBUG: parsed URL parts: {'hostname': 'localhost',
'path': '/v1/client/admin/credentials',
'port': 5555,
'query': '',
'resource': '/v1/client/admin/credentials',
'scheme': 'http'}
hawk.client: DEBUG: artifacts={'app': None,
'dlg': None,
'ext': 'e30=',
'hash': None,
'host': 'localhost',
'method': 'get',
'nonce': 't3f-B3',
'port': 5555,
'resource': '/v1/client/admin/credentials',
'ts': 1435583404}
taskcluster.client: DEBUG: Making attempt 0
taskcluster.utils: DEBUG: Making a GET request to http://localhost:5555/v1/client/admin/credentials
taskcluster.utils: DEBUG: HTTP Headers: {'Authorization': 'Hawk id="admin", ts="1435583404", nonce="t3f-B3", ext="e30=", mac="9UzOmlpVKW7LtByDc+MDncj61XFFPnqv7/CNhbqn52I="'}
taskcluster.utils: DEBUG: HTTP Payload: None (limit 100 char)
requests.packages.urllib3.connectionpool: INFO: Starting new HTTP connection (1): localhost
taskcluster.client: WARNING: Retrying because of: ('Connection aborted.', error(61, 'Connection refused'))
taskcluster.client: INFO: Sleeping 0.10 seconds for exponential backoff
hawk.client: DEBUG: parsed URL parts: {'hostname': 'localhost',
'path': '/v1/client/admin/credentials',
'port': 5555,
'query': '',
'resource': '/v1/client/admin/credentials',
'scheme': 'http'}
hawk.client: DEBUG: artifacts={'app': None,
'dlg': None,
'ext': 'e30=',
'hash': None,
'host': 'localhost',
'method': 'get',
'nonce': 'V_e2xM',
'port': 5555,
'resource': '/v1/client/admin/credentials',
'ts': 1435583405}
taskcluster.client: DEBUG: Making attempt 1
taskcluster.utils: DEBUG: Making a GET request to http://localhost:5555/v1/client/admin/credentials
taskcluster.utils: DEBUG: HTTP Headers: {'Authorization': 'Hawk id="admin", ts="1435583405", nonce="V_e2xM", ext="e30=", mac="3R2GnYrunGQGmTlVHz6sO7rziK9jYDN0eaSaOuPDdV8="'}
taskcluster.utils: DEBUG: HTTP Payload: None (limit 100 char)
requests.packages.urllib3.connectionpool: INFO: Starting new HTTP connection (1): localhost
taskcluster.client: WARNING: Retrying because of: ('Connection aborted.', error(61, 'Connection refused'))
taskcluster.client: INFO: Sleeping 0.40 seconds for exponential backoff
hawk.client: DEBUG: parsed URL parts: {'hostname': 'localhost',
'path': '/v1/client/admin/credentials',
'port': 5555,
'query': '',
'resource': '/v1/client/admin/credentials',
'scheme': 'http'}
hawk.client: DEBUG: artifacts={'app': None,
'dlg': None,
'ext': 'e30=',
'hash': None,
'host': 'localhost',
'method': 'get',
'nonce': 'JhRqPi',
'port': 5555,
'resource': '/v1/client/admin/credentials',
'ts': 1435583405}
taskcluster.client: DEBUG: Making attempt 2
taskcluster.utils: DEBUG: Making a GET request to http://localhost:5555/v1/client/admin/credentials
taskcluster.utils: DEBUG: HTTP Headers: {'Authorization': 'Hawk id="admin", ts="1435583405", nonce="JhRqPi", ext="e30=", mac="5hgBN+qh9IrtBgqGz+RIMZyPKdKkxV3ufAvT6zkkCGk="'}
taskcluster.utils: DEBUG: HTTP Payload: None (limit 100 char)
requests.packages.urllib3.connectionpool: INFO: Starting new HTTP connection (1): localhost
taskcluster.client: WARNING: Retrying because of: ('Connection aborted.', error(61, 'Connection refused'))
taskcluster.client: INFO: Sleeping 0.90 seconds for exponential backoff
hawk.client: DEBUG: parsed URL parts: {'hostname': 'localhost',
'path': '/v1/client/admin/credentials',
'port': 5555,
'query': '',
'resource': '/v1/client/admin/credentials',
'scheme': 'http'}
hawk.client: DEBUG: artifacts={'app': None,
'dlg': None,
'ext': 'e30=',
'hash': None,
'host': 'localhost',
'method': 'get',
'nonce': 'a9Uown',
'port': 5555,
'resource': '/v1/client/admin/credentials',
'ts': 1435583406}
taskcluster.client: DEBUG: Making attempt 3
taskcluster.utils: DEBUG: Making a GET request to http://localhost:5555/v1/client/admin/credentials
taskcluster.utils: DEBUG: HTTP Headers: {'Authorization': 'Hawk id="admin", ts="1435583406", nonce="a9Uown", ext="e30=", mac="4uGgikZgVIxQHBM0j807mNtYHhC2vRhOvwjWw52He9k="'}
taskcluster.utils: DEBUG: HTTP Payload: None (limit 100 char)
requests.packages.urllib3.connectionpool: INFO: Starting new HTTP connection (1): localhost
taskcluster.client: WARNING: Retrying because of: ('Connection aborted.', error(61, 'Connection refused'))
taskcluster.client: INFO: Sleeping 1.60 seconds for exponential backoff
hawk.client: DEBUG: parsed URL parts: {'hostname': 'localhost',
'path': '/v1/client/admin/credentials',
'port': 5555,
'query': '',
'resource': '/v1/client/admin/credentials',
'scheme': 'http'}
hawk.client: DEBUG: artifacts={'app': None,
'dlg': None,
'ext': 'e30=',
'hash': None,
'host': 'localhost',
'method': 'get',
'nonce': '2jA_Ck',
'port': 5555,
'resource': '/v1/client/admin/credentials',
'ts': 1435583408}
taskcluster.client: DEBUG: Making attempt 4
taskcluster.utils: DEBUG: Making a GET request to http://localhost:5555/v1/client/admin/credentials
taskcluster.utils: DEBUG: HTTP Headers: {'Authorization': 'Hawk id="admin", ts="1435583408", nonce="2jA_Ck", ext="e30=", mac="Ad/OLhf6nUu50JzXq6KaCNvpDm9JRmLT4mmoHY9abkU="'}
taskcluster.utils: DEBUG: HTTP Payload: None (limit 100 char)
requests.packages.urllib3.connectionpool: INFO: Starting new HTTP connection (1): localhost
taskcluster.client: WARNING: Retrying because of: ('Connection aborted.', error(61, 'Connection refused'))
taskcluster.client: INFO: Sleeping 2.50 seconds for exponential backoff
hawk.client: DEBUG: parsed URL parts: {'hostname': 'localhost',
'path': '/v1/client/admin/credentials',
'port': 5555,
'query': '',
'resource': '/v1/client/admin/credentials',
'scheme': 'http'}
hawk.client: DEBUG: artifacts={'app': None,
'dlg': None,
'ext': 'e30=',
'hash': None,
'host': 'localhost',
'method': 'get',
'nonce': 'YsptC5',
'port': 5555,
'resource': '/v1/client/admin/credentials',
'ts': 1435583410}
taskcluster.client: DEBUG: Making attempt 5
taskcluster.utils: DEBUG: Making a GET request to http://localhost:5555/v1/client/admin/credentials
taskcluster.utils: DEBUG: HTTP Headers: {'Authorization': 'Hawk id="admin", ts="1435583410", nonce="YsptC5", ext="e30=", mac="EogYSBpK4jaHQFsy1dLighyTIHde49qRcUeoq5kdQk0="'}
taskcluster.utils: DEBUG: HTTP Payload: None (limit 100 char)
requests.packages.urllib3.connectionpool: INFO: Starting new HTTP connection (1): localhost
--------------------- >> end captured logging << ---------------------
======================================================================
ERROR: test_mock_auth_works_with_small_scope (test.test_client.TestAuthenticationMockServer)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/Users/pmoore/git/taskcluster-client.py/test/test_client.py", line 496, in test_mock_auth_works_with_small_scope
result = client.getCredentials('admin')
File "/Users/pmoore/git/taskcluster-client.py/taskcluster/client.py", line 455, in apiCall
return self._makeApiCall(e, *args, **kwargs)
File "/Users/pmoore/git/taskcluster-client.py/taskcluster/client.py", line 232, in _makeApiCall
return self._makeHttpRequest(entry['method'], route, payload)
File "/Users/pmoore/git/taskcluster-client.py/taskcluster/client.py", line 382, in _makeHttpRequest
superExc=rerr
TaskclusterConnectionError: ('Failed to establish connection', ConnectionError(ProtocolError('Connection aborted.', error(61, 'Connection refused')),))
-------------------- >> begin captured logging << --------------------
taskcluster.client: DEBUG: credentials key scrubbed from logging output
taskcluster.client: DEBUG: {'baseUrl': 'http://localhost:5555/v1', 'maxRetries': 5, 'exchangePrefix': 'test/v1', 'signedUrlExpiration': 900}
taskcluster.client: DEBUG: Found a positional argument: admin
taskcluster.client: DEBUG: After processing positional arguments, we have: {'clientId': 'admin'}
taskcluster.client: DEBUG: After keyword arguments, we have: {'clientId': 'admin'}
taskcluster.client: DEBUG: Route is: client/admin/credentials
taskcluster.client: DEBUG: Full URL used is: http://localhost:5555/v1/client/admin/credentials
hawk.client: DEBUG: parsed URL parts: {'hostname': 'localhost',
'path': '/v1/client/admin/credentials',
'port': 5555,
'query': '',
'resource': '/v1/client/admin/credentials',
'scheme': 'http'}
hawk.client: DEBUG: artifacts={'app': None,
'dlg': None,
'ext': 'e30=',
'hash': None,
'host': 'localhost',
'method': 'get',
'nonce': 'g8hbFh',
'port': 5555,
'resource': '/v1/client/admin/credentials',
'ts': 1435583410}
taskcluster.client: DEBUG: Making attempt 0
taskcluster.utils: DEBUG: Making a GET request to http://localhost:5555/v1/client/admin/credentials
taskcluster.utils: DEBUG: HTTP Headers: {'Authorization': 'Hawk id="goodScope", ts="1435583410", nonce="g8hbFh", ext="e30=", mac="hmvTbdZuCLy2XxWMVh6ujetNecz27eTjyuBE3FX/4Ec="'}
taskcluster.utils: DEBUG: HTTP Payload: None (limit 100 char)
requests.packages.urllib3.connectionpool: INFO: Starting new HTTP connection (1): localhost
taskcluster.client: WARNING: Retrying because of: ('Connection aborted.', error(61, 'Connection refused'))
taskcluster.client: INFO: Sleeping 0.10 seconds for exponential backoff
hawk.client: DEBUG: parsed URL parts: {'hostname': 'localhost',
'path': '/v1/client/admin/credentials',
'port': 5555,
'query': '',
'resource': '/v1/client/admin/credentials',
'scheme': 'http'}
hawk.client: DEBUG: artifacts={'app': None,
'dlg': None,
'ext': 'e30=',
'hash': None,
'host': 'localhost',
'method': 'get',
'nonce': '5gOSvJ',
'port': 5555,
'resource': '/v1/client/admin/credentials',
'ts': 1435583410}
taskcluster.client: DEBUG: Making attempt 1
taskcluster.utils: DEBUG: Making a GET request to http://localhost:5555/v1/client/admin/credentials
taskcluster.utils: DEBUG: HTTP Headers: {'Authorization': 'Hawk id="goodScope", ts="1435583410", nonce="5gOSvJ", ext="e30=", mac="WXnzuQpSl6JMEr8kPjGSIBHqc5bkHlqqXDQftk2HUA0="'}
taskcluster.utils: DEBUG: HTTP Payload: None (limit 100 char)
requests.packages.urllib3.connectionpool: INFO: Starting new HTTP connection (1): localhost
taskcluster.client: WARNING: Retrying because of: ('Connection aborted.', error(61, 'Connection refused'))
taskcluster.client: INFO: Sleeping 0.40 seconds for exponential backoff
hawk.client: DEBUG: parsed URL parts: {'hostname': 'localhost',
'path': '/v1/client/admin/credentials',
'port': 5555,
'query': '',
'resource': '/v1/client/admin/credentials',
'scheme': 'http'}
hawk.client: DEBUG: artifacts={'app': None,
'dlg': None,
'ext': 'e30=',
'hash': None,
'host': 'localhost',
'method': 'get',
'nonce': 't9AZRK',
'port': 5555,
'resource': '/v1/client/admin/credentials',
'ts': 1435583411}
taskcluster.client: DEBUG: Making attempt 2
taskcluster.utils: DEBUG: Making a GET request to http://localhost:5555/v1/client/admin/credentials
taskcluster.utils: DEBUG: HTTP Headers: {'Authorization': 'Hawk id="goodScope", ts="1435583411", nonce="t9AZRK", ext="e30=", mac="bb6ijkG8pyjKbFi3khwc+n5IfN0Z6d+EuufJnd0ZtHM="'}
taskcluster.utils: DEBUG: HTTP Payload: None (limit 100 char)
requests.packages.urllib3.connectionpool: INFO: Starting new HTTP connection (1): localhost
taskcluster.client: WARNING: Retrying because of: ('Connection aborted.', error(61, 'Connection refused'))
taskcluster.client: INFO: Sleeping 0.90 seconds for exponential backoff
hawk.client: DEBUG: parsed URL parts: {'hostname': 'localhost',
'path': '/v1/client/admin/credentials',
'port': 5555,
'query': '',
'resource': '/v1/client/admin/credentials',
'scheme': 'http'}
hawk.client: DEBUG: artifacts={'app': None,
'dlg': None,
'ext': 'e30=',
'hash': None,
'host': 'localhost',
'method': 'get',
'nonce': 'A0I1Bm',
'port': 5555,
'resource': '/v1/client/admin/credentials',
'ts': 1435583411}
taskcluster.client: DEBUG: Making attempt 3
taskcluster.utils: DEBUG: Making a GET request to http://localhost:5555/v1/client/admin/credentials
taskcluster.utils: DEBUG: HTTP Headers: {'Authorization': 'Hawk id="goodScope", ts="1435583411", nonce="A0I1Bm", ext="e30=", mac="QrKKsO32hEbZw2u1AR5YJkT1UZF/aZU2k8Ckhcb/L58="'}
taskcluster.utils: DEBUG: HTTP Payload: None (limit 100 char)
requests.packages.urllib3.connectionpool: INFO: Starting new HTTP connection (1): localhost
taskcluster.client: WARNING: Retrying because of: ('Connection aborted.', error(61, 'Connection refused'))
taskcluster.client: INFO: Sleeping 1.60 seconds for exponential backoff
hawk.client: DEBUG: parsed URL parts: {'hostname': 'localhost',
'path': '/v1/client/admin/credentials',
'port': 5555,
'query': '',
'resource': '/v1/client/admin/credentials',
'scheme': 'http'}
hawk.client: DEBUG: artifacts={'app': None,
'dlg': None,
'ext': 'e30=',
'hash': None,
'host': 'localhost',
'method': 'get',
'nonce': '2t82ZT',
'port': 5555,
'resource': '/v1/client/admin/credentials',
'ts': 1435583413}
taskcluster.client: DEBUG: Making attempt 4
taskcluster.utils: DEBUG: Making a GET request to http://localhost:5555/v1/client/admin/credentials
taskcluster.utils: DEBUG: HTTP Headers: {'Authorization': 'Hawk id="goodScope", ts="1435583413", nonce="2t82ZT", ext="e30=", mac="jKrKMVmk3IARD35tAemD4zYCvpfDhBgTDZ/Yabtmd+c="'}
taskcluster.utils: DEBUG: HTTP Payload: None (limit 100 char)
requests.packages.urllib3.connectionpool: INFO: Starting new HTTP connection (1): localhost
taskcluster.client: WARNING: Retrying because of: ('Connection aborted.', error(61, 'Connection refused'))
taskcluster.client: INFO: Sleeping 2.50 seconds for exponential backoff
hawk.client: DEBUG: parsed URL parts: {'hostname': 'localhost',
'path': '/v1/client/admin/credentials',
'port': 5555,
'query': '',
'resource': '/v1/client/admin/credentials',
'scheme': 'http'}
hawk.client: DEBUG: artifacts={'app': None,
'dlg': None,
'ext': 'e30=',
'hash': None,
'host': 'localhost',
'method': 'get',
'nonce': '_Mu25m',
'port': 5555,
'resource': '/v1/client/admin/credentials',
'ts': 1435583416}
taskcluster.client: DEBUG: Making attempt 5
taskcluster.utils: DEBUG: Making a GET request to http://localhost:5555/v1/client/admin/credentials
taskcluster.utils: DEBUG: HTTP Headers: {'Authorization': 'Hawk id="goodScope", ts="1435583416", nonce="_Mu25m", ext="e30=", mac="3fa0LftclayB+gPa1l6xTnxMLAFCtYLgkVZ6zA/Thhs="'}
taskcluster.utils: DEBUG: HTTP Payload: None (limit 100 char)
requests.packages.urllib3.connectionpool: INFO: Starting new HTTP connection (1): localhost
--------------------- >> end captured logging << ---------------------
======================================================================
ERROR: test_mock_is_up (test.test_client.TestAuthenticationMockServer)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/Users/pmoore/git/taskcluster-client.py/test/test_client.py", line 473, in test_mock_is_up
s.connect(('127.0.0.1', self.port))
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/socket.py", line 224, in meth
return getattr(self._sock,name)(*args)
error: [Errno 61] Connection refused
----------------------------------------------------------------------
Ran 73 tests in -1435583381.809s
FAILED (errors=9)
setup.py test does not run properly
./test.sh: line 19: kill: (4534) - No such process
Failed to kill server
make: *** [test] Error 1
Flags: needinfo?(jhford)
Assignee | ||
Comment 3•9 years ago
|
||
the short answer is that python packaging is awful. Without using specific versions, we just use the latest and that might not work right. Too bad python doesn't understand how to have two versions of a module as a top level concept.
I've updated to requests 2.7.0. That's newer but still pinned down. I can't remember if there's a way to whitelist versions of the libraries in setup.py.
Flags: needinfo?(jhford)
Assignee | ||
Comment 4•9 years ago
|
||
Thanks Julien for helping me find the right syntax for specifying a range of known-good versions of the package.
I've released 0.0.19 which will work with your version of requests, since it's between 2.4.3 and 2.7.0, which are the two known-good versions.
Status: NEW → RESOLVED
Closed: 9 years ago
Resolution: --- → FIXED
Updated•9 years ago
|
status-firefox42:
affected → ---
Component: TaskCluster → General
Product: Testing → Taskcluster
Target Milestone: --- → mozilla41
Comment 5•9 years ago
|
||
Resetting Version and Target Milestone that accidentally got changed...
Target Milestone: mozilla41 → ---
Version: Trunk → unspecified
Updated•9 years ago
|
Assignee: nobody → jhford
Summary: python-client: taskcluster requires an exacte version for requests library (2.4.3) → python-client: taskcluster requires an exact version for requests library (2.4.3)
You need to log in
before you can comment on or make changes to this bug.
Description
•