2017-05-31 2 views
5

Jetzt habe ich Spring-Boot-App, die MS SQL-Server verwendet. Und wir benutzen Flugwege für Migrationen.Wie kann man die Flugroute in bestimmten Federprofilen deaktivieren?

Ich möchte ein zusätzliches Profil für Tests hinzufügen. Ich möchte Tabellen aus Entitätsklassen generieren. und benutze keine Zugbahn.

habe ich versucht, smth wie diese

aber flyway beginnt in application.yaml

spring: 
    profiles: test 
    jpa: 
     generate-ddl: true 
     hibernate: 
    datasource: 
    url: jdbc:h2:mem:test_db;MODE=MSSQLServer 
    username: sa 
    password: 
sowieso zu schreiben

Antwort

8

Es gibt eine property available ist für das Frühjahr-Boot-flyway zu deaktivieren, wenn es flyway.enabled benötigt wird, die standardmäßig wahr ist .

Sie können eine profilspezifische Konfiguration haben, in Ihrem Fall sollte sie application-test.yml heißen. Diese Konfiguration kann den Flugweg deaktivieren, wenn das Profil aktiv ist. Sie müssen es nur wie folgt deklarieren:

flyway: 
    enabled: false 

Und wenn Sie Testprofil in der allgemeinen Konfiguration angeben, fügen Sie es einfach zum Stammverzeichnis hinzu.

+0

Ich habe Profile geteilt mit --- – gstackoverflow

1

für jeden FYI, der hier kommt für diese suchen, hat die Eigenschaft Name für das Frühjahr Boot-2.0 geändert:

Für application.properties Format:

spring.flyway.enabled=false 

Für application.yml Format:

spring: 
    flyway: 
     enabled: false 
+0

@DanSyrstad Meine Antwort ist für Spring Boot 2.0, Sie verknüpft mit "aktuellen", die ab diesem Zeitpunkt 1.5.10 ist. Wenn Sie sich die Dokumentation 2.0.0.RC1 ansehen, ist es tatsächlich 'spring.flyway.enabled'. https://docs.spring.io/spring-boot/docs/2.0.0.RC1/reference/html/common-application-properties.html – Todd

+0

Sie sind wahrscheinlich, deshalb habe ich die Version erwähnt, auf die diese Antwort zutrifft. 2.0 wird diesen Monat nicht verfügbar sein. – Todd

Verwandte Themen