Skip to main content

A professional database migration tool supporting multiple databases

Project description

EvolvisHub DB Migration

A robust database migration tool developed by Evolvis AI for managing database schema changes efficiently and reliably.

About Evolvis AI

Evolvis AI is a leading provider of AI-powered solutions, helping businesses transform their operations through innovative technology. Our mission is to make artificial intelligence accessible to companies of all sizes, enabling them to compete effectively in today's data-driven environment.

Author

Alban Maxhuni, PhD
Email: a.maxhuni@evolvis.ai
Senior Software Engineer at Evolvis AI

Features

  • Support for multiple database types (SQLite, PostgreSQL, MySQL)
  • Version-controlled migrations
  • Rollback capability
  • Migration status tracking
  • Command-line interface
  • Configuration management
  • Logging and error handling

Installation

pip install evolvishub-db-migration

Usage

Initialize a new migration project

db-migrate init config.yaml

Create a new migration

db-migrate create config.yaml my_migration "CREATE TABLE my_table (id INTEGER PRIMARY KEY)"

Apply migrations

db-migrate migrate config.yaml

Check migration status

db-migrate status config.yaml

Example output:

Total migrations: 1
Applied migrations: 1
Pending migrations: 0
✓ 001_my_migration (version: 001)
All migrations applied

Configuration

The configuration file (config.yaml) should have the following structure:

database:
  type: sqlite
  connection_string: sqlite:///database.db

migrations:
  directory: migrations

Development

Setup Development Environment

  1. Clone the repository:
git clone https://github.com/evolvis-ai/evolvishub-db-migration.git
cd evolvishub-db-migration
  1. Create and activate a virtual environment:
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate
  1. Install development dependencies:
pip install -r requirements-dev.txt

Running Tests

pytest

Contributing

We welcome contributions! Please see our Contributing Guide for details.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Support

For support, please contact a.maxhuni@evolvis.ai or visit Evolvis AI.

Acknowledgments

  • Thanks to all contributors who have helped shape this project
  • Special thanks to the Evolvis AI team for their support and guidance

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

evolvishub_db_migration-0.1.2.tar.gz (309.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

evolvishub_db_migration-0.1.2-py3-none-any.whl (23.8 kB view details)

Uploaded Python 3

File details

Details for the file evolvishub_db_migration-0.1.2.tar.gz.

File metadata

  • Download URL: evolvishub_db_migration-0.1.2.tar.gz
  • Upload date:
  • Size: 309.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.9

File hashes

Hashes for evolvishub_db_migration-0.1.2.tar.gz
Algorithm Hash digest
SHA256 6c1b62432085426cdc424b00c3b50c5c4eca327a3532c0aa943319fe5bd014e1
MD5 282a3344b899aec35663bfefe1c9742f
BLAKE2b-256 745c5e499ac3a9a66e3a59e8b7de81fad119864f0ca2e9f8a77cf3b3e0fc44f2

See more details on using hashes here.

File details

Details for the file evolvishub_db_migration-0.1.2-py3-none-any.whl.

File metadata

File hashes

Hashes for evolvishub_db_migration-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 369df4c9a2a8b65a8c4f736fffe1b8b62557f37ac9543cc1c90cfb2b2fd5bad9
MD5 67a3b8e45ecedfd45186eba51443c2be
BLAKE2b-256 6edee73e0152093393242c1175b9ca02489245a3250039db24ae140b45a0276f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page