как запустить внешний скрипт python в качестве задачи сельдерея, взяв имя скрипта с помощью фляжного сервера

Я использую celery-flask для постановки в очередь и мониторинга задачи, у меня есть от четырех до пяти сценариев, и я хочу, чтобы эти сценарии выполнялись как задача celery, передавая сценарий через сервер flask, а затем отслеживая их состояние. Вот код, который я написал до сих пор:

 @app.route('/script_path/<script_name>') # flask server
 def taking_script_name(script_name):
     calling_script.delay(script_name)
     return 'i have sent an async script request'



 @celery.task
 def calling_script(script_name):
   result = script_name
   return {'result':result}

я хочу, чтобы статус сценария, переданный в результате, возвращался в задаче сельдерея.

если у кого-нибудь есть другое предложение, как запустить внешнюю задачу как задачу сельдерея. заранее спасибо.


person Speedy mastro    schedule 04.07.2019    source источник
comment
вы не можете сразу вернуть результат задачи сельдерея, потому что это асинхронная задача. обратитесь к этому ответу, я чувствую, что он похож на ваш   -  person Murali    schedule 04.07.2019
comment
спасибо за ответ, все в порядке, но мой реальный вопрос заключается в том, как запустить внешний скрипт в качестве задачи сельдерея и вернуть его статус, как вы предложили.   -  person Speedy mastro    schedule 05.07.2019