Невозможно запустить тест django в CircleCI

Я реализую CircleCI для одного из проектов. Проект построен на Django 3.2.

Мои тестовые примеры работают правильно, когда я запускаю их с помощью python manage.py test blog, когда я запускаю то же самое в CircleCI, он возвращает

======================================================================
ERROR: project.blog (unittest.loader._FailedTest)
----------------------------------------------------------------------
ImportError: Failed to import test module: project.blog
Traceback (most recent call last):
  File "/usr/local/lib/python3.8/unittest/loader.py", line 470, in _find_test_path
    package = self._get_module_from_name(name)
  File "/usr/local/lib/python3.8/unittest/loader.py", line 377, in _get_module_from_name
    __import__(name)
ModuleNotFoundError: No module named 'project.blog'

Вот моя конфигурация CircleCI

version: 2
jobs:
  build:
    docker:
      - image: circleci/python:3.8
    steps:
      - checkout
      - run:
          name: Installing dependencies
          command: |
            python3 -m venv venv
            . venv/bin/activate
            pip3 install -r requirements.txt
      - run:
          name: Running migrations
          command: |
            . venv/bin/activate
            python manage.py migrate --skip-checks
      - run:
          name: Running tests
          command: |
            . venv/bin/activate
            python manage.py test blog

Я понимаю, что CircelCI клонирует проект в папке project. Я что-то упускаю в конфигурации?

CircleCI по умолчанию проверяет нашу кодовую базу на /home/circleci/project, проблема была в том, что в списке установленных_приложений у меня было приложение с именем project. (которое конфликтовало)

Когда CircleCI запускался python manage.py test модуль unittest осуществлял поиск приложения blog внутри django app project.

Я исправил эту проблему, изменив путь по умолчанию, по которому CircleCI размещает кодовую базу. Вот обновленный конфиг CircleCI

version: 2
jobs:
  build:
    working_directory: ~/platform #Here is the answer
    docker:
      - image: circleci/python:3.8
    steps:
      - checkout:
          path: ~/platform #Here is the answer
      - run:
          name: Install dependencies
          command: |
            ls -l
            python3 -m venv venv
            . venv/bin/activate
            pip3 install -r requirements.txt
      - run:
          name: Run migrations
          command: |
            . venv/bin/activate
            python manage.py migrate --skip-checks
      - run:
          name: Run tests
          command: |
            . venv/bin/activate
            python manage.py test website
Вернуться на верх