Makefile to make it easy to build the apps. Better readme files for the whole repo, moved ping_service readme to new name.
This commit is contained in:
57
Makefile
Normal file
57
Makefile
Normal file
@@ -0,0 +1,57 @@
|
||||
.PHONY: all build clean help ping-service input-service output-service manager test
|
||||
|
||||
# Default target
|
||||
all: build
|
||||
|
||||
# Build all services
|
||||
build: ping-service input-service output-service manager
|
||||
|
||||
# Build ping_service (root directory)
|
||||
ping-service:
|
||||
@echo "Building ping_service..."
|
||||
go build -o ping_service ping_service.go
|
||||
|
||||
# Build input_service
|
||||
input-service:
|
||||
@echo "Building input_service..."
|
||||
cd input_service && go build -ldflags="-s -w" -o http_input_service http_input_service.go
|
||||
|
||||
# Build output_service
|
||||
output-service:
|
||||
@echo "Building output_service..."
|
||||
cd output_service && go build -o output_service main.go
|
||||
|
||||
# Build manager
|
||||
manager:
|
||||
@echo "Building manager..."
|
||||
cd manager && go mod tidy && go build -o manager
|
||||
|
||||
# Clean all built binaries
|
||||
clean:
|
||||
@echo "Cleaning built binaries..."
|
||||
rm -f ping_service
|
||||
rm -f input_service/http_input_service
|
||||
rm -f output_service/output_service
|
||||
rm -f manager/manager
|
||||
@echo "Clean complete"
|
||||
|
||||
# Run tests for all services
|
||||
test:
|
||||
@echo "Running tests..."
|
||||
go test ./...
|
||||
cd input_service && go test ./...
|
||||
cd output_service && go test ./...
|
||||
cd manager && go test ./...
|
||||
|
||||
# Display help information
|
||||
help:
|
||||
@echo "Available targets:"
|
||||
@echo " all - Build all services (default)"
|
||||
@echo " build - Build all services"
|
||||
@echo " ping-service - Build ping_service only"
|
||||
@echo " input-service - Build input_service only"
|
||||
@echo " output-service - Build output_service only"
|
||||
@echo " manager - Build manager only"
|
||||
@echo " clean - Remove all built binaries"
|
||||
@echo " test - Run tests for all services"
|
||||
@echo " help - Display this help message"
|
||||
Reference in New Issue
Block a user