Colmena | 305 Members | |
| A simple, stateless NixOS deployment tool - https://github.com/zhaofengli/colmena | 104 Servers |
| Sender | Message | Time |
|---|---|---|
| 1 Apr 2023 | ||
| I think this is what you want: https://flake.parts/define-custom-flake-attribute.html | 21:05:00 | |
| 2 Apr 2023 | ||
| 02:26:51 | ||
| 3 Apr 2023 | ||
| 08:35:33 | ||
| 08:43:48 | ||
| 5 Apr 2023 | ||
| 05:47:55 | ||
| 13:55:17 | ||
| 6 Apr 2023 | ||
| hey | 11:56:22 | |
| 8 Apr 2023 | ||
| 18:26:49 | ||
| 9 Apr 2023 | ||
| I was wondering if tags could be used to map I do like the idea of each machines definition being fully contained within a single file/ directory. Needing to do per-machine Is that possibly as of today? | 00:58:07 | |
In reply to @dantefromhell:matrix.orgYou might want to follow https://github.com/zhaofengli/colmena/issues/55 and https://github.com/zhaofengli/colmena/issues/71 | 01:07:44 | |
| what's the correct way to pin the nixpkgs version when using colmena with a falke? | 04:44:07 | |
| * what's the correct way to pin the nixpkgs version when using colmena with a flake? | 04:44:09 | |
In reply to @rendakuenthusiast:imperishable.namecan you elaborate? you should have an auto-generated flake.lock | 17:42:10 | |
In reply to @me:indeednotjames.comso in my current non-flake colmena setup, I have meta.nixpkgs = import (fetchTarball "https://github.com/NixOS/nixpkgs/archive/<hash>/.tar.gz");, in order to pin the nixpkgs for my remote machines to a specific version | 20:58:19 | |
| I would like to replicate this with a flake.nix setup, but I am not sure how to do that from the documentation at https://colmena.cli.rs/unstable/tutorial/flakes.html | 20:58:46 | |
In reply to @me:indeednotjames.comthx a ton for the hints! | 21:49:23 | |
In reply to @rendakuenthusiast:imperishable.name oicic an extremely brief introduction would be that you can use any branch you like, e.g. to update the | 23:17:34 | |
| 10 Apr 2023 | ||
In reply to @me:indeednotjames.comis there a way to set the rev to an explicit value from the beginning, like I'm doing with the non-flake version? | 09:34:38 | |
In reply to @zhaofeng:zhaofeng.liReading through some old message, I am wondering if the idea of an SSH config generated by eval.nix has already been implemented and/ or an issue/ FR to it?Github search did not prove helpful to me 🤔 <-- beginner pondering | 16:15:49 | |
In reply to @me:indeednotjames.com Thinking through this more, just moving the One process I was hoping the tag idea allows to build is answering queries like:
| 16:18:05 | |
In reply to @dantefromhell:matrix.org
you could probably also just | 17:28:41 | |
In reply to @rendakuenthusiast:imperishable.nameSee https://nixos.org/manual/nix/stable/command-ref/new-cli/nix3-flake.html#examples for valid urls. You can specify your rev in them as well | 17:31:09 | |
In reply to @me:indeednotjames.com building to verify feels wrong in an environment where all inputs (config & packages) is managed declaratively. the list of affected hosts should be queryable - e.g. within a CI/CD pipeline because we have all the inventory information available | 19:44:51 | |
In reply to @dantefromhell:matrix.org I am confused. you can probably use a pre-apply hook, to fetch the current system generation and compare it with your locally build one (you are trying to apply) and stop if they are already the same or whatever. | 19:55:09 | |
| we built something like that at work, kinda | 20:21:19 | |
| but it's quite intertwined with our own CI logic | 20:21:34 | |
| definitely works | 20:21:37 | |
In reply to @me:indeednotjames.com* building to verify feels wrong in an environment where all inputs (config & packages) are managed declaratively. the list of affected hosts should be queryable - e.g. within a CI/CD pipeline because we have all the inventory information available | 22:56:02 | |
I disagree. For 1 commit this query should always be doable without contacting any host because the desired inventory state is declared. The situation I can think of where you need to check the deployed closures is if you are trying to solve "configuration drift" and deployment of patches with a single solution - which is kinda the common pattern in non-declarative environments. But if you're looking at config drift (which I'm still wondering if that can actually be a reasonable thing within NixOS given the generations mechanism 🤔) and the "affected query" as 2 separate problems the aforementioned query actually becomes independent of colmena itself (and therefore the stateless limitation). | 23:01:33 | |
*
I disagree. For 1 commit this query should always be doable without contacting a host because the old & new desired state is clearly defined. The situation I can think of where you need to check the deployed closures is if you are trying to solve "configuration drift" and deployment of patches with a single solution - which is kinda the common pattern in non-declarative environments. But if you're looking at config drift (which I'm still wondering if that can actually be a reasonable thing within NixOS given the generations mechanism 🤔) and the "affected query" as 2 separate problems the aforementioned query actually becomes independent of colmena itself (and therefore the stateless limitation). | 23:03:20 | |