2017-01-12 2 views
1

Мы экспериментируем с градиентом. Мой проект имеет следующие модули:Несколько конфигураций gretty

  • клиент
  • сервер
  • тесты

где сервер зависит от клиента и тесты зависят от сервера.

Для разработки клиент/сервер требуется работающий сервер с определенной конфигурацией.

В тестах есть пользовательская задача java-exec, которая настраивает и запускает работоспособность, которая имеет два режима - интерактивный, который позволяет запускать отдельные тесты и делать тихий, который запускает весь набор.

Это дает 3 конфигурации сервера я нужно запустить:

  • только сервер, режим разработки
  • сервера и тесты в интерактивном режиме
  • сервера и тесты в автоматическом режиме

Документация gretty кажется только для того, чтобы одна задача для интеграционных тестов была включена в конфигурацию gretty. Другая проблема заключается в том, что эта задача должна быть в том же модуле, но естественным образом положить gretty в server/build.gradle и проверить задачу в tests/build.gradle.

Я также пробовал смотреть в фермы webapp, но поскольку я понимаю идею, нужно запустить несколько webapps одновременно.

ответ

0

это работало для меня:

root.gradle:

buildscript { 
    repositories { 
     mavenLocal() 
     maven { url "https://plugins.gradle.org/m2/" } 
    } 

    dependencies { 
     classpath "org.akhikhl.gretty:gretty:1.4.0" 
    } 
} 

server.gradle:

if (condition) { 
    apply plugin: 'org.akhikhl.gretty' 

    gretty { 
    // some configuration here 
    } 
} 

tests.gradle:

if (!condition) { 
    apply plugin: 'org.akhikhl.gretty' 

    gretty { 
    // different configuration here 
    } 
} 
Смежные вопросы