Как изменить целевую папку для сгенерированных файлов пакта во время тестирования по контракту с использованием ScalaPact

Я использую скальпакт для теста CDC. Мои тесты работают нормально, и файл pact создается в папке target>pacts.
У меня есть еще одна папка "файлы", где я хочу, чтобы эти файлы пакта генерировались после запуска пакт-тестов.

Есть ли способ настроить путь по умолчанию для файлов пактов?

1 ответ

Решение

Это область, которая нуждается в некотором внимании в Scala-Pact, однако, кто-то любезно сделал PR для нас некоторое время назад, что позволяет вам установить переменную среды под названием pact.rootDir,

На практике в linux/mac эту переменную немного сложно установить из-за .так что экспортируем его или просто используем -Dpact.rootDir="<my desired path>" в команде аргументы, похоже, не работают. Вместо этого вам нужно сделать это:env "pact.rootDir=<my desired path>" bash, Я не пробовал это в Windows, поэтому не знаю, возникнет ли у вас такая же проблема.

Я только что поднял вопрос, чтобы попытаться сделать это проще в будущем: https://github.com/ITV/scala-pact/issues/101

В качестве альтернативы обратите внимание, что каталог pact действительно является областью нуля /tmp, позволяющей Scala-Pact скомпилировать свои выходные данные. Если вы выполняете это как часть сценария сборки, вы можете просто добавить шаг, чтобы скопировать ресурсы в новое местоположение после их создания.

Кроме того, по какой-то причине мы сделали чтение из каталога проще, чем запись в один. Если вам нужно прочитать из каталога, например, во время проверки, вы можете просто добавить --source <my desired path> в командной строке.

Надеюсь, это поможет.

Другие вопросы по тегам