Как деактивировать flyway:чистая цель в профиле

Я использую плагин flyway maven для переноса базы данных:

<build>
[...]
     <plugin>
                <groupId>com.googlecode.flyway</groupId>
                <artifactId>flyway-maven-plugin</artifactId>
                <version>1.6.1</version>
                <configuration>
                    <user>${hibernate.connection.username}</user>
                    <password>${hibernate.connection.password}</password>
                    <driver>${driver}</driver>
                    <url>${url}</url>
                </configuration>
            </plugin>

У меня есть три среды (dev, pre, pro) и профиль для каждой. Каждая среда устанавливает свои собственные свойства, поэтому я могу использовать конкретный профиль настройки пути и сделать мои миграции в БД такими, какие я хочу.

Flyway имеет чистую цель, эта цель позволяет удалять все объекты в схеме, не удаляя саму схему.

Есть ли способ деактивировать эту цель только в одном из моих профилей? (в продукте очевидно: P)


person ilopezluna    schedule 29.06.2012    source источник
comment
Не могли бы вы предоставить больше информации о вашей сборке? Какие цели вы выполняете? Как выглядят ваши профили? ...   -  person Axel Fontaine    schedule 02.07.2012


Ответы (1)


Вы можете переопределить вызов плагина flyway в профиле prod, используя фазу none: http://thomaswabner.wordpress.com/2010/02/16/howto-disable-inherited-maven-plugin/

person Andriy Plokhotnyuk    schedule 05.07.2012
comment
Как вы переопределяете только чистую цель? В режиме prod цель миграции должна работать, а цель очистки — нет. - person bbcooper; 20.04.2013
comment
Цели очистки и миграции можно запускать в разных исполнениях, просто следуя по одному в pom.xml. - person Andriy Plokhotnyuk; 20.04.2013
comment
Я не слежу за тобой. Использование никакой фазы отключает все цели плагина (flyway), а не только чистую. Где хитрость? - person bbcooper; 29.04.2013