Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Load the correct defaults file when loading packages #818

Merged
merged 1 commit into from
Dec 8, 2023

Commits on Dec 7, 2023

  1. Load the correct defaults file when loading packages

    Previously, we would always load `defaults-release.sh`, even when another
    default was specified (such as `--defaults=o2`). Then, we'd override some of
    the keys of `defaults-release.sh` with those from the correct defaults file.
    
    While we currently cover the most frequently-used keys in defaults (env,
    disable, overrides), this is obviously a massive footgun. It also means we
    must always have a `defaults-release.sh` file present, even if that default is
    never used.
    
    This patch changes `getPackageList()` to load the correct underlying defaults
    file. It does not touch the override logic in `parseDefaults()`, which can
    probably be signficantly simplified after this patch is applied, but that's
    fiddly and would make this change less reviewable, so I'll leave it for
    another commit. This does mean that we'd load e.g. `defaults-o2.sh` and then
    override some of its keys with the same values loaded previously, but that
    shouldn't hurt.
    
    Internally, all defaults are still called `defaults-release` to allow sharing
    packages between defaults (which I assume was the original motivation for
    doing this). There's not much point currently, since we set `env:` differently
    in all defaults, but we might want to use this in future.
    TimoWilken committed Dec 7, 2023
    Configuration menu
    Copy the full SHA
    25e1e43 View commit details
    Browse the repository at this point in the history