Запустить приложение во время Heroku CI - PullRequest
0 голосов
/ 07 мая 2020

Я хочу реализовать тесты интеграции / e2e на этапе Heroku CI (который выполняется для каждого PR). Тесты подключаются к работающему серверу с помощью REST API.

Как мне выполнить миграцию БД и запуск сервера во время выполнения CI (что-то похожее на приложение для обзора)? Я использую in-dyno postgres.

1 Ответ

0 голосов
/ 08 мая 2020

Я попытался установить следующее в app.json:

  "environments": {
    "test": {
      "addons": ["heroku-postgresql:in-dyno"],
      "scripts": {
        "test-setup": "mvn package -P no-tests && bash migrate.sh",
        "test": "bash server.sh && mvn test"
      }
    }
  }

Это работает, но экземпляр CI не закрывается, так как сервер все еще работает, время ожидания истекает через 2 часа. Это не рентабельно, поэтому я в итоге встраивал экземпляр сервера в интеграционные тесты, который автоматически закрывается после завершения тестов sh.

Final app.json:

  "environments": {
    "test": {
      "addons": ["heroku-postgresql:in-dyno"],
      "scripts": {
        "test-setup": "mvn package -P no-tests && bash migrate.sh",
        "test": "mvn test"
      }
    }
  }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...