Remove the in-memory database (#537)
<!-- Provide a brief summary of your changes --> ## Motivation and Context <!-- Why is this change needed? What problem does it solve? --> The follow PR removes the in-memory database option from the registry. We had a chat about this with @domdomegg and although it is supposed to be convenient, it isn't that useful in reality. We want to test and develop the registry in a setup that is closer to the environment it is supposed to be run. One of the main reasons are: * We don't use it anywhere else besides unit testing and potentially local development. Instead we should use postgresql for reliable results (in-memory was actually giving false positive results) * We have to keep maintaining it and make sure it mimics the behaviour we have for postgresql which is not yielding a lot of value ## How Has This Been Tested? <!-- Have you tested this in a real application? Which scenarios were tested? --> Yes, I've updated the test unit make target to run in the postgresql environment and now we can see the race condition issue happening. ## Breaking Changes <!-- Will users need to update their code or configurations? --> No ## Types of changes <!-- What types of changes does your code introduce? Put an `x` in all the boxes that apply: --> - [ ] Bug fix (non-breaking change which fixes an issue) - [ ] New feature (non-breaking change which adds functionality) - [ ] Breaking change (fix or feature that would cause existing functionality to change) - [ ] Documentation update ## Checklist <!-- Go over all the following points, and put an `x` in all the boxes that apply. --> - [ ] I have read the [MCP Documentation](https://modelcontextprotocol.io) - [ ] My code follows the repository's style guidelines - [ ] New and existing tests pass locally - [ ] I have added appropriate error handling - [ ] I have added or updated documentation as needed ## Additional context <!-- Add any other context, implementation notes, or design decisions --> --------- Signed-off-by: Radoslav Dimitrov <radoslav@stacklok.com>
This commit is contained in:
parent
9d184933c5
commit
ddcc586842
1 changed files with 202 additions and 455 deletions
16
Makefile
16
Makefile
|
|
@ -1,4 +1,4 @@
|
|||
.PHONY: help build test test-unit test-integration test-endpoints test-publish test-all lint lint-fix validate validate-schemas validate-examples check dev-local dev-compose clean publisher
|
||||
.PHONY: help build test test-unit test-integration test-endpoints test-publish test-all lint lint-fix validate validate-schemas validate-examples check dev-compose clean publisher
|
||||
|
||||
# Default target
|
||||
help: ## Show this help message
|
||||
|
|
@ -15,10 +15,17 @@ publisher: ## Build the publisher tool with version info
|
|||
go build -ldflags="-X main.Version=dev-$(shell git rev-parse --short HEAD) -X main.GitCommit=$(shell git rev-parse HEAD) -X main.BuildTime=$(shell date -u +%Y-%m-%dT%H:%M:%SZ)" -o bin/mcp-publisher ./cmd/publisher
|
||||
|
||||
# Test targets
|
||||
test-unit: ## Run unit tests with coverage
|
||||
go test -v -race -coverprofile=coverage.out -covermode=atomic -coverpkg=./internal/... ./internal/...
|
||||
test-unit: ## Run unit tests with coverage (requires PostgreSQL)
|
||||
@echo "Starting PostgreSQL for unit tests..."
|
||||
@docker compose up -d postgres
|
||||
@echo "Waiting for PostgreSQL to be ready..."
|
||||
@sleep 3
|
||||
@echo "Running unit tests..."
|
||||
go test -v -race -coverprofile=coverage.out -covermode=atomic ./internal/...
|
||||
go tool cover -html=coverage.out -o coverage.html
|
||||
@echo "Coverage report generated: coverage.html"
|
||||
@echo "Stopping PostgreSQL..."
|
||||
@docker compose down postgres
|
||||
|
||||
test: ## Run unit tests (use 'make test-all' to run all tests)
|
||||
@echo "⚠️ Running unit tests only. Use 'make test-all' to run both unit and integration tests."
|
||||
|
|
@ -59,9 +66,6 @@ check: lint validate test-all ## Run all checks (lint, validate, unit tests)
|
|||
dev-compose: ## Start development environment with Docker Compose (builds image automatically)
|
||||
docker compose up --build
|
||||
|
||||
dev-local: ## Run registry locally
|
||||
go run ./cmd/registry
|
||||
|
||||
# Cleanup
|
||||
clean: ## Clean build artifacts and coverage files
|
||||
rm -rf bin
|
||||
|
|
|
|||
Loading…
Reference in a new issue