48 lines
874 B
Makefile
48 lines
874 B
Makefile
|
|
BINARY_NAME=skyview
|
||
|
|
BUILD_DIR=build
|
||
|
|
|
||
|
|
.PHONY: build clean run dev test lint
|
||
|
|
|
||
|
|
build:
|
||
|
|
@echo "Building $(BINARY_NAME)..."
|
||
|
|
@mkdir -p $(BUILD_DIR)
|
||
|
|
go build -ldflags="-w -s" -o $(BUILD_DIR)/$(BINARY_NAME) .
|
||
|
|
|
||
|
|
clean:
|
||
|
|
@echo "Cleaning..."
|
||
|
|
@rm -rf $(BUILD_DIR)
|
||
|
|
go clean
|
||
|
|
|
||
|
|
run: build
|
||
|
|
@echo "Running $(BINARY_NAME)..."
|
||
|
|
@./$(BUILD_DIR)/$(BINARY_NAME)
|
||
|
|
|
||
|
|
dev:
|
||
|
|
@echo "Running in development mode..."
|
||
|
|
go run main.go
|
||
|
|
|
||
|
|
test:
|
||
|
|
@echo "Running tests..."
|
||
|
|
go test ./...
|
||
|
|
|
||
|
|
lint:
|
||
|
|
@echo "Running linter..."
|
||
|
|
@if command -v golangci-lint > /dev/null 2>&1; then \
|
||
|
|
golangci-lint run; \
|
||
|
|
else \
|
||
|
|
echo "golangci-lint not installed, skipping lint"; \
|
||
|
|
fi
|
||
|
|
|
||
|
|
docker-build:
|
||
|
|
@echo "Building Docker image..."
|
||
|
|
docker build -t skyview .
|
||
|
|
|
||
|
|
podman-build:
|
||
|
|
@echo "Building Podman image..."
|
||
|
|
podman build -t skyview .
|
||
|
|
|
||
|
|
install-deps:
|
||
|
|
@echo "Installing Go dependencies..."
|
||
|
|
go mod tidy
|
||
|
|
|
||
|
|
.DEFAULT_GOAL := build
|