cassandra-migration
is a simple and lightweight Apache Cassandra database schema migration tool.
It is a Kotlin fork of Contrast Security's Cassandra Migration project, which has been manually re-based to closely follow Axel Fontaine / BoxFuse Flyway project.
It is designed to work similar to Flyway, supporting plain CQL and Java-based migrations. Both CQL execution and Java migration interface uses DataStax's Cassandra Java driver.
Limitations
The tool does not roll back the database upon migration failure. You're expected to manually restore from backup.
Resources
Refer to the Project Wiki for the full documentation.
Contributing
We follow the "fork-and-pull" Git workflow.
- Fork the repo on GitHub
- Commit changes to a branch in your fork (use
snake_case
convention):- For technical chores, use
chore/
prefix followed by the short description, e.g.chore/do_this_chore
- For new features, use
feature/
prefix followed by the feature name, e.g.feature/feature_name
- For bug fixes, use
bug/
prefix followed by the short description, e.g.bug/fix_this_bug
- For technical chores, use
- Ensure relevant test(s) are added: for bugs, or if existing behaviour are changed or updated
- Rebase or merge from "upstream"
- Submit a PR "upstream" with your changes
Please read CONTRIBUTING for more details.
License
Copyright (c) 2016 - 2018 cassandra-migration Contributors Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
cassandra-migration
project is released under the Apache 2 license. See the LICENSE file for further details.
Contrast Security's Cassandra Migration project is released under the Apache 2 license. See Contrast Security Cassandra Migration project license page for further details.
Flyway project is released under the Apache 2 license. See Flyway's project license page for further details.