components/openstack/cloudbase-init/patches/url-timeout.patch
changeset 7080 49b4c7a1ceca
equal deleted inserted replaced
7079:315c9793dc1e 7080:49b4c7a1ceca
       
     1 Add timeout to prevent cloudbase-init service being stuck in offline state
       
     2 for long time.
       
     3 This has not been committed upstream, but has been filed in launchpad:
       
     4 
       
     5 https://bugs.launchpad.net/cloudbase-init/+bug/1630006
       
     6 
       
     7 --- cloudbase-init-0.9.9/cloudbaseinit/metadata/services/httpservice.py.orig	2016-09-06 14:29:04.416253079 +0000
       
     8 +++ cloudbase-init-0.9.9/cloudbaseinit/metadata/services/httpservice.py	2016-09-06 14:39:14.807656387 +0000
       
     9 @@ -58,7 +58,7 @@
       
    10  
       
    11      def _get_response(self, req):
       
    12          try:
       
    13 -            return request.urlopen(req)
       
    14 +            return request.urlopen(req, timeout=1)
       
    15          except error.HTTPError as ex:
       
    16              if ex.code == 404:
       
    17                  raise base.NotExistingMetadataException()
       
    18 --- cloudbase-init-0.9.9/cloudbaseinit/metadata/services/ec2service.py.orig	2016-09-06 14:29:11.956815039 +0000
       
    19 +++ cloudbase-init-0.9.9/cloudbaseinit/metadata/services/ec2service.py	2016-09-06 14:40:09.253600964 +0000
       
    20 @@ -60,7 +60,7 @@
       
    21  
       
    22      def _get_response(self, req):
       
    23          try:
       
    24 -            return request.urlopen(req)
       
    25 +            return request.urlopen(req, timeout=1)
       
    26          except error.HTTPError as ex:
       
    27              if ex.code == 404:
       
    28                  raise base.NotExistingMetadataException()
       
    29 --- cloudbase-init-0.9.9/cloudbaseinit/metadata/services/maasservice.py.orig	2016-09-06 14:29:26.753303424 +0000
       
    30 +++ cloudbase-init-0.9.9/cloudbaseinit/metadata/services/maasservice.py	2016-09-06 14:40:40.454202962 +0000
       
    31 @@ -79,7 +79,7 @@
       
    32  
       
    33      def _get_response(self, req):
       
    34          try:
       
    35 -            return request.urlopen(req)
       
    36 +            return request.urlopen(req, timeout=1)
       
    37          except error.HTTPError as ex:
       
    38              if ex.code == 404:
       
    39                  raise base.NotExistingMetadataException()
       
    40 --- cloudbase-init-0.9.9/cloudbaseinit/metadata/services/cloudstack.py.orig	2016-09-22 14:25:30.411026974 +0000
       
    41 +++ cloudbase-init-0.9.9/cloudbaseinit/metadata/services/cloudstack.py	2016-09-22 14:26:29.615140081 +0000
       
    42 @@ -90,7 +90,7 @@
       
    43          """Get content for received url."""
       
    44          LOG.debug('Getting metadata from:  %s', url)
       
    45          request = urllib.request.Request(url, **kwargs)
       
    46 -        response = urllib.request.urlopen(request)
       
    47 +        response = urllib.request.urlopen(request, timeout=1)
       
    48          return response.read()
       
    49  
       
    50      def _get_data(self, path):