2014-04-09 33 views
9

Czy mogę automatycznie konwertować pliki dziennika zmian Liquibase w pliku XML format na YAML format?Konwersja Liquibase XML na YAML?

+0

Dlaczego ta informacja jest niejasna? Jest zwięzły, ale nie jest to skomplikowane pytanie ... – user3364825

+2

Myślę, że to pytanie ma sens. Liquibase obsługuje wiele formatów zmian, w tym XML i YAML, i zastanawia się, czy istnieje sposób automatycznej konwersji z jednego typu na inny –

+1

Nie widzę, jak to pytanie może być bardziej jasne. Bliskie głosy są kłopotliwe. –

Odpowiedz

7

Nie ma nic wbudowanego, ale można to łatwo zrobić przy pomocy skryptów.

Niektóre punkty początkowe: liquibase.parser.ChangeLogParserFactory.getInstance().getParser(".xml", resourceAccessor).parse(...) zwróci obiekt DatabaseChangeLog reprezentujący plik dziennika zmian.

liquibase.serializer.ChangeLogSerializerFactory.getInstance().getSerializer(".ya‌​ml").write(...) wyjście będzie Zestawienia zmian w DatabaseChangeLog obiektu do pliku w formacie YAML

7

Wiem, że to trochę późno na odpowiedź; jednak szukałem możliwości wykorzystania Liquibase do projektu w pracy i szukałem czegoś do zrobienia tego, co chciał OP. Widziałem odpowiedź Nathana Voxlanda i napisałem na Javie narzędzie wiersza poleceń, aby to przekonwertować. Kod można znaleźć pod adresem here na Github. Możesz go zmodyfikować lub naprawić i wysłać do PR; Dosłownie napisałem to za około godzinę, więc proszę bardzo łatwo ocenić podstawę kodu :). Mam nadzieję, że pomoże to następnej osobie szukającej podobnego narzędzia i potknie się tutaj.