threefoldtecharchive / 0-templates

0-robot templates
Apache License 2.0
1 stars 1 forks source link

Webgateway fails to install properly on first go #298

Open zaibon opened 5 years ago

zaibon commented 5 years ago

Installing the webgateway took 2 tries before it installed properly with only reporting RunTimeError

I think this is related to the treafik and coredns connection errors we had before (trying to connect too early and failing on that)

In [11]: gateway = robot.services.create('web_gateway', service_name="gateway-tlre-1", data={
    ...: 
    ...:     'nics': [{'name': 'zerotier', 'type': 'zerotier', 'ztClient': 'zt_chrisvdg', 'id
    ...: ': '565799d8f674dce4'}],
    ...:     'farmerIyoOrg': 'tlre',
    ...:     'nrEtcds': 4,
    ...:     'publicNodes': ['ac1f6b457b4c'],
    ...:     'publicIps': ['185.170.17.38'],
    ...:     'hostNetwork': True,
    ...:     'domain': 'archive02.bancadati.ch',
    ...: })

In [12]: 
    ...: t = gateway.schedule_action('install').wait(die=True)
    ...: t = gateway.schedule_action('start').wait(die=True)
    ...: 
    ...: 

---------------------------------------------------------------------------
RuntimeError                              Traceback (most recent call last)
/usr/local/bin/js_shell in <module>()
      1 
----> 2 t = gateway.schedule_action('install').wait(die=True)
      3 t = gateway.schedule_action('start').wait(die=True)

/opt/code/github/threefoldtech/0-robot/zerorobot/task/task.py in wait(self, timeout, die)
    139                 logger.critical('task is in error state, but no eco')
    140             else:
--> 141                 raise RuntimeError(self.eco.message)
    142 
    143         return self

RuntimeError: 

In [13]: 

In [13]: 
    ...: t = gateway.schedule_action('install').wait(die=True)
---------------------------------------------------------------------------
RuntimeError                              Traceback (most recent call last)
/usr/local/bin/js_shell in <module>()
      1 
----> 2 t = gateway.schedule_action('install').wait(die=True)

/opt/code/github/threefoldtech/0-robot/zerorobot/task/task.py in wait(self, timeout, die)
    139                 logger.critical('task is in error state, but no eco')
    140             else:
--> 141                 raise RuntimeError(self.eco.message)
    142 
    143         return self

RuntimeError: 

In [14]: 
    ...: t = gateway.schedule_action('install').wait(die=True)

In [15]: t.state
Out[15]: 'ok'

farmer robot stacktraces


web_gateway) - ERROR    - error executing action install:
Traceback (most recent call last):
  File "/opt/code/github/threefoldtech/0-robot/zerorobot/task/task.py", line 81, in execute
    self._result = self._execute_greenlet.get(block=True, timeout=None)
  File "src/gevent/greenlet.py", line 709, in gevent._greenlet.Greenlet.get
  File "src/gevent/greenlet.py", line 317, in gevent._greenlet.Greenlet._raise_exception
  File "/usr/local/lib/python3.5/dist-packages/gevent/_compat.py", line 47, in reraise
    raise value.with_traceback(tb)
  File "src/gevent/greenlet.py", line 766, in gevent._greenlet.Greenlet.run
  File "/opt/code/github/threefoldtech/0-templates/templates/web_gateway/web_gateway.py", line 119, in install
    self._install_traefik(self._traefik_endpoint())
  File "/opt/code/github/threefoldtech/0-templates/templates/web_gateway/web_gateway.py", line 184, in _install_traefik
    traefik.schedule_action('start').wait(die=True)
  File "/opt/code/github/threefoldtech/0-robot/zerorobot/task/task.py", line 141, in wait
    raise RuntimeError(self.eco.message)
RuntimeError

... 

[Thu14 10:57] - base.py           :216 :gateway-tlre-1-e4f6d464-d9a4-4b45-bc66-68d5e7d3cd90 (web_gateway) - ERROR    - error executing action install:
Traceback (most recent call last):
  File "/opt/code/github/threefoldtech/0-robot/zerorobot/task/task.py", line 81, in execute
    self._result = self._execute_greenlet.get(block=True, timeout=None)
  File "src/gevent/greenlet.py", line 709, in gevent._greenlet.Greenlet.get
  File "src/gevent/greenlet.py", line 317, in gevent._greenlet.Greenlet._raise_exception
  File "/usr/local/lib/python3.5/dist-packages/gevent/_compat.py", line 47, in reraise
    raise value.with_traceback(tb)
  File "src/gevent/greenlet.py", line 766, in gevent._greenlet.Greenlet.run
  File "/opt/code/github/threefoldtech/0-templates/templates/web_gateway/web_gateway.py", line 119, in install
    self._install_traefik(self._traefik_endpoint())
  File "/opt/code/github/threefoldtech/0-templates/templates/web_gateway/web_gateway.py", line 184, in _install_traefik
    traefik.schedule_action('start').wait(die=True)
  File "/opt/code/github/threefoldtech/0-robot/zerorobot/task/task.py", line 141, in wait
    raise RuntimeError(self.eco.message)
RuntimeError