Commit graph

503 commits

Author SHA1 Message Date
Zhaofeng Li
7602e548a7 hive: Mark all descriptions as Markdown
mdDoc didn't exist prior to 22.11 so we make it noop there.

Fixes #133.
2023-01-29 12:19:27 -07:00
Zhaofeng Li
9cb8413602 .github: Remove Nix matrix 2023-01-27 23:52:28 -07:00
Zhaofeng Li
f894e03f60 .github/build: Remove flake check 2023-01-27 23:52:28 -07:00
Zhaofeng Li
2500fd864c Add garnix config 2023-01-27 23:44:41 -07:00
Zhaofeng Li
941f48bd81 flake.nix: Add checks for integration tests 2023-01-27 23:44:41 -07:00
Zhaofeng Li
b7262f6781 flake.nix: Update nixpkgs, remove nix-eval-jobs 2023-01-27 23:44:41 -07:00
Zhaofeng Li
bf6b88867d integration-tests: Wait for initial SSH to succeed 2023-01-27 23:44:41 -07:00
Zhaofeng Li
79e4ff1337 integrationt-tests: Allocate 4GB RAM to deployer 2023-01-27 23:44:41 -07:00
Zhaofeng Li
ddf00fec66 integration-tests: Refactor pkgs 2023-01-27 23:44:41 -07:00
Zhaofeng Li
9c51ac1523 .github: Update Nix version to 2.13.2 2023-01-27 23:44:41 -07:00
Zhaofeng Li
9a81798083 .github: Update actions, switch to DetSys installer 2023-01-27 23:44:41 -07:00
Zhaofeng Li
95c5fa17fc Cargo.lock: Update 2023-01-27 23:44:41 -07:00
Zhaofeng Li
3d1cdbacd0
Merge pull request #119 from cprussin/main
Use nixops implementation of key services
2023-01-27 15:23:42 -07:00
Connor Prussin
4ce0b64e9a Fix test
Co-authored-by: Zhaofeng Li <hello@zhaofeng.li>
2023-01-27 13:43:12 -07:00
Connor Prussin
691ac99e4d Use nixops implementation of key services 2023-01-27 13:43:12 -07:00
Zhaofeng Li
64c46fa016 integration-tests: Drop makeTest 2022-12-01 10:55:27 -07:00
Zhaofeng Li
2e62cede0a integration-tests: Misc fixes after modularization 2022-12-01 10:55:27 -07:00
Zhaofeng Li
d597bdf4b3 integration-tests: Migrate to nix.settings
We no longer test against 22.05 so this can be updated.
2022-12-01 01:57:56 -07:00
Zhaofeng Li
8b87f0de02 integration-tests: Start migration to modular test framework
Still need to migrate most logic in tools.nix to modules.
2022-12-01 01:57:56 -07:00
Zhaofeng Li
92f0f155d4 flake.nix: Bump stable to 22.11, update unstable 2022-12-01 01:57:56 -07:00
Zhaofeng Li
fff97f7290
Merge pull request #126 from ThinkChaos/cli/nix-option
cli: Add --nix-option to allow passing arbitrary nix options
2022-11-13 17:03:55 -07:00
ThinkChaos
90c88ddd17 refactor: rename NixOptions to NixFlags
This helps differentiate in the code Nix's `--option` and other CLI
flags (previously referred to as options).
2022-11-13 16:53:04 -07:00
ThinkChaos
d73fa5d74f cli: Explicit value_name for --node to be all caps like others 2022-11-13 16:53:04 -07:00
ThinkChaos
19bf776e8e cli: Add --nix-option to allow passing arbitrary nix options 2022-11-13 16:53:00 -07:00
Zhaofeng Li
5432fe488e error: Add backtraces to ChildFailure and ChildKilled
The plan is to have more hierarchical error types so it's easier
to find exactly where in the deployment flow an error occurred.
2022-10-29 13:42:47 -06:00
Zhaofeng Li
715e10561b deployment: Pass job to host during upload_keys 2022-10-29 13:42:47 -06:00
Zhaofeng Li
2efa8d26c1 eval: Fix rustfmt 2022-10-29 02:36:11 -06:00
Zhaofeng Li
f6c13a20c3 eval: Use correct value parser for expression_file
Fallout from Clap 4.0 migration.
2022-10-29 02:24:57 -06:00
David Arnold
2bd563e847 fix: export assertion module 2022-10-23 13:09:54 -07:00
Zhaofeng Li
956c3363b8 deployment: Fail the evaluation job if any attribute fail to evaluate
nix-eval-jobs doesn't return non-zero exit code if any attribute
fail to evaluate. Let's just keep track ourselves.

