============================================= test session starts =============================================
platform darwin -- Python 3.7.2, pytest-4.3.0, py-1.8.0, pluggy-0.9.0
kubetest config file: default
rootdir: <>/kamus/tests/crd-controller, inifile:
plugins: kubetest-0.0.3
collected 0 items / 1 errors
2019-03-17 09:37:50,633 WARNING Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x111807ba8>: Failed to establish a new connection: [Errno 61] Connection refused')': /api/v1/namespaces
2019-03-17 09:37:50,635 WARNING Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x111807b38>: Failed to establish a new connection: [Errno 61] Connection refused')': /api/v1/namespaces
2019-03-17 09:37:50,636 WARNING Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x111807d68>: Failed to establish a new connection: [Errno 61] Connection refused')': /api/v1/namespaces
Failed to clean up kubetest artifacts from cluster on keyboard interrupt. You may need to manually remove items from your cluster. Check for namespaces with the "kubetest-" prefix and cluster role bindings with the "kubetest:" prefix. (HTTPSConnectionPool(host='localhost', port=443): Max retries exceeded with url: /api/v1/namespaces (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x111807278>: Failed to establish a new connection: [Errno 61] Connection refused')))
=================================================== ERRORS ====================================================
__________________________________________ ERROR collecting test.py ___________________________________________
test.py:1: in <module>
@pytest.mark.applymanifests('service-account.yaml')
E NameError: name 'pytest' is not defined
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Interrupted: 1 errors during collection !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
=========================================== 1 error in 0.51 seconds ===========================================
(env) omerl1-mac:crd-controller omerl$ pytest test.py
============================================= test session starts =============================================
platform darwin -- Python 3.7.2, pytest-4.3.0, py-1.8.0, pluggy-0.9.0
kubetest config file: default
rootdir: /Users/omerl/dev/kamus/tests/crd-controller, inifile:
plugins: kubetest-0.0.3
collected 1 item
test.py EE [100%]
=================================================== ERRORS ====================================================
______________________________________ ERROR at setup of test_deployment ______________________________________
item = <Function test_deployment>
def pytest_runtest_setup(item):
"""Run setup actions to prepare the test case.
See Also:
https://docs.pytest.org/en/latest/reference.html#_pytest.hookspec.pytest_runtest_setup
"""
# Register a new test case with the manager and setup the test case state.
test_case = manager.new_test(
node_id=item.nodeid,
test_name=item.name,
)
# FIXME (etd) - not sure this is really what we want to do. does it make sense
# to entirely disable the plugin just be specifying the disable flag? probably..
# but there must be a better way than adding this check (perhaps unregistering the
# plugin in the pytest_configure hook?)
disabled = item.config.getoption('kube_disable')
if not disabled:
# Register test case state based on markers on the test case
test_case.register_rolebindings(
*markers.rolebindings_from_marker(item, test_case.ns)
)
test_case.register_clusterrolebindings(
*markers.clusterrolebindings_from_marker(item, test_case.ns)
)
# Apply manifests for the test case, if any are specified.
> markers.apply_manifest_from_marker(item, test_case)
env/lib/python3.7/site-packages/kubetest/plugin.py:197:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
env/lib/python3.7/site-packages/kubetest/markers.py:94: in apply_manifest_from_marker
objs = load_path(dir_path)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
path = '/Users/omerl/dev/kamus/tests/crd-controller/service-account.yaml'
def load_path(path):
"""Load all of the Kubernetes YAML manifest files found in the
specified directory path.
Args:
path (str): The path to the directory of manifest files.
Returns:
list: A list of all the Kubernetes objects loaded from
manifest file.
Raises:
ValueError: The provided path is not a directory.
"""
if not os.path.isdir(path):
> raise ValueError('{} is not a directory'.format(path))
E ValueError: /Users/omerl/dev/kamus/tests/crd-controller/service-account.yaml is not a directory
env/lib/python3.7/site-packages/kubetest/manifest.py:53: ValueError
____________________________________ ERROR at teardown of test_deployment _____________________________________
self = <urllib3.connection.VerifiedHTTPSConnection object at 0x112239f98>
def _new_conn(self):
""" Establish a socket connection and set nodelay settings on it.
:return: New socket connection.
"""
extra_kw = {}
if self.source_address:
extra_kw['source_address'] = self.source_address
if self.socket_options:
extra_kw['socket_options'] = self.socket_options
try:
conn = connection.create_connection(
> (self._dns_host, self.port), self.timeout, **extra_kw)
env/lib/python3.7/site-packages/urllib3/connection.py:159:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
address = ('localhost', 443), timeout = None, source_address = None, socket_options = [(6, 1, 1)]
def create_connection(address, timeout=socket._GLOBAL_DEFAULT_TIMEOUT,
source_address=None, socket_options=None):
"""Connect to *address* and return the socket object.
Convenience function. Connect to *address* (a 2-tuple ``(host,
port)``) and return the socket object. Passing the optional
*timeout* parameter will set the timeout on the socket instance
before attempting to connect. If no *timeout* is supplied, the
global default timeout setting returned by :func:`getdefaulttimeout`
is used. If *source_address* is set it must be a tuple of (host, port)
for the socket to bind as a source address before making the connection.
An host of '' or port 0 tells the OS to use the default.
"""
host, port = address
if host.startswith('['):
host = host.strip('[]')
err = None
# Using the value from allowed_gai_family() in the context of getaddrinfo lets
# us select whether to work with IPv4 DNS records, IPv6 records, or both.
# The original create_connection function always returns all records.
family = allowed_gai_family()
for res in socket.getaddrinfo(host, port, family, socket.SOCK_STREAM):
af, socktype, proto, canonname, sa = res
sock = None
try:
sock = socket.socket(af, socktype, proto)
# If provided, set socket level options before connecting.
_set_socket_options(sock, socket_options)
if timeout is not socket._GLOBAL_DEFAULT_TIMEOUT:
sock.settimeout(timeout)
if source_address:
sock.bind(source_address)
sock.connect(sa)
return sock
except socket.error as e:
err = e
if sock is not None:
sock.close()
sock = None
if err is not None:
> raise err
env/lib/python3.7/site-packages/urllib3/util/connection.py:80:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
address = ('localhost', 443), timeout = None, source_address = None, socket_options = [(6, 1, 1)]
def create_connection(address, timeout=socket._GLOBAL_DEFAULT_TIMEOUT,
source_address=None, socket_options=None):
"""Connect to *address* and return the socket object.
Convenience function. Connect to *address* (a 2-tuple ``(host,
port)``) and return the socket object. Passing the optional
*timeout* parameter will set the timeout on the socket instance
before attempting to connect. If no *timeout* is supplied, the
global default timeout setting returned by :func:`getdefaulttimeout`
is used. If *source_address* is set it must be a tuple of (host, port)
for the socket to bind as a source address before making the connection.
An host of '' or port 0 tells the OS to use the default.
"""
host, port = address
if host.startswith('['):
host = host.strip('[]')
err = None
# Using the value from allowed_gai_family() in the context of getaddrinfo lets
# us select whether to work with IPv4 DNS records, IPv6 records, or both.
# The original create_connection function always returns all records.
family = allowed_gai_family()
for res in socket.getaddrinfo(host, port, family, socket.SOCK_STREAM):
af, socktype, proto, canonname, sa = res
sock = None
try:
sock = socket.socket(af, socktype, proto)
# If provided, set socket level options before connecting.
_set_socket_options(sock, socket_options)
if timeout is not socket._GLOBAL_DEFAULT_TIMEOUT:
sock.settimeout(timeout)
if source_address:
sock.bind(source_address)
> sock.connect(sa)
E ConnectionRefusedError: [Errno 61] Connection refused
env/lib/python3.7/site-packages/urllib3/util/connection.py:70: ConnectionRefusedError
During handling of the above exception, another exception occurred:
self = <urllib3.connectionpool.HTTPSConnectionPool object at 0x112239668>, method = 'DELETE'
url = '/api/v1/namespaces/kubetest-test-deployment-1552808334', body = '{}'
headers = {'Accept': 'application/json', 'Content-Type': 'application/json', 'User-Agent': 'Swagger-Codegen/8.0.1/python'}
retries = Retry(total=0, connect=None, read=None, redirect=None, status=None), redirect = False
assert_same_host = False, timeout = None, pool_timeout = None, release_conn = True, chunked = False
body_pos = None
response_kw = {'preload_content': True, 'request_url': 'https://localhost/api/v1/namespaces/kubetest-test-deployment-1552808334'}
conn = None, release_this_conn = True, err = None, clean_exit = False
timeout_obj = <urllib3.util.timeout.Timeout object at 0x112239cf8>, is_new_proxy_conn = False
def urlopen(self, method, url, body=None, headers=None, retries=None,
redirect=True, assert_same_host=True, timeout=_Default,
pool_timeout=None, release_conn=None, chunked=False,
body_pos=None, **response_kw):
"""
Get a connection from the pool and perform an HTTP request. This is the
lowest level call for making a request, so you'll need to specify all
the raw details.
.. note::
More commonly, it's appropriate to use a convenience method provided
by :class:`.RequestMethods`, such as :meth:`request`.
.. note::
`release_conn` will only behave as expected if
`preload_content=False` because we want to make
`preload_content=False` the default behaviour someday soon without
breaking backwards compatibility.
:param method:
HTTP request method (such as GET, POST, PUT, etc.)
:param body:
Data to send in the request body (useful for creating
POST requests, see HTTPConnectionPool.post_url for
more convenience).
:param headers:
Dictionary of custom headers to send, such as User-Agent,
If-None-Match, etc. If None, pool headers are used. If provided,
these headers completely replace any pool-specific headers.
:param retries:
Configure the number of retries to allow before raising a
:class:`~urllib3.exceptions.MaxRetryError` exception.
Pass ``None`` to retry until you receive a response. Pass a
:class:`~urllib3.util.retry.Retry` object for fine-grained control
over different types of retries.
Pass an integer number to retry connection errors that many times,
but no other types of errors. Pass zero to never retry.
If ``False``, then retries are disabled and any exception is raised
immediately. Also, instead of raising a MaxRetryError on redirects,
the redirect response will be returned.
:type retries: :class:`~urllib3.util.retry.Retry`, False, or an int.
:param redirect:
If True, automatically handle redirects (status codes 301, 302,
303, 307, 308). Each redirect counts as a retry. Disabling retries
will disable redirect, too.
:param assert_same_host:
If ``True``, will make sure that the host of the pool requests is
consistent else will raise HostChangedError. When False, you can
use the pool on an HTTP proxy and request foreign hosts.
:param timeout:
If specified, overrides the default timeout for this one
request. It may be a float (in seconds) or an instance of
:class:`urllib3.util.Timeout`.
:param pool_timeout:
If set and the pool is set to block=True, then this method will
block for ``pool_timeout`` seconds and raise EmptyPoolError if no
connection is available within the time period.
:param release_conn:
If False, then the urlopen call will not release the connection
back into the pool once a response is received (but will release if
you read the entire contents of the response such as when
`preload_content=True`). This is useful if you're not preloading
the response's content immediately. You will need to call
``r.release_conn()`` on the response ``r`` to return the connection
back into the pool. If None, it takes the value of
``response_kw.get('preload_content', True)``.
:param chunked:
If True, urllib3 will send the body using chunked transfer
encoding. Otherwise, urllib3 will send the body using the standard
content-length form. Defaults to False.
:param int body_pos:
Position to seek to in file-like body in the event of a retry or
redirect. Typically this won't need to be set because urllib3 will
auto-populate the value when needed.
:param \\**response_kw:
Additional parameters are passed to
:meth:`urllib3.response.HTTPResponse.from_httplib`
"""
if headers is None:
headers = self.headers
if not isinstance(retries, Retry):
retries = Retry.from_int(retries, redirect=redirect, default=self.retries)
if release_conn is None:
release_conn = response_kw.get('preload_content', True)
# Check host
if assert_same_host and not self.is_same_host(url):
raise HostChangedError(self, url, retries)
conn = None
# Track whether `conn` needs to be released before
# returning/raising/recursing. Update this variable if necessary, and
# leave `release_conn` constant throughout the function. That way, if
# the function recurses, the original value of `release_conn` will be
# passed down into the recursive call, and its value will be respected.
#
# See issue #651 [1] for details.
#
# [1] <https://github.com/shazow/urllib3/issues/651>
release_this_conn = release_conn
# Merge the proxy headers. Only do this in HTTP. We have to copy the
# headers dict so we can safely change it without those changes being
# reflected in anyone else's copy.
if self.scheme == 'http':
headers = headers.copy()
headers.update(self.proxy_headers)
# Must keep the exception bound to a separate variable or else Python 3
# complains about UnboundLocalError.
err = None
# Keep track of whether we cleanly exited the except block. This
# ensures we do proper cleanup in finally.
clean_exit = False
# Rewind body position, if needed. Record current position
# for future rewinds in the event of a redirect/retry.
body_pos = set_file_position(body, body_pos)
try:
# Request a connection from the queue.
timeout_obj = self._get_timeout(timeout)
conn = self._get_conn(timeout=pool_timeout)
conn.timeout = timeout_obj.connect_timeout
is_new_proxy_conn = self.proxy is not None and not getattr(conn, 'sock', None)
if is_new_proxy_conn:
self._prepare_proxy(conn)
# Make the request on the httplib connection object.
httplib_response = self._make_request(conn, method, url,
timeout=timeout_obj,
body=body, headers=headers,
> chunked=chunked)
env/lib/python3.7/site-packages/urllib3/connectionpool.py:600:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <urllib3.connectionpool.HTTPSConnectionPool object at 0x112239668>
conn = <urllib3.connection.VerifiedHTTPSConnection object at 0x112239f98>, method = 'DELETE'
url = '/api/v1/namespaces/kubetest-test-deployment-1552808334'
timeout = <urllib3.util.timeout.Timeout object at 0x112239cf8>, chunked = False
httplib_request_kw = {'body': '{}', 'headers': {'Accept': 'application/json', 'Content-Type': 'application/json', 'User-Agent': 'Swagger-Codegen/8.0.1/python'}}
timeout_obj = <urllib3.util.timeout.Timeout object at 0x112239c18>
def _make_request(self, conn, method, url, timeout=_Default, chunked=False,
**httplib_request_kw):
"""
Perform a request on a given urllib connection object taken from our
pool.
:param conn:
a connection from one of our connection pools
:param timeout:
Socket timeout in seconds for the request. This can be a
float or integer, which will set the same timeout value for
the socket connect and the socket read, or an instance of
:class:`urllib3.util.Timeout`, which gives you more fine-grained
control over your timeouts.
"""
self.num_requests += 1
timeout_obj = self._get_timeout(timeout)
timeout_obj.start_connect()
conn.timeout = timeout_obj.connect_timeout
# Trigger any extra validation we need to do.
try:
> self._validate_conn(conn)
env/lib/python3.7/site-packages/urllib3/connectionpool.py:343:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <urllib3.connectionpool.HTTPSConnectionPool object at 0x112239668>
conn = <urllib3.connection.VerifiedHTTPSConnection object at 0x112239f98>
def _validate_conn(self, conn):
"""
Called right before a request is made, after the socket is created.
"""
super(HTTPSConnectionPool, self)._validate_conn(conn)
# Force connect early to allow us to validate the connection.
if not getattr(conn, 'sock', None): # AppEngine might not have `.sock`
> conn.connect()
env/lib/python3.7/site-packages/urllib3/connectionpool.py:839:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <urllib3.connection.VerifiedHTTPSConnection object at 0x112239f98>
def connect(self):
# Add certificate verification
> conn = self._new_conn()
env/lib/python3.7/site-packages/urllib3/connection.py:301:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <urllib3.connection.VerifiedHTTPSConnection object at 0x112239f98>
def _new_conn(self):
""" Establish a socket connection and set nodelay settings on it.
:return: New socket connection.
"""
extra_kw = {}
if self.source_address:
extra_kw['source_address'] = self.source_address
if self.socket_options:
extra_kw['socket_options'] = self.socket_options
try:
conn = connection.create_connection(
(self._dns_host, self.port), self.timeout, **extra_kw)
except SocketTimeout as e:
raise ConnectTimeoutError(
self, "Connection to %s timed out. (connect timeout=%s)" %
(self.host, self.timeout))
except SocketError as e:
raise NewConnectionError(
> self, "Failed to establish a new connection: %s" % e)
E urllib3.exceptions.NewConnectionError: <urllib3.connection.VerifiedHTTPSConnection object at 0x112239f98>: Failed to establish a new connection: [Errno 61] Connection refused
env/lib/python3.7/site-packages/urllib3/connection.py:168: NewConnectionError
During handling of the above exception, another exception occurred:
item = <Function test_deployment>
def pytest_runtest_teardown(item):
"""Run teardown actions to clean up the test client.
See Also:
https://docs.pytest.org/en/latest/reference.html#_pytest.hookspec.pytest_runtest_teardown
"""
disabled = item.config.getoption('kube_disable')
if not disabled:
> manager.teardown(item.nodeid)
env/lib/python3.7/site-packages/kubetest/plugin.py:208:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
env/lib/python3.7/site-packages/kubetest/manager.py:343: in teardown
test_case.teardown()
env/lib/python3.7/site-packages/kubetest/manager.py:185: in teardown
self.namespace.delete()
env/lib/python3.7/site-packages/kubetest/objects/namespace.py:91: in delete
body=options,
env/lib/python3.7/site-packages/kubernetes/client/apis/core_v1_api.py:9084: in delete_namespace
(data) = self.delete_namespace_with_http_info(name, body, **kwargs)
env/lib/python3.7/site-packages/kubernetes/client/apis/core_v1_api.py:9181: in delete_namespace_with_http_info
collection_formats=collection_formats)
env/lib/python3.7/site-packages/kubernetes/client/api_client.py:321: in call_api
_return_http_data_only, collection_formats, _preload_content, _request_timeout)
env/lib/python3.7/site-packages/kubernetes/client/api_client.py:155: in __call_api
_request_timeout=_request_timeout)
env/lib/python3.7/site-packages/kubernetes/client/api_client.py:387: in request
body=body)
env/lib/python3.7/site-packages/kubernetes/client/rest.py:256: in DELETE
body=body)
env/lib/python3.7/site-packages/kubernetes/client/rest.py:166: in request
headers=headers)
env/lib/python3.7/site-packages/urllib3/request.py:68: in request
**urlopen_kw)
env/lib/python3.7/site-packages/urllib3/request.py:89: in request_encode_url
return self.urlopen(method, url, **extra_kw)
env/lib/python3.7/site-packages/urllib3/poolmanager.py:323: in urlopen
response = conn.urlopen(method, u.request_uri, **kw)
env/lib/python3.7/site-packages/urllib3/connectionpool.py:667: in urlopen
**response_kw)
env/lib/python3.7/site-packages/urllib3/connectionpool.py:667: in urlopen
**response_kw)
env/lib/python3.7/site-packages/urllib3/connectionpool.py:667: in urlopen
**response_kw)
env/lib/python3.7/site-packages/urllib3/connectionpool.py:638: in urlopen
_stacktrace=sys.exc_info()[2])
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = Retry(total=0, connect=None, read=None, redirect=None, status=None), method = 'DELETE'
url = '/api/v1/namespaces/kubetest-test-deployment-1552808334', response = None
error = NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x112239f98>: Failed to establish a new connection: [Errno 61] Connection refused')
_pool = <urllib3.connectionpool.HTTPSConnectionPool object at 0x112239668>
_stacktrace = <traceback object at 0x11222b8c8>
def increment(self, method=None, url=None, response=None, error=None,
_pool=None, _stacktrace=None):
""" Return a new Retry object with incremented retry counters.
:param response: A response object, or None, if the server did not
return a response.
:type response: :class:`~urllib3.response.HTTPResponse`
:param Exception error: An error encountered during the request, or
None if the response was received successfully.
:return: A new ``Retry`` object.
"""
if self.total is False and error:
# Disabled, indicate to re-raise the error.
raise six.reraise(type(error), error, _stacktrace)
total = self.total
if total is not None:
total -= 1
connect = self.connect
read = self.read
redirect = self.redirect
status_count = self.status
cause = 'unknown'
status = None
redirect_location = None
if error and self._is_connection_error(error):
# Connect retry?
if connect is False:
raise six.reraise(type(error), error, _stacktrace)
elif connect is not None:
connect -= 1
elif error and self._is_read_error(error):
# Read retry?
if read is False or not self._is_method_retryable(method):
raise six.reraise(type(error), error, _stacktrace)
elif read is not None:
read -= 1
elif response and response.get_redirect_location():
# Redirect retry?
if redirect is not None:
redirect -= 1
cause = 'too many redirects'
redirect_location = response.get_redirect_location()
status = response.status
else:
# Incrementing because of a server error like a 500 in
# status_forcelist and a the given method is in the whitelist
cause = ResponseError.GENERIC_ERROR
if response and response.status:
if status_count is not None:
status_count -= 1
cause = ResponseError.SPECIFIC_ERROR.format(
status_code=response.status)
status = response.status
history = self.history + (RequestHistory(method, url, error, status, redirect_location),)
new_retry = self.new(
total=total,
connect=connect, read=read, redirect=redirect, status=status_count,
history=history)
if new_retry.is_exhausted():
> raise MaxRetryError(_pool, url, error or ResponseError(cause))
E urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='localhost', port=443): Max retries exceeded with url: /api/v1/namespaces/kubetest-test-deployment-1552808334 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x112239f98>: Failed to establish a new connection: [Errno 61] Connection refused'))
env/lib/python3.7/site-packages/urllib3/util/retry.py:398: MaxRetryError
------------------------------------------ Captured stderr teardown -------------------------------------------
2019-03-17 09:38:54,770 WARNING Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x112239a58>: Failed to establish a new connection: [Errno 61] Connection refused')': /api/v1/namespaces/kubetest-test-deployment-1552808334
2019-03-17 09:38:54,773 WARNING Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x112239f60>: Failed to establish a new connection: [Errno 61] Connection refused')': /api/v1/namespaces/kubetest-test-deployment-1552808334
2019-03-17 09:38:54,776 WARNING Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x112239e10>: Failed to establish a new connection: [Errno 61] Connection refused')': /api/v1/namespaces/kubetest-test-deployment-1552808334
-------------------------------------------- Captured log teardown --------------------------------------------
api_object.py 105 WARNING unknown version (None), falling back to preferred version
connectionpool.py 662 WARNING Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x112239a58>: Failed to establish a new connection: [Errno 61] Connection refused')': /api/v1/namespaces/kubetest-test-deployment-1552808334
connectionpool.py 662 WARNING Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x112239f60>: Failed to establish a new connection: [Errno 61] Connection refused')': /api/v1/namespaces/kubetest-test-deployment-1552808334
connectionpool.py 662 WARNING Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x112239e10>: Failed to establish a new connection: [Errno 61] Connection refused')': /api/v1/namespaces/kubetest-test-deployment-1552808334
=========================================== 2 error in 1.37 seconds ===========================================
Exception ignored in: <function ApiClient.__del__ at 0x111480c80>
Traceback (most recent call last):
File "<>/kamus/tests/crd-controller/env/lib/python3.7/site-packages/kubernetes/client/api_client.py", line 78, in __del__
File "/usr/local/Cellar/python/3.7.2_2/Frameworks/Python.framework/Versions/3.7/lib/python3.7/multiprocessing/pool.py", line 556, in join
File "/usr/local/Cellar/python/3.7.2_2/Frameworks/Python.framework/Versions/3.7/lib/python3.7/threading.py", line 1028, in join
TypeError: 'NoneType' object is not callable