Oto jeden zacząłem i zostały przy użyciu na chwilę.
https://github.com/heartysoft/aedes
Obsługuje wiele środowisk i wersjonowanie. Ponieważ jesteśmy opartymi na Windowsie, jest to głównie powershell, ale nie ma powodu, dla którego skrypt bash nie mógłby być napisany, by zrobić odpowiednik. Sam skrypt powershell jest niezwykle prosty. Wymaga Powershell v3 +. Użycie jest całkiem proste:
aedes.ps1 192.168.40.4 [-u username -p password -env dev]
będzie szukać plików schematów w folderze .. \ schematu. Pliki schematu powinny mieć przedrostek n_. Pliki specyficzne dla środowiska mają przyrostek .env.cql. Tak więc, jeśli pliki są:
1_people.dev.cql
1_people.prod.cql
2_people_some_indexes.cql
3_jobs.dev.cql
3_jobs.prod.cql
4_jobs_something_changed.cql
i uruchomić go do prod, to te z .prod.cql a nie „env” będzie .cql być stosowane w porządku. Można również podać wersję $ start, która może być użyta do określenia, od czego ma zacząć się składanie (np. Jeśli start jest określony jako 3, to wszystko z 1_ i 2_ zostanie pominięte).
Jest to dość proste, ale wydaje się działać całkiem dobrze. Po prostu ściągamy Cassandę (nie jest zainstalowana) na "maszynie aplikatora" (która może być twoją maszyną, tj. Nie jest częścią klastra) i ma cqlsh na PATH dla łatwiejszej aplikacji. Zrobiłem (i mam) plany na więcej funkcji, ale działa miło jak na razie.
Narzędzie [migrate tool] (https://github.com/mattes/migrate), do którego się odwołujesz, działa również jako natywny interfejs CLI, więc nie musisz używać go. – 0x6e6562