Fixes #122.
2022-10-19 17:16:25 -06:00
Zhaofeng Li
872949504b Migrate to Clap 4.0
It was kind of a bumpy experience. Gradual migration to the Derive API
is coming soon.
2022-10-09 15:26:37 -06:00
Zhaofeng Li
bf95e2dce8 job: Fix job state update
Previously, if `old_state == new_state` the job metadata wasn't reinserted.
Just `get_mut` instead of removing and reinserting.
2022-10-09 15:26:37 -06:00
Zhaofeng Li
513ffd1f12 Apply fixes from Clippy 2022-10-09 15:26:37 -06:00
Zhaofeng Li
2b612e294b Cargo.lock: Update 2022-10-09 15:26:37 -06:00
Zhaofeng Li
4e4f9ad4d2
Merge pull request #121 from lovesegfault/utils-follows
refactor: misc flake improvements
2022-10-09 00:26:19 -06:00
Bernardo Meurer
2d98088877
refactor(flake): make nix-eval-jobs's flake-utils follow ours
This avoids having a duplicated flake-utils entry in the lockfile
2022-10-08 23:33:26 -03:00
Bernardo Meurer
8bec45393e
refactor(flake): rename utils to flake-utils
This is the expected name for downstream consumers of colmena's flake
who want to override the input.

Having it be named `utils` causes some surprise/confusion when doing
`inputs.flake-utils.follows` as is usual.
2022-10-08 23:31:22 -03:00
Zhaofeng Li
241b61dcc0 manual: Add 0.3.2 release notes 2022-09-29 01:03:08 -06:00
Zhaofeng Li
0ee3bb2e62 Update inotify-tools alias
No longer exists in unstable since https://github.com/NixOS/nixpkgs/pull/192681.
2022-09-28 18:47:42 -06:00
Zhaofeng Li
a8e6b999cf host/ssh: Fix extension matching for .drv
Oopsie
2022-09-21 00:40:27 -06:00
Zhaofeng Li
8b06bb108e .github/tests: Run tests with the full git checkout 2022-09-18 17:47:17 -06:00
Zhaofeng Li
3bdd0b1cc7 hive/flake.nix: Fix trailing whitespce 2022-09-18 17:45:43 -06:00
Zhaofeng Li
7fac0278e1 manual: Flake-enable deployments now use nix copy with ssh-ng:// 2022-09-18 17:27:46 -06:00
Zhaofeng Li
3e8ec98a26 ssh: Support using the experimental nix copy command to copy
The new SSH store protocol (ssh-ng://) provides better performance.
This is now enabled for flake deployments.
2022-09-18 17:27:46 -06:00
Zhaofeng Li
695ec0c36f Use --extra-experimental-features as opposed to --experimental-features 2022-09-18 17:27:46 -06:00
Zhaofeng Li
d4dcf1c6e9 Add support for using an already-evaluated hive
Note that the interface hasn't been finalized yet.
After this commit, the discovery order is:

1. flake.nix `colmenaHive` output (prepared hive)
2. flake.nix `colmena` output (raw hive)
3. hive.nix (raw hive)
2022-09-18 17:27:46 -06:00
Zhaofeng Li
bd048e98d8 flake.nix: Add lib.makeHive
Ground work to make the evaluation logic more clearly separated from
the deployment logic.

The `colmenaHive` output will be the integration point between the two
halves.
2022-09-18 17:27:46 -06:00
Zhaofeng Li
95be6686ae flake.nix: Reindent 2022-09-18 17:27:46 -06:00
Zhaofeng Li
4e828171d8 manual/keys: Add note about flake-copying behavior in Nix
Ref: #78
2022-09-18 17:27:46 -06:00
Zhaofeng Li
c171a43328 Cargo.lock: Update 2022-09-18 17:27:46 -06:00