Skip to main content

Execute commands from shell file, storing last successful execution in detached git branch.

Project description

Execute commands from shell file, storing last successful execution in detached git branch.

How it works

You have some bash file(-s) with few commands inside. Each on it’s own line. If you will run it in shell – it will execute all of them.

During deploy you need to run only new commands, that was added to this file. Think of it as a one way DB migrations that will get commands to execute from git diff.

Git to the resque! System will store successfull commands executions in detached branch named .gitmigrate. Then if we will have 5 commands and only 3 of them was successful, on next run we will not run them.

Always run/include some code?

First lines until two new lines will be always executed. So when you have shebang and then 2 new lines (as it usual) – it will be executed. Also you can add some includes after your 1st line, that will allow you to have DSL-like functions inside your script. After which you shoudl have two new lines.

Conventions and configurations

Configuration values are in file .gitmigrate.

Configuration values with defaults

See .gitmigrate.dist as an example

  • Detached branch name _gitmigrate.

  • Path to command file(s) is .gitmigrate.*. It could be both .gitmigrate.sh or .gitmigrate.py or .gitmigrate.d/ directory.

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

git-migrate-0.3.1.tar.gz (3.8 kB view details)

Uploaded Source

Built Distribution

git_migrate-0.3.1-py2-none-any.whl (5.9 kB view details)

Uploaded Python 2

File details

Details for the file git-migrate-0.3.1.tar.gz.

File metadata

  • Download URL: git-migrate-0.3.1.tar.gz
  • Upload date:
  • Size: 3.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for git-migrate-0.3.1.tar.gz
Algorithm Hash digest
SHA256 499b94ed4b1d706392ecbf883ece85c22184401f4c6750feec8e8c9bfda92495
MD5 a44a8604fc353aef1c284b6ce1948916
BLAKE2b-256 02c1d4c367b20604a8d5e5204c574da11e6282971a310c0caffa704f0d8ee861

See more details on using hashes here.

File details

Details for the file git_migrate-0.3.1-py2-none-any.whl.

File metadata

File hashes

Hashes for git_migrate-0.3.1-py2-none-any.whl
Algorithm Hash digest
SHA256 e2de6689cc68a24db721aac35e6a419ff84334d588b621f2dbb5ca2cd2fa68b8
MD5 c76934d92da327a4783424b2e78b3172
BLAKE2b-256 1a7ed66dfc9549e3e0e2a644387b3cd140575f20a7979e4122db7d61c9db382c

See more details on using hashes here.

Supported by

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