Compare commits

...
Sign in to create a new pull request.

3 commits

Author SHA1 Message Date
vasilije
259e697d2f ruff fixes 2025-08-03 13:12:19 +02:00
vasilije
c1d67c9437 removed dockerfile modal 2025-08-03 12:47:52 +02:00
vasilije
70200c742a added fixes to mcp 2025-08-03 12:42:18 +02:00
4 changed files with 3409 additions and 3215 deletions

View file

@ -26,20 +26,19 @@ RUN apt-get update && apt-get install -y \
build-essential \
&& rm -rf /var/lib/apt/lists/*
# Copy pyproject.toml and lockfile first for better caching
COPY ./cognee-mcp/pyproject.toml ./cognee-mcp/uv.lock ./cognee-mcp/entrypoint.sh ./
# Install the project's dependencies using the lockfile and settings
RUN --mount=type=cache,target=/root/.cache/uv \
uv sync --frozen --no-install-project --no-dev --no-editable
# Copy main cognee project first (required dependency for cognee-mcp)
COPY pyproject.toml uv.lock ./
COPY cognee/ ./cognee/
# Copy Alembic configuration
COPY alembic.ini /app/alembic.ini
COPY alembic/ /app/alembic
# Then, add the rest of the project source code and install it
# Installing separately from its dependencies allows optimal layer caching
# Copy cognee-mcp project files
COPY ./cognee-mcp/pyproject.toml ./cognee-mcp/uv.lock ./cognee-mcp/entrypoint.sh ./
COPY ./cognee-mcp /app
# Install the project's dependencies using the lockfile and settings
RUN --mount=type=cache,target=/root/.cache/uv \
uv sync --frozen --no-dev --no-editable
@ -51,7 +50,6 @@ RUN apt-get update && apt-get install -y \
WORKDIR /app
COPY --from=uv /root/.local /root/.local
COPY --from=uv /app /app
RUN chmod +x /app/entrypoint.sh

View file

@ -24,7 +24,14 @@ echo "HTTP port: $HTTP_PORT"
# smooth redeployments and container restarts while maintaining data integrity.
echo "Running database migrations..."
MIGRATION_OUTPUT=$(alembic upgrade head)
# Detect if we're in Docker (alembic.ini in /app) or local (alembic.ini in parent dir)
if [ -f "/app/alembic.ini" ]; then
MIGRATION_OUTPUT=$(alembic -c /app/alembic.ini upgrade head 2>&1)
else
# Local execution - change to cognee root directory where alembic.ini exists
cd "$(dirname "$0")/.."
MIGRATION_OUTPUT=$(alembic upgrade head 2>&1)
fi
MIGRATION_EXIT_CODE=$?
if [[ $MIGRATION_EXIT_CODE -ne 0 ]]; then

View file

@ -786,12 +786,24 @@ async def main():
# Run Alembic migrations from the main cognee directory where alembic.ini is located
print("Running database migrations...")
migration_result = subprocess.run(
["python", "-m", "alembic", "upgrade", "head"],
capture_output=True,
text=True,
cwd=Path(__file__).resolve().parent.parent.parent,
)
# Detect if we're in Docker (alembic.ini in /app) or local (alembic.ini in parent dir)
if os.path.exists("/app/alembic.ini"):
# Docker environment - use explicit config path
migration_result = subprocess.run(
["python", "-m", "alembic", "-c", "/app/alembic.ini", "upgrade", "head"],
capture_output=True,
text=True,
cwd="/app",
)
else:
# Local environment - use relative path
migration_result = subprocess.run(
["python", "-m", "alembic", "upgrade", "head"],
capture_output=True,
text=True,
cwd=Path(__file__).resolve().parent.parent.parent,
)
if migration_result.returncode != 0:
migration_output = migration_result.stderr + migration_result.stdout

6575
cognee-mcp/uv.lock generated

File diff suppressed because it is too large Load diff