You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
36 lines
1008 B
36 lines
1008 B
6 years ago
|
#!/usr/bin/env python3
|
||
|
|
||
|
import time
|
||
|
from multiprocessing import Process
|
||
|
|
||
|
import selfdrive.crash as crash
|
||
|
from common.params import Params
|
||
|
from selfdrive.manager import launcher
|
||
|
from selfdrive.swaglog import cloudlog
|
||
|
from selfdrive.version import version, dirty
|
||
|
|
||
|
ATHENA_MGR_PID_PARAM = "AthenadPid"
|
||
|
|
||
|
def main():
|
||
|
params = Params()
|
||
|
dongle_id = params.get("DongleId").decode('utf-8')
|
||
|
cloudlog.bind_global(dongle_id=dongle_id, version=version, dirty=dirty, is_eon=True)
|
||
|
crash.bind_user(id=dongle_id)
|
||
|
crash.bind_extra(version=version, dirty=dirty, is_eon=True)
|
||
|
crash.install()
|
||
|
|
||
|
try:
|
||
|
while 1:
|
||
|
cloudlog.info("starting athena daemon")
|
||
|
proc = Process(name='athenad', target=launcher, args=('selfdrive.athena.athenad',))
|
||
|
proc.start()
|
||
|
proc.join()
|
||
|
cloudlog.event("athenad exited", exitcode=proc.exitcode)
|
||
|
time.sleep(5)
|
||
|
except:
|
||
|
cloudlog.exception("manage_athenad.exception")
|
||
|
finally:
|
||
|
params.delete(ATHENA_MGR_PID_PARAM)
|
||
|
|
||
|
if __name__ == '__main__':
|
||
|
main()
|