Commit graph

27 commits

Author SHA1 Message Date
Zhaofeng Li
0cb3f8e968 Redesign deployment process (again)
We now ship Events from different parts of the deployment process
via a channel to a job monitor.
2021-11-21 00:11:37 -08:00
Zhaofeng Li
08f9caa24c Start work on 0.3.0 2021-11-18 15:41:39 -08:00
Zhaofeng Li
dd66ce30e0
Release 0.2.0
This is release 0.2.0, the first stable release of Colmena!

---

Colmena is a simple, stateless NixOS deployment tool modeled
after NixOps and morph. In particular, it is built from the
ground up to support parallelization of the steps in the
deployment process.

This release contains the following features:

- Node Tagging
- Local Deployment
- Secrets
- Ad Hoc Evaluation
- Nix Flakes Support
- Parallelism

We now have a User Manual at <https://zhaofengli.github.io/colmena/0.2>
containing tutorials, sample configurations as well as a
complete listing of supported deployment options.

Signed-off-by: Zhaofeng Li <hello@zhaofeng.li>
2021-11-18 15:41:11 -08:00
Zhaofeng Li
ee8ae7dd21 Move closer to release 2021-11-18 13:15:20 -08:00
Zhaofeng Li
fae58994e4 Prepare for 0.2.0 release 2021-11-18 13:15:20 -08:00
Zhaofeng Li
e5665775b2 Preserve elapsed time in store path listing after build
Fixes #36.
2021-11-18 01:38:58 -08:00
Zhaofeng Li
50300dc0e7 default.nix: Fix CI failure 2021-11-17 22:33:30 -08:00
Zhaofeng Li
1ac5fd0f9b default.nix: Exclude manual from source 2021-11-17 22:21:00 -08:00
Zhaofeng Li
886b4c9dea default.nix: Use cargoLock.lockFile
Support for directly passing the Cargo.lock was added in
<https://github.com/NixOS/nixpkgs/pull/122158>.
2021-08-26 13:21:18 -07:00
Zhaofeng Li
e98a66bc2e Cargo.lock: Update 2021-08-25 09:51:48 -07:00
Zhaofeng Li
9d8153ee6d Make dev environment flake-compatible
Co-authored-by: Alex Zero <joseph@marsden.space>
2021-06-29 01:02:43 -07:00
Zhaofeng Li
8a95ee87b6 default.nix: Fix shell auto-complete generation 2021-06-29 01:02:43 -07:00
Zhaofeng Li
ac67d87be5 Update vendor checksum after update 2021-05-24 00:26:13 -07:00
Zhaofeng Li
0927fe9dc1 cli: Add hidden command to generate shell autocompletion 2021-03-23 14:14:04 -07:00
Zhaofeng Li
d0bba90d04 ssh: Fix shell escaping
The previous `sh -c` invocation was incorrect and just happened
to work on hosts with a Bourne-compatible shell set as the login
shell. Commands in the deploy script were being executed in the
login shell.
2021-02-12 13:55:44 -08:00
Zhaofeng Li
dbd66d7c7c Add initial set of tests 2021-02-11 13:27:21 -08:00
Zhaofeng Li
afabd8c6f9 Minor tokio cleanup 2021-02-10 10:29:17 -08:00
Zhaofeng Li
9f4d5a2221 Target stable toolchain 2021-02-10 00:41:02 -08:00
Zhaofeng Li
a2fa8f1da7 Clean up logging / progress display 2021-02-09 19:28:45 -08:00
Zhaofeng Li
84aa165aef Refactoring and deployment.keys implementation
More refactoring of the deployment process, as well as an initial
implementation of `deployment.keys`.

Fixes #2.
2021-02-08 19:00:29 -08:00
Zhaofeng Li
506b894be6 Redesign deployment process
Now evaluation can be automatically split into chunks based on available
RAM. All three stages of the deployment process (evaluate, build,
apply) can happen concurrently.

Fixes #1.
2021-01-24 14:08:48 -08:00
Zhaofeng Li
60d6475897 Traverse up to find hive.nix by default, and other CLI ergonomics fixes 2020-12-29 12:02:50 -08:00
Zhaofeng Li
9a75598962 Hi Tokio 1.0! 2020-12-23 13:28:25 -08:00
Zhaofeng Li
45b6568164 Support per-node Nixpkgs overrides and local deployment
Also renamed the `network` key to `meta`.
2020-12-19 15:10:22 -08:00
Zhaofeng Li
b3d84703f3 Fix Rust pinning 2020-12-18 01:57:32 -08:00
Zhaofeng Li
d0ed138ef0 Refactoring and other stuff 2020-12-18 01:28:02 -08:00
Zhaofeng Li
8bef4c1b3c Also add Nix environment 2020-12-15 20:58:39 -08:00