为 Django Channels 从 WSGI 切换到 ASGI,现在 CircleCI 抛出“损坏的双链表”,即使测试通过了

问题描述 投票:0回答:0

我一直在做一个需要 WebSockets 的项目。该平台使用 Django 构建,并运行 WSGI 服务器

gunicorn
。我们决定使用 Django Channels 实现 WebSockets。

我设置了一切,包括从

gunicorn
切换到 ASGI 服务器
daphne
。一切都在本地开发环境中运行良好。部署到 AWS 正在运行,一切都在开发/登台上运行良好。
pytest
有效,所有测试都在本地通过。在 CircleCI 上,所有测试都通过了,但是在“测试”步骤结束时,我们得到以下结果并且 CircleCI 显示失败状态:

================== 955 passed, 2 skipped in 216.09s (0:03:36) ==================
corrupted double-linked list
/bin/bash: line 2:   278 Aborted                 (core dumped) poetry run coverage run -m pytest $TESTFILES -vv --junitxml htmlcov/junit.xml

Exited with code exit status 134
CircleCI received exit code 134

没有其他错误、警告或意外输出。我无法在 CircleCI 之外复制这个问题。

我尝试将

@pytest.mark.asyncio
装饰器添加到我们拥有的一个异步测试中,但仍然得到上述结果。即使我完全删除所说的测试 CircleCI 仍然会抛出相同的错误。谷歌没有帮助。

python django pytest circleci django-channels
© www.soinside.com 2019 - 2024. All rights reserved.