Bluemage/Makefile

44 lines
1.2 KiB
Makefile

.ONESHELL:
export PATH := $(shell pwd)/bin:$(shell pwd)/web/node_modules/.bin:$(PATH)
export GOOSE_DRIVER ?= sqlite3
export GOOSE_DBSTRING ?= ./go/data.db
export GOOSE_MIGRATION_DIR ?= schemas/migrations
export GOFLAGS=-tags=fts5
build: generate-go generate-web
go build -o bin/bluemage ./go/cmd/bluemage/main.go
run:
cd go && air
run-web: generate-web
cd web && npm run dev
generate-go: migrate
@rm -rf go/gen/*
ogen -target go/gen/reddit -package reddit -clean schemas/openapi/reddit.yaml 2>&1 | grep -v INFO
jet -source=sqlite -dsn="./go/data.db" -path="./go/gen/jet" | grep -v "Unsupported sql column"
(cd ./schemas/proto && buf generate --template buf.gen.go.yaml .)
(cd go/gen && bobgen-sqlite --config ../bobgen.yaml 2>&1 | grep -v bytes | grep -v SKIPPED)
(cd go && goverter gen -g 'output:file ../gen/converter/converter.go' -g 'output:package github.com/tigorlazuardi/bluemage/go/gen/converter' ./converts)
generate-web:
rm -rf web/gen
cd ./schemas/proto
buf generate --template buf.gen.web.yaml .
migrate:
@goose up
migrate-new:
@read -p "Name new migration: " name
if [[ $$name ]]; then goose create "$$name" sql; fi
migrate-redo:
@goose redo
migrate-down:
@goose down