sql-migrate
goose
sql-migrate | goose | |
---|---|---|
9 | 28 | |
3,087 | 5,684 | |
- | 4.4% | |
6.6 | 8.9 | |
13 days ago | 6 days ago | |
Go | Go | |
MIT License | GNU General Public License v3.0 or later |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
sql-migrate
- GORM
-
How to seed database for testing?
I'd never did this with sqlite3, but I think sql-migrate should work (https://github.com/rubenv/sql-migrate)
-
Can anyone help me on how you are using golang with databases in production systems?
I use sqlboiler which generates an ORM from your database, and sql-migrate which is a tool for managing SQL migrations. Although you have to write your migrations in SQL, which IMHO is a plus.
- How to use sql-migrate in Kubernetes?
-
Is there a DB framework that can manage migrations like Ruby on Rails ?
Currently a fan of this one https://github.com/rubenv/sql-migrate
-
Go Echo API Server Development
db migration by sql-migrate
- Most recommended database migration tool? using golang for the record
-
How do you install commands using go.mod
There are some packages in my project that are not used in the source code, but they're used as commands (i.e. https://github.com/vektra/mockery https://github.com/rubenv/sql-migrate).
-
What is the fastest way to clear my SQL database between integration tests?
Keep your migrations in the code repo and use a tool like sql-migrate to automatically apply them for you. At my job, we run a new container for each package's tests, and create a new db with the migration scripts for every test. It's certainly a bit slower, but the reproducibility is worth it.
goose
-
Recent improvements to the pressly/goose migration tool
In v3.16.0 we added a new Provider feature that unlocks the ability to implement a lot of highly requested features. More details in the blog post:
- How are y'all that are using raw sql doing DB Migrations?
- Why elixir over Golang
- Is there a similar tool or alternative in Go like strong_migrations?
-
How do you handle migrations ?
Next try https://github.com/pressly/goose We have this setup to be run by the CI-CD pipeline to be run before the application is started. BTW, this utility is compatible with https://sqlc.dev , so they work good together.
-
Does this project structure make sense?
For database migration I recommend https://github.com/pressly/goose As it works with sqlc and is a powerful tool for complex migrations. This is something a lot of ORMs are really weak with. I was on a large project with Gorm as the ORM and what a nightmare when we pushed to production!
- Are there any decent ORMs in Golang?
- Don't Mock the Database
-
Writing tests for APIs
goose https://github.com/pressly/goose - data migration and seed data creation
-
A beginner's guide to creating a web-app in Go using Ent
I'm using .sql migration files with tooling similar to https://github.com/pressly/goose . Is there a way to manage my schema with my pre-existing tooling and my queries/CRUD operations with Ent/Atlas?
What are some alternatives?
goose
migrate - Database migrations. CLI and Golang library.
dbmate - :rocket: A lightweight, framework-agnostic database migration tool.
skeema - Declarative pure-SQL schema management for MySQL and MariaDB
go-migrate - Abstract task migration tool written in Go for Golang services. Database and non database migration management brought to the CLI. [Moved to: https://github.com/g14a/metana]
TinyGo - Go compiler for small places. Microcontrollers, WebAssembly (WASM/WASI), and command-line tools. Based on LLVM.
liquibase - Main Liquibase Source
noms - The versioned, forkable, syncable database
alembic - A database migrations tool for SQLAlchemy.
BTrDB - Berkeley Tree Database (BTrDB) server
pig - Simple pgx wrapper to execute and scan query results