forked from ebhomengo/niki
feat(niki): add compile daemon (hot reload) and separate migration commands (#88)
This commit is contained in:
parent
15698b18f9
commit
0eb8f89848
|
@ -3,6 +3,7 @@
|
|||
.vscode
|
||||
|
||||
# Binaries for programs and plugins
|
||||
niki
|
||||
*.exe
|
||||
*.exe~
|
||||
*.dll
|
||||
|
|
36
Makefile
36
Makefile
|
@ -2,6 +2,9 @@
|
|||
|
||||
ROOT=$(realpath $(dir $(lastword $(MAKEFILE_LIST))))
|
||||
|
||||
confirm:
|
||||
@echo -n 'Are you sure? [y/N] ' && read ans && [ $${ans:-N} = y ]
|
||||
|
||||
lint:
|
||||
which golangci-lint || (go install github.com/golangci/golangci-lint/cmd/golangci-lint@v1.54.0)
|
||||
golangci-lint run --config=$(ROOT)/.golangci.yml $(ROOT)/...
|
||||
|
@ -27,4 +30,35 @@ docker:
|
|||
sudo docker compose up -d
|
||||
|
||||
swagger:
|
||||
swag init
|
||||
swag init
|
||||
|
||||
# Live Reload
|
||||
watch:
|
||||
@if command -v CompileDaemon > /dev/null; then \
|
||||
CompileDaemon -exclude-dir=.git -exclude=".#*" -command="./niki"; \
|
||||
else \
|
||||
read -p "Go's 'CompileDaemon' is not installed on your machine. Do you want to install it? [Y/n] " choice; \
|
||||
if [ "$$choice" != "n" ] && [ "$$choice" != "N" ]; then \
|
||||
go install github.com/githubnemo/CompileDaemon@latest; \
|
||||
CompileDaemon -exclude-dir=.git -exclude=".#*" -command="./niki"; \
|
||||
else \
|
||||
echo "You chose not to install CompileDaemon. Exiting..."; \
|
||||
exit 1; \
|
||||
fi; \
|
||||
fi
|
||||
|
||||
migrate/status:
|
||||
@sql-migrate status -env="production" -config=repository/mysql/dbconfig.yml
|
||||
|
||||
# Example: make migrate/new name=add_kindbox_permission
|
||||
migrate/new:
|
||||
@echo 'Creating migration file for ${name}...'
|
||||
@sql-migrate new -env="production" -config=repository/mysql/dbconfig.yml ${name}
|
||||
|
||||
migrate/up: confirm
|
||||
@echo 'Running all migrations...'
|
||||
@sql-migrate up -env="production" -config=repository/mysql/dbconfig.yml
|
||||
|
||||
migrate/down: confirm
|
||||
@echo 'Tearing down last migration...'
|
||||
@sql-migrate down -env="production" -config=repository/mysql/dbconfig.yml -limit=1
|
|
@ -1,5 +1,5 @@
|
|||
production:
|
||||
dialect: mysql
|
||||
datasource: niki:nikiappt0lk2o20(localhost:3306)/niki_db?parseTime=true
|
||||
datasource: niki:nikiappt0lk2o20@(localhost:3306)/niki_db?parseTime=true
|
||||
dir: repository/mysql/migration
|
||||
table: gorp_migrations
|
||||
|
|
Loading…
Reference in New Issue