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
|
default: check
|
||||||
|
|
||||||
# Configuration
|
|
||||||
BINARY_NAME = secret
|
|
||||||
|
|
||||||
default: build
|
|
||||||
|
|
||||||
# Simple build (no code signing needed)
|
# Simple build (no code signing needed)
|
||||||
build: clean
|
./secret:
|
||||||
@echo "Building secret manager..."
|
go build -v -o $@ cmd/secret/main.go
|
||||||
go build -o $(BINARY_NAME) cmd/secret/main.go
|
|
||||||
@echo "Build complete: ./$(BINARY_NAME)"
|
|
||||||
|
|
||||||
# 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:
|
vet:
|
||||||
@echo "Running go vet..."
|
|
||||||
go vet ./...
|
go vet ./...
|
||||||
|
|
||||||
# Test with linting and vetting
|
test:
|
||||||
test: vet lint
|
|
||||||
@echo "Running go tests..."
|
|
||||||
go test -v ./...
|
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:
|
lint:
|
||||||
@echo "Running linter..."
|
|
||||||
golangci-lint run --timeout 5m
|
golangci-lint run --timeout 5m
|
||||||
|
|
||||||
# Check all code quality (build + vet + lint + unit tests)
|
# Check all code quality (build + vet + lint + unit tests)
|
||||||
check: build vet lint test
|
check: ./secret vet lint test
|
||||||
|
|
||||||
# Clean build artifacts
|
# Clean build artifacts
|
||||||
clean:
|
clean:
|
||||||
rm -f ./$(BINARY_NAME)
|
rm -f ./secret
|
||||||
|
|
||||||
# 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
|
|
||||||
|
Loading…
Reference in New Issue
Block a user