Questions tagged [sqitch]

Sqitch is a database change management application.

Sqitch is an open source database change management application written in Perl.

The following is an excerpt from the project website.

What makes it different from your typical migration-style approaches? A few things:

No opinions
Sqitch is not integrated with any framework, ORM, or platform. Rather, it is a standalone change management system with no opinions about your database engine, application framework, or development environment.

Native scripting
Changes are implemented as scripts native to your selected database engine. Writing a PostgreSQL application? Write SQL scripts for psql. Writing a MySQL-backed app? Write SQL scripts for mysql.

Dependency resolution
Database changes may declare dependencies on other changes—even on changes from other Sqitch projects. This ensures proper order of execution, even when you’ve committed changes to your VCS out-of-order.

No numbering
Change deployment is managed by maintaining a plan file. As such, there is no need to number your changes, although you can if you want. Sqitch doesn’t much care how you name your changes.

Iterative development
Up until you tag and release your application, you can modify your change deployment scripts as often as you like. They’re not locked in just because they’ve been committed to your VCS. This allows you to take an iterative approach to developing your database schema. Or, better, you can do test-driven database development.

46 questions
1
vote
1 answer

Manage Sqitch migrations when deploying different branches

When we deploy to our Testing environment with Sqitch, the migrations run and all is well. However, when we have to test a different code branch, the Sqitch migrations aren't rolled back. What I'm looking for is an idea of how others are solving…
1
vote
2 answers

sqitch: deploying changes across multiple environments

In looking at the sqitch docs, there’s a situation I don’t immediately understand how to deal with. Like probably many organizations, we progress changes through several environments before they reach production. In our situation, we have a…
1
vote
1 answer

Generate alter table scripts using sqitch

Lets say I create a table in snowflake called Employee with EmployeeID and EmployeeName. I would check in the Create table script for this table to my github repo and get this deployed using sqitch. If in the next release, there is a need to add a…
ganesh hegde
  • 73
  • 1
  • 7
1
vote
1 answer

Sqitch Snowflake deployment failing

I am using Sqitch Snowflake Docker image sqitch/sqitch:1.0.0-snowflake . I can conntect to the database without any issues. However, when I run the following ./sqitch deploy It just stays at the following forever. Adding registry tables to…
1
vote
0 answers

How to accept changes made in the master branch to a database, that you have already deployed in local using Sqitch?

I deployed a DB using the plan file that was in my branch(reports). My boss has made some changes to the master branch. I need to test the said changes that were made to master. My local is outdated, as I pulled all the changes in the master into my…
utf8mb4
  • 13
  • 4
1
vote
1 answer

Unable to connect to Snowflake using Sqitch

I am using a private key authentication to connect to Snowflake and cannot connect using Sqitch. This is working successfully when connecting directly using snowsql. My connect string looks like this: sqitch status -vvv…
user327402
  • 11
  • 1
0
votes
0 answers

Invalid name; names must not begin with punctuation, contain "@", ":", "#", "\", or blanks, or end in punctuation or digits following punctuation

I had download my repository on my local computer. When I'm trying to use command SQITCH TAG i receive an error message look like this: Syntax error in sqitch.plan at line 7: Invalid name; names must not begin with punctuation, contain "@", ":",…
0
votes
0 answers

How to use AWS ECR image in AWS codebuild?

I am learning CICD with AWS codebuild. I use sqitch to manage database changes in my project. I have successfully configured docker-sqitch for the Snowflake database and it is working fine in the Ubuntu system. Now, I am trying to automate this…
Hkachhia
  • 4,463
  • 6
  • 41
  • 76
0
votes
0 answers

How to Deploy sqitch changes from a bundle?

I was checking out and reading through sqitch and noticed bundle. From my understanding this is for packaging the final changes - possibly to distribute or deploy to a higher environment. But how do we deploy a bundle? Could not find much on that…
Jins Peter
  • 2,368
  • 1
  • 18
  • 37
0
votes
0 answers

How to configure sqitch snowflake docker?

I have pulled the Sqitch docker repository from the https://github.com/sqitchers/docker-sqitch and rebuilt it for snowflake as per the given instructions on https://github.com/sqitchers/docker-sqitch/tree/main/snowflake Currently, I am following…
Hkachhia
  • 4,463
  • 6
  • 41
  • 76
0
votes
1 answer

Sqitch reporting "sqitch.checkit FUNCTION does not exist" on deploy

I'm trying to deploy a project from my dev server, where everything works fine, to a production server. I installed sqitch on the production server, did the project init, and when I try to deploy the plan, it fails with an error that "sqitch.checkit…
Armitige3
  • 51
  • 7
0
votes
0 answers

Can I use sqitch-rework for non-idempotent changes?

After reading the sqitch-rework documentation and the Altering Table with Sqitch Rework command stackoverflow question, I am aware that sqitch-rework was intended for idempotent changes. But why? It seems that my use of sqitch-rework works perfectly…
soliz
  • 735
  • 1
  • 7
  • 17
0
votes
1 answer

How to set encoding for sqitch in Ubuntu 18.04?

I installed sqitch for snowflake deployment in Ubuntu 18.04 LTS. Now after running sqitch verify --target dev I get the following: ø°ø°®ø ·ø¬ø« (SQL-) Looks like bad encoding. Any thoughts how to fix it?
Vitali S.
  • 1
  • 1
0
votes
1 answer

How to update DBD::ODBC from 1.56 to 1.59 (or later) on Ubuntu 18.04 LTS?

I'm new to sqitch. I'm trying to create a Jenkins pipeline to deploy snowflake using sqitch. So, I got sqitch and snowsql installed to my Ubuntu 18.04 LTS in Azure. I'm trying to run the following command: sqitch verify --target dev and I get error…
Vitali S.
  • 1
  • 1
0
votes
1 answer

How to deploy snowflake DB with sqitch?

I'm new to sqitch. I'm trying to create a Jenkins pipeline to deploy snowflake using sqitch. So, I got sqitch and snowsql installed to my Ubuntu 18.04 LTS in Azure. I just: clone existing sqitch repository .git .gitignore sqitch snowflake …
Vitali S.
  • 1
  • 1