www/app/Core/Config.php configures the web application. The installer writes it from Config.php.dist, filling in the paths, the database password and the worker API key from your answers.

The installer rewrites Config.php every time it runs, so any change you make by hand is lost on the next upgrade. Keep a copy, and merge your changes back in after upgrading.

Paths

Constant Default Description
CRUISEDATA_BASEDIR /data/CruiseData The shipboard data warehouse: the directory holding each cruise’s directory
CRUISEDATA_APACHEDIR /CruiseData The web server alias for CRUISEDATA_BASEDIR
PUBLICDATA_DIR /data/PublicData The PublicData share, copied into the cruise by the From_PublicData extra directory
SHOW_PUBLICDATA true false if the PublicData share isn’t installed (set from the installer’s answer)
TRANSFER_LOG_DIR /var/log/openvdm Where transfer log files are written (outside the cruise directory since 2.15)
DASHBOARD_CONF <install root>/openvdm/www/etc/datadashboard.yaml The data dashboard configuration
LOWERINGDATA_BASEDIR Vehicle Directory inside the cruise directory that holds the lowerings

Names

What the web interface calls a cruise (e.g. Expedition, Voyage) and a lowering (e.g. Dive, Deployment), and the site title:

define('CRUISE_NAME', 'Cruise');
define('LOWERING_NAME', 'Lowering');
define('SITETITLE', 'Open Vessel Data Management v2.16.0');

SHOW_CRUISE_META_IN_UI (default false) adds a panel with the cruise’s metadata to the page header.

Generated Files

The names of the files OpenVDM writes into each cruise:

Constant Default
CRUISE_CONFIG_FN cruise_config.json
LOWERING_CONFIG_FN lowering_config.json
MD5_SUMMARY_FN md5_summary.txt
MD5_SUMMARY_MD5_FN md5_summary.md5
DATA_DASHBOARD_MANIFEST_FN manifest.json

If you change CRUISE_CONFIG_FN or the MD5 summary names, update the matching “OpenVDM Configuration” and “MD5 Summary” entries under Configuration → System.

Database

define('DB_HOST', 'localhost');
define('DB_NAME', 'openvdm');
define('DB_USER', 'survey');     // the OpenVDM user, set by the installer
define('DB_PASS', '...');        // set by the installer

Worker API Key

define('WORKER_API_KEY', '...'); // generated by the installer

The workers send this key with their API requests to receive transfer passwords. It must match workerApiKey in openvdm.yaml. The installer keeps the existing key when it rewrites the file.

Updated: