BINARY_NAME=bin/sorarebuddy BIN_DIR=$(shell dirname $(BINARY_NAME)) include .env export $(shell sed 's/=.*//' .env) ensure-bin-dir: @mkdir -p $(BIN_DIR) build: ensure-bin-dir @echo "Building..." go build -o $(BINARY_NAME) cmd/console/root.go run: build @echo "Running..." $(info JWTTOKEN is $(JWTTOKEN)) $(info JWTAUDIENCE is $(JWTAUDIENCE)) ./$(BINARY_NAME) --jwtaudience $(JWTAUDIENCE) --jwttoken $(JWTTOKEN) --dbhost $(DBHOST) --dbport $(DBPORT) --dbuser $(DBUSER) --dbpass $(DBPASS) --dbname $(DBNAME) --verbose clean: @echo "Cleaning..." go clean rm -f $(BINARY_NAME) downdb: goose -dir ./db/migrations postgres "host=$(DBHOST) port=$(DBPORT) user=$(DBUSER) password=$(DBPASS) dbname=$(DBNAME) sslmode=disable" down updb: goose -dir ./db/migrations postgres "host=$(DBHOST) port=$(DBPORT) user=$(DBUSER) password=$(DBPASS) dbname=$(DBNAME) sslmode=disable" up resetdb: make downdb make updb .PHONY: build run clean ensure-bin-dir resetdb downdb updb .DEFAULT_GOAL := all all: build run clean ensure-bin-dir