migrate-libsql

command module
v1.0.3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 14, 2025 License: MIT Imports: 11 Imported by: 0

README

migrate-libsql

A simple command-line tool for running database migrations on LibSQL/Turso databases using golang-migrate.

Features

  • Run migrations up (apply all pending) or down (rollback specific steps)
  • Support for LibSQL URLs with authentication tokens
  • File system-based migration sources
  • Built with Go for cross-platform compatibility

Installation

Download the latest binary from the releases page or build from source:

go install github.com/Piszmog/migrate-libsql@latest
go get -tool github.com/Piszmog/migrate-libsql

Usage

migrate-libsql -url <libsql-url> -token <auth-token> -migrations <migrations-dir> [options]
Flags
Flag Default Required Description
-url - LibSQL database URL (e.g., libsql://database-name.turso.io)
-token - LibSQL authentication token
-migrations - Path to directory containing migration files
-direction up Migration direction: up (apply) or down (rollback)
-steps 1 Number of steps for down migration
Examples
# Apply all pending migrations
migrate-libsql -url "libsql://my-db.turso.io" -token "your-token" -migrations "./migrations"

# Rollback the last migration
migrate-libsql -url "libsql://my-db.turso.io" -token "your-token" -migrations "./migrations" -direction down

# Rollback the last 3 migrations  
migrate-libsql -url "libsql://my-db.turso.io" -token "your-token" -migrations "./migrations" -direction down -steps 3

Migration Files

Migration files should follow the standard golang-migrate naming convention:

migrations/
├── 001_initial_schema.up.sql
├── 001_initial_schema.down.sql
├── 002_add_users_table.up.sql
└── 002_add_users_table.down.sql

Documentation

The Go Gopher

There is no documentation for this package.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL