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

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions