simplify
This commit is contained in:
parent
3d90388b5b
commit
7dc14da4af
85
Makefile
85
Makefile
@ -1,93 +1,22 @@
|
||||
# Makefile for Secret Manager - Simple Go CLI Tool
|
||||
|
||||
# Configuration
|
||||
BINARY_NAME = secret
|
||||
|
||||
default: build
|
||||
default: check
|
||||
|
||||
# Simple build (no code signing needed)
|
||||
build: clean
|
||||
@echo "Building secret manager..."
|
||||
go build -o $(BINARY_NAME) cmd/secret/main.go
|
||||
@echo "Build complete: ./$(BINARY_NAME)"
|
||||
./secret:
|
||||
go build -v -o $@ cmd/secret/main.go
|
||||
|
||||
# Build with verbose output
|
||||
build-verbose: clean
|
||||
@echo "Building with verbose output..."
|
||||
go build -v -o $(BINARY_NAME) cmd/secret/main.go
|
||||
@echo "Build complete: ./$(BINARY_NAME)"
|
||||
|
||||
# Vet the code
|
||||
vet:
|
||||
@echo "Running go vet..."
|
||||
go vet ./...
|
||||
|
||||
# Test with linting and vetting
|
||||
test: vet lint
|
||||
@echo "Running go tests..."
|
||||
test:
|
||||
go test -v ./...
|
||||
bash test_secret_manager.sh
|
||||
|
||||
# Run comprehensive test script
|
||||
test-comprehensive: build
|
||||
@echo "Running comprehensive test script..."
|
||||
@chmod +x test_secret_manager.sh
|
||||
@./test_secret_manager.sh
|
||||
|
||||
# Run all tests (unit tests + comprehensive tests)
|
||||
test-all: test test-comprehensive
|
||||
|
||||
# Lint the code
|
||||
lint:
|
||||
@echo "Running linter..."
|
||||
golangci-lint run --timeout 5m
|
||||
|
||||
# Check all code quality (build + vet + lint + unit tests)
|
||||
check: build vet lint test
|
||||
check: ./secret vet lint test
|
||||
|
||||
# Clean build artifacts
|
||||
clean:
|
||||
rm -f ./$(BINARY_NAME)
|
||||
|
||||
# Install to /usr/local/bin
|
||||
install: build
|
||||
@echo "Installing to /usr/local/bin..."
|
||||
sudo cp $(BINARY_NAME) /usr/local/bin/
|
||||
@echo "Installed to /usr/local/bin/$(BINARY_NAME)"
|
||||
|
||||
# Uninstall from /usr/local/bin
|
||||
uninstall:
|
||||
@echo "Removing from /usr/local/bin..."
|
||||
sudo rm -f /usr/local/bin/$(BINARY_NAME)
|
||||
@echo "Uninstalled $(BINARY_NAME)"
|
||||
|
||||
# Test keychain functionality
|
||||
test-keychain:
|
||||
@echo "Testing keychain functionality..."
|
||||
@./$(BINARY_NAME) --help > /dev/null 2>&1 && echo "Binary runs successfully" || echo "Binary failed to run"
|
||||
|
||||
# Help target
|
||||
help:
|
||||
@echo "Secret Manager - Simple Go CLI Tool"
|
||||
@echo "===================================="
|
||||
@echo ""
|
||||
@echo "Available targets:"
|
||||
@echo " build - Build the secret manager (default)"
|
||||
@echo " build-verbose - Build with verbose output"
|
||||
@echo " vet - Run go vet"
|
||||
@echo " lint - Run linter only"
|
||||
@echo " test - Run unit tests with vet and lint"
|
||||
@echo " test-comprehensive - Run comprehensive test script"
|
||||
@echo " test-all - Run both unit tests and comprehensive tests"
|
||||
@echo " check - Run all code quality checks"
|
||||
@echo " clean - Remove build artifacts"
|
||||
@echo " install - Install to /usr/local/bin"
|
||||
@echo " uninstall - Remove from /usr/local/bin"
|
||||
@echo " test-keychain - Test basic functionality"
|
||||
@echo " help - Show this help"
|
||||
@echo ""
|
||||
@echo "Usage:"
|
||||
@echo " make build && ./secret --help"
|
||||
@echo " make test-all # Run all tests"
|
||||
@echo " make check # Run all quality checks"
|
||||
|
||||
.PHONY: default build build-verbose vet test test-comprehensive test-all lint check clean install uninstall test-keychain help
|
||||
rm -f ./secret
|
||||
|
Loading…
Reference in New Issue
Block a user