Skip to content

Introduce neo4j management domain#555

Merged
JohT merged 2 commits intomainfrom
feature/introduce-neo4j-management-domain
Apr 13, 2026
Merged

Introduce neo4j management domain#555
JohT merged 2 commits intomainfrom
feature/introduce-neo4j-management-domain

Conversation

@JohT
Copy link
Copy Markdown
Owner

@JohT JohT commented Apr 11, 2026

@JohT JohT self-assigned this Apr 11, 2026
@JohT JohT requested a review from Copilot April 11, 2026 08:27
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Introduces a new domains/neo4j-management/ vertical-slice domain to own the local Neo4j lifecycle (install/configure/start/stop), and updates the pipeline, tests, and documentation tooling to use the domain-based layout.

Changes:

  • Move Neo4j lifecycle scripts + neo4j.conf templates into domains/neo4j-management/ and add backward-compatible stubs in scripts/.
  • Update analyze.sh, init.sh, and docs to reference the new domain paths; extend runTests.sh and doc generators to include domains/.
  • Add Neo4j runtime detection helpers (detectNeo4j.sh, detectNeo4jWindows.sh) and domain-level README/changelog entry.

Reviewed changes

Copilot reviewed 25 out of 30 changed files in this pull request and generated 5 comments.

Show a summary per file
File Description
scripts/testAnalyzeDomainOption.sh Updates test harness to create placeholder neo4j-management domain scripts in temp domains dir.
scripts/startNeo4j.sh Replaced with backward-compatible redirect stub to domain implementation.
scripts/stopNeo4j.sh Replaced with backward-compatible redirect stub to domain implementation.
scripts/runTests.sh Expands test discovery to include domains/.
scripts/documentation/generateScriptReference.sh Makes script runnable from repo root and includes domain scripts in script reference generation.
scripts/documentation/generateEnvironmentVariableReference.sh Makes script runnable from repo root and includes domain scripts in env var reference generation.
scripts/analysis/analyze.sh Sources Neo4j setup/start/stop from ${DOMAINS_DIRECTORY}/neo4j-management/.
README.md Updates high-memory profile usage path to the new domain location.
init.sh Updates workspace forwarding scripts to point at domain Neo4j scripts.
domains/neo4j-management/README.md Adds domain-specific documentation and usage guidance.
domains/neo4j-management/setupNeo4j.sh Domain-owned Neo4j installer (download/plugins/config).
domains/neo4j-management/setupNeo4jInitialPassword.sh Domain-owned initial password setup script.
domains/neo4j-management/configureNeo4j.sh Domain-owned Neo4j configuration script, now reading templates from domain config dir.
domains/neo4j-management/startNeo4j.sh Domain-owned Neo4j start script.
domains/neo4j-management/stopNeo4j.sh Domain-owned Neo4j stop script.
domains/neo4j-management/waitForNeo4jHttpFunctions.sh Adjusts directory resolution for domain context + shared scripts directory.
domains/neo4j-management/useNeo4jHighMemoryProfile.sh Adjusts to source configureNeo4j.sh from domain location.
domains/neo4j-management/testConfigureNeo4j.sh Moves/adjusts integration tests for configureNeo4j.sh into the domain.
domains/neo4j-management/detectNeo4j.sh Adds Linux/macOS helper to detect a running Neo4j and its home dir.
domains/neo4j-management/detectNeo4jWindows.sh Adds Windows (WSL/Git Bash) helper to detect a running Neo4j and its home dir.
domains/neo4j-management/configuration/template-neo4j.conf Adds default v5 template in domain.
domains/neo4j-management/configuration/template-neo4j-high-memory.conf Adds high-memory v5 template in domain.
domains/neo4j-management/configuration/template-neo4j-low-memory.conf Adds low-memory v5 template in domain.
domains/neo4j-management/configuration/template-neo4j-v4.conf Adds v4 template in domain.
domains/neo4j-management/configuration/template-neo4j-v4-low-memory.conf Adds low-memory v4 template in domain.
COMMANDS.md Updates links/examples to reference domain Neo4j scripts/templates.
CHANGELOG.md Adds unreleased entry documenting the new neo4j-management domain.
.github/workflows/internal-scripts-reference-documentation.yml Runs script reference generator from repo root (no working-directory).
.github/workflows/internal-environment-variables-reference-documentation.yml Runs env var reference generator from repo root (no working-directory).
.github/prompts/plan-neo4jManagementDomain.prompt.md Adds planning prompt documenting the intended migration steps.
Comments suppressed due to low confidence (1)

