Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Ensuring that the CLI version is the same across all team members machines #845

Open
gingermusketeer opened this issue Oct 21, 2024 · 1 comment

Comments

@gingermusketeer
Copy link

I am using goose in a small team and we have run into an issue with different versions of goose producing different database schemas. We are using goose via a simple migrate.sh script that calls goose and then dumps the schema.sql after the goose command completes. As the schema is committed to the project there is a different schema being dumped depending on the version of goose used. The differences are related to the goose internal tables.

While I could filter out these tables I wondered if there is a recommended way to ensure that everyone on the team is using the same version of goose?

Some options that I can see are:

  1. Building and committing the binary to the project.
  2. Running goose via a docker container.
  3. Checking the version in the migrate.sh script and make sure everyone is running the same version.

Thanks for goose it is really nice to use!

@mfridman
Copy link
Collaborator

mfridman commented Oct 23, 2024

Option 3 is the one I've used on many teams, and not just for goose but for most tool dependencies.

Having said that, the internal goose schema changes very infrequently. For example, in a recent version (v3.22.0), I updated the postgres schema to align with postgres best practices: #556

This shouldn't have a behavioral or functional difference though.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants