Skip to content

Add --list-inputs option to all OSRM tools for deployment scripts#7350

Open
afarber wants to merge 6 commits intoProject-OSRM:masterfrom
afarber:2865-list-required-files
Open

Add --list-inputs option to all OSRM tools for deployment scripts#7350
afarber wants to merge 6 commits intoProject-OSRM:masterfrom
afarber:2865-list-required-files

Conversation

@afarber
Copy link
Contributor

@afarber afarber commented Jan 30, 2026

Issue

Fixes #2865

This PR adds a --list-inputs option to all OSRM tools that outputs the required and optional input file extensions. This helps deployment scripts know which files need to be copied for each tool.

Example usage:

$ osrm-routed --list-inputs
required .osrm.datasource_names
required .osrm.ebg_nodes
required .osrm.edges
...                                                                                                                            
optional .osrm.hsgr                                                                                                            
optional .osrm.cells

Tasklist

Requirements / Relations

#3920

Copy link
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

This PR adds a --list-inputs command-line option to all OSRM tools (osrm-routed, osrm-datastore, osrm-partition, osrm-extract, osrm-customize, osrm-contract) to help deployment scripts identify which input files are required and optional for each tool. This addresses issue #2865 by providing a programmatic way to determine file dependencies without hardcoding them in deployment scripts.

Changes:

  • Added ListInputFiles() method to IOConfig class that outputs required and optional input file extensions
  • Integrated --list-inputs option into all six OSRM command-line tools
  • Added comprehensive unit tests for the new functionality

Reviewed changes

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

Show a summary per file
File Description
include/storage/io_config.hpp Adds ListInputFiles method to IOConfig base class to output required/optional file extensions
unit_tests/storage/io_config.cpp Comprehensive unit tests for ListInputFiles covering various scenarios including empty strings and edge cases
src/tools/routed.cpp Adds --list-inputs option to osrm-routed command-line interface
src/tools/store.cpp Adds --list-inputs option to osrm-datastore command-line interface
src/tools/partition.cpp Adds --list-inputs option to osrm-partition command-line interface
src/tools/extract.cpp Adds --list-inputs option to osrm-extract command-line interface
src/tools/customize.cpp Adds --list-inputs option to osrm-customize, lists both main config and updater config files
src/tools/contract.cpp Adds --list-inputs option to osrm-contract, lists both main config and updater config files
docs/routed.md Documents the new --list-inputs option with usage examples
CHANGELOG.md Adds entry for the new feature under Misc section

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

@afarber afarber force-pushed the 2865-list-required-files branch from 87db89e to 96a6116 Compare February 15, 2026 13:15
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.

OSRM tools should have a way to list the required files

2 participants