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
Zhaofeng Li
52b594a167
apply: Run rustfmt
2022-09-01 18:49:11 -06:00
Zhaofeng Li
f01f6ac197
deployment: Move post-activation key upload after reboot
...
Ref: #113
2022-09-01 18:42:37 -06:00
Zhaofeng Li
3af3751d8e
apply: Default to the "boot" goal if --reboot is passed
...
Fixes #113 .
2022-09-01 18:42:37 -06:00
Zhaofeng Li
e7356e2c5c
.github: Upgrade runner to macOS 12
2022-08-28 00:45:23 -06:00
Zhaofeng Li
e740a50b73
nix/assets: Use more descriptive prefix for temp dir
2022-08-28 00:45:23 -06:00
Zhaofeng Li
1a97f8d207
manual/release-notes: Update 0.3.1 release date
...
It's a month late :/
2022-08-28 00:45:23 -06:00
Zhaofeng Li
9d1beeadb3
manual: Add 0.3.1 release notes
2022-08-28 00:45:23 -06:00
Zhaofeng Li
3fbc5eeb11
repl: Add arguments depending on Nix version
2022-08-17 11:56:30 -06:00
Zhaofeng Li
741d5c4fbb
repl: Use a temporary file for the expression
...
This makes it compatible with Nix 2.3+.
2022-08-17 11:56:30 -06:00
Zhaofeng Li
797297b609
integration-tests/flakes: Check pure evaluation
2022-08-17 01:09:43 -06:00
Zhaofeng Li
4cdb21be0b
integration-tests/flakes: Eliminate slow nixpkgs copy
2022-08-17 01:09:43 -06:00
Zhaofeng Li
7aa1607a3c
nix_eval_jobs: Pass the expression on the command line
...
This gets rid of the temporary file.
2022-08-17 01:09:43 -06:00
Zhaofeng Li
976849028b
flake.nix: Add patched nix-eval-jobs with pure-eval fixes
2022-08-17 01:09:43 -06:00
Zhaofeng Li
06168dabf3
nix_eval_jobs: Remove --impure
...
Note that this still does not make flake evaluation pure in
nix-eval-jobs yet, since it forcibly resets `evalSettings.pureEval`
prior to starting the evaluation.
2022-08-16 20:38:42 -06:00
Zhaofeng Li
c540e00861
Add repl
subcommand
...
Fixes #115 .
2022-08-16 20:16:00 -06:00
Zhaofeng Li
11add6501e
exec: Set label width in output
2022-08-16 20:16:00 -06:00
Zhaofeng Li
247d5754db
integration-tests/flakes: Fix impure use of <nixpkgs>
...
Caught by pure eval :)
2022-08-16 20:16:00 -06:00
Zhaofeng Li
80426aa814
cli: Support passing --impure
2022-08-16 20:16:00 -06:00
Zhaofeng Li
8aca525788
Make flake evaluation pure
...
This seems to be the easiest way to get pure-eval working with
existing evaluation mechinery (nix-instantiate, nix-eval-jobs).
Now `--pure-eval` is forced for flakes with user being able to
add `--impure` as needed.
2022-08-16 20:16:00 -06:00
Zhaofeng Li
092e5848ab
Directly serialize Nix expressions as quoted strings
2022-08-16 20:16:00 -06:00
Zhaofeng Li
271d9ae576
nix/assets: Make assets a flake
...
Groundwork to make flake evaluation pure. `pure-eval` works when
the git workspace is clean.
2022-08-16 20:16:00 -06:00
Zhaofeng Li
a98d1f8963
nix/flake: Always resolve flake metadata
2022-08-16 20:16:00 -06:00
Zhaofeng Li
5e76e8ab26
.github: Restructure workflows
2022-08-16 20:16:00 -06:00
Zhaofeng Li
c99a8246c2
.github/manual: Remove github-pages-deploy-action for now
...
Does not work well with `matrix` et al which causes the actual
job name to change.
2022-08-16 20:16:00 -06:00
Zhaofeng Li
49eacdc31f
flake.nix: Add cargo-audit to devShell
2022-08-16 20:16:00 -06:00