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

Add support for CA derivations #838

Open
16 of 20 tasks
edolstra opened this issue Dec 16, 2020 · 1 comment · May be fixed by #875
Open
16 of 20 tasks

Add support for CA derivations #838

edolstra opened this issue Dec 16, 2020 · 1 comment · May be fixed by #875
Labels

Comments

@edolstra
Copy link
Member

edolstra commented Dec 16, 2020

New checklist

@Ericson2314: Updating with the plan I put up in #1316 (comment):

  • Nix to latest release
    • Merged to master
    • Deployed to staging (hydra.ngi0.nixos.org)
    • Ensure Schema is correctly what master says, doesn't have have traced of old CA experiment
      • Put NON NULL back on BuildOutputs.path and BuildStepOutputs.path (this part of the migration back off older CA stuff was not done automatically, but the contentAddressed column was correctly dropped).
    • Deployed to prod (hydra.nixos.org)
  • Prepare for CA derivation support with lower impact changes #1316 C++ changes without SQL schema changes to master
  • Allow building content-addressed derivations with hydra, minimally #1349 Rest of feature with schema changes!
    • Deploy to on staging (hydra.ngi0.nixos.org) with new ca-derivations experimental feature kept disabled
    • Merge to master
    • Evaluate cost of the migration adding column to prod (OK, hopefully?)
      • ALTER COLUMN DROP NOT NULL seems fine
    • Test some more (how? how long?)
    • Deploy to prod (hydra.nixos.org) with new ca-derivations experimental feature kept disabled
  • Enable new ca-derivations experimental feature on staging (hydra.ngi0.nixos.org)
  • Fix deep resolutions code in Hydra (and test?)
  • Enable ca-derivations experimental feature on prod (hydra.nixos.org)
  • Improve UX with CA derivations #875 Better UI, with more schema changes

Original description

Not clear yet how much of an impact this will have on the Hydra code base. The main consequence of CA derivations is that we don't know output paths in advance, but maybe that doesn't matter much for Hydra.

@thufschmitt thufschmitt linked a pull request Feb 23, 2021 that will close this issue
Ericson2314 added a commit to obsidiansystems/nix that referenced this issue Dec 8, 2023
This is needed for building CA deriations with a src store / dest store
split. In particular it is needed for Hydra.

NixOS/hydra#838 currently puts realizations,
and thus build outputs, in the local store, but it should not.
github-actions bot pushed a commit to NixOS/nix that referenced this issue Dec 9, 2023
This is needed for building CA deriations with a src store / dest store
split. In particular it is needed for Hydra.

NixOS/hydra#838 currently puts realizations,
and thus build outputs, in the local store, but it should not.

(cherry picked from commit 96dd757)
Ericson2314 added a commit to obsidiansystems/nix that referenced this issue Dec 11, 2023
*N.B. Backport is modified not to change any call sites / behavior.*

This is needed for building CA deriations with a src store / dest store
split. In particular it is needed for Hydra.

NixOS/hydra#838 currently puts realizations,
and thus build outputs, in the local store, but it should not.

(cherry picked with modifications from commit 96dd757)
@nixos-discourse
Copy link

This issue has been mentioned on NixOS Discourse. There might be relevant details there:

https://discourse.nixos.org/t/content-addressed-nix-call-for-testers/12881/221

Ericson2314 added a commit to ngi-nix/ngi0-infra that referenced this issue Jan 25, 2024
Per NixOS/hydra#838 we want to test that
NixOS/hydra#875 works both with and without it
enabled, so we can deploy without it first.
lorenzleutgeb pushed a commit to ngi-nix/ngipkgs that referenced this issue Apr 26, 2024
Per NixOS/hydra#838 we want to test that
NixOS/hydra#875 works both with and without it
enabled, so we can deploy without it first.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants