Как получить фактическое возвращаемое значение вместо id задачи в celery?

У меня есть приложение django для запуска некоторых команд linux, принимаемых из формы. Я реализую как реальный процесс, так и процесс с использованием celery.

Я передаю аргументы задаче celery и хочу получить от нее возвращаемое значение, но получаю только id задачи.

Это я запускаю задачу celery в views.py:

if 'celeryform' in request.POST:
        command = request.POST.get('command')
        rep = request.POST.get('rep')
        dur = request.POST.get('dur')
        cmd ='powershell -command '+command 
        result=celery_run.delay(cmd,rep,dur)
        context = {'output':result}
        return render(request,'home.html',context) 

Это мой tasks.py:

from __future__ import absolute_import,unicode_literals
from celery import Celery, shared_task
import time,subprocess

app = Celery('tasks', broker='redis://localhost:6379',include=['problem.tasks.add'])

@shared_task
def celery_run(cmd,rep,dur):
    output=''
    for i in range(int(rep)):
        time.sleep(int(dur))
        p=subprocess.run(cmd,capture_output=True,text=True,shell=True)
        output += p.stdout
    return output

Я отображаю свой вывод в textarea на веб-странице, я получаю вывод в виде

d59af727-b24d-4518-9b66-dff063864c4a

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

Как получить фактическое возвращаемое значение?

Образец возвращаемого значения при использовании обычного метода с командой=pwd,rep=1,dur=2

Path                       
----                       
D:\betsol\Linux_command_app



Path                       
----                       
D:\betsol\Linux_command_app
Вернуться на верх