domains/neo4j-management/setupNeo4j.sh:91

  • This error message references ${NEO4J_DOWNLOAD_BASE_URL}, but that variable is never set in this script (or sourced before this point), so the message will be incomplete/misleading. Consider either defining NEO4J_DOWNLOAD_BASE_URL (and using it consistently for downloads) or inlining the actual base URL used above (https://dist.neo4j.org/).

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@JohT JohT force-pushed the feature/introduce-neo4j-management-domain branch from 2037e8d to 2c76e57 Compare April 11, 2026 11:06
@JohT JohT changed the title Feature/introduce neo4j management domain Introduce neo4j management domain Apr 11, 2026
@JohT JohT force-pushed the feature/introduce-neo4j-management-domain branch 3 times, most recently from 03cf8ed to 80df432 Compare April 12, 2026 06:51
@JohT JohT requested a review from Copilot April 12, 2026 06:52
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 27 out of 32 changed files in this pull request and generated 2 comments.

Comments suppressed due to low confidence (1)

scripts/documentation/generateScriptReference.sh:52

  • generateScriptReference.sh now cds to the repo root and uses the raw find . paths (e.g. ./domains/..., ./init.sh) when building Markdown links, but it still writes the output to scripts/SCRIPTS.md. Relative links in scripts/SCRIPTS.md are resolved from the scripts/ directory, so links to ./domains/... or ./init.sh will be broken (they’ll resolve to scripts/domains/... / scripts/init.sh). Consider generating links relative to scripts/ (e.g., strip a leading ./scripts/ and prefix ../ for non-scripts paths) or emitting repo-root-relative links (/domains/..., /init.sh) so the table remains navigable.
# Loop through all script files in all directories from the repository root
find . -type f -name "*.sh" | sort | while read -r script_file; do
    # Get the description of the script file
    description=$(awk 'NR>1 && /^ *#/{sub(/^ *# ?/,""); print; exit}' "$script_file")

    # Extract the script file name without the path
    filename=$(basename "$script_file")
    
    # Extract the script file path without the name
    pathname=$(dirname "$script_file")
    last_path_segment=$(basename "$pathname")
    
    # Create a link to the script file in the table
    link="[${filename}](${script_file})"
    
    # Add the script file and its description to the Markdown table
    echo "| ${link} | ${last_path_segment%%.} | ${description//|/\\|} |" >> ${markdown_file}
done

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@JohT JohT force-pushed the feature/introduce-neo4j-management-domain branch 3 times, most recently from 6ee11df to 68e4a6e Compare April 12, 2026 07:14
@JohT JohT marked this pull request as ready for review April 12, 2026 07:15
@JohT JohT force-pushed the feature/introduce-neo4j-management-domain branch from 68e4a6e to e675624 Compare April 13, 2026 07:11
@JohT JohT requested a review from Copilot April 13, 2026 07:12
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 32 out of 37 changed files in this pull request and generated 6 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@JohT JohT force-pushed the feature/introduce-neo4j-management-domain branch from e675624 to 176cee5 Compare April 13, 2026 11:32
@JohT JohT force-pushed the feature/introduce-neo4j-management-domain branch from 176cee5 to 593815b Compare April 13, 2026 12:35
@JohT JohT merged commit f60e292 into main Apr 13, 2026
11 checks passed
@JohT JohT deleted the feature/introduce-neo4j-management-domain branch April 13, 2026 13:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants