Compare commits

...

2 commits

Author SHA1 Message Date
Chris Kruining
f2bb2757b8
feat: add test code to assert if k3s is running 2025-11-05 10:46:20 +01:00
Chris Kruining
80cfd36fdf
chore: add descriptions to roles 2025-11-05 10:45:43 +01:00
5 changed files with 27 additions and 0 deletions

View file

@ -0,0 +1 @@
# Customer portal Clan-service

View file

@ -16,6 +16,8 @@ in
# Server configuration
#==============================================================================================================
roles.server = {
description = "A server hosts the portal";
interface = { lib, ... }:
let
inherit (lib) mkOption types toString;

View file

@ -0,0 +1 @@
# K3s Clan-service

View file

@ -16,6 +16,8 @@ in
# Server configuration
#==============================================================================================================
roles.server = {
description = "A server manages the cluster";
interface = { lib, ... }:
let
inherit (lib) mkOption mkEnableOption mkIf types toString;
@ -184,6 +186,8 @@ in
# Agent configuration
#==============================================================================================================
roles.agent = {
description = "An agent connects to the server";
interface = { lib, ... }: {
options = {};
};

View file

@ -17,6 +17,8 @@ in
# Controller configuration
#==============================================================================================================
roles.controller = {
description = "A controller that manages the instance";
interface = {
options = {
hostName = mkOption {
@ -75,6 +77,21 @@ in
};
in
{
assertions =
let
inherit (lib) attrValues any;
in
[
{
assertion =
config.services.k3s.enable == true;
# config.clan.inventory.instances
# |> attrValues
# |> any ({ module, ... }: module.name == "k3s");
message = "This module requires k3s in order to run";
}
];
clan.core.vars.generators.zitadel = {
share = false;
@ -225,6 +242,8 @@ in
# Peer configuration
#==============================================================================================================
roles.peer = {
description = "A peer";
interface = {
options = {};
};