feat(goose): Added aliases for goose migration tool

Signed-off-by: Rubem Mota <rubemmota89@ŋmail.com>
This commit is contained in:
Rubem Mota 2023-03-22 22:17:41 +00:00
parent f9f01e48a8
commit 296c67c9f3
No known key found for this signature in database
GPG key ID: 1ED3FD2833406104
2 changed files with 75 additions and 0 deletions

24
plugins/goose/README.md Normal file
View file

@ -0,0 +1,24 @@
# Goose plugin
This plugin adds aliases for the [Goose](https://pressly.github.io/goose/)
To use it, add `goose` to the plugins array in your zshrc file:
```zsh
plugins=(... goose)
```
## Aliases
| Alias | Command | Description |
| ------ | ----------------------------| -----------------------------------------------------------------|
| gmu | `goose up` | Apply all available migrations |
| gubo | `goose up-by-one` | Migrate up a single migration from the current version |
| gmd | `goose down` | Roll back a single migration from the current version |
| gmr | `goose redo` | Roll back the most recently applied migration, then run it again |
| gms | `goose status` | Print the status of all migrations: |
| gmcs | `goose create migration sql`| Create a new SQL migration |
| gmcg | `goose create migration go` | Create a new Go Migration |
| gmut | `goose up-to <migration>` | Migrate up to a specific version` |
| gmdt | `goose down-to <migration>` | Roll back migrations to a specific version. |
| gmf | `goose fix` | Apply sequential ordering to migrations |

View file

@ -0,0 +1,51 @@
if (( ! $+commands[goose] )); then
echo "goose not found on Path"
return
fi
#========================#
# FUNCTIONS #
#========================#
function gmcs() {
if [ -z "$1" ]; then
echo "Must specify migration name"
return
fi
goose create $1 sql
}
function gmcg() {
if [ -z "$1" ]; then
echo "Must specify migration name"
return
fi
goose create $1 go
}
function gmut() {
if [ -z "$1" ]; then
echo "Must specify migration version"
return
fi
goose up-to $1
}
function gmdt() {
if [ -z "$1" ]; then
echo "Must specify migration version"
return
fi
goose down-to $1
}
#========================#
# ALIAS #
#========================#
alias gmu="goose up"
alias gmubo="goose up-by-one"
alias gmd="goose down"
alias gmr="goose redo"
alias gms="goose status"
alias gmv="goose version"