more setting up
This commit is contained in:
parent
23e1bbe88a
commit
dfd604f73c
7 changed files with 141 additions and 73 deletions
|
|
@ -1,44 +1,44 @@
|
|||
{ ... }:
|
||||
{ lib, ... }:
|
||||
let
|
||||
inherit (builtins) readFile;
|
||||
in
|
||||
{
|
||||
_class = "clan.service";
|
||||
|
||||
manifest.name = "zitadel";
|
||||
|
||||
roles = {
|
||||
controller = {
|
||||
interface = {
|
||||
options = {};
|
||||
};
|
||||
|
||||
perInstance = { instanceName, settings, machine, roles, ... }: {
|
||||
nixosModule = { config }: {
|
||||
config = {
|
||||
services.zitadel.steps.${instanceName} = {
|
||||
InstanceName = settings.hostName;
|
||||
|
||||
Org = {
|
||||
Name = settings.displayName;
|
||||
Human = {
|
||||
UserName = "chris";
|
||||
FirstName = "Chris";
|
||||
LastName = "Kruining";
|
||||
Email = {
|
||||
Address = "chris@kruining.eu";
|
||||
Verified = true;
|
||||
};
|
||||
Password = "KaasIsAwesome1!";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
peer = {};
|
||||
manifest = {
|
||||
name = "amarth/zitadel";
|
||||
description = "Zitadel service module";
|
||||
categories = [ "System" "Identity" "IAM" ];
|
||||
readme = readFile ./README.md;
|
||||
};
|
||||
|
||||
pweMachine = { instances, machine, ... }: {
|
||||
#==============================================================================================================
|
||||
# Controller configuration
|
||||
#==============================================================================================================
|
||||
roles.controller = {
|
||||
interface = {
|
||||
options = {};
|
||||
};
|
||||
|
||||
perInstance = instanceArgs: {
|
||||
nixosModule = lib.modules.importApply ./roles/controller.nix instanceArgs;
|
||||
};
|
||||
};
|
||||
|
||||
#==============================================================================================================
|
||||
# Peer configuration
|
||||
#==============================================================================================================
|
||||
roles.peer = {
|
||||
interface = {
|
||||
options = {};
|
||||
};
|
||||
|
||||
perInstance = instanceArgs: {
|
||||
nixosModule = lib.modules.importApply ./roles/peer.nix instanceArgs;
|
||||
};
|
||||
};
|
||||
|
||||
perMachine = { instances, machine, ... }: {
|
||||
nixosModule = { config, ... }: {
|
||||
config = {
|
||||
services.zitadel = {
|
||||
|
|
|
|||
27
clanServices/zitadel/roles/controller.nix
Normal file
27
clanServices/zitadel/roles/controller.nix
Normal file
|
|
@ -0,0 +1,27 @@
|
|||
{ instanceName, settings, machine, roles, config, ... }: {
|
||||
config = {
|
||||
clan.core.vars.generators = {
|
||||
zitadel = {
|
||||
share = false;
|
||||
};
|
||||
}
|
||||
|
||||
services.zitadel.steps.${instanceName} = {
|
||||
InstanceName = settings.hostName;
|
||||
|
||||
Org = {
|
||||
Name = settings.displayName;
|
||||
Human = {
|
||||
UserName = "chris";
|
||||
FirstName = "Chris";
|
||||
LastName = "Kruining";
|
||||
Email = {
|
||||
Address = "chris@kruining.eu";
|
||||
Verified = true;
|
||||
};
|
||||
Password = "KaasIsAwesome1!";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
3
clanServices/zitadel/roles/peer.nix
Normal file
3
clanServices/zitadel/roles/peer.nix
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
{ instanceName, settings, machine, roles, config, ... }: {
|
||||
config = {};
|
||||
}
|
||||
40
clanServices/zitadel/tests/vm/default.nix
Normal file
40
clanServices/zitadel/tests/vm/default.nix
Normal file
|
|
@ -0,0 +1,40 @@
|
|||
{ pkgs, ... }:
|
||||
{
|
||||
name = "service-k3s";
|
||||
|
||||
clan = {
|
||||
directory = ./.;
|
||||
|
||||
inventory = {
|
||||
machines = {
|
||||
node1 = {};
|
||||
node2 = {};
|
||||
node3 = {};
|
||||
};
|
||||
|
||||
instances = {
|
||||
k3s = {
|
||||
module = {
|
||||
name = "@amarth/k3s";
|
||||
input = "self";
|
||||
};
|
||||
|
||||
roles.server.machines."node1" = {};
|
||||
|
||||
roles.agent.machines."node2" = {};
|
||||
roles.agent.machines."node3" = {};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
nodes = {
|
||||
node1 = {};
|
||||
node2 = {};
|
||||
node3 = {};
|
||||
};
|
||||
|
||||
testScript = ''
|
||||
start_all()
|
||||
'';
|
||||
};
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue