diff --git a/src/containers/docker/neo4j/backend/poetry.lock b/src/containers/docker/neo4j/backend/poetry.lock index 6b3212c..fc33564 100644 --- a/src/containers/docker/neo4j/backend/poetry.lock +++ b/src/containers/docker/neo4j/backend/poetry.lock @@ -1359,4 +1359,4 @@ dev = ["black (>=19.3b0)", "pytest (>=4.6.2)"] [metadata] lock-version = "2.0" python-versions = ">=3.11,<4.0" -content-hash = "e380e24986b32e7c7ad1867f44fd1a553e18ce441eea27509e5cb314599d1ab9" +content-hash = "42193895bcbc35dd849f885cda7d2470cae5de22cdcf0b9ec954b74e1729e4f0" diff --git a/src/containers/docker/neo4j/backend/pyproject.toml b/src/containers/docker/neo4j/backend/pyproject.toml index 58e56af..9355749 100644 --- a/src/containers/docker/neo4j/backend/pyproject.toml +++ b/src/containers/docker/neo4j/backend/pyproject.toml @@ -23,6 +23,7 @@ bcrypt = "^4.1.2" pydantic-settings = "^2.2.1" requests = "^2.31.0" neo4j = "^5.23.0" +numpy = "^2.0.1" [tool.poetry.group.dev.dependencies] diff --git a/src/containers/docker/neo4j/backend/src/backend/__main__.py b/src/containers/docker/neo4j/backend/src/backend/__main__.py index 42e8000..5adf542 100644 --- a/src/containers/docker/neo4j/backend/src/backend/__main__.py +++ b/src/containers/docker/neo4j/backend/src/backend/__main__.py @@ -1,5 +1,7 @@ import os +import string +import numpy as np from loguru import logger from neo4j import GraphDatabase @@ -28,7 +30,7 @@ resp = list(session.run(cmd, None)) print(resp) - resp = list(session.run(query, parameters={'rows': ["d"]})) + resp = list(session.run(query, parameters={'rows': list(string.ascii_lowercase)})) query = ''' UNWIND $row.table_keywords AS keyword @@ -39,11 +41,13 @@ MERGE (p)-[:CONTAINS]->(k) RETURN k.name AS name ''' + rng = np.random.default_rng(2) with driver.session(database="neo4j") as session: for record in [ { - "table_keywords": ["a", "c", "b"], - "product": "d", + "table_keywords": rng.choice(list(string.ascii_lowercase), 3), + "product": each, } + for each in list(string.ascii_lowercase) ]: resp = list(session.run(query, parameters={'row': record})) diff --git a/src/containers/docker/neo4j/docker-compose.yml b/src/containers/docker/neo4j/docker-compose.yml index 73b0720..e5bf918 100644 --- a/src/containers/docker/neo4j/docker-compose.yml +++ b/src/containers/docker/neo4j/docker-compose.yml @@ -18,6 +18,12 @@ services: - "7687:7687" networks: - net + healthcheck: + test: wget http://localhost:7474 || exit 1 + interval: 1s + timeout: 10s + retries: 20 + start_period: 3s add-data: build: context: . @@ -26,7 +32,8 @@ services: - HOSTNAME=neo4j entrypoint: python -m backend depends_on: - - neo4j + neo4j: + condition: service_healthy networks: - net deploy: diff --git a/src/containers/docker/neo4j/frontend/package-lock.json b/src/containers/docker/neo4j/frontend/package-lock.json index ea52c2f..ec07352 100644 --- a/src/containers/docker/neo4j/frontend/package-lock.json +++ b/src/containers/docker/neo4j/frontend/package-lock.json @@ -11,7 +11,8 @@ "neovis.js": "^2.1.0", "next": "14.2.5", "react": "^18", - "react-dom": "^18" + "react-dom": "^18", + "vis-network": "^9.1.9" }, "devDependencies": { "@types/node": "^20", diff --git a/src/containers/docker/neo4j/frontend/package.json b/src/containers/docker/neo4j/frontend/package.json index 035c356..6843af2 100644 --- a/src/containers/docker/neo4j/frontend/package.json +++ b/src/containers/docker/neo4j/frontend/package.json @@ -12,7 +12,8 @@ "neovis.js": "^2.1.0", "next": "14.2.5", "react": "^18", - "react-dom": "^18" + "react-dom": "^18", + "vis-network": "^9.1.9" }, "devDependencies": { "@types/node": "^20",