PoC: flat and advanced mode
This commit is contained in:
45
Makefile
Normal file
45
Makefile
Normal file
@@ -0,0 +1,45 @@
|
||||
.PHONY: build run clean test help
|
||||
|
||||
OUT_DIR=dist
|
||||
BINARY_NAME=argparse-builder.bin
|
||||
PORT=8080
|
||||
|
||||
help:
|
||||
@echo "Available targets:"
|
||||
@echo " build - Build the binary"
|
||||
@echo " run - Run the server"
|
||||
@echo " clean - Remove built artifacts"
|
||||
@echo " test - Test the API endpoint"
|
||||
@echo " strip - Build optimized binary (smaller size)"
|
||||
|
||||
build:
|
||||
@echo "Building $(BINARY_NAME)..."
|
||||
go build -o $(OUT_DIR)/$(BINARY_NAME)
|
||||
@echo "Built: $(BINARY_NAME) ($$(du -h $(OUT_DIR)/$(BINARY_NAME) | cut -f1))"
|
||||
|
||||
strip:
|
||||
@echo "Building optimized $(BINARY_NAME)..."
|
||||
go build -ldflags="-s -w" -o $(OUT_DIR)/$(BINARY_NAME)
|
||||
@echo "Built: $(BINARY_NAME) ($$(du -h $(OUT_DIR)/$(BINARY_NAME) | cut -f1))"
|
||||
|
||||
run: build
|
||||
@echo "Starting server on :$(PORT)..."
|
||||
./$(OUT_DIR)/$(BINARY_NAME)
|
||||
|
||||
clean:
|
||||
@echo "Cleaning..."
|
||||
rm -f $(OUT_DIR)/$(BINARY_NAME)
|
||||
@echo "Done"
|
||||
|
||||
test: build
|
||||
@echo "Testing API endpoint..."
|
||||
@./$(OUT_DIR)/$(BINARY_NAME) & \
|
||||
SERVER_PID=$$!; \
|
||||
sleep 2; \
|
||||
curl -s -X POST http://localhost:$(PORT)/generate \
|
||||
-H "Content-Type: application/json" \
|
||||
-d '{"header":"Test Script","arguments":[{"params":"-v --verbose","command":"verbose","helpText":"Verbose"}]}' \
|
||||
> /tmp/test_output.sh; \
|
||||
kill $$SERVER_PID 2>/dev/null; \
|
||||
echo "Generated test script:"; \
|
||||
cat /tmp/test_output.sh
|
||||
Reference in New Issue
Block a user