Commit graph

303 commits

Author SHA1 Message Date
Zhaofeng Li
3e7341a98c utils.rs: Tolerate invalid UTF-8 in streams
This will substitute any invalid UTF-8 sequence with `\u{fffd}`. Such
substitutions are okay for human-readable log outputs.

Correctness: A side-effect of this is that it also affects the code
that captures filesystem paths from stdout, in which case any substitution
is unacceptable. Currently we only capture store paths from Nix, and Nix
restricts characters allowed in derivation names. Nevertheless we will
refactor this for correctness.

Fixes #75.
2022-04-25 00:03:57 -07:00
Zhaofeng Li
6a64625fda eval.nix: Ignore typed allowAliases config when checking unoverridden config keys
This was added in NixOS/nixpkgs#166792.

Fixes #74.
2022-04-25 00:03:57 -07:00
Zhaofeng Li
879e49a455 manual: Add release notes 2022-04-19 00:29:35 -07:00
Zhaofeng Li
c509cc21ba manual/parallelism.md: Mention nix-eval-jobs support 2022-04-19 00:29:35 -07:00
Zhaofeng Li
ab754ac2e3 Squelch dead code warnings on non-Linux platforms (aka macOS) 2022-04-19 00:29:35 -07:00
Zhaofeng Li
0201f5c320 Update deps 2022-04-19 00:29:35 -07:00
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