Skip to content
Commit 2e4b499b authored by Ryan Roberts's avatar Ryan Roberts
Browse files

core: Expand SHRINKWRAP_CONFIG to support multiple paths.



We want to make it possible for multiple config stores to coexist. This
enables the user to use the standard store that ships with shrinkwrap
and add in extra stores for configs that can't be shared publicly (for
example). References to yaml files should resolve across stores.

We solve this by extending the SHRINKWRAP_CONFIG environment variable to
behave like $PATH. It is now a colon-separated list of config store
paths, in preference order, with the most preferred appearing first. We
have also removed the old behaviour where shrinkwrap would default to
the config store at its root when the variable is not set. Instead we
now raise an error. This change is so that we can decouple the config
store from shrinkwrap entirely.

Everything works out fairly well, except for one aspect; Resolving the
${param:configdir} macro now requires knowing what's being looked up in
the config store and finding the store that contains it. This is
implemented and appears to work reliably. But means we can only allow
the use of this macro for resolving files that already exist and are
inputs to the process. This is not a problem for existing uses.

Signed-off-by: Ryan Roberts's avatarRyan Roberts <ryan.roberts@arm.com>
parent f6bd6839
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment