the --config-file global flag was defined but not properly used by most
commands. this fixes the flag to work consistently, allowing config to
be stored separately from the repo.
useful for Kubernetes deployments where config comes from a ConfigMap
and data lives on a PersistentVolume.
changes:
- fsrepo: add InitWithUserConfig/OpenWithUserConfig that respect custom
config paths
- fsrepo: fix InitWithUserConfig to create version/datastore_spec even
when config file already exists (pre-populated from ConfigMap)
- commands: update all commands that open repo to use the new functions
- daemon: add CONFIGURATION FILE MANAGEMENT section to help text
explaining difference between --init-config (one-time copy) and
--config-file (persistent external path)
- init: clarify that default-config template preserves Identity
PathOrCidPath was returning the error from the second path.NewPath call
instead of the original error when both attempts failed. This fix preserves
the first error before attempting the fallback, ensuring users get the
most relevant error message about their input.