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) resetdb: goose -dir ./db/migrations postgres "host=$(DBHOST) port=$(DBPORT) user=$(DBUSER) password=$(DBPASS) dbname=$(DBNAME) sslmode=disable" down goose -dir ./db/migrations postgres "host=$(DBHOST) port=$(DBPORT) user=$(DBUSER) password=$(DBPASS) dbname=$(DBNAME) sslmode=disable" up goose -dir ./db/migrations postgres "host=$(DBHOST) port=$(DBPORT) user=$(DBUSER) password=$(DBPASS) dbname=$(DBNAME) sslmode=disable" status .PHONY: build run clean ensure-bin-dir resetdb .DEFAULT_GOAL := all all: build run clean ensure-bin-dir