Skip to content

[pixels-core, script] Improve deployment path compatibility #1350

Description

@AntiO2

Problem

Deployment scripts assume a shared installation path and a preconfigured Java environment. This breaks heterogeneous clusters where nodes use different PIXELS_HOME or JDK locations. In particular, daemon shutdown can fail because jps is not on PATH, and install.sh references a non-existent C++ properties template. Buffer object-storage folders without a trailing slash also form invalid object keys.

Proposed fix

  • Normalize the retina buffer storage folder with a trailing slash.
  • Resolve Java from a valid JAVA_HOME, PATH, or common node-local JDK locations; export its bin directory so jps is available.
  • Run remote worker/retina lifecycle commands against the target node's PIXELS_HOME and rewrite copied absolute paths during cluster sync.
  • Copy cpp/etc/pixels-cpp.properties from the installer.

Validation

  • bash -n install.sh scripts/bin/run-class.sh scripts/sbin/rsync-cluster.sh scripts/sbin/start-retina.sh scripts/sbin/start-workers.sh scripts/sbin/stop-retina.sh scripts/sbin/stop-workers.sh
  • mvn -pl pixels-core -DskipTests package

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions