Используйте MongoDB в CI конвейера Azure DevOps

#mongodb #azure-devops

#mongodb #azure-devops

Вопрос:

Настройка Azure DevOps для тестирования библиотеки Python с помощью MongoDB.

В конвейере используется машина Linux.

Кажется, MongoDB установлен по умолчанию, поэтому мне не нужно этого делать: моя конфигурация конвейера включает script: mongod --version шаг. Результат, который я получаю,

 db version v4.4.1
Build Info: {
    "version": "4.4.1",
    "gitVersion": "ad91a93a5a31e175f5cbf8c69561e788bbc55ce1",
    "openSSLVersion": "OpenSSL 1.1.1g  21 Apr 2020",
    "modules": [],
    "allocator": "tcmalloc",
    "environment": {
        "distmod": "ubuntu1804",
        "distarch": "x86_64",
        "target_arch": "x86_64"
    }
}
  

Однако я не могу подключиться к базе данных. Порт по умолчанию не отвечает.

Я не смог найти много информации об этом. Похоже, информация, которую я нахожу о Azure DevOps MongoDB, касается использования MongoDB для процесса DevOps, например, хранения результатов DevOps.

Ответ №1:

MongoDB установлен, но его необходимо запустить вручную:

systemctl status mongod дает

 ● mongod.service - MongoDB Database Server
   Loaded: loaded (/lib/systemd/system/mongod.service; disabled; vendor preset: enabled)
   Active: inactive (dead)
     Docs: https://docs.mongodb.org/manual
  

Добавьте sudo systemctl start mongod шаг перед тестами:

 - script: mongod --version
- script: sudo systemctl start mongod
- script: test command (e.g. pytest, tox...)
  

После этого становится доступен MongoDB, работающий на порту по умолчанию.

Комментарии:

1. Приятно видеть, что ваша проблема решена. Пожалуйста, примите ваш ответ как ответ , как только сможете, это может быть полезно для других участников сообщества, читающих эту тему.

2. @CeceDong-MSFT Уверен. Нужно подождать до завтра.