Commit graph

397 commits

Author SHA1 Message Date
Zhaofeng Li
5a81996afb ssh: Enable BatchMode 2022-04-19 00:29:35 -07:00
Zhaofeng Li
11289dd7ff package.nix: Remove conditionals on nix-eval-jobs 2022-04-03 19:10:46 -07:00
Zhaofeng Li
9f7f2c9cce .github: Add 2.7.0 and 2.8.0pre, remove 2.5.1, 2.6.0, 2.7.0pre 2022-04-03 17:16:01 -07:00
Zhaofeng Li
4de46cd339 flake.lock: Update 2022-04-03 17:16:01 -07:00
Zhaofeng Li
b9496cf3d8 Update deps 2022-04-03 17:16:01 -07:00
Zhaofeng Li
017ccf142c flake.lock: Update
All downstream patches to nix-eval-jobs have been merged and released
as part of nix-eval-jobs 0.0.4.
2022-03-19 20:31:26 -07:00
Zhaofeng Li
f81170c8ee Cargo.lock: Bump indicatif
Fixes #65.
2022-03-16 23:33:14 -07:00
Zhaofeng Li
1decf15b36 manual: Fix directory structure
With linkcheck, now there are multiple mdbook outputs.
2022-03-08 10:27:43 -08:00
Zhaofeng Li
26b2203da9 Update deps 2022-03-07 22:02:04 -08:00
Zhaofeng Li
6340b8ba50 manual: Integrate mdbook-linkcheck 2022-03-07 22:02:04 -08:00
Zhaofeng Li
514cff68bd package.nix: Unset NIX_EVAL_JOBS if nix-eval-jobs not pinned 2022-03-07 22:02:04 -08:00
Zhaofeng Li
e27033119b flake.lock: Update 2022-03-07 22:02:04 -08:00
Zhaofeng Li
108c135700 Rename: NixFailure -> ChildFailure, NixKilled -> ChildKilled 2022-03-07 22:02:04 -08:00
Glenn McDonald
9c179b0db8
apply_local: Fix nixos detection from os-release (#63) 2022-03-07 20:52:22 -08:00
Zhaofeng Li
2b281286d0
eval.nix: Add "${name}-key.service" units for keys (#51)
Fixes #48.
2022-02-16 10:23:27 -08:00
Zhaofeng Li
09a8a72b0c flake.nix: Add nix-eval-jobs patch to fix buffering 2022-02-16 01:11:06 -08:00
Zhaofeng Li
85b0107b59 eval.nix: Skip recursive type checking for nodes in colmena eval as well
This matches the behavior of the `nodes` argument in NixOS modules.
2022-02-16 01:11:06 -08:00
Zhaofeng Li
6146aef174 default.nix: Return a derivation directly 2022-02-16 01:11:06 -08:00
Zhaofeng Li
432dd4edbe flake.lock: Update 2022-02-16 01:11:06 -08:00
Zhaofeng Li
0080622ad1 Cargo.lock: Update 2022-02-16 01:11:06 -08:00
Linus Heckemann
efa7322587
streaming evaluator: respect eval-nodes-limit (#58) 2022-02-16 01:10:52 -08:00
Zhaofeng Li
c088925e0d Misc doc tweaks 2022-02-05 18:43:43 -08:00
Zhaofeng Li
e7d4792634 flake.nix: Let's just patch the nix-eval-jobs in nixpkgs
Anything that links against Nix feels so fragile *shrugs*
2022-02-04 23:28:15 -08:00
Zhaofeng Li
f3aba244f5 flake.lock: Update nix-eval-jobs
Fixes darwin build
2022-02-04 22:10:35 -08:00
Zhaofeng Li
7772335617 manual/multi-arch: Mention remote builds 2022-02-04 20:58:17 -08:00
Zhaofeng Li
d7b5cfb2ae .github: Add 2.7.0pre to matrix 2022-02-04 20:58:17 -08:00
Zhaofeng Li
e3c0686c67 Update deps 2022-02-04 20:58:17 -08:00
Zhaofeng Li
ca6ad0de38 integration-tests: Fix flakes test in Nix 2.6
Using a symlink to a Nix store path no longer works.
2022-02-04 20:58:17 -08:00
Zhaofeng Li
94c7e5c79a .github: Add Nix 2.6.0 to matrix 2022-02-04 20:58:17 -08:00
Zhaofeng Li
501ca74ce6 flake.lock: Update nixpkgs and stable 2022-02-04 20:58:17 -08:00
Zhaofeng Li
45b135c1b1 nix_eval_jobs: Add timeouts to tests
Sometimes nix-eval-jobs would lock up indefinitely, so let's make it
fail fast in CI.

Also ignore test_json_global_error while we investigate.
2022-02-04 20:58:17 -08:00
Zhaofeng Li
856f82644e apply_local: Fix argument name typo
Caught by debug assertions in clap 3.0. We should switch to the Derive
API where possible to prevent this from happening in the future.
2022-01-27 18:48:25 -08:00
Zhaofeng Li
6d5b7d7e3e integration-tests: Only enable documentation build in apply test
Otherwise it takes too long :/
2022-01-27 18:48:25 -08:00
Zhaofeng Li
0a955d0a4c integration-tests: Also run apply test against stable nixpkgs 2022-01-27 18:48:25 -08:00
Zhaofeng Li
6bff965a39 integration-tests: Enable documentation build
It makes sense to keep the tests as close to real life (docs enabled)
as possible.

Ref: #50
2022-01-25 15:03:59 -08:00
Zhaofeng Li
f674ddf173 key: Compute full path to key file in Nix 2022-01-25 14:22:26 -08:00
Zhaofeng Li
e58dde1be0 eval.nix: Don't override modulesPath
`eval-config.nix` will set the canonical path for us that will then be used
to strip the module path prefixes in `nixos/modules/misc/documentation.nix` [1].
This should fix split docs build problems described in #50.

[1] 1511e72b75/nixos/modules/misc/documentation.nix (L79)
2022-01-25 14:22:26 -08:00
Zhaofeng Li
7cd9b6f70c eval.nix: Don't pass baseModules to modules
This is unnecessary and breaks the separation of user `modules`
and `baseModules` in `eval-config.nix`.
2022-01-25 14:22:26 -08:00
Zhaofeng Li
9251019723 nix_eval_jobs: Errors may not have an attribute name attached 2022-01-25 14:22:26 -08:00
Zhaofeng Li
c0107b21e0 General code cleanup 2022-01-25 14:22:26 -08:00
Zhaofeng Li
0019fa8239 Update deps 2022-01-25 14:22:26 -08:00
Paul Haerle
5b8971a0f4
eval.nix: expose nixosModules.deploymentOptions (#49)
Allow flake users to import .#nixosModules.deploymentOptions
into their flake, so that the same expression can be used for both,
.#colmena.$host as well as .#nixosConfiguration.$host, without the
latter complaining about undefined options in "deployment".
2022-01-23 10:06:41 -08:00
Zhaofeng Li
f4896aad39 flake.nix: Fix trailing whitespace 2022-01-22 17:53:54 -08:00
Zhaofeng Li
0d9198c351 spinner: Work around the lack of newline after completion 2022-01-22 17:50:53 -08:00
Zhaofeng Li
57b3ccca85 integration-tests: Test streaming evaluator 2022-01-22 17:50:53 -08:00
Zhaofeng Li
87189ec3df nix_info: Display pinned nix-eval-jobs path 2022-01-22 17:50:53 -08:00
Zhaofeng Li
faf84d5718 flake.nix: Use own nix-eval-jobs fork
Currently we depend on changes that are not yet in a released
version of nix-eval-jobs. This pin needs to go before the 0.3
release.
2022-01-22 17:50:53 -08:00
Zhaofeng Li
cf9a72a1d4 nix: Add initial nix-eval-job integration
A DrvSetEvaluator is able to evaluate attribute sets of derivations,
streaming results as they come in.
2022-01-22 17:50:53 -08:00
Zhaofeng Li
3e40e84e19 nix: Add NixExpression abstraction
This decouples expression generation from evaluation. `NixExpression`s
that evaluate to a set of derivations can be fed to `DrvSetEvaluator`s
which may be able to parallelize evaluation.
2022-01-22 17:50:53 -08:00
Zhaofeng Li
9fbb6b133b job: Make it possible to have a JobHandle not connected to a JobMonitor 2022-01-22 17:50:53 -08:00