!UKDpaKNNsBpOPfLWfX:zhaofeng.li

Colmena

266 Members
A simple, stateless NixOS deployment tool - https://github.com/zhaofengli/colmena97 Servers

Load older messages


SenderMessageTime
4 Feb 2022
@schnecfk:ruhr-uni-bochum.deCRTified
In reply to @buckley310:matrix.org
i had played with that strategy before, so i had it ready, just wasnt using it. basically instead of colmena consuming nixosConfigurations, just build my hosts as plain configs, and both nixosConfigurations and colmena consume that
What I dislike about that approach is that it feels like you'd lose the flake advantage, as it makes it easy for the colmena definition to diverge from the flake one
18:51:34
@buckley310:matrix.orgBuckley well its what ill go with for now. its easy enough to not diverge, granted im the only cook in the kitchen on this one 18:53:48
@buckley310:matrix.orgBuckleyi dont know of a better way at this moment18:54:30
@schnecfk:ruhr-uni-bochum.deCRTified Yes, of course. I'd just be worried that one of the evals behaves slightly different somehow 18:54:36
@buckley310:matrix.orgBuckleythey behaved slightly differently before :) 18:55:26
@buckley310:matrix.orgBuckleyprobably due to the impure build or something, they would produce different store paths for the systems than nixos-rebuild --flake would18:56:08
@aanderse:nixos.devaanderse

hey team i'm hoping someone can help me out here...
i'm attempting to create a colmena managed nixos server using flakes
warning this is my first attempt at using flakes 😄

here is my flake.nix:

{
  description = "test";

  inputs = {
    nixpkgs.url = "github:NixOS/nixpkgs";
  };

  outputs = { self, nixpkgs }: {
    colmena = {
      meta = {
        nixpkgs = import nixpkgs {
          system = "x86_64-linux";
        };
      };

      hetzner-test-01 = {
        imports = [
          ./hardware/hetzner-test-01.nix
        ];
      };
    };
  };
}

i'm running into a mountain of errors when i run colmena build

20:32:36
@aanderse:nixos.devaanderse

here is a snippet:

[ERROR] Cacheable portion of option doc build failed.
[ERROR] Usually this means that an option attribute that ends up in documentation (eg `default` or `description`) depends on the restricted module arguments `config` or `pkgs`.
[ERROR] 
[ERROR] Rebuild your configuration with `--show-trace` to find the offending location. Remove the references to restricted arguments (eg by escaping their antiquotations or adding a `defaultText`) or disable the sandboxed build for the failing module by setting `meta.buildDocsInSandbox = false`.
20:33:05
@aanderse:nixos.devaanderse

for reference hardware/hetzner-test-01.nix is pretty simple:

{ modulesPath, ... }: {
  # imports = [ (modulesPath + "/profiles/qemu-guest.nix") ];

  boot.loader.grub.device = "/dev/sda";
  boot.initrd.kernelModules = [ "nvme" ];
  fileSystems."/" = {
    device = "/dev/sda1";
    fsType = "ext4";
  };
}
20:33:55
@zhaofeng:zhaofeng.liZhaofeng Li
In reply to @aanderse:nixos.dev

here is a snippet:

[ERROR] Cacheable portion of option doc build failed.
[ERROR] Usually this means that an option attribute that ends up in documentation (eg `default` or `description`) depends on the restricted module arguments `config` or `pkgs`.
[ERROR] 
[ERROR] Rebuild your configuration with `--show-trace` to find the offending location. Remove the references to restricted arguments (eg by escaping their antiquotations or adding a `defaultText`) or disable the sandboxed build for the failing module by setting `meta.buildDocsInSandbox = false`.
There was a bug that got fixed in 0.2.1 as well as in main: https://github.com/zhaofengli/colmena/issues/50
20:34:13
@zhaofeng:zhaofeng.liZhaofeng Li It occurs in nixos-unstable with sandboxed documentation builds enabled, where documentation.nix uses modulesPath to strip off the prefixes of module paths 20:35:20
@aanderse:nixos.devaanderseshould i backport 0.2.1 to nixpkgs stable for you? 😄20:35:32
@aanderse:nixos.devaanderseoh20:35:58
@aanderse:nixos.devaandersenevermind... i see now20:36:02
@aanderse:nixos.devaanderseha20:36:03
@aanderse:nixos.devaanderse thank you so much Zhaofeng Li ! 20:36:18
@hexa:lossy.networkhexai'm too lazy to migrate from morph 😓20:37:10
@zhaofeng:zhaofeng.liZhaofeng Li Colmena should hopefully just work with your existing morph configs 20:38:43
@zhaofeng:zhaofeng.liZhaofeng Liyou do have to change how you pin nixpkgs, though20:39:05
@zhaofeng:zhaofeng.liZhaofeng Li * you do have to change how you pin nixpkgs, though: https://zhaofengli.github.io/colmena/unstable/tutorial/migration.html20:39:27
@aanderse:nixos.devaanderse hexa: i haven't used morph ... but i can't say enough good things about colmena
this project is a breath of fresh air after having to deal with nixops issues (no stable release on python3) for a while
20:39:33
@hexa:lossy.networkhexawell … nixops is on another level 😀20:40:14
@aanderse:nixos.devaanderse i don't mean to overwhelm Zhaofeng Li with compliments... but what a wonderfully simple tool to use ❤️ 20:40:16
@hexa:lossy.networkhexamorph just seems to be … enough for the maintainers20:40:23
@zhaofeng:zhaofeng.liZhaofeng Li
In reply to @hexa:lossy.network
well … nixops is on another level 😀
Yes indeed, NixOps does much more than morph/colmena aims to do with the IaaS features
20:43:20
@buckley310:matrix.orgBuckleyi moved from morph. its missing some creature comforts 🤔20:41:48
@zhaofeng:zhaofeng.liZhaofeng LiPeople have been asking about provisioning in Colmena, and that's better handled by tools that are focused on provisioning (e.g., terraform) than Colmena itself: https://github.com/zhaofengli/colmena/issues/4220:44:57
@zhaofeng:zhaofeng.liZhaofeng LiOne example is https://github.com/justinas/nixos-ha-kubernetes which uses terraform's state from a Colmena configuration20:45:25
@hexa:lossy.networkhexaI don't expect provisioning20:46:44
@hexa:lossy.networkhexasounds very much like scope creep20:47:21

Show newer messages


Back to Room ListRoom Version: 6