first commit
This commit is contained in:
5
.envrc
Normal file
5
.envrc
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
# Activate the devshell from the Nix flake
|
||||||
|
# This loads all tools and environment variables defined in flake.nix
|
||||||
|
|
||||||
|
use flake
|
||||||
3
.gitattributes
vendored
Normal file
3
.gitattributes
vendored
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
|
||||||
|
# Use bd merge for beads JSONL files
|
||||||
|
.beads/issues.jsonl merge=beads
|
||||||
35
.gitignore
vendored
Normal file
35
.gitignore
vendored
Normal file
@@ -0,0 +1,35 @@
|
|||||||
|
# Sisyphus work session data
|
||||||
|
.sisyphus/
|
||||||
|
|
||||||
|
# Editor files
|
||||||
|
*~
|
||||||
|
.*.swp
|
||||||
|
.*.swo
|
||||||
|
.*.swx
|
||||||
|
|
||||||
|
# Build artifacts
|
||||||
|
result
|
||||||
|
result-*
|
||||||
|
.direnv/
|
||||||
|
|
||||||
|
# IDE
|
||||||
|
.vscode/
|
||||||
|
.idea/
|
||||||
|
*.iml
|
||||||
|
|
||||||
|
# OS
|
||||||
|
.DS_Store
|
||||||
|
Thumbs.db
|
||||||
|
|
||||||
|
# Opencode rules
|
||||||
|
.opencode-rules
|
||||||
|
opencode.json
|
||||||
|
|
||||||
|
# Local agent/coding-rule artifacts
|
||||||
|
.pi/
|
||||||
|
.pi-lens/
|
||||||
|
coding-rules.json
|
||||||
|
coding-rules/
|
||||||
|
|
||||||
|
.todos/
|
||||||
|
.sidecar/
|
||||||
45
AGENTS.md
Normal file
45
AGENTS.md
Normal file
@@ -0,0 +1,45 @@
|
|||||||
|
# Agent Instructions
|
||||||
|
|
||||||
|
## MANDATORY: Use td for Task Management
|
||||||
|
|
||||||
|
You must run td usage --new-session at conversation start (or after /clear) to see current work.
|
||||||
|
Use td usage -q for subsequent reads.
|
||||||
|
|
||||||
|
This project uses **bd** (beads) for issue tracking. Run `bd onboard` to get started.
|
||||||
|
|
||||||
|
## Quick Reference
|
||||||
|
|
||||||
|
```bash
|
||||||
|
bd ready # Find available work
|
||||||
|
bd show <id> # View issue details
|
||||||
|
bd update <id> --status in_progress # Claim work
|
||||||
|
bd close <id> # Complete work
|
||||||
|
bd sync # Sync with git
|
||||||
|
```
|
||||||
|
|
||||||
|
## Landing the Plane (Session Completion)
|
||||||
|
|
||||||
|
**When ending a work session**, you MUST complete ALL steps below. Work is NOT complete until `git push` succeeds.
|
||||||
|
|
||||||
|
**MANDATORY WORKFLOW:**
|
||||||
|
|
||||||
|
1. **File issues for remaining work** - Create issues for anything that needs follow-up
|
||||||
|
2. **Run quality gates** (if code changed) - Tests, linters, builds
|
||||||
|
3. **Update issue status** - Close finished work, update in-progress items
|
||||||
|
4. **PUSH TO REMOTE** - This is MANDATORY:
|
||||||
|
```bash
|
||||||
|
git pull --rebase
|
||||||
|
bd sync
|
||||||
|
git push
|
||||||
|
git status # MUST show "up to date with origin"
|
||||||
|
```
|
||||||
|
5. **Clean up** - Clear stashes, prune remote branches
|
||||||
|
6. **Verify** - All changes committed AND pushed
|
||||||
|
7. **Hand off** - Provide context for next session
|
||||||
|
|
||||||
|
**CRITICAL RULES:**
|
||||||
|
- Work is NOT complete until `git push` succeeds
|
||||||
|
- NEVER stop before pushing - that leaves work stranded locally
|
||||||
|
- NEVER say "ready to push when you are" - YOU must push
|
||||||
|
- If push fails, resolve and retry until it succeeds
|
||||||
|
|
||||||
1254
flake.lock
generated
Normal file
1254
flake.lock
generated
Normal file
File diff suppressed because it is too large
Load Diff
168
flake.nix
Normal file
168
flake.nix
Normal file
@@ -0,0 +1,168 @@
|
|||||||
|
{
|
||||||
|
description = ''
|
||||||
|
For questions just DM me on X: https://twitter.com/@m3tam3re
|
||||||
|
There is also some NIXOS content on my YT channel: https://www.youtube.com/@m3tam3re
|
||||||
|
|
||||||
|
One of the best ways to learn NIXOS is to read other peoples configurations. I have personally learned a lot from Gabriel Fontes configs:
|
||||||
|
https://github.com/Misterio77/nix-starter-configs
|
||||||
|
https://github.com/Misterio77/nix-config
|
||||||
|
|
||||||
|
Please also check out the starter configs mentioned above.
|
||||||
|
'';
|
||||||
|
|
||||||
|
inputs = {
|
||||||
|
home-manager = {
|
||||||
|
url = "github:nix-community/home-manager/release-25.11";
|
||||||
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
};
|
||||||
|
|
||||||
|
nixpkgs.url = "github:nixos/nixpkgs/nixos-25.11";
|
||||||
|
nixpkgs-unstable.url = "github:nixos/nixpkgs/nixos-unstable";
|
||||||
|
|
||||||
|
m3ta-nixpkgs.url = "git+https://code.m3ta.dev/m3tam3re/nixpkgs";
|
||||||
|
|
||||||
|
m3ta-home = {
|
||||||
|
url = "git+ssh://gitea@code.m3ta.dev/m3tam3re/m3ta-home";
|
||||||
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
};
|
||||||
|
|
||||||
|
llm-agents.url = "github:numtide/llm-agents.nix";
|
||||||
|
|
||||||
|
nur = {
|
||||||
|
url = "github:nix-community/NUR";
|
||||||
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
};
|
||||||
|
|
||||||
|
disko = {
|
||||||
|
url = "github:nix-community/disko";
|
||||||
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
};
|
||||||
|
|
||||||
|
agenix.url = "github:ryantm/agenix";
|
||||||
|
|
||||||
|
nixos-anywhere = {
|
||||||
|
url = "github:nix-community/nixos-anywhere";
|
||||||
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
};
|
||||||
|
|
||||||
|
nix-colors.url = "github:misterio77/nix-colors";
|
||||||
|
|
||||||
|
agents = {
|
||||||
|
url = "git+https://code.m3ta.dev/m3tam3re/AGENTS";
|
||||||
|
flake = false;
|
||||||
|
};
|
||||||
|
|
||||||
|
zugferd-service = {
|
||||||
|
url = "git+https://git.az-gruppe.com/AZ-Intec-GmbH/zugferd-service";
|
||||||
|
};
|
||||||
|
|
||||||
|
azion-scheduler = {
|
||||||
|
url = "git+https://git.az-gruppe.com/AZ-Intec-GmbH/AZion";
|
||||||
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
outputs = {
|
||||||
|
self,
|
||||||
|
agenix,
|
||||||
|
agents,
|
||||||
|
nixpkgs,
|
||||||
|
m3ta-nixpkgs,
|
||||||
|
...
|
||||||
|
} @ inputs: let
|
||||||
|
inherit (self) outputs;
|
||||||
|
systems = [
|
||||||
|
"aarch64-linux"
|
||||||
|
"i686-linux"
|
||||||
|
"x86_64-linux"
|
||||||
|
"aarch64-darwin"
|
||||||
|
"x86_64-darwin"
|
||||||
|
];
|
||||||
|
forAllSystems = nixpkgs.lib.genAttrs systems;
|
||||||
|
in {
|
||||||
|
packages =
|
||||||
|
forAllSystems (system: import ./pkgs nixpkgs.legacyPackages.${system});
|
||||||
|
overlays = let
|
||||||
|
all = import ./overlays {inherit inputs;};
|
||||||
|
in
|
||||||
|
removeAttrs all ["mkLlmAgentsOverlay"];
|
||||||
|
lib.mkLlmAgentsOverlay = (import ./overlays {inherit inputs;}).mkLlmAgentsOverlay;
|
||||||
|
|
||||||
|
devShells = forAllSystems (system: let
|
||||||
|
pkgs = import nixpkgs {
|
||||||
|
inherit system;
|
||||||
|
config.allowUnfree = true; # Allow unfree packages in devShell
|
||||||
|
};
|
||||||
|
m3taLib = m3ta-nixpkgs.lib.${system};
|
||||||
|
rules = m3taLib.coding-rules.mkCodingRules {
|
||||||
|
inherit agents;
|
||||||
|
languages = ["nix"];
|
||||||
|
};
|
||||||
|
in {
|
||||||
|
default = pkgs.mkShell {
|
||||||
|
buildInputs = with pkgs; [
|
||||||
|
alejandra
|
||||||
|
nixd
|
||||||
|
opencode
|
||||||
|
# pi-coding-agent
|
||||||
|
inputs.agenix.packages.${system}.default
|
||||||
|
];
|
||||||
|
|
||||||
|
shellHook = ''
|
||||||
|
${rules.shellHook}
|
||||||
|
echo "🚀 NixOS Infrastructure Development Shell with Opencode Rules"
|
||||||
|
echo ""
|
||||||
|
echo "Active rules:"
|
||||||
|
echo " - Nix language conventions"
|
||||||
|
echo " - Coding-style best practices"
|
||||||
|
echo " - Naming conventions"
|
||||||
|
echo " - Documentation standards"
|
||||||
|
echo " - Testing guidelines"
|
||||||
|
echo " - Git workflow patterns"
|
||||||
|
echo " - Project structure guidelines"
|
||||||
|
echo ""
|
||||||
|
echo "Generated files:"
|
||||||
|
echo " - .opencode-rules/ (symlink to AGENTS repo rules)"
|
||||||
|
echo " - coding-rules.json (configuration file)"
|
||||||
|
echo ""
|
||||||
|
echo "Useful commands:"
|
||||||
|
echo " - cat coding-rules.json View rules configuration"
|
||||||
|
echo " - ls .opencode-rules/ Browse available rules"
|
||||||
|
echo " - nix develop Re-enter this shell"
|
||||||
|
echo ""
|
||||||
|
echo "Remember to add to .gitignore:"
|
||||||
|
echo " .opencode-rules"
|
||||||
|
echo " coding-rules.json"
|
||||||
|
echo "======================================"
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
});
|
||||||
|
|
||||||
|
nixosConfigurations = {
|
||||||
|
AZ-CLD-1 = nixpkgs.lib.nixosSystem {
|
||||||
|
specialArgs = {
|
||||||
|
inherit inputs outputs;
|
||||||
|
system = "x86_64-linux";
|
||||||
|
};
|
||||||
|
modules = [
|
||||||
|
./hosts/AZ-CLD-1
|
||||||
|
agenix.nixosModules.default
|
||||||
|
inputs.disko.nixosModules.disko
|
||||||
|
inputs.zugferd-service.nixosModules.default
|
||||||
|
];
|
||||||
|
};
|
||||||
|
AZ-PRM-1 = nixpkgs.lib.nixosSystem {
|
||||||
|
specialArgs = {
|
||||||
|
inherit inputs outputs;
|
||||||
|
system = "x86_64-linux";
|
||||||
|
};
|
||||||
|
modules = [
|
||||||
|
./hosts/AZ-PRM-1
|
||||||
|
agenix.nixosModules.default
|
||||||
|
inputs.disko.nixosModules.disko
|
||||||
|
inputs.azion-scheduler.nixosModules.default
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
136
hosts/AZ-CLD-1/configuration.nix
Normal file
136
hosts/AZ-CLD-1/configuration.nix
Normal file
@@ -0,0 +1,136 @@
|
|||||||
|
# Edit this configuration file to define what should be installed on
|
||||||
|
# your system. Help is available in the configuration.nix(5) man page, on
|
||||||
|
# https://search.nixos.org/options and in the NixOS manual (`nixos-help`).
|
||||||
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
imports = [
|
||||||
|
# Include the results of the hardware scan.
|
||||||
|
./hardware-configuration.nix
|
||||||
|
./disko-config.nix
|
||||||
|
];
|
||||||
|
|
||||||
|
boot.loader.grub = {
|
||||||
|
efiSupport = true;
|
||||||
|
efiInstallAsRemovable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
swapDevices = [
|
||||||
|
{
|
||||||
|
device = "/var/lib/swapfile";
|
||||||
|
size = 16 * 1024;
|
||||||
|
}
|
||||||
|
];
|
||||||
|
|
||||||
|
networking.hostName = "AZ-CLD-1"; # Define your hostname.
|
||||||
|
# Pick only one of the below networking options.
|
||||||
|
# networking.wireless.enable = true; # Enables wireless support via wpa_supplicant.
|
||||||
|
networking.networkmanager.enable = true; # Easiest to use and most distros use this by default.
|
||||||
|
|
||||||
|
# Set your time zone.
|
||||||
|
time.timeZone = "Europe/Berlin";
|
||||||
|
|
||||||
|
# Configure network proxy if necessary
|
||||||
|
# networking.proxy.default = "http://user:password@proxy:port/";
|
||||||
|
# networking.proxy.noProxy = "127.0.0.1,localhost,internal.domain";
|
||||||
|
|
||||||
|
# Select internationalisation properties.
|
||||||
|
i18n.defaultLocale = "de_DE.UTF-8";
|
||||||
|
# console = {
|
||||||
|
# font = "Lat2-Terminus16";
|
||||||
|
# keyMap = "us";
|
||||||
|
# useXkbConfig = true; # use xkb.options in tty.
|
||||||
|
# };
|
||||||
|
|
||||||
|
# Enable the X11 windowing system.
|
||||||
|
# services.xserver.enable = true;
|
||||||
|
|
||||||
|
# Configure keymap in X11
|
||||||
|
# services.xserver.xkb.layout = "us";
|
||||||
|
# services.xserver.xkb.options = "eurosign:e,caps:escape";
|
||||||
|
|
||||||
|
# Enable CUPS to print documents.
|
||||||
|
# services.printing.enable = true;
|
||||||
|
|
||||||
|
# Enable sound.
|
||||||
|
# services.pulseaudio.enable = true;
|
||||||
|
# OR
|
||||||
|
# services.pipewire = {
|
||||||
|
# enable = true;
|
||||||
|
# pulse.enable = true;
|
||||||
|
# };
|
||||||
|
|
||||||
|
# Enable touchpad support (enabled default in most desktopManager).
|
||||||
|
# services.libinput.enable = true;
|
||||||
|
|
||||||
|
# Define a user account. Don't forget to set a password with ‘passwd’.
|
||||||
|
# users.users.alice = {
|
||||||
|
# isNormalUser = true;
|
||||||
|
# extraGroups = [ "wheel" ]; # Enable ‘sudo’ for the user.
|
||||||
|
# packages = with pkgs; [
|
||||||
|
# tree
|
||||||
|
# ];
|
||||||
|
# };
|
||||||
|
|
||||||
|
# programs.firefox.enable = true;
|
||||||
|
|
||||||
|
# List packages installed in system profile.
|
||||||
|
# You can use https://search.nixos.org/ to find more packages (and options).
|
||||||
|
environment.systemPackages = with pkgs; [
|
||||||
|
neovim # Do not forget to add an editor to edit configuration.nix! The Nano editor is also installed by default.
|
||||||
|
git
|
||||||
|
];
|
||||||
|
|
||||||
|
# Some programs need SUID wrappers, can be configured further or are
|
||||||
|
# started in user sessions.
|
||||||
|
# programs.mtr.enable = true;
|
||||||
|
programs.gnupg.agent = {
|
||||||
|
enable = true;
|
||||||
|
enableSSHSupport = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
# List services that you want to enable:
|
||||||
|
|
||||||
|
# Enable the OpenSSH daemon.
|
||||||
|
services.openssh = {
|
||||||
|
enable = true;
|
||||||
|
ports = [2022];
|
||||||
|
settings = {
|
||||||
|
PermitRootLogin = "no";
|
||||||
|
PasswordAuthentication = false;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
# Open ports in the firewall.
|
||||||
|
networking.firewall.allowedTCPPorts = [587];
|
||||||
|
# networking.firewall.allowedUDPPorts = [ ... ];
|
||||||
|
# Or disable the firewall altogether.
|
||||||
|
# networking.firewall.enable = false;
|
||||||
|
|
||||||
|
# Copy the NixOS configuration file and link it from the resulting system
|
||||||
|
# (/run/current-system/configuration.nix). This is useful in case you
|
||||||
|
# accidentally delete configuration.nix.
|
||||||
|
# system.copySystemConfiguration = true;
|
||||||
|
|
||||||
|
# This option defines the first version of NixOS you have installed on this particular machine,
|
||||||
|
# and is used to maintain compatibility with application data (e.g. databases) created on older NixOS versions.
|
||||||
|
#
|
||||||
|
# Most users should NEVER change this value after the initial install, for any reason,
|
||||||
|
# even if you've upgraded your system to a new NixOS release.
|
||||||
|
#
|
||||||
|
# This value does NOT affect the Nixpkgs version your packages and OS are pulled from,
|
||||||
|
# so changing it will NOT upgrade your system - see https://nixos.org/manual/nixos/stable/#sec-upgrading for how
|
||||||
|
# to actually do that.
|
||||||
|
#
|
||||||
|
# This value being lower than the current NixOS release does NOT mean your system is
|
||||||
|
# out of date, out of support, or vulnerable.
|
||||||
|
#
|
||||||
|
# Do NOT change this value unless you have manually inspected all the changes it would make to your configuration,
|
||||||
|
# and migrated your data accordingly.
|
||||||
|
#
|
||||||
|
# For more information, see `man configuration.nix` or https://nixos.org/manual/nixos/stable/options#opt-system.stateVersion .
|
||||||
|
system.stateVersion = "25.05"; # Did you read the comment?
|
||||||
|
}
|
||||||
12
hosts/AZ-CLD-1/default.nix
Normal file
12
hosts/AZ-CLD-1/default.nix
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
{
|
||||||
|
imports = [
|
||||||
|
../common
|
||||||
|
./configuration.nix
|
||||||
|
./secrets.nix
|
||||||
|
./services
|
||||||
|
];
|
||||||
|
|
||||||
|
extraServices = {
|
||||||
|
podman.enable = true;
|
||||||
|
};
|
||||||
|
}
|
||||||
39
hosts/AZ-CLD-1/disko-config.nix
Normal file
39
hosts/AZ-CLD-1/disko-config.nix
Normal file
@@ -0,0 +1,39 @@
|
|||||||
|
{
|
||||||
|
disko.devices = {
|
||||||
|
disk = {
|
||||||
|
main = {
|
||||||
|
type = "disk";
|
||||||
|
device = "/dev/vda"; # CHANGE ME
|
||||||
|
content = {
|
||||||
|
type = "gpt";
|
||||||
|
partitions = {
|
||||||
|
boot = {
|
||||||
|
size = "1M";
|
||||||
|
type = "EF02"; # for GRUB MBR
|
||||||
|
priority = 1;
|
||||||
|
};
|
||||||
|
esp = {
|
||||||
|
size = "512M";
|
||||||
|
type = "EF00";
|
||||||
|
content = {
|
||||||
|
type = "filesystem";
|
||||||
|
format = "vfat";
|
||||||
|
mountpoint = "/boot";
|
||||||
|
mountOptions = ["defaults" "umask=0077"];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
root = {
|
||||||
|
size = "100%";
|
||||||
|
content = {
|
||||||
|
type = "filesystem";
|
||||||
|
format = "ext4";
|
||||||
|
mountpoint = "/";
|
||||||
|
mountOptions = ["noatime" "nodiratime" "discard"];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
28
hosts/AZ-CLD-1/hardware-configuration.nix
Normal file
28
hosts/AZ-CLD-1/hardware-configuration.nix
Normal file
@@ -0,0 +1,28 @@
|
|||||||
|
# Do not modify this file! It was generated by ‘nixos-generate-config’
|
||||||
|
# and may be overwritten by future invocations. Please make changes
|
||||||
|
# to /etc/nixos/configuration.nix instead.
|
||||||
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
modulesPath,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
imports = [
|
||||||
|
(modulesPath + "/profiles/qemu-guest.nix")
|
||||||
|
];
|
||||||
|
|
||||||
|
boot.initrd.availableKernelModules = ["ata_piix" "uhci_hcd" "virtio_pci" "virtio_scsi" "sd_mod" "sr_mod"];
|
||||||
|
boot.initrd.kernelModules = [];
|
||||||
|
boot.kernelModules = [];
|
||||||
|
boot.extraModulePackages = [];
|
||||||
|
|
||||||
|
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
||||||
|
# (the default) this is the recommended approach. When using systemd-networkd it's
|
||||||
|
# still possible to use this option, but it's recommended to use it in conjunction
|
||||||
|
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
|
||||||
|
networking.useDHCP = lib.mkDefault true;
|
||||||
|
# networking.interfaces.ens18.useDHCP = lib.mkDefault true;
|
||||||
|
|
||||||
|
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||||
|
}
|
||||||
81
hosts/AZ-CLD-1/secrets.nix
Normal file
81
hosts/AZ-CLD-1/secrets.nix
Normal file
@@ -0,0 +1,81 @@
|
|||||||
|
{
|
||||||
|
age = {
|
||||||
|
secrets = {
|
||||||
|
traefik-env = {
|
||||||
|
file = ../../secrets/traefik-env.age;
|
||||||
|
};
|
||||||
|
baserow-env = {
|
||||||
|
file = ../../secrets/baserow-env.age;
|
||||||
|
};
|
||||||
|
librechat = {
|
||||||
|
file = ../../secrets/librechat.age;
|
||||||
|
};
|
||||||
|
librechat-env = {
|
||||||
|
file = ../../secrets/librechat-env.age;
|
||||||
|
};
|
||||||
|
librechat-env-dev = {
|
||||||
|
file = ../../secrets/librechat-env-dev.age;
|
||||||
|
};
|
||||||
|
librechat-env-prod = {
|
||||||
|
file = ../../secrets/librechat-env-prod.age;
|
||||||
|
};
|
||||||
|
litellm-env = {
|
||||||
|
file = ../../secrets/litellm-env.age;
|
||||||
|
};
|
||||||
|
metabase-env = {
|
||||||
|
file = ../../secrets/metabase-env.age;
|
||||||
|
};
|
||||||
|
n8n-env = {
|
||||||
|
file = ../../secrets/n8n-env.age;
|
||||||
|
};
|
||||||
|
netbird-auth-secret = {
|
||||||
|
file = ../../secrets/netbird-auth-secret.age;
|
||||||
|
};
|
||||||
|
netbird-db-password = {
|
||||||
|
file = ../../secrets/netbird-db-password.age;
|
||||||
|
};
|
||||||
|
netbird-encryption-key = {
|
||||||
|
file = ../../secrets/netbird-encryption-key.age;
|
||||||
|
};
|
||||||
|
netbird-dashboard-env = {
|
||||||
|
file = ../../secrets/netbird-dashboard-env.age;
|
||||||
|
};
|
||||||
|
netbird-server-env = {
|
||||||
|
file = ../../secrets/netbird-server-env.age;
|
||||||
|
};
|
||||||
|
netbird-proxy-env = {
|
||||||
|
file = ../../secrets/netbird-proxy-env.age;
|
||||||
|
};
|
||||||
|
outline-env = {
|
||||||
|
file = ../../secrets/outline-env.age;
|
||||||
|
owner = "outline";
|
||||||
|
};
|
||||||
|
pgadmin-pw = {
|
||||||
|
file = ../../secrets/pgadmin-pw.age;
|
||||||
|
owner = "pgadmin";
|
||||||
|
};
|
||||||
|
vaultwarden-env = {
|
||||||
|
file = ../../secrets/vaultwarden-env.age;
|
||||||
|
};
|
||||||
|
hetzner-s3-az-intern-secret-key = {
|
||||||
|
file = ../../secrets/hetzner-s3-az-intern-secret-key.age;
|
||||||
|
owner = "outline";
|
||||||
|
};
|
||||||
|
hetzner-s3-az-intern-access-key = {
|
||||||
|
file = ../../secrets/hetzner-s3-az-intern-access-key.age;
|
||||||
|
};
|
||||||
|
zammad-pw = {
|
||||||
|
file = ../../secrets/zammad-pw.age;
|
||||||
|
};
|
||||||
|
zammad-secret = {
|
||||||
|
file = ../../secrets/zammad-secret.age;
|
||||||
|
};
|
||||||
|
zammad-hr-env-prod = {
|
||||||
|
file = ../../secrets/zammad-hr-env-prod.age;
|
||||||
|
};
|
||||||
|
zammad-hr-env = {
|
||||||
|
file = ../../secrets/zammad-hr-env.age;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
70
hosts/AZ-CLD-1/services/containers/baserow.nix
Normal file
70
hosts/AZ-CLD-1/services/containers/baserow.nix
Normal file
@@ -0,0 +1,70 @@
|
|||||||
|
{config, ...}: let
|
||||||
|
serviceName = "baserow";
|
||||||
|
servicePort = config.m3ta.ports.get serviceName;
|
||||||
|
in {
|
||||||
|
virtualisation.oci-containers.containers.${serviceName} = {
|
||||||
|
image = "docker.io/baserow/baserow:2.1.6";
|
||||||
|
environment = {
|
||||||
|
BASEROW_AMOUNT_OF_GUNICORN_WORKERS = "4";
|
||||||
|
BASEROW_AMOUNT_OF_WORKERS = "2";
|
||||||
|
DATABASE_CONN_MAX_AGE = "60";
|
||||||
|
# Proxy: tell Django the connection is HTTPS so cookies get Secure flag
|
||||||
|
BASEROW_ENABLE_SECURE_PROXY_SSL_HEADER = "yes";
|
||||||
|
# Published apps run on different origins — allow cross-origin cookie delivery
|
||||||
|
BASEROW_FRONTEND_SAME_SITE_COOKIE = "none";
|
||||||
|
# Valid base domain for published app subdomains
|
||||||
|
BASEROW_BUILDER_DOMAINS = "az-gruppe.com";
|
||||||
|
# Disable Caddy's on_demand TLS — Traefik handles TLS termination
|
||||||
|
BASEROW_CADDY_GLOBAL_CONF = "auto_https off";
|
||||||
|
};
|
||||||
|
environmentFiles = [config.age.secrets.baserow-env.path];
|
||||||
|
ports = ["127.0.0.1:${toString servicePort}:80"];
|
||||||
|
volumes = ["baserow_data:/baserow/data"];
|
||||||
|
extraOptions = ["--add-host=postgres:10.89.0.1" "--ip=10.89.0.10" "--network=web"];
|
||||||
|
};
|
||||||
|
|
||||||
|
# Traefik configuration
|
||||||
|
services.traefik.dynamicConfigOptions.http = {
|
||||||
|
services.${serviceName}.loadBalancer.servers = [
|
||||||
|
{
|
||||||
|
url = "http://localhost:${toString servicePort}/";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
|
||||||
|
middlewares."${serviceName}-headers".headers = {
|
||||||
|
customRequestHeaders = {
|
||||||
|
X-Forwarded-Proto = "https";
|
||||||
|
X-Forwarded-Port = "443";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
routers.${serviceName} = {
|
||||||
|
rule = "Host(`br.az-gruppe.com`)";
|
||||||
|
tls = {
|
||||||
|
certResolver = "ionos";
|
||||||
|
};
|
||||||
|
service = serviceName;
|
||||||
|
entrypoints = "websecure";
|
||||||
|
middlewares = ["${serviceName}-headers"];
|
||||||
|
};
|
||||||
|
|
||||||
|
routers.azubi = {
|
||||||
|
rule = "Host(`azubi.az-gruppe.com`)";
|
||||||
|
tls = {
|
||||||
|
certResolver = "ionos";
|
||||||
|
};
|
||||||
|
service = serviceName;
|
||||||
|
entrypoints = "websecure";
|
||||||
|
middlewares = ["${serviceName}-headers"];
|
||||||
|
};
|
||||||
|
routers.ausbilder = {
|
||||||
|
rule = "Host(`ausbilder.az-gruppe.com`)";
|
||||||
|
tls = {
|
||||||
|
certResolver = "ionos";
|
||||||
|
};
|
||||||
|
service = serviceName;
|
||||||
|
entrypoints = "websecure";
|
||||||
|
middlewares = ["${serviceName}-headers"];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
20
hosts/AZ-CLD-1/services/containers/default.nix
Normal file
20
hosts/AZ-CLD-1/services/containers/default.nix
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
{lib, ...}: {
|
||||||
|
imports = [
|
||||||
|
./baserow.nix
|
||||||
|
./it-tools.nix
|
||||||
|
./librechat.nix
|
||||||
|
./litellm.nix
|
||||||
|
./librechat-dev.nix
|
||||||
|
./netbird.nix
|
||||||
|
./portainer.nix
|
||||||
|
./zammad-hr.nix
|
||||||
|
];
|
||||||
|
system.activationScripts.createPodmanNetworkWeb = lib.mkAfter ''
|
||||||
|
if ! /run/current-system/sw/bin/podman network exists web; then
|
||||||
|
/run/current-system/sw/bin/podman network create web --subnet=10.89.0.0/24 --internal
|
||||||
|
fi
|
||||||
|
if ! /run/current-system/sw/bin/podman network exists web-dev; then
|
||||||
|
/run/current-system/sw/bin/podman network create web-dev --subnet=10.89.1.0/24 --internal
|
||||||
|
fi
|
||||||
|
'';
|
||||||
|
}
|
||||||
27
hosts/AZ-CLD-1/services/containers/it-tools.nix
Normal file
27
hosts/AZ-CLD-1/services/containers/it-tools.nix
Normal file
@@ -0,0 +1,27 @@
|
|||||||
|
{config, ...}: let
|
||||||
|
serviceName = "it-tools";
|
||||||
|
servicePort = config.m3ta.ports.get serviceName;
|
||||||
|
in {
|
||||||
|
virtualisation.oci-containers.containers.${serviceName} = {
|
||||||
|
image = "docker.io/sharevb/it-tools:latest";
|
||||||
|
ports = ["127.0.0.1:${toString servicePort}:8080"];
|
||||||
|
};
|
||||||
|
|
||||||
|
# Traefik configuration
|
||||||
|
services.traefik.dynamicConfigOptions.http = {
|
||||||
|
services.${serviceName}.loadBalancer.servers = [
|
||||||
|
{
|
||||||
|
url = "http://localhost:${toString servicePort}/";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
|
||||||
|
routers.${serviceName} = {
|
||||||
|
rule = "Host(`tools.az-gruppe.com`)";
|
||||||
|
tls = {
|
||||||
|
certResolver = "ionos";
|
||||||
|
};
|
||||||
|
service = serviceName;
|
||||||
|
entrypoints = "websecure";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
133
hosts/AZ-CLD-1/services/containers/librechat-dev.nix
Normal file
133
hosts/AZ-CLD-1/services/containers/librechat-dev.nix
Normal file
@@ -0,0 +1,133 @@
|
|||||||
|
{
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
|
serviceName = "librechat-dev";
|
||||||
|
servicePort = config.m3ta.ports.get serviceName;
|
||||||
|
ragApiDevServiceName = "rag-api-dev";
|
||||||
|
ragApiDevPort = config.m3ta.ports.get ragApiDevServiceName;
|
||||||
|
envFileDev = config.age.secrets.librechat-env-dev.path;
|
||||||
|
envFileCommon = config.age.secrets.librechat.path;
|
||||||
|
in {
|
||||||
|
virtualisation.oci-containers = {
|
||||||
|
containers.meilisearch-dev = {
|
||||||
|
image = "getmeili/meilisearch:v1.12.3";
|
||||||
|
autoStart = false;
|
||||||
|
volumes = ["librechat_dev_meili:/meili_data"];
|
||||||
|
environment = {
|
||||||
|
MEILI_HTTP_ADDR = "0.0.0.0:7700";
|
||||||
|
MEILI_NO_ANALYTICS = "true";
|
||||||
|
};
|
||||||
|
environmentFiles = [envFileDev envFileCommon];
|
||||||
|
extraOptions = ["--ip=10.89.1.20" "--network=web-dev"];
|
||||||
|
};
|
||||||
|
|
||||||
|
containers.rag_api-dev = {
|
||||||
|
image = "ghcr.io/danny-avila/librechat-rag-api-dev-lite:latest";
|
||||||
|
autoStart = false;
|
||||||
|
environment = {
|
||||||
|
RAG_PORT = "8000";
|
||||||
|
DB_HOST = "10.89.1.1";
|
||||||
|
DB_PORT = "5432";
|
||||||
|
};
|
||||||
|
environmentFiles = [envFileDev envFileCommon];
|
||||||
|
dependsOn = ["meilisearch-dev"];
|
||||||
|
extraOptions = ["--add-host=postgres:10.89.1.1" "--ip=10.89.1.21" "--network=web-dev"];
|
||||||
|
ports = ["127.0.0.1:${toString ragApiDevPort}:8000"];
|
||||||
|
};
|
||||||
|
|
||||||
|
containers.mongodb-dev = {
|
||||||
|
image = "mongo:7";
|
||||||
|
autoStart = false;
|
||||||
|
volumes = [
|
||||||
|
"librechat_dev_mongo:/data/db"
|
||||||
|
"/var/backup/mongodb-dev:/data/backups"
|
||||||
|
];
|
||||||
|
extraOptions = ["--ip=10.89.1.22" "--network=web-dev"];
|
||||||
|
};
|
||||||
|
|
||||||
|
containers.${serviceName} = {
|
||||||
|
image = "ghcr.io/danny-avila/librechat-dev-api:latest";
|
||||||
|
autoStart = false;
|
||||||
|
ports = ["127.0.0.1:${toString servicePort}:3080"];
|
||||||
|
dependsOn = ["mongodb-dev" "rag_api-dev" "meilisearch-dev"];
|
||||||
|
environment = {
|
||||||
|
HOST = "0.0.0.0";
|
||||||
|
NODE_ENV = "development";
|
||||||
|
MONGO_URI = "mongodb://mongodb-dev:27017/LibreChatDev";
|
||||||
|
MEILI_HOST = "http://meilisearch-dev:7700";
|
||||||
|
RAG_PORT = "8000";
|
||||||
|
RAG_API_URL = "http://rag_api-dev:8000";
|
||||||
|
};
|
||||||
|
environmentFiles = [envFileDev envFileCommon];
|
||||||
|
volumes = [
|
||||||
|
"/var/lib/librechat-dev/librechat.yaml:/app/librechat.yaml:ro"
|
||||||
|
"librechat_dev_images:/app/client/public/images"
|
||||||
|
"librechat_dev_uploads:/app/uploads"
|
||||||
|
"librechat_dev_logs:/app/api/logs"
|
||||||
|
];
|
||||||
|
extraOptions = ["--ip=10.89.1.23" "--network=web-dev"];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
# Traefik configuration
|
||||||
|
services.traefik.dynamicConfigOptions.http = {
|
||||||
|
services.${serviceName}.loadBalancer.servers = [
|
||||||
|
{
|
||||||
|
url = "http://localhost:${toString servicePort}/";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
|
||||||
|
routers.${serviceName} = {
|
||||||
|
rule = "Host(`chat-dev.az-gruppe.com`)";
|
||||||
|
tls = {
|
||||||
|
certResolver = "ionos";
|
||||||
|
};
|
||||||
|
service = serviceName;
|
||||||
|
entrypoints = "websecure";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
environment.systemPackages = [
|
||||||
|
(pkgs.writeShellScriptBin "librechat-dev" ''
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
set -e
|
||||||
|
|
||||||
|
SERVICES=(
|
||||||
|
podman-meilisearch-dev
|
||||||
|
podman-mongodb-dev
|
||||||
|
podman-rag_api-dev
|
||||||
|
podman-librechat-dev
|
||||||
|
)
|
||||||
|
|
||||||
|
case "$1" in
|
||||||
|
up)
|
||||||
|
echo "🚀 Starte LibreChat-Dev-Umgebung..."
|
||||||
|
for svc in "''${SERVICES[@]}"; do
|
||||||
|
sudo systemctl start "$svc"
|
||||||
|
done
|
||||||
|
;;
|
||||||
|
down)
|
||||||
|
echo "🛑 Stoppe LibreChat-Dev-Umgebung..."
|
||||||
|
for svc in "''${SERVICES[@]}"; do
|
||||||
|
sudo systemctl stop "$svc"
|
||||||
|
done
|
||||||
|
;;
|
||||||
|
restart)
|
||||||
|
echo "🔄 Neustart der LibreChat-Dev-Umgebung..."
|
||||||
|
for svc in "''${SERVICES[@]}"; do
|
||||||
|
sudo systemctl restart "$svc"
|
||||||
|
done
|
||||||
|
;;
|
||||||
|
status)
|
||||||
|
systemctl status "''${SERVICES[@]}"
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo "Usage: librechat-dev {up|down|restart|status}"
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
'')
|
||||||
|
];
|
||||||
|
}
|
||||||
169
hosts/AZ-CLD-1/services/containers/librechat.nix
Normal file
169
hosts/AZ-CLD-1/services/containers/librechat.nix
Normal file
@@ -0,0 +1,169 @@
|
|||||||
|
{
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
|
serviceName = "librechat";
|
||||||
|
servicePort = config.m3ta.ports.get serviceName;
|
||||||
|
ragApiServiceName = "rag-api";
|
||||||
|
ragApiPort = config.m3ta.ports.get ragApiServiceName;
|
||||||
|
envFileProd = config.age.secrets.librechat-env-prod.path;
|
||||||
|
envFileCommon = config.age.secrets.librechat.path;
|
||||||
|
in {
|
||||||
|
virtualisation.oci-containers = {
|
||||||
|
containers.meilisearch = {
|
||||||
|
image = "getmeili/meilisearch:v1.35.1";
|
||||||
|
autoStart = true;
|
||||||
|
volumes = ["librechat_meili:/meili_data"];
|
||||||
|
environment = {
|
||||||
|
MEILI_HTTP_ADDR = "0.0.0.0:7700";
|
||||||
|
MEILI_NO_ANALYTICS = "true";
|
||||||
|
};
|
||||||
|
environmentFiles = [envFileCommon envFileProd];
|
||||||
|
extraOptions = ["--ip=10.89.0.20" "--network=web"];
|
||||||
|
};
|
||||||
|
|
||||||
|
containers.rag_api = {
|
||||||
|
image = "registry.librechat.ai/danny-avila/librechat-rag-api-dev-lite:latest";
|
||||||
|
autoStart = true;
|
||||||
|
environment = {
|
||||||
|
RAG_PORT = "8000";
|
||||||
|
DB_HOST = "10.89.0.1";
|
||||||
|
DB_PORT = "5432";
|
||||||
|
};
|
||||||
|
environmentFiles = [envFileCommon envFileProd];
|
||||||
|
dependsOn = ["meilisearch"];
|
||||||
|
extraOptions = ["--add-host=postgres:10.89.0.1" "--ip=10.89.0.21" "--network=web"];
|
||||||
|
ports = ["127.0.0.1:${toString ragApiPort}:8000"];
|
||||||
|
};
|
||||||
|
|
||||||
|
containers.mongodb = {
|
||||||
|
image = "mongo:8.0.17";
|
||||||
|
autoStart = true;
|
||||||
|
volumes = [
|
||||||
|
"librechat_mongo:/data/db"
|
||||||
|
"/var/backup/mongodb:/data/backups"
|
||||||
|
];
|
||||||
|
# Enable auth once users exist; see Mongo auth doc.
|
||||||
|
# command = [ "mongod", "--auth" ];
|
||||||
|
extraOptions = ["--ip=10.89.0.22" "--network=web"];
|
||||||
|
};
|
||||||
|
|
||||||
|
containers.${serviceName} = {
|
||||||
|
image = "registry.librechat.ai/danny-avila/librechat-dev:latest";
|
||||||
|
autoStart = true;
|
||||||
|
user = "1000:1000";
|
||||||
|
ports = ["127.0.0.1:${toString servicePort}:3080"];
|
||||||
|
dependsOn = ["mongodb" "rag_api" "meilisearch"];
|
||||||
|
environment = {
|
||||||
|
HOST = "0.0.0.0";
|
||||||
|
NODE_ENV = "production";
|
||||||
|
# Mongo URI (start without auth; switch to mongodb://user:pass@mongodb:27017/LibreChat after Step 4)
|
||||||
|
MONGO_URI = "mongodb://mongodb:27017/LibreChat";
|
||||||
|
MEILI_HOST = "http://meilisearch:7700";
|
||||||
|
RAG_PORT = "8000";
|
||||||
|
RAG_API_URL = "http://rag_api:8000";
|
||||||
|
};
|
||||||
|
environmentFiles = [envFileCommon envFileProd];
|
||||||
|
volumes = [
|
||||||
|
# Config file still needs to be a bind mount for host management
|
||||||
|
"/var/lib/librechat/librechat.yaml:/app/librechat.yaml:ro"
|
||||||
|
# Use named volumes for application data
|
||||||
|
"librechat_images:/app/client/public/images"
|
||||||
|
"librechat_uploads:/app/uploads"
|
||||||
|
"librechat_logs:/app/api/logs"
|
||||||
|
];
|
||||||
|
extraOptions = ["--ip=10.89.0.23" "--network=web" "--dns=8.8.8.8" "--dns=8.8.4.4"];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
systemd.services."mongo-backup" = {
|
||||||
|
serviceConfig = {
|
||||||
|
Type = "oneshot";
|
||||||
|
User = "root";
|
||||||
|
Group = "root";
|
||||||
|
};
|
||||||
|
script = ''
|
||||||
|
set -euo pipefail
|
||||||
|
|
||||||
|
BACKUP_DIR="/var/backup/mongodb"
|
||||||
|
TIMESTAMP=$(date +%Y%m%d_%H%M%S)
|
||||||
|
TEMP_BACKUP="mongodb_backup_$TIMESTAMP"
|
||||||
|
ARCHIVE_NAME="mongodb_backup_$TIMESTAMP.tar.gz"
|
||||||
|
|
||||||
|
# Ensure backup directory exists with proper permissions
|
||||||
|
mkdir -p "$BACKUP_DIR"
|
||||||
|
chown root:root "$BACKUP_DIR"
|
||||||
|
chmod 750 "$BACKUP_DIR"
|
||||||
|
|
||||||
|
echo "Starting MongoDB backup at $(date)"
|
||||||
|
|
||||||
|
# Create the backup dump in container
|
||||||
|
if ${pkgs.podman}/bin/podman exec mongodb mongodump --out "/data/backups/$TEMP_BACKUP"; then
|
||||||
|
echo "MongoDB dump completed successfully"
|
||||||
|
|
||||||
|
# Create compressed archive from the backup
|
||||||
|
cd "$BACKUP_DIR"
|
||||||
|
if [ -d "$TEMP_BACKUP" ]; then
|
||||||
|
echo "Creating compressed archive: $ARCHIVE_NAME"
|
||||||
|
${pkgs.gnutar}/bin/tar --use-compress-program=${pkgs.gzip}/bin/gzip -cf "$ARCHIVE_NAME" -C . "$TEMP_BACKUP"
|
||||||
|
|
||||||
|
# Remove the uncompressed backup directory
|
||||||
|
rm -rf "$TEMP_BACKUP"
|
||||||
|
|
||||||
|
# Verify archive was created
|
||||||
|
if [ -f "$ARCHIVE_NAME" ]; then
|
||||||
|
ARCHIVE_SIZE=$(${pkgs.coreutils}/bin/du -sh "$ARCHIVE_NAME" | cut -f1)
|
||||||
|
echo "Compressed backup created: $ARCHIVE_NAME (Size: $ARCHIVE_SIZE)"
|
||||||
|
|
||||||
|
# Keep only the 2 most recent backup archives
|
||||||
|
ls -1t mongodb_backup_*.tar.gz | tail -n +3 | xargs -r rm -f
|
||||||
|
echo "Old backup archives cleaned up, keeping 2 most recent"
|
||||||
|
|
||||||
|
# List current backups
|
||||||
|
echo "Current backups:"
|
||||||
|
ls -lah mongodb_backup_*.tar.gz 2>/dev/null || echo "No previous backups found"
|
||||||
|
else
|
||||||
|
echo "ERROR: Failed to create compressed archive" >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
echo "ERROR: Backup directory not found at $BACKUP_DIR/$TEMP_BACKUP" >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
echo "ERROR: MongoDB backup failed" >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "MongoDB backup completed successfully at $(date)"
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
systemd.timers."mongo-backup" = {
|
||||||
|
wantedBy = ["timers.target"];
|
||||||
|
timerConfig = {
|
||||||
|
OnCalendar = "*-*-* 02:00:00";
|
||||||
|
RandomizedDelaySec = "30m";
|
||||||
|
Persistent = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
# Traefik configuration
|
||||||
|
services.traefik.dynamicConfigOptions.http = {
|
||||||
|
services.${serviceName}.loadBalancer.servers = [
|
||||||
|
{
|
||||||
|
url = "http://localhost:${toString servicePort}/";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
|
||||||
|
routers.${serviceName} = {
|
||||||
|
rule = "Host(`chat.az-gruppe.com`)";
|
||||||
|
tls = {
|
||||||
|
certResolver = "ionos";
|
||||||
|
};
|
||||||
|
service = serviceName;
|
||||||
|
entrypoints = "websecure";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
37
hosts/AZ-CLD-1/services/containers/litellm.nix
Normal file
37
hosts/AZ-CLD-1/services/containers/litellm.nix
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
{config, ...}: let
|
||||||
|
serviceName = "litellm";
|
||||||
|
servicePort = config.m3ta.ports.get serviceName;
|
||||||
|
in {
|
||||||
|
virtualisation.oci-containers.containers.${serviceName} = {
|
||||||
|
#image = "ghcr.io/berriai/litellm:v1.78.5-stable";
|
||||||
|
image = "docker.litellm.ai/berriai/litellm:v1.82.3-stable";
|
||||||
|
ports = ["127.0.0.1:${toString servicePort}:4000"];
|
||||||
|
environmentFiles = [config.age.secrets.litellm-env.path];
|
||||||
|
environment = {
|
||||||
|
ANONYMIZED_TELEMETRY = "False";
|
||||||
|
DO_NOT_TRACK = "True";
|
||||||
|
SCARF_NO_ANALYTICS = "True";
|
||||||
|
STORE_MODEL_IN_DB = "True";
|
||||||
|
};
|
||||||
|
volumes = ["/var/lib/litellm/config.yaml:/app/config.yaml"];
|
||||||
|
extraOptions = ["--add-host=postgres:10.89.0.1" "--ip=10.89.0.30" "--network=web"];
|
||||||
|
};
|
||||||
|
|
||||||
|
# Traefik configuration
|
||||||
|
services.traefik.dynamicConfigOptions.http = {
|
||||||
|
services.${serviceName}.loadBalancer.servers = [
|
||||||
|
{
|
||||||
|
url = "http://localhost:${toString servicePort}/";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
|
||||||
|
routers.${serviceName} = {
|
||||||
|
rule = "Host(`llm.az-gruppe.com`)";
|
||||||
|
tls = {
|
||||||
|
certResolver = "ionos";
|
||||||
|
};
|
||||||
|
service = serviceName;
|
||||||
|
entrypoints = "websecure";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
243
hosts/AZ-CLD-1/services/containers/netbird.nix
Normal file
243
hosts/AZ-CLD-1/services/containers/netbird.nix
Normal file
@@ -0,0 +1,243 @@
|
|||||||
|
{
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
|
serviceName = "netbird";
|
||||||
|
|
||||||
|
servicePort = config.m3ta.ports.get serviceName;
|
||||||
|
|
||||||
|
domain = "v.az-gruppe.com";
|
||||||
|
proxyDomain = "p.az-gruppe.com";
|
||||||
|
|
||||||
|
ipBase = "10.89.0";
|
||||||
|
ipOffset = 50;
|
||||||
|
|
||||||
|
# Derived IPs
|
||||||
|
gatewayIp = "${ipBase}.1";
|
||||||
|
dashboardIp = "${ipBase}.${toString ipOffset}";
|
||||||
|
serverIp = "${ipBase}.${toString (ipOffset + 1)}";
|
||||||
|
proxyIp = "${ipBase}.${toString (ipOffset + 2)}";
|
||||||
|
|
||||||
|
# Database configuration
|
||||||
|
dbName = "netbird";
|
||||||
|
dbUser = "netbird";
|
||||||
|
dbHost = gatewayIp;
|
||||||
|
|
||||||
|
# NetBird config as Nix attribute set
|
||||||
|
netbirdConfig = {
|
||||||
|
server = {
|
||||||
|
listenAddress = ":80";
|
||||||
|
exposedAddress = "https://${domain}:443";
|
||||||
|
stunPorts = [3478];
|
||||||
|
metricsPort = 9090;
|
||||||
|
healthcheckAddress = ":9000";
|
||||||
|
logLevel = "info";
|
||||||
|
logFile = "console";
|
||||||
|
dataDir = "/var/lib/netbird";
|
||||||
|
|
||||||
|
auth = {
|
||||||
|
issuer = "https://${domain}/oauth2";
|
||||||
|
localAuthDisabled = true;
|
||||||
|
signKeyRefreshEnabled = true;
|
||||||
|
dashboardRedirectURIs = [
|
||||||
|
"https://${domain}/nb-auth"
|
||||||
|
"https://${domain}/nb-silent-auth"
|
||||||
|
];
|
||||||
|
cliRedirectURIs = ["http://localhost:53000/"];
|
||||||
|
};
|
||||||
|
|
||||||
|
reverseProxy = {
|
||||||
|
trustedHTTPProxies = ["${gatewayIp}/32"];
|
||||||
|
};
|
||||||
|
|
||||||
|
# Proxy Feature
|
||||||
|
proxy = {
|
||||||
|
enabled = true;
|
||||||
|
domain = proxyDomain;
|
||||||
|
};
|
||||||
|
|
||||||
|
store = {
|
||||||
|
engine = "postgres";
|
||||||
|
postgres = {
|
||||||
|
host = dbHost;
|
||||||
|
port = 5432;
|
||||||
|
database = dbName;
|
||||||
|
username = dbUser;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
# Generate YAML config
|
||||||
|
yamlFormat = pkgs.formats.yaml {};
|
||||||
|
configYamlBase = yamlFormat.generate "netbird-config-base.yaml" netbirdConfig;
|
||||||
|
|
||||||
|
# Script to inject secrets at runtime
|
||||||
|
configGenScript = pkgs.writeShellScript "netbird-gen-config" ''
|
||||||
|
set -euo pipefail
|
||||||
|
|
||||||
|
AUTH_SECRET=$(cat "$1")
|
||||||
|
DB_PASSWORD=$(cat "$2")
|
||||||
|
ENCRYPTION_KEY=$(cat "$3")
|
||||||
|
|
||||||
|
${pkgs.yq-go}/bin/yq eval "
|
||||||
|
.server.authSecret = \"$AUTH_SECRET\" |
|
||||||
|
.server.store.encryptionKey = \"$ENCRYPTION_KEY\" |
|
||||||
|
.server.store.postgres.password = \"$DB_PASSWORD\"
|
||||||
|
" ${configYamlBase}
|
||||||
|
'';
|
||||||
|
in {
|
||||||
|
age.secrets."${serviceName}-auth-secret".file = ../../../../secrets/${serviceName}-auth-secret.age;
|
||||||
|
age.secrets."${serviceName}-db-password".file = ../../../../secrets/${serviceName}-db-password.age;
|
||||||
|
age.secrets."${serviceName}-encryption-key".file = ../../../../secrets/${serviceName}-encryption-key.age;
|
||||||
|
age.secrets."${serviceName}-dashboard-env".file = ../../../../secrets/${serviceName}-dashboard-env.age;
|
||||||
|
age.secrets."${serviceName}-server-env".file = ../../../../secrets/${serviceName}-server-env.age;
|
||||||
|
age.secrets."${serviceName}-proxy-env".file = ../../../../secrets/${serviceName}-proxy-env.age;
|
||||||
|
|
||||||
|
# Systemd oneshot service to generate config with secrets
|
||||||
|
systemd.services."${serviceName}-config" = {
|
||||||
|
description = "Generate NetBird config with secrets";
|
||||||
|
wantedBy = ["multi-user.target"];
|
||||||
|
before = ["podman-${serviceName}-server.service"];
|
||||||
|
requiredBy = ["podman-${serviceName}-server.service"];
|
||||||
|
|
||||||
|
serviceConfig = {
|
||||||
|
Type = "oneshot";
|
||||||
|
RemainAfterExit = true;
|
||||||
|
ExecStart = pkgs.writeShellScript "netbird-write-config" ''
|
||||||
|
mkdir -p /var/lib/${serviceName}
|
||||||
|
${configGenScript} \
|
||||||
|
${config.age.secrets."${serviceName}-auth-secret".path} \
|
||||||
|
${config.age.secrets."${serviceName}-db-password".path} \
|
||||||
|
${config.age.secrets."${serviceName}-encryption-key".path} \
|
||||||
|
> /var/lib/${serviceName}/config.yaml
|
||||||
|
chmod 600 /var/lib/${serviceName}/config.yaml
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
virtualisation.oci-containers.containers = {
|
||||||
|
"${serviceName}-dashboard" = {
|
||||||
|
image = "netbirdio/dashboard:latest";
|
||||||
|
autoStart = true;
|
||||||
|
ports = ["127.0.0.1:${toString servicePort}:80"];
|
||||||
|
environmentFiles = [config.age.secrets."${serviceName}-dashboard-env".path];
|
||||||
|
extraOptions = [
|
||||||
|
"--ip=${dashboardIp}"
|
||||||
|
"--network=web"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
"${serviceName}-server" = {
|
||||||
|
image = "netbirdio/netbird-server:latest";
|
||||||
|
autoStart = true;
|
||||||
|
ports = ["3478:3478/udp"];
|
||||||
|
environmentFiles = [config.age.secrets."${serviceName}-server-env".path];
|
||||||
|
volumes = [
|
||||||
|
"${serviceName}_data:/var/lib/netbird"
|
||||||
|
"/var/lib/${serviceName}/config.yaml:/etc/netbird/config.yaml:ro"
|
||||||
|
];
|
||||||
|
cmd = ["--config" "/etc/netbird/config.yaml"];
|
||||||
|
extraOptions = [
|
||||||
|
"--ip=${serverIp}"
|
||||||
|
"--network=web"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
"${serviceName}-proxy" = {
|
||||||
|
image = "netbirdio/reverse-proxy:latest";
|
||||||
|
autoStart = true;
|
||||||
|
ports = ["51820:51820/udp"];
|
||||||
|
volumes = [
|
||||||
|
"${serviceName}_proxy_certs:/certs"
|
||||||
|
];
|
||||||
|
environmentFiles = [config.age.secrets."${serviceName}-proxy-env".path];
|
||||||
|
cmd = [
|
||||||
|
"--domain=${proxyDomain}"
|
||||||
|
"--mgmt=https://${domain}:443"
|
||||||
|
"--addr=:8443"
|
||||||
|
"--cert-dir=/certs"
|
||||||
|
"--acme-certs"
|
||||||
|
"--trusted-proxies=${gatewayIp}/32"
|
||||||
|
];
|
||||||
|
dependsOn = ["${serviceName}-server"];
|
||||||
|
extraOptions = [
|
||||||
|
"--ip=${proxyIp}"
|
||||||
|
"--network=web"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
services.traefik.dynamicConfigOptions = {
|
||||||
|
# HTTP services and routers
|
||||||
|
http = {
|
||||||
|
services = {
|
||||||
|
"${serviceName}-dashboard".loadBalancer.servers = [
|
||||||
|
{url = "http://localhost:${toString servicePort}/";}
|
||||||
|
];
|
||||||
|
|
||||||
|
"${serviceName}-server".loadBalancer.servers = [
|
||||||
|
{url = "http://${serverIp}:80/";}
|
||||||
|
];
|
||||||
|
|
||||||
|
"${serviceName}-server-h2c".loadBalancer.servers = [
|
||||||
|
{url = "h2c://${serverIp}:80";}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
routers = {
|
||||||
|
# gRPC (Signal + Management)
|
||||||
|
"${serviceName}-grpc" = {
|
||||||
|
rule = "Host(`${domain}`) && (PathPrefix(`/signalexchange.SignalExchange/`) || PathPrefix(`/management.ManagementService/`) || PathPrefix(`/management.ProxyService/`))";
|
||||||
|
entrypoints = "websecure";
|
||||||
|
tls.certResolver = "ionos";
|
||||||
|
service = "${serviceName}-server-h2c";
|
||||||
|
priority = 100;
|
||||||
|
};
|
||||||
|
# Backend (relay, WebSocket, API, OAuth2)
|
||||||
|
"${serviceName}-backend" = {
|
||||||
|
rule = "Host(`${domain}`) && (PathPrefix(`/relay`) || PathPrefix(`/ws-proxy/`) || PathPrefix(`/api`) || PathPrefix(`/oauth2`))";
|
||||||
|
entrypoints = "websecure";
|
||||||
|
tls.certResolver = "ionos";
|
||||||
|
service = "${serviceName}-server";
|
||||||
|
priority = 100;
|
||||||
|
};
|
||||||
|
|
||||||
|
# Dashboard (catch-all, lowest priority)
|
||||||
|
"${serviceName}-dashboard" = {
|
||||||
|
rule = "Host(`${domain}`)";
|
||||||
|
entrypoints = "websecure";
|
||||||
|
tls.certResolver = "ionos";
|
||||||
|
service = "${serviceName}-dashboard";
|
||||||
|
priority = 1;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
# TCP for proxy TLS passthrough
|
||||||
|
tcp = {
|
||||||
|
services."${serviceName}-proxy-tls".loadBalancer.servers = [
|
||||||
|
{address = "${proxyIp}:8443";}
|
||||||
|
];
|
||||||
|
|
||||||
|
routers."${serviceName}-proxy-passthrough" = {
|
||||||
|
entryPoints = ["websecure"];
|
||||||
|
rule = "HostSNI(`*`)";
|
||||||
|
service = "${serviceName}-proxy-tls";
|
||||||
|
priority = 1;
|
||||||
|
tls.passthrough = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
# ServersTransport for proxy protocol v2 (optional)
|
||||||
|
serversTransports."pp-v2" = {
|
||||||
|
proxyProtocol.version = 2;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
networking.firewall.allowedUDPPorts = [
|
||||||
|
3478 # STUN
|
||||||
|
51820 # WireGuard for proxy
|
||||||
|
];
|
||||||
|
}
|
||||||
32
hosts/AZ-CLD-1/services/containers/portainer.nix
Normal file
32
hosts/AZ-CLD-1/services/containers/portainer.nix
Normal file
@@ -0,0 +1,32 @@
|
|||||||
|
{config, ...}: let
|
||||||
|
serviceName = "portainer";
|
||||||
|
servicePort = config.m3ta.ports.get serviceName;
|
||||||
|
in {
|
||||||
|
virtualisation.oci-containers.containers.${serviceName} = {
|
||||||
|
image = "docker.io/portainer/portainer-ce:latest";
|
||||||
|
ports = ["127.0.0.1:${toString servicePort}:9000"];
|
||||||
|
volumes = [
|
||||||
|
"/etc/localtime:/etc/localtime:ro"
|
||||||
|
"/run/podman/podman.sock:/var/run/docker.sock:ro"
|
||||||
|
"portainer_data:/data"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
# Traefik configuration
|
||||||
|
services.traefik.dynamicConfigOptions.http = {
|
||||||
|
services.${serviceName}.loadBalancer.servers = [
|
||||||
|
{
|
||||||
|
url = "http://localhost:${toString servicePort}/";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
|
||||||
|
routers.${serviceName} = {
|
||||||
|
rule = "Host(`pt.az-gruppe.com`)";
|
||||||
|
tls = {
|
||||||
|
certResolver = "ionos";
|
||||||
|
};
|
||||||
|
service = serviceName;
|
||||||
|
entrypoints = "websecure";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
296
hosts/AZ-CLD-1/services/containers/zammad-hr.nix
Normal file
296
hosts/AZ-CLD-1/services/containers/zammad-hr.nix
Normal file
@@ -0,0 +1,296 @@
|
|||||||
|
{
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
|
instanceName = "hr";
|
||||||
|
serviceName = "zammad-${instanceName}";
|
||||||
|
|
||||||
|
servicePort = config.m3ta.ports.get serviceName;
|
||||||
|
elasticsearchServiceName = "${serviceName}-elasticsearch";
|
||||||
|
elasticsearchPort = config.m3ta.ports.get elasticsearchServiceName;
|
||||||
|
|
||||||
|
envFileProd = config.age.secrets."${serviceName}-env-prod".path;
|
||||||
|
envFileCommon = config.age.secrets."${serviceName}-env".path;
|
||||||
|
|
||||||
|
zammadVersion = "6.5.2-22";
|
||||||
|
zammadImage = "ghcr.io/zammad/zammad:${zammadVersion}";
|
||||||
|
|
||||||
|
ipBase = "10.89.0";
|
||||||
|
ipOffset = 40;
|
||||||
|
|
||||||
|
# Domain-Konfiguration
|
||||||
|
zammadDomain = "hr-ticket.az-gruppe.com";
|
||||||
|
|
||||||
|
sharedEnvironment = {
|
||||||
|
MEMCACHE_SERVERS = "zammad-memcached:11211";
|
||||||
|
POSTGRESQL_DB = "zammad_${instanceName}";
|
||||||
|
POSTGRESQL_HOST = "10.89.0.1";
|
||||||
|
POSTGRESQL_USER = "zammad_${instanceName}";
|
||||||
|
POSTGRESQL_PORT = "5432";
|
||||||
|
POSTGRESQL_OPTIONS = "?pool=50";
|
||||||
|
REDIS_URL = "redis://zammad-redis:6379";
|
||||||
|
TZ = "Europe/Berlin";
|
||||||
|
BACKUP_DIR = "/var/tmp/zammad";
|
||||||
|
BACKUP_TIME = "03:00";
|
||||||
|
HOLD_DAYS = "10";
|
||||||
|
ELASTICSEARCH_ENABLED = "true";
|
||||||
|
ELASTICSEARCH_HOST = "zammad-elasticsearch";
|
||||||
|
ELASTICSEARCH_PORT = "9200";
|
||||||
|
ELASTICSEARCH_NAMESPACE = "zammad_${instanceName}";
|
||||||
|
NGINX_PORT = "8080";
|
||||||
|
|
||||||
|
# CSRF & Reverse Proxy Settings
|
||||||
|
NGINX_SERVER_SCHEME = "https";
|
||||||
|
NGINX_SERVER_NAME = zammadDomain;
|
||||||
|
ZAMMAD_HTTP_TYPE = "https";
|
||||||
|
ZAMMAD_FQDN = zammadDomain;
|
||||||
|
RAILS_TRUSTED_PROXIES = "['127.0.0.1', '::1', '10.89.0.0/24']";
|
||||||
|
};
|
||||||
|
in {
|
||||||
|
virtualisation.oci-containers = {
|
||||||
|
containers."${serviceName}-elasticsearch" = {
|
||||||
|
image = "elasticsearch:8.19.6";
|
||||||
|
autoStart = true;
|
||||||
|
volumes = ["${serviceName}_elasticsearch:/usr/share/elasticsearch/data"];
|
||||||
|
environment = {
|
||||||
|
"discovery.type" = "single-node";
|
||||||
|
"xpack.security.enabled" = "false";
|
||||||
|
ES_JAVA_OPTS = "-Xms1g -Xmx1g";
|
||||||
|
};
|
||||||
|
extraOptions = [
|
||||||
|
"--ip=${ipBase}.${toString ipOffset}"
|
||||||
|
"--network=web"
|
||||||
|
"--network-alias=zammad-elasticsearch"
|
||||||
|
];
|
||||||
|
ports = ["127.0.0.1:${toString elasticsearchPort}:9200"];
|
||||||
|
};
|
||||||
|
|
||||||
|
containers."${serviceName}-memcached" = {
|
||||||
|
image = "memcached:1.6.39-alpine";
|
||||||
|
autoStart = true;
|
||||||
|
cmd = ["memcached" "-m" "256M"];
|
||||||
|
extraOptions = [
|
||||||
|
"--ip=${ipBase}.${toString (ipOffset + 1)}"
|
||||||
|
"--network=web"
|
||||||
|
"--network-alias=zammad-memcached"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
containers."${serviceName}-redis" = {
|
||||||
|
image = "redis:7.4.6-alpine";
|
||||||
|
autoStart = true;
|
||||||
|
volumes = ["${serviceName}_redis:/data"];
|
||||||
|
extraOptions = [
|
||||||
|
"--ip=${ipBase}.${toString (ipOffset + 2)}"
|
||||||
|
"--network=web"
|
||||||
|
"--network-alias=zammad-redis"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
containers."${serviceName}-railsserver" = {
|
||||||
|
image = zammadImage;
|
||||||
|
autoStart = true;
|
||||||
|
cmd = ["zammad-railsserver"];
|
||||||
|
environment = sharedEnvironment;
|
||||||
|
environmentFiles = [envFileCommon envFileProd];
|
||||||
|
volumes = ["${serviceName}_storage:/opt/zammad/storage"];
|
||||||
|
dependsOn = ["${serviceName}-memcached" "${serviceName}-redis" "${serviceName}-elasticsearch"];
|
||||||
|
extraOptions = [
|
||||||
|
"--ip=${ipBase}.${toString (ipOffset + 4)}"
|
||||||
|
"--network=web"
|
||||||
|
"--add-host=postgres:10.89.0.1"
|
||||||
|
"--network-alias=zammad-railsserver"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
containers."${serviceName}-scheduler" = {
|
||||||
|
image = zammadImage;
|
||||||
|
autoStart = true;
|
||||||
|
cmd = ["zammad-scheduler"];
|
||||||
|
environment = sharedEnvironment;
|
||||||
|
environmentFiles = [envFileCommon envFileProd];
|
||||||
|
volumes = ["${serviceName}_storage:/opt/zammad/storage"];
|
||||||
|
dependsOn = ["${serviceName}-memcached" "${serviceName}-redis"];
|
||||||
|
extraOptions = [
|
||||||
|
"--ip=${ipBase}.${toString (ipOffset + 5)}"
|
||||||
|
"--network=web"
|
||||||
|
"--add-host=postgres:10.89.0.1"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
containers."${serviceName}-websocket" = {
|
||||||
|
image = zammadImage;
|
||||||
|
autoStart = true;
|
||||||
|
cmd = ["zammad-websocket"];
|
||||||
|
environment = sharedEnvironment;
|
||||||
|
environmentFiles = [envFileCommon envFileProd];
|
||||||
|
volumes = ["${serviceName}_storage:/opt/zammad/storage"];
|
||||||
|
dependsOn = ["${serviceName}-memcached" "${serviceName}-redis"];
|
||||||
|
extraOptions = [
|
||||||
|
"--ip=${ipBase}.${toString (ipOffset + 6)}"
|
||||||
|
"--network=web"
|
||||||
|
"--add-host=postgres:10.89.0.1"
|
||||||
|
"--network-alias=zammad-websocket"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
containers."${serviceName}-nginx" = {
|
||||||
|
image = zammadImage;
|
||||||
|
autoStart = true;
|
||||||
|
cmd = ["zammad-nginx"];
|
||||||
|
environment = sharedEnvironment;
|
||||||
|
environmentFiles = [envFileCommon envFileProd];
|
||||||
|
volumes = ["${serviceName}_storage:/opt/zammad/storage"];
|
||||||
|
dependsOn = ["${serviceName}-railsserver"];
|
||||||
|
ports = ["127.0.0.1:${toString servicePort}:8080"];
|
||||||
|
extraOptions = [
|
||||||
|
"--ip=${ipBase}.${toString (ipOffset + 7)}"
|
||||||
|
"--network=web"
|
||||||
|
"--add-host=postgres:10.89.0.1"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
containers."${serviceName}-backup" = {
|
||||||
|
image = zammadImage;
|
||||||
|
autoStart = true;
|
||||||
|
cmd = ["zammad-backup"];
|
||||||
|
environment = sharedEnvironment;
|
||||||
|
environmentFiles = [envFileCommon envFileProd];
|
||||||
|
volumes = [
|
||||||
|
"${serviceName}_storage:/opt/zammad/storage:ro"
|
||||||
|
"/var/backup/${serviceName}:/var/tmp/zammad:rw"
|
||||||
|
];
|
||||||
|
dependsOn = ["${serviceName}-memcached" "${serviceName}-redis"];
|
||||||
|
extraOptions = [
|
||||||
|
"--ip=${ipBase}.${toString (ipOffset + 8)}"
|
||||||
|
"--network=web"
|
||||||
|
"--add-host=postgres:10.89.0.1"
|
||||||
|
"--user=0:0"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
# Init als oneshot systemd-Service
|
||||||
|
systemd.services."${serviceName}-init" = {
|
||||||
|
description = "Zammad ${instanceName} Database Initialization";
|
||||||
|
after = [
|
||||||
|
"podman-${serviceName}-memcached.service"
|
||||||
|
"podman-${serviceName}-redis.service"
|
||||||
|
"podman-${serviceName}-elasticsearch.service"
|
||||||
|
];
|
||||||
|
requires = [
|
||||||
|
"podman-${serviceName}-memcached.service"
|
||||||
|
"podman-${serviceName}-redis.service"
|
||||||
|
];
|
||||||
|
wantedBy = [];
|
||||||
|
|
||||||
|
serviceConfig = {
|
||||||
|
Type = "oneshot";
|
||||||
|
RemainAfterExit = true;
|
||||||
|
User = "root";
|
||||||
|
Group = "root";
|
||||||
|
};
|
||||||
|
|
||||||
|
script = ''
|
||||||
|
set -euo pipefail
|
||||||
|
|
||||||
|
echo "Starting Zammad ${instanceName} database initialization..."
|
||||||
|
|
||||||
|
${pkgs.podman}/bin/podman run --rm \
|
||||||
|
--name ${serviceName}-init-oneshot \
|
||||||
|
--network web \
|
||||||
|
--ip ${ipBase}.${toString (ipOffset + 3)} \
|
||||||
|
--add-host=postgres:10.89.0.1 \
|
||||||
|
--user 0:0 \
|
||||||
|
--env-file ${envFileCommon} \
|
||||||
|
--env-file ${envFileProd} \
|
||||||
|
--env MEMCACHE_SERVERS=zammad-memcached:11211 \
|
||||||
|
--env POSTGRESQL_DB=zammad_${instanceName} \
|
||||||
|
--env POSTGRESQL_HOST=10.89.0.1 \
|
||||||
|
--env POSTGRESQL_USER=zammad_${instanceName} \
|
||||||
|
--env POSTGRESQL_PORT=5432 \
|
||||||
|
--env POSTGRESQL_OPTIONS='?pool=50' \
|
||||||
|
--env REDIS_URL=redis://zammad-redis:6379 \
|
||||||
|
--env TZ=Europe/Berlin \
|
||||||
|
--env ELASTICSEARCH_ENABLED=true \
|
||||||
|
--env ELASTICSEARCH_HOST=zammad-elasticsearch \
|
||||||
|
--env ELASTICSEARCH_PORT=9200 \
|
||||||
|
--env ELASTICSEARCH_NAMESPACE=zammad_${instanceName} \
|
||||||
|
--env NGINX_SERVER_SCHEME=https \
|
||||||
|
--env NGINX_SERVER_NAME=${zammadDomain} \
|
||||||
|
--env ZAMMAD_HTTP_TYPE=https \
|
||||||
|
--env ZAMMAD_FQDN=${zammadDomain} \
|
||||||
|
-v ${serviceName}_storage:/opt/zammad/storage \
|
||||||
|
${zammadImage} \
|
||||||
|
zammad-init
|
||||||
|
|
||||||
|
echo "Zammad ${instanceName} initialization completed successfully"
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
# Backup retention service
|
||||||
|
systemd.services."${serviceName}-backup-cleanup" = {
|
||||||
|
serviceConfig = {
|
||||||
|
Type = "oneshot";
|
||||||
|
User = "root";
|
||||||
|
Group = "root";
|
||||||
|
};
|
||||||
|
script = ''
|
||||||
|
set -euo pipefail
|
||||||
|
|
||||||
|
BACKUP_DIR="/var/backup/${serviceName}"
|
||||||
|
HOLD_DAYS=10
|
||||||
|
|
||||||
|
echo "Starting ${serviceName} backup cleanup at $(date)"
|
||||||
|
|
||||||
|
mkdir -p "$BACKUP_DIR"
|
||||||
|
chown root:root "$BACKUP_DIR"
|
||||||
|
chmod 750 "$BACKUP_DIR"
|
||||||
|
|
||||||
|
${pkgs.findutils}/bin/find "$BACKUP_DIR" -type f -name "*.gz" -mtime +$HOLD_DAYS -delete
|
||||||
|
|
||||||
|
echo "Current backups:"
|
||||||
|
ls -lah "$BACKUP_DIR" || echo "No backups found"
|
||||||
|
|
||||||
|
echo "${serviceName} backup cleanup completed at $(date)"
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
systemd.timers."${serviceName}-backup-cleanup" = {
|
||||||
|
wantedBy = ["timers.target"];
|
||||||
|
timerConfig = {
|
||||||
|
OnCalendar = "*-*-* 04:00:00";
|
||||||
|
RandomizedDelaySec = "30m";
|
||||||
|
Persistent = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
# Traefik configuration with proper headers
|
||||||
|
services.traefik.dynamicConfigOptions.http = {
|
||||||
|
services.${serviceName}.loadBalancer.servers = [
|
||||||
|
{
|
||||||
|
url = "http://localhost:${toString servicePort}/";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
|
||||||
|
middlewares."${serviceName}-headers".headers = {
|
||||||
|
customRequestHeaders = {
|
||||||
|
X-Forwarded-Proto = "https";
|
||||||
|
X-Forwarded-Port = "443";
|
||||||
|
X-Forwarded-Host = zammadDomain;
|
||||||
|
X-Real-IP = "";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
routers.${serviceName} = {
|
||||||
|
rule = "Host(`${zammadDomain}`)";
|
||||||
|
tls = {
|
||||||
|
certResolver = "ionos";
|
||||||
|
};
|
||||||
|
service = serviceName;
|
||||||
|
entrypoints = "websecure";
|
||||||
|
middlewares = ["${serviceName}-headers"];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
18
hosts/AZ-CLD-1/services/default.nix
Normal file
18
hosts/AZ-CLD-1/services/default.nix
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
{
|
||||||
|
imports = [
|
||||||
|
./containers
|
||||||
|
|
||||||
|
./gitea.nix
|
||||||
|
./gotenberg.nix
|
||||||
|
./metabase.nix
|
||||||
|
./n8n.nix
|
||||||
|
./netbird.nix
|
||||||
|
./ntfy.nix
|
||||||
|
./outline.nix
|
||||||
|
./postgres.nix
|
||||||
|
./traefik.nix
|
||||||
|
./vaultwarden.nix
|
||||||
|
./zugferd.nix
|
||||||
|
# ./zammad.nix
|
||||||
|
];
|
||||||
|
}
|
||||||
41
hosts/AZ-CLD-1/services/gitea.nix
Normal file
41
hosts/AZ-CLD-1/services/gitea.nix
Normal file
@@ -0,0 +1,41 @@
|
|||||||
|
{config, ...}: let
|
||||||
|
serviceName = "gitea";
|
||||||
|
servicePort = config.m3ta.ports.get serviceName;
|
||||||
|
in {
|
||||||
|
services.${serviceName} = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
server = {
|
||||||
|
ROOT_URL = "https://git.az-gruppe.com";
|
||||||
|
HTTP_PORT = servicePort;
|
||||||
|
};
|
||||||
|
mailer.SENDMAIL_PATH = "/run/wrappers/bin/sendmail";
|
||||||
|
service.DISABLE_REGISTRATION = true;
|
||||||
|
};
|
||||||
|
lfs.enable = true;
|
||||||
|
dump = {
|
||||||
|
enable = true;
|
||||||
|
type = "tar.gz";
|
||||||
|
interval = "03:30:00";
|
||||||
|
backupDir = "/var/backup/gitea";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
# Traefik configuration
|
||||||
|
services.traefik.dynamicConfigOptions.http = {
|
||||||
|
services.${serviceName}.loadBalancer.servers = [
|
||||||
|
{
|
||||||
|
url = "http://localhost:${toString servicePort}/";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
|
||||||
|
routers.${serviceName} = {
|
||||||
|
rule = "Host(`git.az-gruppe.com`)";
|
||||||
|
tls = {
|
||||||
|
certResolver = "ionos";
|
||||||
|
};
|
||||||
|
service = serviceName;
|
||||||
|
entrypoints = "websecure";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
10
hosts/AZ-CLD-1/services/gotenberg.nix
Normal file
10
hosts/AZ-CLD-1/services/gotenberg.nix
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
{config, ...}: let
|
||||||
|
serviceName = "gotenberg";
|
||||||
|
servicePort = config.m3ta.ports.get serviceName;
|
||||||
|
in {
|
||||||
|
services.gotenberg = {
|
||||||
|
enable = true;
|
||||||
|
port = servicePort;
|
||||||
|
bindIP = "127.0.0.1";
|
||||||
|
};
|
||||||
|
}
|
||||||
31
hosts/AZ-CLD-1/services/metabase.nix
Normal file
31
hosts/AZ-CLD-1/services/metabase.nix
Normal file
@@ -0,0 +1,31 @@
|
|||||||
|
{config, ...}: let
|
||||||
|
serviceName = "metabase";
|
||||||
|
servicePort = config.m3ta.ports.get serviceName;
|
||||||
|
in {
|
||||||
|
services.${serviceName} = {
|
||||||
|
enable = true;
|
||||||
|
listen.port = servicePort;
|
||||||
|
};
|
||||||
|
|
||||||
|
systemd.services.${serviceName}.serviceConfig = {
|
||||||
|
EnvironmentFile = config.age.secrets.metabase-env.path;
|
||||||
|
};
|
||||||
|
|
||||||
|
# Traefik configuration
|
||||||
|
services.traefik.dynamicConfigOptions.http = {
|
||||||
|
services.${serviceName}.loadBalancer.servers = [
|
||||||
|
{
|
||||||
|
url = "http://localhost:${toString servicePort}/";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
|
||||||
|
routers.${serviceName} = {
|
||||||
|
rule = "Host(`kpi.az-gruppe.com`)";
|
||||||
|
tls = {
|
||||||
|
certResolver = "ionos";
|
||||||
|
};
|
||||||
|
service = serviceName;
|
||||||
|
entrypoints = "websecure";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
31
hosts/AZ-CLD-1/services/n8n.nix
Normal file
31
hosts/AZ-CLD-1/services/n8n.nix
Normal file
@@ -0,0 +1,31 @@
|
|||||||
|
{config, ...}: let
|
||||||
|
serviceName = "n8n";
|
||||||
|
servicePort = config.m3ta.ports.get serviceName;
|
||||||
|
in {
|
||||||
|
services.${serviceName} = {
|
||||||
|
enable = true;
|
||||||
|
environment.WEBHOOK_URL = "https://wf.az-gruppe.com";
|
||||||
|
};
|
||||||
|
|
||||||
|
systemd.services.${serviceName}.serviceConfig = {
|
||||||
|
EnvironmentFile = config.age.secrets.n8n-env.path;
|
||||||
|
};
|
||||||
|
|
||||||
|
# Traefik configuration
|
||||||
|
services.traefik.dynamicConfigOptions.http = {
|
||||||
|
services.${serviceName}.loadBalancer.servers = [
|
||||||
|
{
|
||||||
|
url = "http://localhost:${toString servicePort}/";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
|
||||||
|
routers.${serviceName} = {
|
||||||
|
rule = "Host(`wf.az-gruppe.com`)";
|
||||||
|
tls = {
|
||||||
|
certResolver = "ionos";
|
||||||
|
};
|
||||||
|
service = serviceName;
|
||||||
|
entrypoints = "websecure";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
31
hosts/AZ-CLD-1/services/netbird.nix
Normal file
31
hosts/AZ-CLD-1/services/netbird.nix
Normal file
@@ -0,0 +1,31 @@
|
|||||||
|
{pkgs, ...}: {
|
||||||
|
services.netbird = {
|
||||||
|
enable = true;
|
||||||
|
package = pkgs.unstable.netbird;
|
||||||
|
};
|
||||||
|
|
||||||
|
systemd.services.netbird = {
|
||||||
|
environment = {
|
||||||
|
NB_DISABLE_SSH_CONFIG = "true";
|
||||||
|
};
|
||||||
|
path = [
|
||||||
|
pkgs.shadow
|
||||||
|
pkgs.util-linux
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
programs.ssh.extraConfig = ''
|
||||||
|
Match exec "${pkgs.netbird}/bin/netbird ssh detect %h %p"
|
||||||
|
PreferredAuthentications password,publickey,keyboard-interactive
|
||||||
|
PasswordAuthentication yes
|
||||||
|
PubkeyAuthentication yes
|
||||||
|
BatchMode no
|
||||||
|
ProxyCommand ${pkgs.netbird}/bin/netbird ssh proxy %h %p
|
||||||
|
StrictHostKeyChecking no
|
||||||
|
UserKnownHostsFile /dev/null
|
||||||
|
CheckHostIP no
|
||||||
|
LogLevel ERROR
|
||||||
|
'';
|
||||||
|
|
||||||
|
networking.firewall.checkReversePath = "loose";
|
||||||
|
}
|
||||||
32
hosts/AZ-CLD-1/services/ntfy.nix
Normal file
32
hosts/AZ-CLD-1/services/ntfy.nix
Normal file
@@ -0,0 +1,32 @@
|
|||||||
|
{config, ...}: let
|
||||||
|
serviceName = "ntfy-sh";
|
||||||
|
servicePort = config.m3ta.ports.get serviceName;
|
||||||
|
in {
|
||||||
|
services.${serviceName} = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
base-url = "https://ping.az-gruppe.com";
|
||||||
|
listen-http = ":${toString servicePort}";
|
||||||
|
auth-file = "/var/lib/ntfy-sh/user.db";
|
||||||
|
auth-default-access = "deny-all";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
# Traefik configuration
|
||||||
|
services.traefik.dynamicConfigOptions.http = {
|
||||||
|
services.${serviceName}.loadBalancer.servers = [
|
||||||
|
{
|
||||||
|
url = "http://localhost:${toString servicePort}/";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
|
||||||
|
routers.${serviceName} = {
|
||||||
|
rule = "Host(`ping.az-gruppe.com`)";
|
||||||
|
tls = {
|
||||||
|
certResolver = "ionos";
|
||||||
|
};
|
||||||
|
service = serviceName;
|
||||||
|
entrypoints = "websecure";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
41
hosts/AZ-CLD-1/services/outline.nix
Normal file
41
hosts/AZ-CLD-1/services/outline.nix
Normal file
@@ -0,0 +1,41 @@
|
|||||||
|
{config, ...}: let
|
||||||
|
serviceName = "outline";
|
||||||
|
servicePort = config.m3ta.ports.get serviceName;
|
||||||
|
in {
|
||||||
|
services.${serviceName} = {
|
||||||
|
enable = true;
|
||||||
|
port = servicePort;
|
||||||
|
publicUrl = "https://wiki.az-gruppe.com";
|
||||||
|
databaseUrl = "postgresql://outline:outline@127.0.0.1:5432/outline";
|
||||||
|
storage = {
|
||||||
|
storageType = "s3";
|
||||||
|
region = "eu-central";
|
||||||
|
uploadBucketUrl = "https://nbg1.your-objectstorage.com";
|
||||||
|
uploadBucketName = "az-wiki";
|
||||||
|
secretKeyFile = config.age.secrets.hetzner-s3-az-intern-secret-key.path;
|
||||||
|
accessKey = "CRT7V4HR5CG9NHICD2WW";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
systemd.services.${serviceName}.serviceConfig = {
|
||||||
|
EnvironmentFile = config.age.secrets.outline-env.path;
|
||||||
|
};
|
||||||
|
|
||||||
|
# Traefik configuration
|
||||||
|
services.traefik.dynamicConfigOptions.http = {
|
||||||
|
services.${serviceName}.loadBalancer.servers = [
|
||||||
|
{
|
||||||
|
url = "http://localhost:${toString servicePort}/";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
|
||||||
|
routers.${serviceName} = {
|
||||||
|
rule = "Host(`wiki.az-gruppe.com`)";
|
||||||
|
tls = {
|
||||||
|
certResolver = "ionos";
|
||||||
|
};
|
||||||
|
service = serviceName;
|
||||||
|
entrypoints = "websecure";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
182
hosts/AZ-CLD-1/services/postgres.nix
Normal file
182
hosts/AZ-CLD-1/services/postgres.nix
Normal file
@@ -0,0 +1,182 @@
|
|||||||
|
{
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
|
serviceName = "pgadmin";
|
||||||
|
pgadminPort = config.m3ta.ports.get serviceName;
|
||||||
|
in {
|
||||||
|
services.postgresql = {
|
||||||
|
enable = true;
|
||||||
|
enableTCPIP = true;
|
||||||
|
package = pkgs.postgresql_17;
|
||||||
|
settings = {
|
||||||
|
ssl = true;
|
||||||
|
max_connections = 200;
|
||||||
|
shared_buffers = "4GB";
|
||||||
|
superuser_reserved_connections = 5;
|
||||||
|
|
||||||
|
idle_in_transaction_session_timeout = "10min";
|
||||||
|
idle_session_timeout = "2h";
|
||||||
|
|
||||||
|
tcp_keepalives_idle = 60;
|
||||||
|
tcp_keepalives_interval = 10;
|
||||||
|
tcp_keepalives_count = 6;
|
||||||
|
|
||||||
|
deadlock_timeout = "1s";
|
||||||
|
|
||||||
|
authentication_timeout = "30s";
|
||||||
|
|
||||||
|
log_connections = true;
|
||||||
|
log_disconnections = true;
|
||||||
|
log_lock_waits = true;
|
||||||
|
};
|
||||||
|
extensions = with pkgs.postgresql17Packages; [
|
||||||
|
pgvector
|
||||||
|
];
|
||||||
|
initialScript = pkgs.writeText "backend-initScript" ''
|
||||||
|
CREATE USER baserow WITH ENCRYPTED PASSWORD 'baserow';
|
||||||
|
CREATE DATABASE baserow;
|
||||||
|
ALTER DATABASE baserow OWNER to baserow;
|
||||||
|
ALTER DATABASE baserow CONNECTION LIMIT 60;
|
||||||
|
|
||||||
|
CREATE USER kestra WITH ENCRYPTED PASSWORD 'kestra';
|
||||||
|
CREATE DATABASE kestra;
|
||||||
|
ALTER DATABASE kestra OWNER to kestra;
|
||||||
|
ALTER DATABASE kestra CONNECTION LIMIT 10;
|
||||||
|
|
||||||
|
CREATE USER librechat_rag WITH ENCRYPTED PASSWORD 'librechat_rag';
|
||||||
|
CREATE DATABASE librechat_rag;
|
||||||
|
ALTER DATABASE librechat_rag OWNER to librechat_rag;
|
||||||
|
ALTER DATABASE librechat_rag CONNECTION LIMIT 20;
|
||||||
|
|
||||||
|
CREATE USER librechat_rag_dev WITH ENCRYPTED PASSWORD 'librechat_rag_dev';
|
||||||
|
CREATE DATABASE librechat_rag_dev;
|
||||||
|
ALTER DATABASE librechat_rag_dev OWNER to librechat_rag_dev;
|
||||||
|
ALTER DATABASE librechat_rag_dev CONNECTION LIMIT 10;
|
||||||
|
|
||||||
|
CREATE USER metabase WITH ENCRYPTED PASSWORD 'metabase';
|
||||||
|
CREATE DATABASE metabase;
|
||||||
|
ALTER DATABASE metabase OWNER to metabase;
|
||||||
|
ALTER DATABASE metabase CONNECTION LIMIT 15;
|
||||||
|
|
||||||
|
CREATE USER n8n WITH ENCRYPTED PASSWORD 'n8n';
|
||||||
|
CREATE DATABASE n8n;
|
||||||
|
ALTER DATABASE n8n OWNER to n8n;
|
||||||
|
ALTER DATABASE n8n CONNECTION LIMIT 5;
|
||||||
|
|
||||||
|
CREATE USER outline WITH ENCRYPTED PASSWORD 'outline';
|
||||||
|
CREATE DATABASE outline;
|
||||||
|
ALTER DATABASE outline OWNER to outline;
|
||||||
|
ALTER DATABASE outline CONNECTION LIMIT 5;
|
||||||
|
|
||||||
|
CREATE USER vaultwarden WITH ENCRYPTED PASSWORD 'vaultwarden';
|
||||||
|
CREATE DATABASE vaultwarden;
|
||||||
|
ALTER DATABASE vaultwarden OWNER to vaultwarden;
|
||||||
|
ALTER DATABASE vaultwarden CONNECTION LIMIT 20;
|
||||||
|
|
||||||
|
CREATE USER zammad-hr WITH ENCRYPTED PASSWORD 'zammad-hr';
|
||||||
|
CREATE DATABASE zammad-hr;
|
||||||
|
ALTER DATABASE zammad-hr OWNER to zammad-hr;
|
||||||
|
ALTER DATABASE zammad-hr CONNECTION LIMIT 50;
|
||||||
|
|
||||||
|
-- Group roles (NOLOGIN, for permission management)
|
||||||
|
CREATE ROLE admin NOLOGIN;
|
||||||
|
CREATE ROLE dba NOLOGIN;
|
||||||
|
|
||||||
|
-- Personal login roles
|
||||||
|
CREATE USER sascha_koenig WITH ENCRYPTED PASSWORD 'sascha_koenig';
|
||||||
|
GRANT admin TO sascha_koenig;
|
||||||
|
|
||||||
|
CREATE USER jannik_mueller WITH ENCRYPTED PASSWORD 'jannik_mueller';
|
||||||
|
GRANT admin TO jannik_mueller;
|
||||||
|
'';
|
||||||
|
authentication = pkgs.lib.mkOverride 10 ''
|
||||||
|
# Local connections (Unix socket)
|
||||||
|
local all postgres peer
|
||||||
|
local all sascha_koenig scram-sha-256
|
||||||
|
local all jannik_mueller scram-sha-256
|
||||||
|
local az_test az_test scram-sha-256
|
||||||
|
local metabase,az_kpi_raw metabase scram-sha-256
|
||||||
|
local n8n n8n scram-sha-256
|
||||||
|
local outline outline scram-sha-256
|
||||||
|
local vaultwarden vaultwarden scram-sha-256
|
||||||
|
local zammad zammad scram-sha-256
|
||||||
|
|
||||||
|
# Localhost connections (IPv4 and IPv6)
|
||||||
|
host all postgres 127.0.0.1/32 scram-sha-256
|
||||||
|
host all postgres ::1/128 scram-sha-256
|
||||||
|
|
||||||
|
host all sascha_koenig 127.0.0.1/32 scram-sha-256
|
||||||
|
host all sascha_koenig ::1/128 scram-sha-256
|
||||||
|
|
||||||
|
host all jannik_mueller 127.0.0.1/32 scram-sha-256
|
||||||
|
host all jannik_mueller ::1/128 scram-sha-256
|
||||||
|
|
||||||
|
host az_test az_test 127.0.0.1/32 scram-sha-256
|
||||||
|
host az_test az_test ::1/128 scram-sha-256
|
||||||
|
|
||||||
|
host outline outline 127.0.0.1/32 scram-sha-256
|
||||||
|
host outline outline ::1/128 scram-sha-256
|
||||||
|
|
||||||
|
host metabase,az_kpi_raw metabase 127.0.0.1/32 scram-sha-256
|
||||||
|
host metabase,az_kpi_raw metabase ::1/128 scram-sha-256
|
||||||
|
|
||||||
|
host n8n n8n 127.0.0.1/32 scram-sha-256
|
||||||
|
host n8n n8n ::1/128 scram-sha-256
|
||||||
|
|
||||||
|
host vaultwarden vaultwarden 127.0.0.1/32 scram-sha-256
|
||||||
|
host vaultwarden vaultwarden ::1/128 scram-sha-256
|
||||||
|
|
||||||
|
host zammad zammad 127.0.0.1/32 scram-sha-256
|
||||||
|
host zammad zammad ::1/128 scram-sha-256
|
||||||
|
|
||||||
|
# Podman network connections for Baserow
|
||||||
|
host baserow baserow 10.89.0.0/24 scram-sha-256
|
||||||
|
host kestra kestra 10.89.0.0/24 scram-sha-256
|
||||||
|
host librechat_rag librechat_rag 10.89.0.0/24 scram-sha-256
|
||||||
|
host librechat_rag_dev librechat_rag_dev 10.89.1.0/24 scram-sha-256
|
||||||
|
host zammad_hr zammad_hr 10.89.0.0/24 scram-sha-256
|
||||||
|
host postgres zammad_hr 10.89.0.0/24 scram-sha-256
|
||||||
|
host litellm litellm 10.89.0.0/24 scram-sha-256
|
||||||
|
host netbird netbird 10.89.0.0/24 scram-sha-256
|
||||||
|
|
||||||
|
# Netbird network connections
|
||||||
|
host az_kpi_raw kestra_prm 100.91.49.26/32 scram-sha-256
|
||||||
|
|
||||||
|
# Deny all other connections
|
||||||
|
local all all reject
|
||||||
|
host all all 0.0.0.0/0 reject
|
||||||
|
host all all ::/0 reject
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
services.postgresqlBackup = {
|
||||||
|
enable = true;
|
||||||
|
startAt = "03:10:00";
|
||||||
|
databases = ["az_kpi_raw" "baserow" "kestra" "librechat_rag" "litellm" "metabase" "n8n" "outline" "vaultwarden" "zammad" "zammad_hr"];
|
||||||
|
};
|
||||||
|
services.pgadmin = {
|
||||||
|
enable = true;
|
||||||
|
initialPasswordFile = "${config.age.secrets.pgadmin-pw.path}";
|
||||||
|
initialEmail = "sascha.koenig@azintec.com";
|
||||||
|
};
|
||||||
|
|
||||||
|
# Traefik configuration specific to pgadmin
|
||||||
|
services.traefik.dynamicConfigOptions.http = {
|
||||||
|
services.pgadmin.loadBalancer.servers = [{url = "http://localhost:${toString pgadminPort}/";}];
|
||||||
|
routers.pgadmin = {
|
||||||
|
rule = "Host(`pg.az-gruppe.com`)";
|
||||||
|
tls.certResolver = "ionos";
|
||||||
|
service = "pgadmin";
|
||||||
|
entrypoints = "websecure";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
networking.firewall = {
|
||||||
|
extraCommands = ''
|
||||||
|
iptables -A INPUT -p tcp -s 127.0.0.1 --dport 5432 -j ACCEPT
|
||||||
|
iptables -A INPUT -p tcp -s 10.89.0.0/24 --dport 5432 -j ACCEPT
|
||||||
|
iptables -A INPUT -p tcp -s 10.89.1.0/24 --dport 5432 -j ACCEPT
|
||||||
|
iptables -A INPUT -p tcp -s 100.91.49.26/32 --dport 5432 -j ACCEPT
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
}
|
||||||
77
hosts/AZ-CLD-1/services/traefik.nix
Normal file
77
hosts/AZ-CLD-1/services/traefik.nix
Normal file
@@ -0,0 +1,77 @@
|
|||||||
|
{config, ...}: let
|
||||||
|
httpPort = config.m3ta.ports.get "traefik";
|
||||||
|
httpsPort = config.m3ta.ports.get "traefik-ssl";
|
||||||
|
in {
|
||||||
|
services.traefik = {
|
||||||
|
enable = true;
|
||||||
|
staticConfigOptions = {
|
||||||
|
log = {level = "WARN";};
|
||||||
|
certificatesResolvers = {
|
||||||
|
ionos = {
|
||||||
|
acme = {
|
||||||
|
email = "sascha.koenig@azintec.com";
|
||||||
|
storage = "/var/lib/traefik/acme.json";
|
||||||
|
caserver = "https://acme-v02.api.letsencrypt.org/directory";
|
||||||
|
dnsChallenge = {
|
||||||
|
provider = "ionos";
|
||||||
|
resolvers = ["1.1.1.1:53" "8.8.8.8:53"];
|
||||||
|
propagation = {
|
||||||
|
delayBeforeChecks = 60;
|
||||||
|
disableChecks = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
api = {};
|
||||||
|
entryPoints = {
|
||||||
|
web = {
|
||||||
|
address = ":${toString httpPort}";
|
||||||
|
http.redirections.entryPoint = {
|
||||||
|
to = "websecure";
|
||||||
|
scheme = "https";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
websecure = {
|
||||||
|
address = ":${toString httpsPort}";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
dynamicConfigOptions = {
|
||||||
|
http = {
|
||||||
|
services = {
|
||||||
|
dummy = {
|
||||||
|
loadBalancer.servers = [
|
||||||
|
{url = "http://192.168.0.1";} # Diese URL wird nie verwendet
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
middlewares = {
|
||||||
|
auth = {
|
||||||
|
basicAuth = {
|
||||||
|
users = ["sascha.koenig:$apr1$1xqdta2b$DIVNvvp5iTUGNccJjguKh."];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
routers = {
|
||||||
|
api = {
|
||||||
|
rule = "Host(`r.az-gruppe.com`)";
|
||||||
|
service = "api@internal";
|
||||||
|
middlewares = ["auth"];
|
||||||
|
entrypoints = ["websecure"];
|
||||||
|
tls = {
|
||||||
|
certResolver = "ionos";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
systemd.services.traefik.serviceConfig = {
|
||||||
|
EnvironmentFile = ["${config.age.secrets.traefik-env.path}"];
|
||||||
|
};
|
||||||
|
|
||||||
|
networking.firewall.allowedTCPPorts = [httpPort httpsPort];
|
||||||
|
}
|
||||||
32
hosts/AZ-CLD-1/services/vaultwarden.nix
Normal file
32
hosts/AZ-CLD-1/services/vaultwarden.nix
Normal file
@@ -0,0 +1,32 @@
|
|||||||
|
{config, ...}: let
|
||||||
|
serviceName = "vaultwarden";
|
||||||
|
servicePort = config.m3ta.ports.get serviceName;
|
||||||
|
in {
|
||||||
|
services.${serviceName} = {
|
||||||
|
enable = true;
|
||||||
|
dbBackend = "postgresql";
|
||||||
|
config = {
|
||||||
|
ROCKET_ADDRESS = "127.0.0.1";
|
||||||
|
ROCKET_PORT = servicePort;
|
||||||
|
};
|
||||||
|
environmentFile = config.age.secrets.vaultwarden-env.path;
|
||||||
|
};
|
||||||
|
|
||||||
|
# Traefik configuration
|
||||||
|
services.traefik.dynamicConfigOptions.http = {
|
||||||
|
services.${serviceName}.loadBalancer.servers = [
|
||||||
|
{
|
||||||
|
url = "http://localhost:${toString servicePort}/";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
|
||||||
|
routers.${serviceName} = {
|
||||||
|
rule = "Host(`pw.az-gruppe.com`)";
|
||||||
|
tls = {
|
||||||
|
certResolver = "ionos";
|
||||||
|
};
|
||||||
|
service = serviceName;
|
||||||
|
entrypoints = "websecure";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
35
hosts/AZ-CLD-1/services/zammad.nix
Normal file
35
hosts/AZ-CLD-1/services/zammad.nix
Normal file
@@ -0,0 +1,35 @@
|
|||||||
|
{config, ...}: let
|
||||||
|
serviceName = "zammad";
|
||||||
|
servicePort = config.m3ta.ports.get serviceName;
|
||||||
|
in {
|
||||||
|
services.${serviceName} = {
|
||||||
|
enable = true;
|
||||||
|
openPorts = false;
|
||||||
|
port = servicePort;
|
||||||
|
secretKeyBaseFile = config.age.secrets.zammad-secret.path;
|
||||||
|
database = {
|
||||||
|
createLocally = false;
|
||||||
|
port = 5432;
|
||||||
|
host = "127.0.0.1";
|
||||||
|
passwordFile = config.age.secrets.zammad-pw.path;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
# Traefik configuration
|
||||||
|
services.traefik.dynamicConfigOptions.http = {
|
||||||
|
services.${serviceName}.loadBalancer.servers = [
|
||||||
|
{
|
||||||
|
url = "http://localhost:${toString servicePort}/";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
|
||||||
|
routers.${serviceName} = {
|
||||||
|
rule = "Host(`help.az-gruppe.com`)";
|
||||||
|
tls = {
|
||||||
|
certResolver = "ionos";
|
||||||
|
};
|
||||||
|
service = serviceName;
|
||||||
|
entrypoints = "websecure";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
10
hosts/AZ-CLD-1/services/zugferd.nix
Normal file
10
hosts/AZ-CLD-1/services/zugferd.nix
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
{config, ...}: let
|
||||||
|
serviceName = "zugferd-service";
|
||||||
|
zugferdPort = config.m3ta.ports.get serviceName;
|
||||||
|
in {
|
||||||
|
services.${serviceName} = {
|
||||||
|
enable = true;
|
||||||
|
port = zugferdPort;
|
||||||
|
host = "127.0.0.1";
|
||||||
|
};
|
||||||
|
}
|
||||||
41
hosts/AZ-PRM-1/configuration.nix
Normal file
41
hosts/AZ-PRM-1/configuration.nix
Normal file
@@ -0,0 +1,41 @@
|
|||||||
|
{pkgs, ...}: {
|
||||||
|
imports = [
|
||||||
|
./hardware-configuration.nix
|
||||||
|
./disko-config.nix
|
||||||
|
];
|
||||||
|
|
||||||
|
boot.loader.systemd-boot.enable = true;
|
||||||
|
boot.loader.efi.canTouchEfiVariables = true;
|
||||||
|
|
||||||
|
networking.hostName = "AZ-PRM-1";
|
||||||
|
networking.networkmanager.enable = true;
|
||||||
|
|
||||||
|
time.timeZone = "Europe/Berlin";
|
||||||
|
|
||||||
|
i18n.defaultLocale = "de_DE.UTF-8";
|
||||||
|
|
||||||
|
environment.systemPackages = with pkgs; [
|
||||||
|
neovim
|
||||||
|
git
|
||||||
|
python3
|
||||||
|
python3Packages.pysmb
|
||||||
|
];
|
||||||
|
|
||||||
|
programs.gnupg.agent = {
|
||||||
|
enable = true;
|
||||||
|
enableSSHSupport = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
services.openssh = {
|
||||||
|
enable = true;
|
||||||
|
ports = [2022];
|
||||||
|
settings = {
|
||||||
|
PermitRootLogin = "no";
|
||||||
|
PasswordAuthentication = false;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
networking.firewall.allowedTCPPorts = [587];
|
||||||
|
|
||||||
|
system.stateVersion = "25.05";
|
||||||
|
}
|
||||||
11
hosts/AZ-PRM-1/default.nix
Normal file
11
hosts/AZ-PRM-1/default.nix
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
{
|
||||||
|
imports = [
|
||||||
|
../common
|
||||||
|
./configuration.nix
|
||||||
|
./secrets.nix
|
||||||
|
./services
|
||||||
|
];
|
||||||
|
extraServices = {
|
||||||
|
podman.enable = true;
|
||||||
|
};
|
||||||
|
}
|
||||||
34
hosts/AZ-PRM-1/disko-config.nix
Normal file
34
hosts/AZ-PRM-1/disko-config.nix
Normal file
@@ -0,0 +1,34 @@
|
|||||||
|
{
|
||||||
|
disko.devices = {
|
||||||
|
disk = {
|
||||||
|
main = {
|
||||||
|
type = "disk";
|
||||||
|
device = "/dev/sda";
|
||||||
|
content = {
|
||||||
|
type = "gpt";
|
||||||
|
partitions = {
|
||||||
|
esp = {
|
||||||
|
size = "512M";
|
||||||
|
type = "EF00";
|
||||||
|
content = {
|
||||||
|
type = "filesystem";
|
||||||
|
format = "vfat";
|
||||||
|
mountpoint = "/boot";
|
||||||
|
mountOptions = ["defaults" "umask=0077"];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
root = {
|
||||||
|
size = "100%";
|
||||||
|
content = {
|
||||||
|
type = "filesystem";
|
||||||
|
format = "ext4";
|
||||||
|
mountpoint = "/";
|
||||||
|
mountOptions = ["noatime" "nodiratime" "discard"];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
17
hosts/AZ-PRM-1/hardware-configuration.nix
Normal file
17
hosts/AZ-PRM-1/hardware-configuration.nix
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
virtualisation.hypervGuest.enable = true;
|
||||||
|
|
||||||
|
boot.initrd.availableKernelModules = ["sd_mod" "sr_mod" "hv_storvsc"];
|
||||||
|
boot.initrd.kernelModules = [];
|
||||||
|
boot.kernelModules = [];
|
||||||
|
boot.extraModulePackages = [];
|
||||||
|
|
||||||
|
networking.useDHCP = lib.mkDefault true;
|
||||||
|
|
||||||
|
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||||
|
}
|
||||||
37
hosts/AZ-PRM-1/secrets.nix
Normal file
37
hosts/AZ-PRM-1/secrets.nix
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
{
|
||||||
|
age = {
|
||||||
|
secrets = {
|
||||||
|
azion-env = {
|
||||||
|
file = ../../secrets/azion-env.age;
|
||||||
|
};
|
||||||
|
traefik-env = {
|
||||||
|
file = ../../secrets/traefik-env.age;
|
||||||
|
};
|
||||||
|
kestra-config = {
|
||||||
|
file = ../../secrets/kestra-config.age;
|
||||||
|
mode = "644";
|
||||||
|
};
|
||||||
|
kestra-env = {file = ../../secrets/kestra-env.age;};
|
||||||
|
kestra-secrets = {file = ../../secrets/kestra-secrets.age;};
|
||||||
|
n8n-env = {
|
||||||
|
file = ../../secrets/n8n-env-prm.age;
|
||||||
|
};
|
||||||
|
pgadmin-pw = {
|
||||||
|
file = ../../secrets/pgadmin-pw.age;
|
||||||
|
owner = "pgadmin";
|
||||||
|
};
|
||||||
|
pg-cert = {
|
||||||
|
file = ../../secrets/server.crt.age;
|
||||||
|
owner = "postgres";
|
||||||
|
group = "postgres";
|
||||||
|
mode = "0644";
|
||||||
|
};
|
||||||
|
pg-key = {
|
||||||
|
file = ../../secrets/server.key.age;
|
||||||
|
owner = "postgres";
|
||||||
|
group = "postgres";
|
||||||
|
mode = "0600";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
36
hosts/AZ-PRM-1/services/azion-scheduler.nix
Normal file
36
hosts/AZ-PRM-1/services/azion-scheduler.nix
Normal file
@@ -0,0 +1,36 @@
|
|||||||
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
inputs,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
|
serviceName = "azion-scheduler";
|
||||||
|
proxyServiceName = "${serviceName}-proxy";
|
||||||
|
servicePort = config.m3ta.ports.get serviceName;
|
||||||
|
schedulerProxyPort = config.m3ta.ports.get proxyServiceName;
|
||||||
|
in {
|
||||||
|
services.azion-scheduler = {
|
||||||
|
enable = true;
|
||||||
|
package = inputs.azion-scheduler.packages.${pkgs.stdenv.hostPlatform.system}.default;
|
||||||
|
port = servicePort;
|
||||||
|
proxyPort = schedulerProxyPort;
|
||||||
|
environmentFile = config.age.secrets.azion-env.path;
|
||||||
|
};
|
||||||
|
|
||||||
|
# Traefik configuration
|
||||||
|
services.traefik.dynamicConfigOptions.http = {
|
||||||
|
services.${serviceName}.loadBalancer.servers = [
|
||||||
|
{url = "http://localhost:${toString servicePort}/";}
|
||||||
|
];
|
||||||
|
|
||||||
|
routers.${serviceName} = {
|
||||||
|
rule = "Host(`azion.l.az-gruppe.com`)";
|
||||||
|
tls = {
|
||||||
|
certResolver = "ionos";
|
||||||
|
};
|
||||||
|
service = serviceName;
|
||||||
|
entrypoints = "websecure";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
80
hosts/AZ-PRM-1/services/bpi.nix
Normal file
80
hosts/AZ-PRM-1/services/bpi.nix
Normal file
@@ -0,0 +1,80 @@
|
|||||||
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
|
serviceName = "bpi";
|
||||||
|
servicePort = config.m3ta.ports.get serviceName;
|
||||||
|
appDir = "/var/lib/bpi/app";
|
||||||
|
in {
|
||||||
|
users.users.bpi = {
|
||||||
|
isSystemUser = true;
|
||||||
|
group = "bpi";
|
||||||
|
home = "/var/lib/bpi";
|
||||||
|
createHome = true;
|
||||||
|
};
|
||||||
|
users.groups.bpi = {};
|
||||||
|
|
||||||
|
systemd.services.bpi = {
|
||||||
|
description = "AZ INTEC Basispreis Index";
|
||||||
|
after = ["network-online.target"];
|
||||||
|
wants = ["network-online.target"];
|
||||||
|
wantedBy = ["multi-user.target"];
|
||||||
|
|
||||||
|
path = with pkgs; [
|
||||||
|
git
|
||||||
|
nodejs
|
||||||
|
openssh
|
||||||
|
];
|
||||||
|
|
||||||
|
environment = {
|
||||||
|
PORT = toString servicePort;
|
||||||
|
HOME = "/var/lib/bpi";
|
||||||
|
BPI_BACKUP_DIR = "/var/lib/bpi/backups";
|
||||||
|
BPI_MAX_BACKUPS = "10";
|
||||||
|
};
|
||||||
|
|
||||||
|
preStart = ''
|
||||||
|
set -euo pipefail
|
||||||
|
|
||||||
|
if [ ! -d "${appDir}/.git" ]; then
|
||||||
|
rm -rf "${appDir}"
|
||||||
|
git clone --depth=1 https://git.az-gruppe.com/AZ-Intec-GmbH/BPI.git "${appDir}"
|
||||||
|
else
|
||||||
|
git -C "${appDir}" pull --ff-only
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ ! -f "${appDir}/server.js" ]; then
|
||||||
|
echo "${appDir}/server.js fehlt. Bitte server.js in das BPI Repository committen."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
'';
|
||||||
|
|
||||||
|
serviceConfig = {
|
||||||
|
Type = "simple";
|
||||||
|
User = "bpi";
|
||||||
|
Group = "bpi";
|
||||||
|
StateDirectory = "bpi";
|
||||||
|
WorkingDirectory = "/var/lib/bpi";
|
||||||
|
ExecStart = "${pkgs.nodejs}/bin/node ${appDir}/server.js";
|
||||||
|
Restart = "on-failure";
|
||||||
|
RestartSec = "10s";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
services.traefik.dynamicConfigOptions.http = {
|
||||||
|
services.bpi.loadBalancer.servers = [
|
||||||
|
{url = "http://localhost:${toString servicePort}/";}
|
||||||
|
];
|
||||||
|
|
||||||
|
routers.bpi = {
|
||||||
|
rule = "Host(`bpi.l.az-gruppe.com`)";
|
||||||
|
tls = {
|
||||||
|
certResolver = "ionos";
|
||||||
|
};
|
||||||
|
service = "bpi";
|
||||||
|
entrypoints = "websecure";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
15
hosts/AZ-PRM-1/services/containers/default.nix
Normal file
15
hosts/AZ-PRM-1/services/containers/default.nix
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
{lib, ...}: {
|
||||||
|
imports = [
|
||||||
|
#./baserow.nix
|
||||||
|
./kestra.nix
|
||||||
|
./stirling-pdf.nix
|
||||||
|
];
|
||||||
|
system.activationScripts.createPodmanNetworkWeb = lib.mkAfter ''
|
||||||
|
if ! /run/current-system/sw/bin/podman network exists web; then
|
||||||
|
/run/current-system/sw/bin/podman network create web --subnet=10.89.0.0/24 --internal
|
||||||
|
fi
|
||||||
|
if ! /run/current-system/sw/bin/podman network exists web-dev; then
|
||||||
|
/run/current-system/sw/bin/podman network create web-dev --subnet=10.89.1.0/24 --internal
|
||||||
|
fi
|
||||||
|
'';
|
||||||
|
}
|
||||||
38
hosts/AZ-PRM-1/services/containers/kestra.nix
Normal file
38
hosts/AZ-PRM-1/services/containers/kestra.nix
Normal file
@@ -0,0 +1,38 @@
|
|||||||
|
{config, ...}: let
|
||||||
|
serviceName = "kestra";
|
||||||
|
servicePort = config.m3ta.ports.get serviceName;
|
||||||
|
in {
|
||||||
|
virtualisation.oci-containers.containers."${serviceName}" = {
|
||||||
|
image = "docker.io/kestra/kestra:latest";
|
||||||
|
environmentFiles = [
|
||||||
|
config.age.secrets.kestra-env.path
|
||||||
|
config.age.secrets.kestra-secrets.path
|
||||||
|
];
|
||||||
|
cmd = ["server" "standalone" "--config" "/etc/config/application.yaml"];
|
||||||
|
ports = ["127.0.0.1:${toString servicePort}:8080"];
|
||||||
|
user = "root";
|
||||||
|
volumes = [
|
||||||
|
"/var/run/podman/podman.sock:/var/run/docker.sock"
|
||||||
|
"${config.age.secrets.kestra-config.path}:/etc/config/application.yaml"
|
||||||
|
"kestra_data:/app/storage"
|
||||||
|
"/tmp/kestra-wd:/tmp/kestra-wd"
|
||||||
|
];
|
||||||
|
extraOptions = ["--add-host=postgres:10.89.0.1" "--ip=10.89.0.12" "--network=web"];
|
||||||
|
};
|
||||||
|
|
||||||
|
systemd.tmpfiles.rules = [
|
||||||
|
"d /tmp/kestra-wd 0750 1000 1000 - -"
|
||||||
|
];
|
||||||
|
|
||||||
|
# Traefik configuration specific to kestra
|
||||||
|
services.traefik.dynamicConfigOptions.http = {
|
||||||
|
services.kestra.loadBalancer.servers = [{url = "http://localhost:${toString servicePort}/";}];
|
||||||
|
|
||||||
|
routers.kestra = {
|
||||||
|
rule = "Host(`k.l.az-gruppe.com`)";
|
||||||
|
tls = {certResolver = "ionos";};
|
||||||
|
service = "kestra";
|
||||||
|
entrypoints = "websecure";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
30
hosts/AZ-PRM-1/services/containers/stirling-pdf.nix
Normal file
30
hosts/AZ-PRM-1/services/containers/stirling-pdf.nix
Normal file
@@ -0,0 +1,30 @@
|
|||||||
|
{config, ...}: let
|
||||||
|
serviceName = "stirling-pdf";
|
||||||
|
servicePort = config.m3ta.ports.get serviceName;
|
||||||
|
in {
|
||||||
|
virtualisation.oci-containers.containers."${serviceName}" = {
|
||||||
|
image = "docker.stirlingpdf.com/stirlingtools/stirling-pdf:latest-fat";
|
||||||
|
ports = ["127.0.0.1:${toString servicePort}:8080"];
|
||||||
|
environment = {
|
||||||
|
SECURITY_ENABLELOGIN = "False";
|
||||||
|
DISABLE_ADDITIONAL_FEATURES = "False";
|
||||||
|
};
|
||||||
|
|
||||||
|
volumes = [
|
||||||
|
"stirling_pdf_data:/usr/share/tessdata"
|
||||||
|
"stirling_pdf_configs:/configs"
|
||||||
|
];
|
||||||
|
extraOptions = ["--ip=10.89.0.13" "--network=web"];
|
||||||
|
};
|
||||||
|
|
||||||
|
services.traefik.dynamicConfigOptions.http = {
|
||||||
|
services.${serviceName}.loadBalancer.servers = [{url = "http://localhost:${toString servicePort}/";}];
|
||||||
|
|
||||||
|
routers.${serviceName} = {
|
||||||
|
rule = "Host(`pdf.l.az-gruppe.com`)";
|
||||||
|
tls = {certResolver = "ionos";};
|
||||||
|
service = serviceName;
|
||||||
|
entrypoints = "websecure";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
14
hosts/AZ-PRM-1/services/default.nix
Normal file
14
hosts/AZ-PRM-1/services/default.nix
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
{
|
||||||
|
imports = [
|
||||||
|
./containers
|
||||||
|
./azion-scheduler.nix
|
||||||
|
./bpi.nix
|
||||||
|
./n8n.nix
|
||||||
|
./netbird.nix
|
||||||
|
./pgadmin.nix
|
||||||
|
./postgres.nix
|
||||||
|
./printing.nix
|
||||||
|
./traefik.nix
|
||||||
|
./traefik-routing.nix
|
||||||
|
];
|
||||||
|
}
|
||||||
32
hosts/AZ-PRM-1/services/n8n.nix
Normal file
32
hosts/AZ-PRM-1/services/n8n.nix
Normal file
@@ -0,0 +1,32 @@
|
|||||||
|
{config, ...}: let
|
||||||
|
serviceName = "n8n";
|
||||||
|
servicePort = config.m3ta.ports.get serviceName;
|
||||||
|
in {
|
||||||
|
services.n8n = {
|
||||||
|
enable = true;
|
||||||
|
environment = {
|
||||||
|
WEBHOOK_URL = "https://wf.l.az-gruppe.com";
|
||||||
|
NODES_EXCLUDE = "[]";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
systemd.services.n8n.serviceConfig = {
|
||||||
|
EnvironmentFile = ["${config.age.secrets.n8n-env.path}"];
|
||||||
|
};
|
||||||
|
# Traefik configuration specific to n8n
|
||||||
|
services.traefik.dynamicConfigOptions.http = {
|
||||||
|
services.${serviceName}.loadBalancer.servers = [
|
||||||
|
{
|
||||||
|
url = "http://localhost:${toString servicePort}/";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
|
||||||
|
routers.${serviceName} = {
|
||||||
|
rule = "Host(`wf.l.az-gruppe.com`)";
|
||||||
|
tls = {
|
||||||
|
certResolver = "ionos";
|
||||||
|
};
|
||||||
|
service = serviceName;
|
||||||
|
entrypoints = "websecure";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
31
hosts/AZ-PRM-1/services/netbird.nix
Normal file
31
hosts/AZ-PRM-1/services/netbird.nix
Normal file
@@ -0,0 +1,31 @@
|
|||||||
|
{pkgs, ...}: {
|
||||||
|
services.netbird = {
|
||||||
|
enable = true;
|
||||||
|
package = pkgs.unstable.netbird;
|
||||||
|
};
|
||||||
|
|
||||||
|
systemd.services.netbird = {
|
||||||
|
environment = {
|
||||||
|
NB_DISABLE_SSH_CONFIG = "true";
|
||||||
|
};
|
||||||
|
path = [
|
||||||
|
pkgs.shadow
|
||||||
|
pkgs.util-linux
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
programs.ssh.extraConfig = ''
|
||||||
|
Match exec "${pkgs.netbird}/bin/netbird ssh detect %h %p"
|
||||||
|
PreferredAuthentications password,publickey,keyboard-interactive
|
||||||
|
PasswordAuthentication yes
|
||||||
|
PubkeyAuthentication yes
|
||||||
|
BatchMode no
|
||||||
|
ProxyCommand ${pkgs.netbird}/bin/netbird ssh proxy %h %p
|
||||||
|
StrictHostKeyChecking no
|
||||||
|
UserKnownHostsFile /dev/null
|
||||||
|
CheckHostIP no
|
||||||
|
LogLevel ERROR
|
||||||
|
'';
|
||||||
|
|
||||||
|
networking.firewall.checkReversePath = "loose";
|
||||||
|
}
|
||||||
21
hosts/AZ-PRM-1/services/pgadmin.nix
Normal file
21
hosts/AZ-PRM-1/services/pgadmin.nix
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
{config, ...}: let
|
||||||
|
serviceName = "pgadmin";
|
||||||
|
servicePort = config.m3ta.ports.get serviceName;
|
||||||
|
in {
|
||||||
|
services.pgadmin = {
|
||||||
|
enable = true;
|
||||||
|
initialPasswordFile = "${config.age.secrets.pgadmin-pw.path}";
|
||||||
|
initialEmail = "sascha.koenig@azintec.com";
|
||||||
|
};
|
||||||
|
|
||||||
|
# Traefik configuration specific to pgadmin
|
||||||
|
services.traefik.dynamicConfigOptions.http = {
|
||||||
|
services.pgadmin.loadBalancer.servers = [{url = "http://localhost:${toString servicePort}/";}];
|
||||||
|
routers.pgadmin = {
|
||||||
|
rule = "Host(`pg.l.az-gruppe.com`)";
|
||||||
|
tls.certResolver = "ionos";
|
||||||
|
service = "pgadmin";
|
||||||
|
entrypoints = "websecure";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
67
hosts/AZ-PRM-1/services/postgres.nix
Normal file
67
hosts/AZ-PRM-1/services/postgres.nix
Normal file
@@ -0,0 +1,67 @@
|
|||||||
|
{
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
services.postgresql = {
|
||||||
|
enable = true;
|
||||||
|
enableTCPIP = true;
|
||||||
|
package = pkgs.postgresql_17;
|
||||||
|
settings = {
|
||||||
|
ssl = true;
|
||||||
|
ssl_cert_file = config.age.secrets.pg-cert.path;
|
||||||
|
ssl_key_file = config.age.secrets.pg-key.path;
|
||||||
|
};
|
||||||
|
extensions = with pkgs.postgresql17Packages; [
|
||||||
|
pgvector
|
||||||
|
];
|
||||||
|
initialScript = pkgs.writeText "backend-initScript" ''
|
||||||
|
CREATE USER baserow WITH ENCRYPTED PASSWORD 'baserow';
|
||||||
|
CREATE DATABASE baserow;
|
||||||
|
ALTER DATABASE baserow OWNER to baserow;
|
||||||
|
|
||||||
|
CREATE USER kestra WITH ENCRYPTED PASSWORD 'kestra';
|
||||||
|
CREATE DATABASE kestra;
|
||||||
|
ALTER DATABASE kestra OWNER to kestra;
|
||||||
|
|
||||||
|
CREATE USER n8n WITH ENCRYPTED PASSWORD 'n8n';
|
||||||
|
CREATE DATABASE n8n;
|
||||||
|
ALTER DATABASE n8n OWNER to n8n;
|
||||||
|
|
||||||
|
CREATE USER vaultwarden WITH ENCRYPTED PASSWORD 'n8n';
|
||||||
|
CREATE DATABASE vaultwarden;
|
||||||
|
ALTER DATABASE vaultwarden OWNER to vaultwarden;
|
||||||
|
'';
|
||||||
|
authentication = pkgs.lib.mkOverride 10 ''
|
||||||
|
# Local connections (Unix socket)
|
||||||
|
local all postgres peer
|
||||||
|
local n8n n8n scram-sha-256
|
||||||
|
|
||||||
|
# Localhost connections (IPv4 and IPv6)
|
||||||
|
host all postgres 127.0.0.1/32 scram-sha-256
|
||||||
|
host all postgres ::1/128 scram-sha-256
|
||||||
|
|
||||||
|
host n8n n8n 127.0.0.1/32 scram-sha-256
|
||||||
|
host n8n n8n ::1/128 scram-sha-256
|
||||||
|
|
||||||
|
# Podman network connections
|
||||||
|
host baserow baserow 10.89.0.0/24 scram-sha-256
|
||||||
|
host kestra kestra 10.89.0.0/24 scram-sha-256
|
||||||
|
|
||||||
|
# Deny all other connections
|
||||||
|
host all all 0.0.0.0/0 reject
|
||||||
|
host all all ::/0 reject
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
services.postgresqlBackup = {
|
||||||
|
enable = true;
|
||||||
|
startAt = "03:10:00";
|
||||||
|
databases = ["baserow" "kestra" "n8n"];
|
||||||
|
};
|
||||||
|
networking.firewall = {
|
||||||
|
extraCommands = ''
|
||||||
|
iptables -A INPUT -p tcp -s 127.0.0.1 --dport 5432 -j ACCEPT
|
||||||
|
iptables -A INPUT -p tcp -s 10.89.0.0/24 --dport 5432 -j ACCEPT
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
}
|
||||||
40
hosts/AZ-PRM-1/services/printing.nix
Normal file
40
hosts/AZ-PRM-1/services/printing.nix
Normal file
@@ -0,0 +1,40 @@
|
|||||||
|
{pkgs, ...}: {
|
||||||
|
# CUPS Druckdienst für PDF-Druck aus n8n
|
||||||
|
# Drucker: Kyocera TASKalfa 4054ci @ 192.168.152.137
|
||||||
|
services.printing = {
|
||||||
|
enable = true;
|
||||||
|
drivers = with pkgs; [
|
||||||
|
cups-filters # driverless IPP Everywhere Support
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
# Avahi für mDNS/IPP-Druckererkennung
|
||||||
|
services.avahi = {
|
||||||
|
enable = true;
|
||||||
|
nssmdns4 = true;
|
||||||
|
openFirewall = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
# Kyocera TASKalfa 4054ci deklarativ einrichten
|
||||||
|
hardware.printers = {
|
||||||
|
ensurePrinters = [
|
||||||
|
{
|
||||||
|
name = "JW2OG";
|
||||||
|
location = "Buero";
|
||||||
|
description = "Kyocera TASKalfa 4054ci";
|
||||||
|
deviceUri = "ipps://192.168.152.137:443/ipp/print";
|
||||||
|
model = "everywhere";
|
||||||
|
ppdOptions = {
|
||||||
|
PageSize = "A4";
|
||||||
|
};
|
||||||
|
}
|
||||||
|
];
|
||||||
|
ensureDefaultPrinter = "JW2OG";
|
||||||
|
};
|
||||||
|
|
||||||
|
# n8n braucht Zugriff auf lp/lpr zum Drucken
|
||||||
|
systemd.services.n8n = {
|
||||||
|
path = [pkgs.cups];
|
||||||
|
serviceConfig.SupplementaryGroups = ["lp"];
|
||||||
|
};
|
||||||
|
}
|
||||||
7
hosts/AZ-PRM-1/services/samba.nix
Normal file
7
hosts/AZ-PRM-1/services/samba.nix
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
{pkgs, ...}: {
|
||||||
|
services.samba = {
|
||||||
|
enable = true;
|
||||||
|
package = pkgs.samba4Full;
|
||||||
|
openFirewall = true;
|
||||||
|
};
|
||||||
|
}
|
||||||
31
hosts/AZ-PRM-1/services/traefik-routing.nix
Normal file
31
hosts/AZ-PRM-1/services/traefik-routing.nix
Normal file
@@ -0,0 +1,31 @@
|
|||||||
|
{
|
||||||
|
services.traefik.dynamicConfigOptions.http = {
|
||||||
|
services.ptrg.loadBalancer.servers = [{url = "http://192.168.152.102:7784/";}];
|
||||||
|
|
||||||
|
routers.prtg = {
|
||||||
|
rule = "Host(`m.l.az-gruppe.com`)";
|
||||||
|
tls = {certResolver = "ionos";};
|
||||||
|
service = "ptrg";
|
||||||
|
entrypoints = "websecure";
|
||||||
|
};
|
||||||
|
|
||||||
|
services.AZHA.loadBalancer.servers = [{url = "http://192.168.152.47:8123/";}];
|
||||||
|
routers.AZHA = {
|
||||||
|
rule = "Host(`ha.l.az-gruppe.com`)";
|
||||||
|
tls = {certResolver = "ionos";};
|
||||||
|
service = "AZHA";
|
||||||
|
entrypoints = "websecure";
|
||||||
|
};
|
||||||
|
services.AZDESK.loadBalancer.servers = [
|
||||||
|
{
|
||||||
|
url = "https://azdesk.az-group.local:443/";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
routers.AZDESK = {
|
||||||
|
rule = "Host(`it-ticket.l.az-gruppe.com`)";
|
||||||
|
tls = {certResolver = "ionos";};
|
||||||
|
service = "AZDESK";
|
||||||
|
entrypoints = "websecure";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
92
hosts/AZ-PRM-1/services/traefik.nix
Normal file
92
hosts/AZ-PRM-1/services/traefik.nix
Normal file
@@ -0,0 +1,92 @@
|
|||||||
|
{config, ...}: let
|
||||||
|
httpPort = config.m3ta.ports.get "traefik";
|
||||||
|
httpsPort = config.m3ta.ports.get "traefik-ssl";
|
||||||
|
in {
|
||||||
|
services.traefik = {
|
||||||
|
enable = true;
|
||||||
|
staticConfigOptions = {
|
||||||
|
log = {level = "WARN";};
|
||||||
|
serversTransport.insecureSkipVerify = true;
|
||||||
|
certificatesResolvers = {
|
||||||
|
ionos = {
|
||||||
|
acme = {
|
||||||
|
email = "sascha.koenig@azintec.com";
|
||||||
|
storage = "/var/lib/traefik/acme.json";
|
||||||
|
caserver = "https://acme-v02.api.letsencrypt.org/directory";
|
||||||
|
dnsChallenge = {
|
||||||
|
provider = "ionos";
|
||||||
|
resolvers = ["1.1.1.1:53" "8.8.8.8:53"];
|
||||||
|
propagation = {
|
||||||
|
delayBeforeChecks = 60;
|
||||||
|
disableChecks = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
api = {};
|
||||||
|
entryPoints = {
|
||||||
|
web = {
|
||||||
|
address = ":${toString httpPort}";
|
||||||
|
http.redirections.entryPoint = {
|
||||||
|
to = "websecure";
|
||||||
|
scheme = "https";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
websecure = {
|
||||||
|
address = ":${toString httpsPort}";
|
||||||
|
http.tls = {
|
||||||
|
certResolver = "ionos";
|
||||||
|
domains = [
|
||||||
|
{
|
||||||
|
main = "l.az-gruppe.com";
|
||||||
|
sans = ["*.l.az-gruppe.com"];
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
dynamicConfigOptions = {
|
||||||
|
http = {
|
||||||
|
services = {
|
||||||
|
dummy = {
|
||||||
|
loadBalancer.servers = [
|
||||||
|
{url = "http://192.168.0.1";}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
middlewares = {
|
||||||
|
auth = {
|
||||||
|
basicAuth = {
|
||||||
|
users = ["sascha.koenig:$apr1$1xqdta2b$DIVNvvp5iTUGNccJjguKh."];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
routers = {
|
||||||
|
api = {
|
||||||
|
rule = "Host(`r.l.az-gruppe.com`)";
|
||||||
|
service = "api@internal";
|
||||||
|
middlewares = ["auth"];
|
||||||
|
entrypoints = ["websecure"];
|
||||||
|
tls = {
|
||||||
|
certResolver = "ionos";
|
||||||
|
domains = [
|
||||||
|
{
|
||||||
|
main = "l.az-gruppe.com";
|
||||||
|
sans = ["*.l.az-gruppe.com"];
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
systemd.services.traefik.serviceConfig = {
|
||||||
|
EnvironmentFile = ["${config.age.secrets.traefik-env.path}"];
|
||||||
|
};
|
||||||
|
|
||||||
|
networking.firewall.allowedTCPPorts = [httpPort httpsPort];
|
||||||
|
}
|
||||||
76
hosts/common/default.nix
Normal file
76
hosts/common/default.nix
Normal file
@@ -0,0 +1,76 @@
|
|||||||
|
# Common configuration for all hosts
|
||||||
|
{
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
lib,
|
||||||
|
inputs,
|
||||||
|
outputs,
|
||||||
|
system,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
imports = [
|
||||||
|
./extraServices
|
||||||
|
./users
|
||||||
|
./ports.nix
|
||||||
|
inputs.m3ta-nixpkgs.nixosModules.ports
|
||||||
|
inputs.home-manager.nixosModules.home-manager
|
||||||
|
];
|
||||||
|
|
||||||
|
home-manager = {
|
||||||
|
useGlobalPkgs = true;
|
||||||
|
useUserPackages = true;
|
||||||
|
extraSpecialArgs = {
|
||||||
|
inherit inputs outputs system;
|
||||||
|
videoDrivers = config.services.xserver.videoDrivers or [];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
nixpkgs = {
|
||||||
|
# You can add overlays here
|
||||||
|
overlays = [
|
||||||
|
# Add overlays your own flake exports (from overlays and pkgs dir):
|
||||||
|
outputs.overlays.additions
|
||||||
|
outputs.overlays.modifications
|
||||||
|
outputs.overlays.unstable-packages
|
||||||
|
|
||||||
|
inputs.nur.overlays.default
|
||||||
|
inputs.m3ta-nixpkgs.overlays.default
|
||||||
|
|
||||||
|
(outputs.lib.mkLlmAgentsOverlay system)
|
||||||
|
# You can also add overlays exported from other flakes:
|
||||||
|
# neovim-nightly-overlay.overlays.default
|
||||||
|
|
||||||
|
# Or define it inline, for example:
|
||||||
|
# (final: prev: {
|
||||||
|
# hi = final.hello.overrideAttrs (oldAttrs: {
|
||||||
|
# patches = [ ./change-hello-to-hi.patch ];
|
||||||
|
# });
|
||||||
|
# })
|
||||||
|
];
|
||||||
|
# Configure your nixpkgs instance
|
||||||
|
config = {
|
||||||
|
# Disable if you don't want unfree packages
|
||||||
|
allowUnfree = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
nix = {
|
||||||
|
settings = {
|
||||||
|
experimental-features = "nix-command flakes";
|
||||||
|
trusted-users = [
|
||||||
|
"root"
|
||||||
|
"sascha.koenig"
|
||||||
|
"jannik.mueller"
|
||||||
|
]; # Set users that are allowed to use the flake command
|
||||||
|
};
|
||||||
|
gc = {
|
||||||
|
automatic = true;
|
||||||
|
options = "--delete-older-than 30d";
|
||||||
|
};
|
||||||
|
optimise.automatic = true;
|
||||||
|
registry =
|
||||||
|
(lib.mapAttrs (_: flake: {inherit flake;}))
|
||||||
|
((lib.filterAttrs (_: lib.isType "flake")) inputs);
|
||||||
|
nixPath = ["/etc/nix/path"];
|
||||||
|
};
|
||||||
|
}
|
||||||
8
hosts/common/extraServices/default.nix
Normal file
8
hosts/common/extraServices/default.nix
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
{
|
||||||
|
imports = [
|
||||||
|
./flatpak.nix
|
||||||
|
./ollama.nix
|
||||||
|
./podman.nix
|
||||||
|
./virtualisation.nix
|
||||||
|
];
|
||||||
|
}
|
||||||
23
hosts/common/extraServices/flatpak.nix
Normal file
23
hosts/common/extraServices/flatpak.nix
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
with lib; let
|
||||||
|
cfg = config.extraServices.flatpak;
|
||||||
|
in {
|
||||||
|
options.extraServices.flatpak.enable = mkEnableOption "enable flatpak";
|
||||||
|
|
||||||
|
config = mkIf cfg.enable {
|
||||||
|
services.flatpak.enable = true;
|
||||||
|
xdg.portal = {
|
||||||
|
# xdg desktop intergration (required for flatpak)
|
||||||
|
enable = true;
|
||||||
|
extraPortals = with pkgs; [
|
||||||
|
xdg-desktop-portal-hyprland
|
||||||
|
];
|
||||||
|
config.common.default = "*";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
27
hosts/common/extraServices/ollama.nix
Normal file
27
hosts/common/extraServices/ollama.nix
Normal file
@@ -0,0 +1,27 @@
|
|||||||
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
with lib; let
|
||||||
|
cfg = config.extraServices.ollama;
|
||||||
|
in {
|
||||||
|
options.extraServices.ollama.enable = mkEnableOption "enable ollama";
|
||||||
|
|
||||||
|
config = mkIf cfg.enable {
|
||||||
|
services.ollama = {
|
||||||
|
enable = true;
|
||||||
|
package = pkgs.ollama-vulkan;
|
||||||
|
host = "[::]";
|
||||||
|
openFirewall = true;
|
||||||
|
environmentVariables = {
|
||||||
|
OLLAMA_HOST = "0.0.0.0";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
nixpkgs.config = {
|
||||||
|
rocmSupport = config.services.xserver.videoDrivers == ["amdgpu"];
|
||||||
|
cudaSupport = config.services.xserver.videoDrivers == ["nvidia"];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
33
hosts/common/extraServices/podman.nix
Normal file
33
hosts/common/extraServices/podman.nix
Normal file
@@ -0,0 +1,33 @@
|
|||||||
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
with lib; let
|
||||||
|
cfg = config.extraServices.podman;
|
||||||
|
in {
|
||||||
|
options.extraServices.podman.enable = mkEnableOption "enable podman";
|
||||||
|
|
||||||
|
config = mkIf cfg.enable {
|
||||||
|
virtualisation = {
|
||||||
|
podman = {
|
||||||
|
enable = true;
|
||||||
|
dockerCompat = true;
|
||||||
|
dockerSocket.enable = true;
|
||||||
|
autoPrune = {
|
||||||
|
enable = true;
|
||||||
|
dates = "weekly";
|
||||||
|
flags = [
|
||||||
|
"--filter=until=24h"
|
||||||
|
"--filter=label!=important"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
defaultNetwork.settings.dns_enabled = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
environment.systemPackages = with pkgs; [
|
||||||
|
podman-compose
|
||||||
|
];
|
||||||
|
};
|
||||||
|
}
|
||||||
42
hosts/common/extraServices/virtualisation.nix
Normal file
42
hosts/common/extraServices/virtualisation.nix
Normal file
@@ -0,0 +1,42 @@
|
|||||||
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
with lib; let
|
||||||
|
cfg = config.extraServices.virtualisation;
|
||||||
|
in {
|
||||||
|
options.extraServices.virtualisation.enable = mkEnableOption "enable virtualisation";
|
||||||
|
|
||||||
|
config = mkIf cfg.enable {
|
||||||
|
virtualisation = {
|
||||||
|
libvirtd = {
|
||||||
|
enable = true;
|
||||||
|
qemu = {
|
||||||
|
package = pkgs.qemu_kvm;
|
||||||
|
runAsRoot = true;
|
||||||
|
swtpm.enable = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
programs.virt-manager.enable = true;
|
||||||
|
environment = {
|
||||||
|
systemPackages = [pkgs.qemu];
|
||||||
|
etc = {
|
||||||
|
"ovmf/OVMF_CODE.fd" = {
|
||||||
|
source = "${(pkgs.OVMF.override {
|
||||||
|
secureBoot = true;
|
||||||
|
tpmSupport = true;
|
||||||
|
}).fd}/FV/OVMF_CODE.fd";
|
||||||
|
};
|
||||||
|
"ovmf/OVMF_VARS.fd" = {
|
||||||
|
source = "${(pkgs.OVMF.override {
|
||||||
|
secureBoot = true;
|
||||||
|
tpmSupport = true;
|
||||||
|
}).fd}/FV/OVMF_VARS.fd";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
63
hosts/common/ports.nix
Normal file
63
hosts/common/ports.nix
Normal file
@@ -0,0 +1,63 @@
|
|||||||
|
{config, ...}: {
|
||||||
|
m3ta.ports = {
|
||||||
|
enable = true;
|
||||||
|
|
||||||
|
definitions = {
|
||||||
|
ssh = 2022;
|
||||||
|
|
||||||
|
traefik = 80;
|
||||||
|
traefik-ssl = 443;
|
||||||
|
|
||||||
|
gitea = 3030;
|
||||||
|
outline = 3031;
|
||||||
|
vaultwarden = 3032;
|
||||||
|
ntfy-sh = 3033;
|
||||||
|
zammad = 3034;
|
||||||
|
it-tools = 3035;
|
||||||
|
zammad-hr = 3036;
|
||||||
|
zammad-hr-elasticsearch = 3037;
|
||||||
|
netbird = 3038;
|
||||||
|
azion-scheduler = 3039;
|
||||||
|
azion-scheduler-proxy = 3049;
|
||||||
|
|
||||||
|
metabase = 3013;
|
||||||
|
baserow = 3050;
|
||||||
|
|
||||||
|
librechat = 3040;
|
||||||
|
librechat-dev = 3141;
|
||||||
|
rag-api = 8000;
|
||||||
|
rag-api-dev = 8100;
|
||||||
|
litellm = 4000;
|
||||||
|
|
||||||
|
n8n = 5678;
|
||||||
|
kestra = 5080;
|
||||||
|
zugferd-service = 5060;
|
||||||
|
gotenberg = 5070;
|
||||||
|
|
||||||
|
portainer = 9000;
|
||||||
|
|
||||||
|
postgres = 5432;
|
||||||
|
pgadmin = 5050;
|
||||||
|
};
|
||||||
|
|
||||||
|
hostOverrides = {
|
||||||
|
AZ-CLD-1 = {
|
||||||
|
baserow = 3050;
|
||||||
|
librechat-dev = 3141;
|
||||||
|
rag-api-dev = 8100;
|
||||||
|
};
|
||||||
|
|
||||||
|
AZ-PRM-1 = {
|
||||||
|
baserow = 3051;
|
||||||
|
kestra = 5080;
|
||||||
|
stirling-pdf = 3032;
|
||||||
|
bpi = 3033;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
environment.etc."info/all-ports.json".text = builtins.toJSON {
|
||||||
|
hostname = config.networking.hostName;
|
||||||
|
ports = config.m3ta.ports.all;
|
||||||
|
};
|
||||||
|
}
|
||||||
6
hosts/common/users/default.nix
Normal file
6
hosts/common/users/default.nix
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
{
|
||||||
|
imports = [
|
||||||
|
./jannik.mueller.nix
|
||||||
|
./sascha.koenig.nix
|
||||||
|
];
|
||||||
|
}
|
||||||
25
hosts/common/users/jannik.mueller.nix
Normal file
25
hosts/common/users/jannik.mueller.nix
Normal file
@@ -0,0 +1,25 @@
|
|||||||
|
{
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
inputs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
users.users."jannik.mueller" = {
|
||||||
|
hashedPassword = "$y$j9T$09RgD3AU3PK9Oi6JGLe0V1$i8J2ZOD1h1b6Zpw28ub.kExujoDKHzokeXzkM23Tfd/";
|
||||||
|
isNormalUser = true;
|
||||||
|
extraGroups = [
|
||||||
|
"wheel"
|
||||||
|
"networkmanager"
|
||||||
|
"libvirtd"
|
||||||
|
"flatpak"
|
||||||
|
"plugdev"
|
||||||
|
"input"
|
||||||
|
"kvm"
|
||||||
|
"qemu-libvirtd"
|
||||||
|
];
|
||||||
|
openssh.authorizedKeys.keys = [
|
||||||
|
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPvZazSuIoWoRWhkAqQDMLeurxVUyy1MTllp1wfw1tzq"
|
||||||
|
];
|
||||||
|
packages = [inputs.home-manager.packages.${pkgs.stdenv.hostPlatform.system}.default];
|
||||||
|
};
|
||||||
|
}
|
||||||
125
hosts/common/users/sascha.koenig.nix
Normal file
125
hosts/common/users/sascha.koenig.nix
Normal file
@@ -0,0 +1,125 @@
|
|||||||
|
# hosts/common/users/m3tam3re.nix — Central user definition with m3ta-home integration.
|
||||||
|
#
|
||||||
|
# This module:
|
||||||
|
# 1. Creates the m3tam3re NixOS user
|
||||||
|
# 2. Loads the m3ta-home profile system via mkHome
|
||||||
|
# 3. Sets per-host feature flags based on a host profile mapping
|
||||||
|
# 4. Imports per-host home.nix overrides (monitors, HW-specific config)
|
||||||
|
#
|
||||||
|
# To add a new host:
|
||||||
|
# 1. Add entry to hostProfiles below
|
||||||
|
# 2. Add feature flags in the hostFlags section
|
||||||
|
# 3. Create hosts/<hostname>/home.nix if the host needs overrides (monitors, etc.)
|
||||||
|
{
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
inputs,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
|
hostname = config.networking.hostName;
|
||||||
|
|
||||||
|
# ── Per-host profile mapping ──
|
||||||
|
# Determines which m3ta-home context and sets each host gets.
|
||||||
|
hostProfiles = {
|
||||||
|
# ── Server hosts ──
|
||||||
|
AZ-CLD-1 = {
|
||||||
|
context = "server";
|
||||||
|
sets = [];
|
||||||
|
};
|
||||||
|
AZ-PRM-1 = {
|
||||||
|
context = "server";
|
||||||
|
sets = [];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
profile =
|
||||||
|
hostProfiles.${
|
||||||
|
hostname
|
||||||
|
} or {
|
||||||
|
context = "server";
|
||||||
|
sets = [];
|
||||||
|
};
|
||||||
|
m3ta-lib = inputs.m3ta-home.lib;
|
||||||
|
|
||||||
|
# Check if a per-host home.nix exists
|
||||||
|
hostHomeFile = ./../../${hostname}/home.nix;
|
||||||
|
hostHomeExists = builtins.pathExists hostHomeFile;
|
||||||
|
|
||||||
|
# ── Per-host feature flags ──
|
||||||
|
# These enable/disable specific m3ta-home modules per host.
|
||||||
|
hostFlags =
|
||||||
|
if hostname == "AZ-CLD-1"
|
||||||
|
then {
|
||||||
|
# Full desktop workstation
|
||||||
|
base = {
|
||||||
|
shell = {
|
||||||
|
fish.enable = true;
|
||||||
|
nushell.enable = true;
|
||||||
|
starship.enable = true;
|
||||||
|
};
|
||||||
|
cliTools = {
|
||||||
|
fzf.enable = true;
|
||||||
|
nitch.enable = true;
|
||||||
|
television.enable = true;
|
||||||
|
};
|
||||||
|
secrets.enable = true;
|
||||||
|
};
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
# m3-helios, m3-hermes, m3-aether — minimal server
|
||||||
|
base = {
|
||||||
|
shell = {
|
||||||
|
fish.enable = true;
|
||||||
|
starship.enable = true;
|
||||||
|
};
|
||||||
|
cliTools = {
|
||||||
|
fzf.enable = true;
|
||||||
|
nitch.enable = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
in {
|
||||||
|
# ── NixOS user definition ──
|
||||||
|
users.users."sascha.koenig" = {
|
||||||
|
hashedPassword = "$y$j9T$ORX4btVZgs9Xjq2oIvzJm0$lXiPwaa0D6t.eMDIx1UBesEAMOkWXBoGwpeI7X0aS8D";
|
||||||
|
isNormalUser = true;
|
||||||
|
shell = pkgs.nushell;
|
||||||
|
extraGroups = [
|
||||||
|
"wheel"
|
||||||
|
"networkmanager"
|
||||||
|
"libvirtd"
|
||||||
|
"flatpak"
|
||||||
|
"plugdev"
|
||||||
|
"input"
|
||||||
|
"kvm"
|
||||||
|
"qemu-libvirtd"
|
||||||
|
];
|
||||||
|
openssh.authorizedKeys.keys = [
|
||||||
|
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIEZbg/Z9mnflXuLahGY8WOSBMqbgeqVIkIwRkquys1Ml sascha.koenig@azintec.com"
|
||||||
|
"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQC3YEmpYbM+cpmyD10tzNRHEn526Z3LJOzYpWEKdJg8DaYyPbDn9iyVX30Nja2SrW4Wadws0Y8DW+Urs25/wVB6mKl7jgPJVkMi5hfobu3XAz8gwSdjDzRSWJrhjynuaXiTtRYED2INbvjLuxx3X8coNwMw58OuUuw5kNJp5aS2qFmHEYQErQsGT4MNqESe3jvTP27Z5pSneBj45LmGK+RcaSnJe7hG+KRtjuhjI7RdzMeDCX73SfUsal+rHeuEw/mmjYmiIItXhFTDn8ZvVwpBKv7xsJG90DkaX2vaTk0wgJdMnpVIuIRBa4EkmMWOQ3bMLGkLQeK/4FUkNcvQ/4+zcZsg4cY9Q7Fj55DD41hAUdF6SYODtn5qMPsTCnJz44glHt/oseKXMSd556NIw2HOvihbJW7Rwl4OEjGaO/dF4nUw4c9tHWmMn9dLslAVpUuZOb7ykgP0jk79ldT3Dv+2Hj0CdAWT2cJAdFX58KQ9jUPT3tBnObSF1lGMI7t77VU= m3tam3re@MBP-Sascha.fritz.box"
|
||||||
|
];
|
||||||
|
packages = [inputs.home-manager.packages.${pkgs.stdenv.hostPlatform.system}.default];
|
||||||
|
};
|
||||||
|
|
||||||
|
# ── Home-Manager configuration via m3ta-home ──
|
||||||
|
home-manager.users."sascha.koenig" = {
|
||||||
|
home.stateVersion = "25.11";
|
||||||
|
imports =
|
||||||
|
[
|
||||||
|
# Load m3ta-home composition engine
|
||||||
|
(m3ta-lib.mkHome {
|
||||||
|
user = "m3tam3re";
|
||||||
|
identity = "work";
|
||||||
|
inherit (profile) context sets;
|
||||||
|
})
|
||||||
|
# Per-host feature flags
|
||||||
|
hostFlags
|
||||||
|
]
|
||||||
|
# Per-host home.nix (Hyprland monitors, XDG/MIME, HW-specific overrides)
|
||||||
|
++ (
|
||||||
|
if hostHomeExists
|
||||||
|
then [hostHomeFile]
|
||||||
|
else []
|
||||||
|
);
|
||||||
|
};
|
||||||
|
}
|
||||||
37
overlays/default.nix
Normal file
37
overlays/default.nix
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
{inputs, ...}: {
|
||||||
|
# This one brings our custom packages from the 'pkgs' directory
|
||||||
|
additions = final: prev:
|
||||||
|
(import ../pkgs {pkgs = final;})
|
||||||
|
// {
|
||||||
|
zugferd-service = inputs.zugferd-service.packages.${prev.stdenv.hostPlatform.system}.default;
|
||||||
|
};
|
||||||
|
|
||||||
|
# This one contains whatever you want to overlay
|
||||||
|
# You can change versions, add patches, set compilation flags, anything really.
|
||||||
|
# https://nixos.wiki/wiki/Overlays
|
||||||
|
modifications = final: prev: {
|
||||||
|
# n8n = import ./mods/n8n.nix {inherit prev;};
|
||||||
|
vivaldi = prev.vivaldi.override {
|
||||||
|
commandLineArgs = "--enable-features=UseOzonePlatform --ozone-platform=wayland";
|
||||||
|
};
|
||||||
|
# example = prev.example.overrideAttrs (oldAttrs: rec {
|
||||||
|
# ...
|
||||||
|
# });
|
||||||
|
};
|
||||||
|
|
||||||
|
stable-packages = final: _prev: {
|
||||||
|
stable = import inputs.nixpkgs {
|
||||||
|
system = final.stdenv.hostPlatform.system;
|
||||||
|
config.allowUnfree = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
unstable-packages = final: _prev: {
|
||||||
|
unstable = import inputs.nixpkgs-unstable {
|
||||||
|
system = final.stdenv.hostPlatform.system;
|
||||||
|
config.allowUnfree = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
# Flatten llm-agents packages into top-level pkgs namespace.
|
||||||
|
mkLlmAgentsOverlay = system: _final: _prev:
|
||||||
|
inputs.llm-agents.packages.${system} or {};
|
||||||
|
}
|
||||||
26
overlays/mods/n8n.nix
Normal file
26
overlays/mods/n8n.nix
Normal file
@@ -0,0 +1,26 @@
|
|||||||
|
# {prev}:
|
||||||
|
# prev.n8n.overrideAttrs (oldAttrs: rec {
|
||||||
|
# version = "1.112.6";
|
||||||
|
|
||||||
|
# src = prev.fetchFromGitHub {
|
||||||
|
# owner = "n8n-io";
|
||||||
|
# repo = "n8n";
|
||||||
|
# rev = "n8n@${version}";
|
||||||
|
# hash = "sha256-r/MCU/S1kkKQPkhmp9ZHTtgZxMu5TFCl5Yejp73gATw=";
|
||||||
|
# };
|
||||||
|
|
||||||
|
# pnpmDeps = prev.pnpm_10.fetchDeps {
|
||||||
|
# pname = oldAttrs.pname;
|
||||||
|
# inherit version src;
|
||||||
|
# fetcherVersion = 1;
|
||||||
|
# hash = "sha256-j+HJhvzrcu8JsezcFJxfgteOgTspWQb2ZSN2fEl7Voo=";
|
||||||
|
# };
|
||||||
|
|
||||||
|
# nativeBuildInputs =
|
||||||
|
# builtins.map
|
||||||
|
# (input:
|
||||||
|
# if input == prev.pnpm_9.configHook
|
||||||
|
# then prev.pnpm_10.configHook
|
||||||
|
# else input)
|
||||||
|
# oldAttrs.nativeBuildInputs;
|
||||||
|
# })
|
||||||
4
pkgs/default.nix
Normal file
4
pkgs/default.nix
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
{pkgs, ...}: {
|
||||||
|
# Define your custom packages here
|
||||||
|
# pomodoro-timer = pkgs.callPackage ./pomodoro-timer {};
|
||||||
|
}
|
||||||
50
secrets.nix
Normal file
50
secrets.nix
Normal file
@@ -0,0 +1,50 @@
|
|||||||
|
let
|
||||||
|
#SYSTEMS
|
||||||
|
AZ-CLD-1 = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIItSijmU5YwcJcoshtmYxpxBaVA4TPaCMk23ws7KDkAH";
|
||||||
|
AZ-LT-NIX = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIIg/nFOPx763xIbepPsdYRE49R7HwvikXhLF/iPgH1Jh";
|
||||||
|
AZ-PRM-1 = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAID6gl9maUQ99I4t8mCAdfUw6lrA9NYx2EbwqGOmKts+l";
|
||||||
|
|
||||||
|
#USERS
|
||||||
|
sascha.koenig = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIEZbg/Z9mnflXuLahGY8WOSBMqbgeqVIkIwRkquys1Ml";
|
||||||
|
jannik.mueller = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPvZazSuIoWoRWhkAqQDMLeurxVUyy1MTllp1wfw1tzq";
|
||||||
|
|
||||||
|
users = [sascha.koenig];
|
||||||
|
systems = [AZ-CLD-1 AZ-LT-NIX AZ-PRM-1];
|
||||||
|
in {
|
||||||
|
"secrets/azion-env.age".publicKeys = systems ++ users;
|
||||||
|
"secrets/server.crt.age".publicKeys = systems ++ users;
|
||||||
|
"secrets/server.key.age".publicKeys = systems ++ users;
|
||||||
|
"secrets/traefik-env.age".publicKeys = systems ++ users;
|
||||||
|
"secrets/baserow-db.age".publicKeys = systems ++ users;
|
||||||
|
"secrets/baserow-env.age".publicKeys = systems ++ users;
|
||||||
|
"secrets/kestra-env.age".publicKeys = systems ++ users;
|
||||||
|
"secrets/kestra-config.age".publicKeys = systems ++ users;
|
||||||
|
"secrets/kestra-secrets.age".publicKeys = systems ++ users;
|
||||||
|
"secrets/kestractl-env.age".publicKeys = systems ++ users;
|
||||||
|
"secrets/librechat-env.age".publicKeys = systems ++ users;
|
||||||
|
"secrets/librechat.age".publicKeys = systems ++ users;
|
||||||
|
"secrets/librechat-env-prod.age".publicKeys = systems ++ users;
|
||||||
|
"secrets/librechat-env-dev.age".publicKeys = systems ++ users;
|
||||||
|
"secrets/litellm-env.age".publicKeys = systems ++ users;
|
||||||
|
"secrets/metabase-env.age".publicKeys = systems ++ users;
|
||||||
|
"secrets/n8n-env.age".publicKeys = systems ++ users;
|
||||||
|
"secrets/n8n-env-prm.age".publicKeys = systems ++ users;
|
||||||
|
"secrets/n8n-db.age".publicKeys = systems ++ users;
|
||||||
|
"secrets/netbird-auth-secret.age".publicKeys = systems ++ users;
|
||||||
|
"secrets/netbird-db-password.age".publicKeys = systems ++ users;
|
||||||
|
"secrets/netbird-encryption-key.age".publicKeys = systems ++ users;
|
||||||
|
"secrets/netbird-dashboard-env.age".publicKeys = systems ++ users;
|
||||||
|
"secrets/netbird-server-env.age".publicKeys = systems ++ users;
|
||||||
|
"secrets/netbird-proxy-env.age".publicKeys = systems ++ users;
|
||||||
|
"secrets/outline-env.age".publicKeys = systems ++ users;
|
||||||
|
"secrets/pgadmin-pw.age".publicKeys = systems ++ users;
|
||||||
|
"secrets/vaultwarden-env.age".publicKeys = systems ++ users;
|
||||||
|
"secrets/vaultwarden-db.age".publicKeys = systems ++ users;
|
||||||
|
"secrets/zammad-pw.age".publicKeys = systems ++ users;
|
||||||
|
"secrets/zammad-secret.age".publicKeys = systems ++ users;
|
||||||
|
"secrets/zammad-hr-env.age".publicKeys = systems ++ users;
|
||||||
|
"secrets/zammad-hr-env-prod.age".publicKeys = systems ++ users;
|
||||||
|
"secrets/outline-key.age".publicKeys = systems ++ users;
|
||||||
|
"secrets/ref-key.age".publicKeys = systems ++ users;
|
||||||
|
"secrets/exa-key.age".publicKeys = systems ++ users;
|
||||||
|
}
|
||||||
18
secrets/azion-env.age
Normal file
18
secrets/azion-env.age
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
-----BEGIN AGE ENCRYPTED FILE-----
|
||||||
|
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IFpoVnNlZyBEK3Vo
|
||||||
|
VUJGUExER0VDZHROdkN6S0pPRTVXSEhvVWpvV1FSNnZUcStLalRNCk9DZGN2ZFZi
|
||||||
|
cWlhUDBlQkFZSHVxN1ErYmdhTW5ZbVhGb20yZmtnY1MvWEEKLT4gc3NoLWVkMjU1
|
||||||
|
MTkgU3JIYXFBIEFUc3B1alN0NElwcDl1empxeVFack9hUzFGYlg1bUVRbllNWkNQ
|
||||||
|
MUlBRVkKaUNQNGhSV0pQQ2VGQXFHM2s1YmFPMTJUWUpZVFNrdTFoNmxlTExYeFc4
|
||||||
|
dwotPiBzc2gtZWQyNTUxOSBsR3FWWmcgeG9ZZWNIUHo5c09kMWxmRXJieXJOV0Vo
|
||||||
|
ajEzYTdCRmp5aVlwT2p2Y1ZnYwo4M01URmZwY21idzdQSkszYW5qcVRKdVpkaVRR
|
||||||
|
NXhiSVg1MmlMVlpGNEdvCi0+IHNzaC1lZDI1NTE5IENTTXloZyA5U2V6eEl6ZVoz
|
||||||
|
L0RCblpuR1Y2dGhxZC9YREFhYVBrOGVESldZOHlmSEVVCkEwenhZbkJNK2RoaSsr
|
||||||
|
Tm1DWXN4TjBldXN4VlByN2IrZ2NvQ3c5dEdJUFkKLT4gVid1fXs+LWdyZWFzZSBc
|
||||||
|
dSBLCjdpZ251emhPemFyeEQzYVZhTE85WUtKemhmWVBIeUp1Ci0tLSA3cTcva3dC
|
||||||
|
NytiSTdXMFVkUmkzZ1psbndvMTcwVk42bXArdm1ZSXA3aXNnCgcCLDRJcYeVXN7A
|
||||||
|
OHS0d2J+1TEvSHAEtrnTQjTqYl7ceaS8TFYF/DekImVCoDBjKI2294On8eiCOlUX
|
||||||
|
V9k/GF4OVXQfLcvxhRSTj/h5G8kVXvOodjftlIrx07SVTdIaxJZNAEqyTQi89G8Q
|
||||||
|
Uxu4pKPJn53u3KGPga8xdxEbPwv2VTWp879z7ge3e2me4qT8VZagq06IkeTfbun9
|
||||||
|
Pq8qY6w=
|
||||||
|
-----END AGE ENCRYPTED FILE-----
|
||||||
15
secrets/baserow-db.age
Normal file
15
secrets/baserow-db.age
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
-----BEGIN AGE ENCRYPTED FILE-----
|
||||||
|
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IFpoVnNlZyBkeUZi
|
||||||
|
YmZZdk5zeHBBTkxDdkRyZ1QyZmlRdGdhOUFoRW8rRk5YSHVYYzEwCjgxTmZQNm14
|
||||||
|
TUZuSkxGNUhYUGhIWG1jV0FsdG52bENpS3hwb09yMDhvdGMKLT4gc3NoLWVkMjU1
|
||||||
|
MTkgU3JIYXFBIFFmZlE0QnR4YXFBMlcvVGxnQmJnU0xkQWdidXlEMUJpQ0Q3OFl2
|
||||||
|
Qkc4WGsKWGhNY1dORTdvUWJvUzZJSG96eTVvWk4vR0VsbitHR3YycE5hcDhYanFq
|
||||||
|
MAotPiBzc2gtZWQyNTUxOSBsR3FWWmcgS25HRFRaRTZZLzVoV1IxNEdrakE5UWM1
|
||||||
|
TTRMTS9VLzJiQXVXakJVZnh5QQp4dFZZekVZSlBwVEJ6MDBBNzFSTklPMTU5em1J
|
||||||
|
QlhDMDkvTURhcXpDbXhzCi0+IHNzaC1lZDI1NTE5IENTTXloZyBQYkU3ajVUNkdt
|
||||||
|
YVdleU5Ya1VJUkJwclFiTlBUdXlrMHpNMEh5OWRCNzJNCjJzMlV5ckpTbWFvR1Ro
|
||||||
|
MTBBcmtobzlzbG1HWmxlRkpLMkhoTHhwRE1uVG8KLT4gPH5zLWdyZWFzZSBYV3Fx
|
||||||
|
M0sKenM4Ci0tLSArOERIa00rcWhPeUdsbHFqSFRvOWVEN0dlTjhRbDZCVlFrVzZG
|
||||||
|
QnZMNWxvCiVRTPOhecBLeAXqlUijvGmRXFJhmnDdPxE4/PGCOKJZwBAsn/TNS1K9
|
||||||
|
M4bdsdSB
|
||||||
|
-----END AGE ENCRYPTED FILE-----
|
||||||
23
secrets/baserow-env.age
Normal file
23
secrets/baserow-env.age
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
-----BEGIN AGE ENCRYPTED FILE-----
|
||||||
|
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IFpoVnNlZyBYQ1k5
|
||||||
|
L2hTMDQwaFNaMmpoUGV6cDlkMzRrOVBjZG5DNitLcWdRTHdlbTBjCm5HVGxKREN6
|
||||||
|
VVRqbk9LR3RVNmpoNmc1Y2l6Nk4yT285cUEvaXBacmZMNG8KLT4gc3NoLWVkMjU1
|
||||||
|
MTkgU3JIYXFBIFg1eU9PVGpuTlhQbUN2THRHcERCOUF2ZHRibXlBUWtGUUhKcUZs
|
||||||
|
OTlORmsKS3p5Slo1ZWtqdTlWbUVlZEZvcG1XZTF6VTBqazNUZDlRL3F3cFpKcUxJ
|
||||||
|
NAotPiBzc2gtZWQyNTUxOSBsR3FWWmcgZTZhUlNFVXZxT29zdmNRWEdBbFNud004
|
||||||
|
aTJnZEM4NWtVREg2YWxyZDdWbwpmOVVMcnVRamFMREd1K25PczdqWlc4N2hjUVlw
|
||||||
|
MXJTVzVzcXRyZENoVndJCi0+IHNzaC1lZDI1NTE5IENTTXloZyA5QW1UbllFZ2NM
|
||||||
|
LzVUVExVK0psZDZuSG4rdXNDRkYxblVVNnpzMjNlNVFFClY4ck96ZHJ4MndRMVhn
|
||||||
|
ODlwd05Bc1AxdWpTSEpjTURqUHdkbWpXRWozUWMKLT4gOz1aLHAtZ3JlYXNlIEsK
|
||||||
|
YlFjMjVvdkt4WElTdk5IZHNqb1dBcEMvYVNZUTRJb3V5WnhHcGdPWTY1QUVNMnpu
|
||||||
|
R09JMC9CWTVEQndSaHFjTgpFdVRVRTZIMStyOFF1dE8xeXRTTUVadllLRlBveTd5
|
||||||
|
YXhMTXdEZGNWamI2cgotLS0gY1U2T0s2NEZtbmVTcmIxeDZrNEZJTzVuY2RlQWU2
|
||||||
|
Z1ZFbHBKTzlESEZvUQob76pZzXMo/EvmWmKwXQBlBjbwdImpHYOu85+JuC74SjAB
|
||||||
|
NR2m6BkYK/IUPQ6ZNegTcax97YsHLqt2UHMx5vxQqSPcG+u8ThR6XUxJ0963Lzbb
|
||||||
|
Xt4ygA4nH0LIT5lsuH2kG0cLAnPGtINh4k6haqVx00jeKAhONqQayQ3pEW1gXw1R
|
||||||
|
YAkBQ9RdgYWyj1Fd5+4APHwmOp+84NZrgHLbgVtr5ocPdeqtxZ1bfxpUPFVRPT9J
|
||||||
|
sJKubUtbg0eB1f0Y0Z2JaBH23AuJ1DP2Q7iruA/foRS4hFBpS2FlMO3NbKP3RlCr
|
||||||
|
TFT57KvUbXjpE4yB11/lJw9Yxvtq+EtDPaYud6uif6DjN1cLNPDad1KYa0pR3qRS
|
||||||
|
L+3b28UiF9PrjJQGz6RiSfCQj896uRRQLVwIGYmEnezcJ4DEdw0uu8o62/swzCNx
|
||||||
|
JGI8zwftm6pHo5Fb9qPbkFLRAaKV94JjFdFmPRltpQ==
|
||||||
|
-----END AGE ENCRYPTED FILE-----
|
||||||
15
secrets/exa-key.age
Normal file
15
secrets/exa-key.age
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
-----BEGIN AGE ENCRYPTED FILE-----
|
||||||
|
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IFpoVnNlZyBWMVBr
|
||||||
|
TDVmNmlTSkFrem9JREI5Z2djS0NWS3RQVUFMeVFZeExjUjlKSW1BCnZxQ3FCTHVG
|
||||||
|
SytRUWs0UFVRdzI0UGJuQW5STENicHVmQWdRQlh4THZUYmMKLT4gc3NoLWVkMjU1
|
||||||
|
MTkgU3JIYXFBIHM5a3VheSt4ZXlsNi9UYWx2amR1NWlTYWE2eXVRVU5FSzNYaXkw
|
||||||
|
cnp3MUUKYnBZZ2dQbDJMb0NVdG5oM2lKeGNGUWdrdThEMEEvbTRzTTFEajZJWmRz
|
||||||
|
awotPiBzc2gtZWQyNTUxOSBsR3FWWmcgSkdiSmloMlRraTdidWl5U0YyNjVTeFFP
|
||||||
|
K3l5a1VuUzRpaG5NTzBDRG1Scwo2eDNsM1MrYXhzMDhNT2NEVWFseGR0ankyRVdj
|
||||||
|
VitBWDBPQnk0eVEyTzFvCi0+IHNzaC1lZDI1NTE5IENTTXloZyBCaHBOUkMxS3M5
|
||||||
|
MTFZSUhPZi9ja1hNNnZyM2orbkdtblVrdFBlWThRWVdRCmQxNEYyTW5SdDZiQkx2
|
||||||
|
dHFLK1NicmZXOUU0UWNTRmZsYXRYRUVFQkxEeGsKLT4gcS1ncmVhc2UgeSkgQzZZ
|
||||||
|
WDg1IW4KSGcKLS0tIDRhU2NNNzlaU05rS0NJTTV2bEpnK1ZOQkZFc2IxWkNZeko4
|
||||||
|
NEtmajlVRXcKLf10VyJLLFwaRLCulJN/YGiMqIqwV+9Hfyjns9Exx3mASfBW4yJR
|
||||||
|
qwjpGpVhKIaTNiKo8PdJofw5y6tOCz5NTDmgpVI1
|
||||||
|
-----END AGE ENCRYPTED FILE-----
|
||||||
11
secrets/hetzner-s3-az-intern-access-key.age
Normal file
11
secrets/hetzner-s3-az-intern-access-key.age
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
-----BEGIN AGE ENCRYPTED FILE-----
|
||||||
|
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IFpoVnNlZyBDcUZI
|
||||||
|
aCsvQzBoaytUZ0NpRVY1NW1WV0dyMXVjVnowZ0FlQkNKeDU4ZzBnCnVzcElPTXVm
|
||||||
|
QjQ2MjA4YlNYRjF3dmtpUFliMWJIMVJYWkx3Z2tsTzhXeVUKLT4gc3NoLWVkMjU1
|
||||||
|
MTkgQ1NNeWhnIFZZQ0ZTemdKTno5UUpuRjF6UENydjRtNGZnWWtRRVlLWUhPOXZL
|
||||||
|
YlpzRmMKem9yUDY2eFhBNGpVbnlibmw5K0FkSElGdzR3Rnl4VEpxUUtxTGs1ZFBw
|
||||||
|
ZwotPiB+LltMYj0ldC1ncmVhc2UKSE9TOFo1T3E4WFo0Z2hHS0hBTmJkRDQ2a0J0
|
||||||
|
NW9qWXpCcncKLS0tIEdzKzR3WW9rZnpvTDdKQndqN1VBTWxMY1hidkhXWUZoTWhh
|
||||||
|
bE9RM1dnY2cKeguIFY/T8kg7t6pDHyCVSdx88fbkCbefaHkLT3ZeLFlEeyIxvvrv
|
||||||
|
HTgpP0kje+G9jKjku7Q=
|
||||||
|
-----END AGE ENCRYPTED FILE-----
|
||||||
12
secrets/hetzner-s3-az-intern-secret-key.age
Normal file
12
secrets/hetzner-s3-az-intern-secret-key.age
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
-----BEGIN AGE ENCRYPTED FILE-----
|
||||||
|
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IFpoVnNlZyByQU9Y
|
||||||
|
UUdPWmxxSTZ6Rnd3K2V4Q0NQMnRkUXhvQkg5NUMrNVI0YmJ1NDE4CnJpQkZZNFVj
|
||||||
|
SWw2ZVdKV08rd3poZE5vaVBNN2R3bENBOGp3a2JIdzFNdE0KLT4gc3NoLWVkMjU1
|
||||||
|
MTkgQ1NNeWhnIEkzWGkwVDBkNkw5S0VWbVFlYzN2OWM4dWJZQm5NakdsWUlTaGNa
|
||||||
|
Myt0ZzQKZ0dWQy9JaW1YOVdoZVU1T0ExUm4vaEcvRXFGS3ZDVXE2N21ySjI1S0dY
|
||||||
|
WQotPiB3dzxrLWdyZWFzZQp5R0tXWjBJelF0NFk2MlF1c1ZrdHlxWWprWkN2Mlc2
|
||||||
|
SVVmSTRMSENOVnNVUWFJVmhtL05VeWNJZE54TWFTdm1tCkVTUVQKLS0tIGZ6M1JS
|
||||||
|
aWlmeFQydERNS2ROdnBGa0U4anFOVzdITStyblZQeDV3VVFSWUkKXRiSMZZLMcrq
|
||||||
|
gCXaaUBC4GtG21xSqqsD3MoBNJ+V2XzWC8UFFo8sQiJQB1Pak/CiicRnFkyEbj7m
|
||||||
|
qAfbhKEAroS3kErgbL9w5w==
|
||||||
|
-----END AGE ENCRYPTED FILE-----
|
||||||
7
secrets/hetzner-s3-az-intern-secretekey.age
Normal file
7
secrets/hetzner-s3-az-intern-secretekey.age
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
age-encryption.org/v1
|
||||||
|
-> ssh-ed25519 JqYQjw U5No3H94fSASBcRRZLgTBHxByB95Ziyf4PF2zyrjWhc
|
||||||
|
IbrSOSlaCOphRfXDGkrXONxqZMKd7wQTbeR/C1MWvOg
|
||||||
|
-> ssh-ed25519 CSMyhg MW59VNnTF2MEGytjYT1opGF/W3gwmmtnt6njTKbu0gQ
|
||||||
|
KSnptKwX5I3b5fNMzYE1dMcklmqM+Mehm8zdcjIOKTM
|
||||||
|
--- F50ScuHxKrtaxMrBPi8yNGPbLThR0nYZoneOCN6vhhY
|
||||||
|
É]êp§k¹²¬ªÕõxþuQ<75>uŠ”6êÆÌðÕÕ*E)‡äüiŸü-á)áß§A²¿àœ›<C593>(¾›°ü„‚©ý›’ýmì^O
|
||||||
29
secrets/kestra-config.age
Normal file
29
secrets/kestra-config.age
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
-----BEGIN AGE ENCRYPTED FILE-----
|
||||||
|
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IFpoVnNlZyBRYXF4
|
||||||
|
cisrS0NGeHZIckRrV2FzNjA1Ym91Tk83czRUZVhXNkJseFJMYmc4CjJlUlRMcmFD
|
||||||
|
TGxyZjRhd0RxRXQyRFZBZk5CT2VpczR4QTliQkh2R1pnZlkKLT4gc3NoLWVkMjU1
|
||||||
|
MTkgU3JIYXFBIEI4YitPTXB3VFp3SzByUStDTms5TitnQUx3aFdQY09rZmNzTjAz
|
||||||
|
SWJsV0UKc0t1YnRzVXFiZWZDRkJZd1Zld0ZMZE4zN2pJYXp2OGQzOW5BQ2htcG5r
|
||||||
|
UQotPiBzc2gtZWQyNTUxOSBsR3FWWmcgS0hINXZOVWlGNzZRWUlBYVE3S0FMVXBs
|
||||||
|
NXZGZTRDRXBuNGp3ejM4WnhEMApHZWZyT0ozZXU2WHNJMUcxUDBRZlFhU3g1RWI1
|
||||||
|
UVcrMlBUSjArSURWa0pjCi0+IHNzaC1lZDI1NTE5IENTTXloZyBhTE1oMmh2Smc0
|
||||||
|
RDM3T1B5UGhLeUVVZG9CclNoSGhQWGRXbVgrSnU2UURFCkhidDBoNTUrRXpzeGgr
|
||||||
|
T2VkRjZ5TGJaeWE1K2U4RjJKa3AzMVJSQ1ZjQ1EKLT4gcHxQJFotZ3JlYXNlClVP
|
||||||
|
d09WTS9NR1htNzA2WFNnbUh2TGJWdVhVSUppMVZkcFNSQjJwazZtelpFNXhXZDBV
|
||||||
|
MzVoQzJWWW5JVjhlYlYKb0NCNkl0YXA4WWZwZCszSVdWUXlKYzZQaXVTS3VDT2lC
|
||||||
|
Tk5DS05idAotLS0gMmMzYU9uaGJJaUtzNlRNNExYUWFOQmZKcEwxZFpQZC8vTVJ1
|
||||||
|
MDZ3TXNPYwrXl7PIzv7lRFfBOlmJ6i74CchhE9HAet4uB5NFOfDt3Q5BjCMd/lVD
|
||||||
|
ZVENpsyjyxhI48gqLOEUAFn8UhOaxYcnu6F0f436Az5AiQfzvcmU4WKi6XRJ12qx
|
||||||
|
7jg0wi04xIqujcQNTSWG9mOJ9P/8VrlRJ5HRVo0gE8MaulBuxzmMFJr0ZSAtQXXO
|
||||||
|
DNLltwJ0r6Sy9yLeakDyAxSPOUZSH0B9VzWFmTUcboaWbbDSoy8+kSNpiue81O+i
|
||||||
|
Wy6Dlpr2e0A2HJEmQHHE71Ur6Edpwl+xn3YJjYN4bqMO/KjbrXerT3/Z+gHItMWy
|
||||||
|
Z6QHxMDCw7o/iGhTTp9ALUfFG861x64z9YXoacX1jGLq/bs/3SXaCy/keXMd/y16
|
||||||
|
XPRm0P07Ux+wPKKKIyQ64hEemTj7c5KAlPnlrqvbaPCbx0/QONMZz4kXKFEgzXqi
|
||||||
|
B6wr4PnsGsDOKe32IysYraZ6MTyYrHX7/5udOy/YMwb6SiX7Fm5J+XgE2rH4XevA
|
||||||
|
q2kn1UcXTglW5y2ot24HHasCh+bZLv8OiG19qQq3nC3PsYpWYT1lMcm64uBWbvZ7
|
||||||
|
ejkWrwOZF5FnKEnaj/OKRg3EPSoOkovY12/2X6boehHUTGfga4jZDVvPLgOLwlfk
|
||||||
|
27VNDynyZot98qYquTcdVyVTNNWvOre53Zw9AM0+XwxcPAUWrFXE99cimoT3XQlp
|
||||||
|
c1V4G8xUgANT/Er32o3yhmItmnRrdtT4oIpqlVJEZ3ploYJKmbxVBnAvTzby88HG
|
||||||
|
I4vmrAaE0omIE/GQ1+cNONfk55Paezw+DM6LEGy/SW4OZamqpd5aIdYJDLSUe0wQ
|
||||||
|
+5xH8m1iszJm8s3f8ocw/dVGgK9M74k=
|
||||||
|
-----END AGE ENCRYPTED FILE-----
|
||||||
17
secrets/kestra-db.age
Normal file
17
secrets/kestra-db.age
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
-----BEGIN AGE ENCRYPTED FILE-----
|
||||||
|
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IFpoVnNlZyA3bFpG
|
||||||
|
UjJ3UDRDd3pFdFdoaVp5MjlrbldmUU44d0xqNkQvOGFoSjNKT25jCmNVQjczbU9q
|
||||||
|
ZWh1Rk9oNC9DTXJPQlBrWEQ1YjBKU2Z5RVpvNU1GdVNzczQKLT4gc3NoLWVkMjU1
|
||||||
|
MTkgU3JIYXFBIHZqOWZPRFdKOVVNZWhlT1hmWHJ4N3h2Zko2R3owU1hDRjNsYjhX
|
||||||
|
eFB2Mk0KQWJnT3Urb21abkhiUHpQM1FBcUhtcWFFQ0hTMzJ2UkJYMHo2aG5lVU9F
|
||||||
|
VQotPiBzc2gtZWQyNTUxOSBsR3FWWmcgbTlEd25LQ2hURkl5U2trM3U2UnVyaXkr
|
||||||
|
QnZGbnRxVkdhbWhYNU9USG1Cbwo1R21MWFhPT2lMcTU3aEVwcnJCbVdiRzV1YlE1
|
||||||
|
VVFlN3packl4dGhOanBvCi0+IHNzaC1lZDI1NTE5IENTTXloZyBwSnRIR1BIUmRl
|
||||||
|
N2h0SitFYW9GQmY1ZTUrZnRDRlJMeUEvR0kxZTlLalVNCkU1ZE9abHdIOUluaUNz
|
||||||
|
bkpvNDdUM21Vd1k5OURhRVBvVis1MlpEcER2cXMKLT4gSndpSGluLWdyZWFzZQp1
|
||||||
|
ZVB6cVUwN0tSRXY2YVl5STVPL3RkYUNIbDFWTmFWZVBvbFRMT2F5SWR1UWZzODZF
|
||||||
|
VmpFaURuNklaT2llZ2dVCmQxYVZnT2FBWlBWVUZGOUswOHdHb1c0R0ZrYlRodVJx
|
||||||
|
YlZtcmhtVWY0aGJPam9UODV3Ci0tLSBKcWVEUzFVWHFaUHFlMkJtMXd5TlRvME8y
|
||||||
|
cWUwemhzZ1VYeDF3ZkUxMk13CgitI44UftlBnDaKhbYE3XBHopWw5UdrhFzB2KLM
|
||||||
|
7MnMleigJjEoKmi2b6wjld6x
|
||||||
|
-----END AGE ENCRYPTED FILE-----
|
||||||
16
secrets/kestra-env.age
Normal file
16
secrets/kestra-env.age
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
-----BEGIN AGE ENCRYPTED FILE-----
|
||||||
|
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IFpoVnNlZyBjdmNT
|
||||||
|
bnJScmdlUUZPZSsvdmd2eFJZZEswcjdITDNPeU5zS092OVMyamlZCnNLYi83TFhK
|
||||||
|
YUhDaWlxL2REejNSdDllZVdmNFR5eXVWWlhVVnlIZ2QydEUKLT4gc3NoLWVkMjU1
|
||||||
|
MTkgU3JIYXFBIHBvUTJiZytRbGdJUkRzYm5YbFQ0bEJXaytaU2h1NkJTS2ltWXFw
|
||||||
|
dnFQaFUKSUdpU3hqTjZCTG5qRGpmcjNqaWMzSUoxRTNGY1JNYlJnUXV1TVBqMFF1
|
||||||
|
dwotPiBzc2gtZWQyNTUxOSBsR3FWWmcgK0o0YkptWkRUeWo1ZndudFpMVlJGZjNZ
|
||||||
|
UWVMNG5nMUJZU0NqYmpjcSszawo5TVViZ09heVl2bVBRWElxOXVOL1NsOFlZRS9q
|
||||||
|
TlpGZ25PZ3luZ2UvNm1rCi0+IHNzaC1lZDI1NTE5IENTTXloZyBTY0x5WEZLQnZk
|
||||||
|
KzFUVVV3UnFYU3AzRU44NXZibWJsTUk2Z0t6MU5CVkZFCjhiSE9taHdiV3prNUpC
|
||||||
|
OWZqK2RZVUJZZkxYMjlYRTVkZDYzdmRqaTU1U0kKLT4gbC9qNi4yQyktZ3JlYXNl
|
||||||
|
IHt0LQo2eUpaZ3RwZUEzVjk1Y3hFa1ZPdHVacHdvL3V0WVRUSFZyVndUU1o1REto
|
||||||
|
NWlxZWNOcWMxU0srQjg3cFQvVTh0CnkyRFhUMEtmQkRCcmgxWjdaSmlDZVRDUmJJ
|
||||||
|
ZjZlRkVPc0NTZgotLS0gR01PeFhpNW5EbExTT2pyeWFvelZ1SEEzazYybjd1b0dm
|
||||||
|
K0hyVVNFZGF3OAp3+MW8cSEB7t8dq6oHBdvo/1iVRmKrN64bdO0mxpLkbA==
|
||||||
|
-----END AGE ENCRYPTED FILE-----
|
||||||
32
secrets/kestra-secrets.age
Normal file
32
secrets/kestra-secrets.age
Normal file
@@ -0,0 +1,32 @@
|
|||||||
|
-----BEGIN AGE ENCRYPTED FILE-----
|
||||||
|
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IFpoVnNlZyBOMjhu
|
||||||
|
Qis2Zm9sMnJBSG5WRmUrbHlibkNJU29FSnBoVDg0QWZYU2dCbW5BCng2Ukc5amJp
|
||||||
|
T0V2TEFDSnJWK21kdDQ3WWJNSmhVT000ZUdRNmY1MUNnTUUKLT4gc3NoLWVkMjU1
|
||||||
|
MTkgU3JIYXFBIGNxU1BMVUEvTStTUE91THBPTzAzMEtMWFJGUnU5VVNhUU5neFhs
|
||||||
|
dC9vVTQKZkJaYWJubEh4M0FZK09WelRJUGdLNEcrK2hrYjRabi9zTzgwU1N2dm1y
|
||||||
|
ZwotPiBzc2gtZWQyNTUxOSBsR3FWWmcgQXlkbDdZMU96VFRNc1cwOUZUNWFEY0ln
|
||||||
|
cW5TRkxEYjFnZTlqcTdpaFFIVQpMTUhNLzhKdUREdGxQQmJKanE2UHR2RElES294
|
||||||
|
UkNoWG0xYk9XSHVhdFh3Ci0+IHNzaC1lZDI1NTE5IENTTXloZyBnaklaS0FtVTNS
|
||||||
|
WlRNMllEVHhVbHJVdDVmb0xhUG9kbjZFeDF4NE5mWkdvCi9pSkIrQ29SWUdMUEkz
|
||||||
|
RGxzSnJzNU9XaXNlR1kvaC9GZjZxdjhpbUNheFUKLT4gJW5aVS1ncmVhc2UgKi4g
|
||||||
|
Jn1hYjYscVsgfmMuKWx4V3AgRCZ1VkE/dVwKNE85RW5MdThyN29hY3pGUFFPdzVo
|
||||||
|
T2w5N0ZVSktodDhYeUlNY3U1cVZ2NWEzN3FacFc0Z2pxekUwMVNPZlRubgp3RXlv
|
||||||
|
U2xYeFUydwotLS0gMFpFVDhuWGJUc1lGcFRTeGw3QU1Dbk5JcHkyWGhJU2R5bTFt
|
||||||
|
ZkJnQnlaOAr/tWaezrRSqKKofd2Si/8xBW8PfwGOcR7UDG3JBAXt3Fg0tQmGGJKv
|
||||||
|
32ZN2uoV2Vdc6KegRzCPdE2Qu/DB2eyfdg4vQTON7RleiZNahqZU8jVijgJpchWD
|
||||||
|
Pmi/sUBCIAjv3X0xAQyC/FBkTuX+18QiA/Si08NcFZ7OEqxBGn/zqvN4h7o9JM0U
|
||||||
|
81GLh2rIsbOLmy5bXzEIFLjiK6foXlYCjcaHcT0pXTQ5r3TEMdSxq78sFs6RF9Eu
|
||||||
|
x3/cMw50tD8HbJE0CD7ybWR8z099zweGkjDxYvaNFHu00JdY6Hb1FCrBuSyvwqzH
|
||||||
|
0ANoyiNCZdMhy1riggpjy0BdYZKKWRxmbz22kL4ZpP6ztZlFdgjStqYGRMdc+3Mo
|
||||||
|
10P4ebgs9RU1G0R30lHgoyA3oQtYl+t8Gf8R6QihoCuhHZpmohIG85Rsl+kxjwz0
|
||||||
|
pttBjD4CCRKv3iOXAkX3tC2z1FDipR597Zn24IM9/DpEFrvnloFRhZESJofFgIe7
|
||||||
|
7+EpjRlZTEo31DbT2VJhPCgJr+poby+wy/VfAAHdaWucGBPtfUvIVYteyqA7BPSo
|
||||||
|
dVUckv3LEBiFO/YPviz95ktdH0ztPfn9/hfRfD2mZw+RD/oDIV5ABGtqPJ/icBlj
|
||||||
|
AcE7nSRRUEk4jjPWMxNcX/sGzVaFeBZR2jppmUfPOoQl6k5QfoS198uT0vzCCj9A
|
||||||
|
9xjmeot//7iuV7Va9Tzg8mgoAa3kdZbrmbibQUo0wtc6fbH2wDGm9pgFHCoKpGqv
|
||||||
|
B8+8FiZ8G3lA5AFzKRrpN/z8he5abp34hz98DlHCvFF0jfq7JF7bYeCcdMzpTiDl
|
||||||
|
HJWSK9YkD/1i2TtJw1rO4eN6AqtnaZ7eWFxTIG8v3Oia5RLpJLRFur8dy/sG9ayc
|
||||||
|
Oj+JFPc8LkD2ium6SvpEhXjPLuOdEZ4WFf1Q73zyd/VCfuligDbBhJCtpgliakga
|
||||||
|
HXkZqG2QeUQOPC0OaFNxc5Ras31+V9XP2xB/BhfRTwd0pmqw6k4skHeNbGubBFEB
|
||||||
|
hirD25EGY1ZSLtSaLkX0
|
||||||
|
-----END AGE ENCRYPTED FILE-----
|
||||||
19
secrets/kestractl-env.age
Normal file
19
secrets/kestractl-env.age
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
-----BEGIN AGE ENCRYPTED FILE-----
|
||||||
|
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IFpoVnNlZyBrRUFE
|
||||||
|
TjJybGM1YXhpbis3bUU0SVBsMGlIenFkNWpMUnhEMmlIK1pBc1VjCkkvT3IvN2VE
|
||||||
|
T21jb3lkUk1xUUZZaXBOYlFhYTRIMjlBS3NuQlA3VFFYSDQKLT4gc3NoLWVkMjU1
|
||||||
|
MTkgU3JIYXFBIHdmb2c0blErQ0k0cTlKVzRFRCtaOUxhZDhvckloUW9HVktqQU9O
|
||||||
|
ZjRzMDgKcG8zYUhQZnRCYTVJMHhzZm1RbkNoODFwSC90RnVuV2tXUXRRYzlYM28y
|
||||||
|
SQotPiBzc2gtZWQyNTUxOSBsR3FWWmcgMzNyWUVuOTkwcDd5TmE2eXpXT0xQRkpk
|
||||||
|
VVFzaXdHdjg0R3BESTI2VGJ3MApkWk9mMVpydS9OU0NkcWVxNjcyaitzUzd0eGdZ
|
||||||
|
cDNnZzZtM3ZzSm85NjFJCi0+IHNzaC1lZDI1NTE5IENTTXloZyA5ak9RR1pZV1lX
|
||||||
|
M0NCTnZpTHRKYnZUcEdMU0J0SmxOZmlrcGN0eEVsdXhFCjNyZWdCK1dOSXVrTlNt
|
||||||
|
d2FJai8za2ZtS0FlUTZPRm40ZzVGdUwybTdiMjAKLT4gTy1ncmVhc2UgKVRVMlRz
|
||||||
|
eiBlRChgIyByJApIWko0SW5LM2k0VExKbCtaclpCUlBVOFdjcEY4NHhxNjhLSXpq
|
||||||
|
MWRRcGFzUFdUT3l4TTRrMGhJRzg5aVFrd1U1Cmc5QXFEVG9ubS83c1M5Z1ltaWIx
|
||||||
|
ekEKLS0tIG5FM0gxY0JpaHBIVjdack41TTYxb0N2OXhuSEJFamVGbXdvdVpLQUww
|
||||||
|
a1EK+4IOFlZ/BEmN5diOyV9hgLUfHf3SOijxq4Z0ctIAXuNZVXaSpP5mRXGb4q1D
|
||||||
|
xkk0MMF5F17yNnhLIM2Ca5PEH2chIb3yUhbdLJTiTtgyF3tEbo2YtAYXT90zKBB1
|
||||||
|
p9Zi6cxl63s4+yela7J5lXb8dPA2nCQA2obrB8wkexuYATF0KxNyX4vWK7Yj6DP9
|
||||||
|
rt0nxt5umpbBmqfSsuGd2cWg/RveqNDim+q+DVNO9fyhnsMs1e0Wv4f8Jg==
|
||||||
|
-----END AGE ENCRYPTED FILE-----
|
||||||
72
secrets/librechat-env-dev.age
Normal file
72
secrets/librechat-env-dev.age
Normal file
@@ -0,0 +1,72 @@
|
|||||||
|
-----BEGIN AGE ENCRYPTED FILE-----
|
||||||
|
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IFpoVnNlZyA4UHBE
|
||||||
|
RU5DS2xpVlgwcnRvZmZWblFuMzVBMEx6VXlTWnBvbzZiWWE2SnpRCmQ2SE9pTHpZ
|
||||||
|
ZXZ0bitLWlR2UVBUbG82cHlSZUtlVTdLdU5NbzN6VDROU2MKLT4gc3NoLWVkMjU1
|
||||||
|
MTkgU3JIYXFBIGd2b0xxeE5KdFBvZ0RYZWE4blB1NGlTSGlOUW9WVFBmZFhzQkIv
|
||||||
|
K2VueVUKU0ZoVUx4WjRvZnZnbS94amJIZzI1SnJ5MERIV3lOcE04UmhOSm1DUUlK
|
||||||
|
QQotPiBzc2gtZWQyNTUxOSBsR3FWWmcgaEdWUURiSXpWdGQyWUlkckwxaEFmYlQ2
|
||||||
|
YWpTL1FrZDdVcVUwaERHMEFYYwo4Z1F2Zm1ySzdtRzJsRmt6UU82dFVqN0ZrdmFY
|
||||||
|
ODhnNVZ4TFRSZzVjR3FZCi0+IHNzaC1lZDI1NTE5IENTTXloZyA0NWJlV1JCK0lI
|
||||||
|
QkhxWmRaMXFSN0QyMlg2WnR6R3NWRWdya1BmSEduU0JFCnFGV2pLbzlmSjdIZzNB
|
||||||
|
WjlldEJPeU5SaFhJUjdKTGVKdEhuSDFjK2VvV2sKLT4gcVZLKi1ncmVhc2UgfEFk
|
||||||
|
VjggJHUgWmByT0RAIHR+CllKRWo1dVAyNk94d09jcTRDUElvYkgyUC93dWdjQXU2
|
||||||
|
eDJKMEw5eENyc2dBOExSa2d4ME9BNGVQZW04MjRZN2EKbStZK2JiZwotLS0gamIw
|
||||||
|
aGFtMjNqczJWOEFRc2Y0akdrd0x4ZG53QUExZ3FZL2pvSGlJODhDQQpki4tky/NT
|
||||||
|
0BmZkRu3s8ouulHNP8+9dCUCOnOg4khq2dEBDrorFP4VTJTFRbGdZhS3N/zGd0EV
|
||||||
|
9pfAcHIgNvmw0X/85hxsAszxEpcW+RckGfQGeicncNtVP5TpYTWJAtLqWKszcv+1
|
||||||
|
dzbSSlsPs6Az7SBoa6qjo2fiGp2PttgYehfEw6eX6I4WAr+Lr1AqwJKLXkFL8sva
|
||||||
|
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
|
||||||
|
6zmnvdYXqZ+rGKF9aQIE67yT9w==
|
||||||
|
-----END AGE ENCRYPTED FILE-----
|
||||||
70
secrets/librechat-env-prod.age
Normal file
70
secrets/librechat-env-prod.age
Normal file
@@ -0,0 +1,70 @@
|
|||||||
|
-----BEGIN AGE ENCRYPTED FILE-----
|
||||||
|
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IFpoVnNlZyBrem5H
|
||||||
|
MnBHMlJnYnF5bXkwbkRLUDdrVmlWbnR2ZFZqemJ5R0F2ZW9tSkJnCkZqR2hEUHhs
|
||||||
|
TXlDZStkQUZFSTlmTzByYy9vMS94YWZUNFEzaFRMeDk4Z2MKLT4gc3NoLWVkMjU1
|
||||||
|
MTkgU3JIYXFBIGJmZmkrREFBY1UveVlSWGc3aXFmWHBkbzMxWUg4enpMMXdKb1c0
|
||||||
|
dlhKa3cKekw1UklpRksxVTVWZUxVRXF4d0VaZi9JLzZJTGYxRDNibWdqenY5WWhW
|
||||||
|
RQotPiBzc2gtZWQyNTUxOSBsR3FWWmcgS24rVDFjYTI2bWxUWFg2b3ltT0JUVCtG
|
||||||
|
MXYrTDBhM2I3OFRkVVp3d3kxQQpBaFBEcGdOT013dHRidUFjcVhqN0M5bEtkMzFR
|
||||||
|
Z1dlNDV3cUpaR2NsbmJvCi0+IHNzaC1lZDI1NTE5IENTTXloZyAvaDE1RDNmblA2
|
||||||
|
M2o3M0o4MTAxakpVR3JwUWV4V00rbFZLVDVHYWtxU3hvClRUeUkrdUUrT0dxUzFk
|
||||||
|
czVwS2tYUjdTWE9URVlQdEkrRUNELzJlWDJJOUEKLT4gfS1ncmVhc2UgSnJxZyNJ
|
||||||
|
UyBUdyBtS1A2RT4gJ1JsPztMCgotLS0gMDB0bDhWeUtZSzBlNXE4ZjRzVWxwQlVW
|
||||||
|
V201TWh2M1IyMjdqaVZRRlRKawoD+/nwNWeHHqKEggiWOCmN48bEUYR62hxg35M7
|
||||||
|
OOlDcZJ2GtHiwlJewfGTgNcazqCrQ0f4BDw9bcEr9ys1Qo7On4qMB9/0eodNzkR2
|
||||||
|
P0knsGfzwfHdGfU96RzQhtPott20PXdTRmlvwzfVsB50uhx0nsU7UjVGgOpUSxkd
|
||||||
|
bVHgDREp6Fgu7SJ5SPFC5PvwxNvoGkQxtRuRNstkl/HAS63B8So1Ki+WX5/+LovZ
|
||||||
|
f9LbgyXeOXSzBKtk52n93YQqWS5VBPUuvbKFst2k/uvhcVJtQDWyXO7uCguzUtGC
|
||||||
|
aplzKH5D4xfQbdYLUgmS6LYHrL7G5eCu5SJ6hQqsPB+jUcElTddNcLTwGB3MYdzg
|
||||||
|
wTHvQVRMCBVX0r5iSqz+wU0yw+LPzMn2Rs5UU+gEv7qXgCDnwJNbfgbCDnngOFjS
|
||||||
|
mTOW0o7AfWH8mV/wC60cMUSNbDrbc3QxJco6PhlW72VHCoJq8GWfxcmPm46dsZ4M
|
||||||
|
Z+lGOhMfcNFcdSQ9OxXsuqBHXBAx/3O4SZQdg30SwyBb82CkAVtx3OCx78u+0Isg
|
||||||
|
fOCgFeT1DYm9mWao6l3DQwMntytfdC5e6vaM5Xh9ZB0Huwf+ywJRZ2mNx/QWXpYx
|
||||||
|
bGuGgFtaNxZtpgKFOpW0oMI58vvqrGXvmquMWXaaBMIYsQ6WqN7UUZAv0OjQ0LcP
|
||||||
|
MxcBcDD/38rOa+uqK/Ot8tD4tljxaJX2QbsH2SMP3zZqQ0wtPNw0ugm5llK+XBd2
|
||||||
|
K6HyrtcDU9ncMSWO2KvSUK9ZzSjEFU3rQo5LGrBB6fdfk9qxNy2xGKMNGDLdvB55
|
||||||
|
YfDH4lSPzG5YU0IQM8ISzjYcprQ9mCUWGiTP/UcOmWfosAdTJMtb3FrgTqNjQMfY
|
||||||
|
ZVT7RDO4LdtsIoGtIk+6j6SeRM7O1bK+NRBKgR363O1ykuMSAGsNny+9cx3kggMu
|
||||||
|
bVAlTasZttjvxsxhlz9/URlXuSOYfM7bEoSwn99ThhZMkebzXqp5IVSVMllkTAmM
|
||||||
|
6+raLiNaxnRnKPu2WLsS+qeuCsYqXNiIYntkAchq0pJ8GkcyzLBPxw5DqN+X94RE
|
||||||
|
ADLYsMKS2JSbTbX8qz9MdbZ06MKjkw+B5BEcQnt0phWqniWs4qOxct29WODCXtB2
|
||||||
|
cmO/iKa57eO644FGrCExPjNnuB+vKSZw4Cp8JMzTj4JTLpBTdB9xF/fRrpYd6Ij6
|
||||||
|
cScAnRJ8LskOSDn/NEHZ963nPkct7YtkE3pg6c0G9IcTwFyyXl8Js0B5Wz0s1coV
|
||||||
|
d27PTL1yQnoL+Kc8cUdLLoPeq/boXsHtGkxeD2jYOi+3h93VWO3FWzuqnw8mO4la
|
||||||
|
utq0IoCECck080l6WhL21OxTkM1eYwktgPSIdCgLaP9GaXHXTnI+1PCanlaIT/ys
|
||||||
|
BXjHUu1BrBYx6eu0ZwhG6digaeO+f0n7CilKdrfgfp64WbCzQepGEj3y3eaSJjsW
|
||||||
|
doc1c0hvD3uP38I8ElJXQv2VHT3FOI0Kvq0G13YERZJ/c1RBZ8XbFV6liiwO6ika
|
||||||
|
RfvOxGkme66tEIv5jcpggcBMpuogAVTznYNPTy3M23ZnwmAXy+24ndxuwluUE8vN
|
||||||
|
ZtKudSvZnV2qLkDnewz4NjJQr+STVMQByrDdrKj6I1n73/OsiEs1wc7j/LVHXxfS
|
||||||
|
Eoydj/wBJRZl6a+5AXC0LsaNhbudCJWLjvUrUpkGeHIBcdZYm2eD0Rfu4QfMjxY1
|
||||||
|
syXs9ryVNV038xI86RTlDPzPQCxUa1mBfjm1eDhGrjNv6w9hj/LCUY+au+hWObI+
|
||||||
|
AuqiabTXRepiKQQTxdbIPbFN+Kdu20dLasOkxN4A1cTXdMhOkhbeoAwuDLsGHapD
|
||||||
|
OiPtLaT/Rk3htUUtd7jsd3WdXcooj1r6PkxR+CwMSd5iXkP293rCkzYyOLMu1VcA
|
||||||
|
Omg+kb5K2kUtBRv76qBoy74zy8C0DUPosNghKJUcu1Cee2CZ9J4O9gj2FU22CLEn
|
||||||
|
FyXPxrlqIvXoeAUw6U508gvtJAeC886kSocuGlszE6KEULOcZ6NDHk0V+r9UJWqe
|
||||||
|
VM/lJLEYHs5ERNnGCUikHizN9sjPJzcm6SVxjob5WlopigkX8dJGuB6rC+YL+Eil
|
||||||
|
qSDPVDhF+kfUP7ou1XBVInnz5ZbJrWu61OHOmcQlKyWSy5X7ACmuwNnuYI8aRQfP
|
||||||
|
p6hob3oRCN6lOvWyJ7mBjOqBM2GytHTFxY+QceoIGwkyn4PppvUmtVeAWtq3/+pz
|
||||||
|
3dsBnxgAjZcU2YUo0H9pRorWFesBteM1o+7Xty3iiNJlC4C1zLEMt/X7VLKMd9qi
|
||||||
|
JmDzaU1SdtMhm0AxbFxumQy+b75CwfluoZo1SCVnZRRJQMzi1cDAClAZSocaAQTr
|
||||||
|
tIlv/yp3iHyZtFXnR1kqV8Gsq1ixv/4pbQdq7d1qfU76O2CVhKbLW22diedMhVEV
|
||||||
|
mN7LhQdBAmZMZol8WCH18q22+KRHe9ip65mZsN/ia2CrYjAlEpsSkbuoLXKCa5LU
|
||||||
|
hE7O3wKwbQWRmQtrty9iDQM6jca2Qg/MUDb5Hx4i/KYTaZoIqCPvm+rZPIp+w2H4
|
||||||
|
qAvHFWi5Rnoxpz3FApYCRhtRADVOhKw4yzVcqLIse57eDZoCLCd5aFUDMoXEaesb
|
||||||
|
zfolTptlZ4SdUlvTk8Tie1GhKpe05LZrRELrsRnfXqXavo7XukyN657H/GOagDho
|
||||||
|
cHMBcwQJ8QUlqi0LLo0MgmiDePU6V5sim0IcBbpo0JSb03vI3Ba+zw5S8o3pGXi5
|
||||||
|
q6NHIj8WPGNLTYQtjcAm05mjrPjHWFaEjfY1GnWtOB0AAesqwdjVHapy9XZX9JdT
|
||||||
|
U38380dB08kfd8kQp7gyPuH2vQhQbu0C+Bs8XFNUAhvSkz9v9wJBjdK608cSa4aZ
|
||||||
|
+wOsT22DprU5YvucUXUUTtxD8BVcklwseCoGh5GhTgL37uH1Un9SRAVf8FYvr8bW
|
||||||
|
4ksuWBbG+n/sKMAJXMAanKhf7OO1g0amTPy0o/5Avx0pwbcdYtjgDm8yqQP5kDP9
|
||||||
|
jkbNj7FiODyusExdxnlqH623E2ZoKz5/7fK1gLdWgvxEs34JwZ98kYKkikbiJgFR
|
||||||
|
bJ/u1njKMk1cI42jE7Gf+Z+sQiVq3808hzqXAa8sKOWXij4agLUzSsZg8ni+pmN/
|
||||||
|
H8XgVYfSxFFcJ/W8ahZjEfYtV4Imu2Qj0s+jqJyR2fFpLq+z+LQOFMx1i3lYn+bW
|
||||||
|
zPPiFgyW1ALhlRuL8ZuIwEOTrKLgOHiEeb2VYHgtOEKOVDaQNJQfbcHDja3/c2XG
|
||||||
|
uo4ltAJ9yM2IZYOvdlT4y9ir0KuPM6t7EOBPOulWFtCezNVG/c5Tq2LJTK1PLwf1
|
||||||
|
AvTJTYW1iRCg7EjvtEAxoe8P49N8cwnAJyvHOpY7k4Joc9pmcXfHTCW1OhAyI3ET
|
||||||
|
9lngDcvRtoh5lZvAd+SCWxtNrrzMgCskh4xmwLrwEYt6N7OQ6U9bEbZ8anyF9+Hw
|
||||||
|
ICU9T5pW/5Dz26Vcc72p7dUEt01dOshXCHB3V9hJ+Nc9bBEsIpuHyuxL6rnLtj9q
|
||||||
|
txgDRXF/O3ouhqaR5Y0aiDMpBZ5C9AuWepO8jpW68AuBVYlAZL1ThOzq6U9NjQxq
|
||||||
|
WuwoGMa1k4BYuQLpZG/8HVVKpfhWb5FghKtLO814
|
||||||
|
-----END AGE ENCRYPTED FILE-----
|
||||||
554
secrets/librechat-env.age
Normal file
554
secrets/librechat-env.age
Normal file
@@ -0,0 +1,554 @@
|
|||||||
|
-----BEGIN AGE ENCRYPTED FILE-----
|
||||||
|
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IFpoVnNlZyBpYXRY
|
||||||
|
YlFGUGY3cjZuWjMrU0pSQUhOaHZycHFNK1A0Ykc5UWFVL3hWcmlvCjNDeDUvenhZ
|
||||||
|
NUNKSHZCZXVQaU5udVU0dURpMXJpYmRVSy9HQ3owUG9DRFEKLT4gc3NoLWVkMjU1
|
||||||
|
MTkgU3JIYXFBIHpwc1d3K2tSbmZTTnFLNXl5clR5cXZ3cnJNVW1BYUV1VURxT09D
|
||||||
|
bHdKbTAKSnFzOGdPeFJ2dkRrL2VDRk5LNUhDZm0zY1VlQS9WemNBVHh1U2FQS0xL
|
||||||
|
cwotPiBzc2gtZWQyNTUxOSBsR3FWWmcgRkFGZGY3UktVNWVWdFcyUUhJemR0TzFJ
|
||||||
|
V21iVFJPWmNKMXJ0K3NQVVoxMAplWGEvbThPMWl2ZVZiOVVOS3hRcHhRdmRLc0Mw
|
||||||
|
bDhXNUNtd0taUUwyeDR3Ci0+IHNzaC1lZDI1NTE5IENTTXloZyBaTk5BSWRpbHlB
|
||||||
|
U0w1N2k5VmxtNG4va3AwaFA3YnRsZUdZYnNJSDV2UXpFCjNwWGRVdDhWN3VQQWRE
|
||||||
|
OWU3bDJ5Qk4yNjU0NFdtNEQxMzV4K1NjV3FXK2sKLT4gKm9eNCdwZS1ncmVhc2Ug
|
||||||
|
dkhgJCBOViBQNSBkeiwKc1B0WjJ4MVQrRGhveVJIOFJzRVBQRk9QNEx6azFYMEpN
|
||||||
|
OTJkWFk1U0E5akVyVklVR1J3dFYvN2kzMEZHd2xXQQppbGhuTERrZzAzVHRCK3VV
|
||||||
|
THZPTkl5Z2tsa0dXV0M2ckoxMkkKLS0tIHA3NXQyNU1XOUZFS2JRYVozWTVGa3NN
|
||||||
|
VDQ0ZWJRZTJUQXoxeGdsWGtSQ2MKqSGMY65VFFfbQQJnanilkpdaBh6qY2sBegh+
|
||||||
|
nqJo+jncb3rSrzXnsgg+h3PWfGEMahBpQ+DSaSNuMg42xT3iyqMO+Ud/wjOW2/bd
|
||||||
|
K9d71AsamepCqAzMtI7ib12z7dC1tIXF3tcQaLd5aMCHnNef5BEWK0q63sMrfVwM
|
||||||
|
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
|
||||||
|
mR+bpp7vKqORLM30Tvg=
|
||||||
|
-----END AGE ENCRYPTED FILE-----
|
||||||
502
secrets/librechat.age
Normal file
502
secrets/librechat.age
Normal file
@@ -0,0 +1,502 @@
|
|||||||
|
-----BEGIN AGE ENCRYPTED FILE-----
|
||||||
|
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IFpoVnNlZyBBQnNs
|
||||||
|
YXhLQU14b25rMDg5djF3LzNKdjdHK2RsaEYvM2tqWmFsWHh5WEV3CllnZEZQbE5Q
|
||||||
|
WFBJRWVsWlA4R1FhM0dpZ1FRRDBLQlhvNUc4S1FTWHk2MTQKLT4gc3NoLWVkMjU1
|
||||||
|
MTkgU3JIYXFBIGhWaW5WSVE3dzdJN0FXc3V5VFR6UGhYS1FBeXAzRk9IUHVYTkRQ
|
||||||
|
NWpNWGcKcWwxR3NDTzBIQTJNNy9yTmxHTDArVXlXZlpydEFhdnA1WXNjQ2F2ZXpZ
|
||||||
|
RQotPiBzc2gtZWQyNTUxOSBsR3FWWmcgUGRBVzZPaFVpNTYyVzZyYU9WbUlwcDNL
|
||||||
|
dWxKRW5uOFRzNmY0MW5aN2ZCdwpZOXpQcklTcng1eXQwQUdDTmkxMTQzSWlldHk1
|
||||||
|
UGtFV0RSQUYzbG00OEZBCi0+IHNzaC1lZDI1NTE5IENTTXloZyBjVlJjbDMwdWRG
|
||||||
|
NVYyeXNxNkk4cGQ2YTdFNDVINUFsUEhwTVpwTUpuZHlRClZ4WE11NFNTejRJVkRR
|
||||||
|
UFZZZm1sNGM0V3FuUlU4RW5YbHZRdFpkMk5FTU0KLT4gIi1ncmVhc2Ugbj5qejwg
|
||||||
|
TCA6VCJMOAptOEo3bGtSODBSSnJsaUdhZG1LaHNIeTBHd0NFVGJJekI5VjFFeGhv
|
||||||
|
Q2tnRTB6TjN4RDRVenFSZVZzbmdFbVRiClhHaFF6WmgrUHRNK2EwNVdnV0VHN0hZ
|
||||||
|
RUhIbFAxRFlqbmp4WAotLS0gRkhzM1ZrUmRvTnFXTkJaaVlKRklVcFR1bUtENk8x
|
||||||
|
OHA2RStjNVFjb1JISQqemBHxakhUQHThV6NqsfMw8cAWKWFTdrKC76BBw7zYFcwe
|
||||||
|
TePr68pI2bLfScnTZ9Q4V3kWQUW+5rVWvc0lo0sApPWHgyxA/aYRV0tS9nirRIeC
|
||||||
|
qaocDs5IyFSAqnVJt70sHZWIbUC8HZdeDDsQZT9nvN0sKphVCeHrijBmuIwmtQYh
|
||||||
|
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
|
||||||
|
-----END AGE ENCRYPTED FILE-----
|
||||||
20
secrets/litellm-env.age
Normal file
20
secrets/litellm-env.age
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
-----BEGIN AGE ENCRYPTED FILE-----
|
||||||
|
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IFpoVnNlZyB0NW1T
|
||||||
|
c0J6ZEVnaTVlMUh3c21GMmJ2ZStHQnErU2s3WWlCWERwUmNEUTNRCkFNSDhMa3BT
|
||||||
|
MTBNNzBKRm9tdW5jWlVmbHF6bEpGSHZ3aTRob2I1YmpTYmsKLT4gc3NoLWVkMjU1
|
||||||
|
MTkgU3JIYXFBIHpCcXhSeE1hMll3cGJkb1ZhOWl1ZXA4L0RRV1ZNN1Mxa09paGRP
|
||||||
|
YmliSG8KanJ1MTlDMExqdWgzVmVCTnFHeDBsNFRBdmtrTFJvcDhJdVp4Q0o5QkUv
|
||||||
|
dwotPiBzc2gtZWQyNTUxOSBsR3FWWmcgNEVkYytqT05ZNjc3TFNKV1ZmS05zQkg2
|
||||||
|
SmZlOTlVbzZObG5od3VDaGtEMAppSkdDMkZwUENDMzdDaGhHZ3FvUGhxREdiK3dk
|
||||||
|
MlU3a2VEOEU2NU5MMUdFCi0+IHNzaC1lZDI1NTE5IENTTXloZyBRR3l3MG0xa0Jz
|
||||||
|
U09rcWFIL2lEaCtvalVHVWtsclFNQ1BkM2lDN3grV2pZCll4dmp6SVJMSlJscjQx
|
||||||
|
WXFNMFRZYTMwa000aG8vWGx6TDd2QjM3ZEpmckUKLT4gMEAjLWdyZWFzZSBJWE5f
|
||||||
|
VXQKcjEzR0ZJeWJab2d4K3duN0owL01pQ1hpeHB3NXBzWFBYbWRtCi0tLSB4VnJx
|
||||||
|
TjFnQW1hc1U1emlJM1lIUncxejNzZUxwM0F1TG1zZUR2ZlIvUTdjCt0GcLJkRjMT
|
||||||
|
C21Y89R2ob0cX8Th656sXau8Q2O/va78XNMKuYw7tFvk6ZBd4xd82vuy0SSxM+3f
|
||||||
|
3JTpbP7oexYsFDf5rg0tYVQbNvDU/sSyGzsLwIhiKNuyVavl268ptVGtYk+/oLOX
|
||||||
|
+uogoOsBzcdRL9aUHAsWWwaaVx5wZrGHBlF6eAUlCY6JlN3Ofxt+wOAVq0I/xy9x
|
||||||
|
iT7CO+qnCNJwH6e6kYY8GH0wXTCLDNmSver1yNUhtjt/T2qWcckRzkzLpt3wXpfU
|
||||||
|
x38Sgisk0XBVbtHwRnZjWlZqCGLGk8nIg50EPKUfn73eNSDl6o3F4jT2RpWv+yLv
|
||||||
|
TR4LjHI8wqlWsyKbMbE+5wb8mcI3EQ==
|
||||||
|
-----END AGE ENCRYPTED FILE-----
|
||||||
18
secrets/metabase-env.age
Normal file
18
secrets/metabase-env.age
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
-----BEGIN AGE ENCRYPTED FILE-----
|
||||||
|
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IFpoVnNlZyB0SVBW
|
||||||
|
L0g4M0o4NmlDb0lBd1cwV3pDVkR0M1ZVVy9uQUNIL0JRNmNIWWdBCng2NDU4cUxT
|
||||||
|
ODVlS21LNkhJUWRlQlUwYjA3QmhmN09QOTl4WW5heVFZbHMKLT4gc3NoLWVkMjU1
|
||||||
|
MTkgU3JIYXFBIGo1MGlnQ2tRbWYxYmFBNHoxRWpRUGR0eWkxMUJPb3hjUFdRNmhK
|
||||||
|
TXkyMU0KVXY4Zmd1M0pxcW1jbEFORkl2S0xkREx2NmxxV01QTHo1S0JkcTBRVmJw
|
||||||
|
NAotPiBzc2gtZWQyNTUxOSBsR3FWWmcgVFJUNlE5OVR5cXQvSHg2MjV6NDdsdXk2
|
||||||
|
YUpQVnRMbXRHUG8zYkRLNmxHMApNbG9rQUdjRldRRWk1NFRPcnZ0ZjRWbHFCRCta
|
||||||
|
TG1neE9BWEllWThmOXgwCi0+IHNzaC1lZDI1NTE5IENTTXloZyAzZTIreGNTb29R
|
||||||
|
UHoyNlpOeVAzWmpkdVFFMmJ0cldIaFhnRXM2dGVUaUFrCmZiYXFCZ2h6S0piYnM0
|
||||||
|
V2pBcDhYdWpJRTRxczJpMHNtb1ZKczJLajRDYU0KLT4gTjl5V0AtVi1ncmVhc2Ug
|
||||||
|
bj58L00qIEkgL0YldVpACjVzV2ErSUVPblVMK1UyamwyTldFQlZlTjBaeFEKLS0t
|
||||||
|
IGNQeTg4Rno0WE9HY0hjZk9kVDllM3JBYXdSeWtIUjhsUkliZThCdy9ObEEKwwAH
|
||||||
|
z3tGtuJPK3A17ix3VO+taqpfCj3gnmkqz/AvCc0QnUcWT4VYvq62bk7eJYG2YkNi
|
||||||
|
bW1uFgfi3+eBtbZ8IyP00NY2I9gaoQcT018sjSfJlAAjRg5I4FhDt52vklHUECWD
|
||||||
|
nV8gA1EZ6yYmcjaug82/esQ88riuEdhuS20K08/O7AczfMWmWR0gJCB4yJ/HQMy6
|
||||||
|
ljgvGwYcfl5J54b4g+CNz+cib6tfv8Uv2A==
|
||||||
|
-----END AGE ENCRYPTED FILE-----
|
||||||
15
secrets/n8n-db.age
Normal file
15
secrets/n8n-db.age
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
-----BEGIN AGE ENCRYPTED FILE-----
|
||||||
|
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IFpoVnNlZyBOUzJp
|
||||||
|
WWFXRkx5Tnl0QUR4UkVna3dqL0RkUDc4L2FML2ZONW1xdk9wbTJBClBrMGhETUxX
|
||||||
|
V3hNcWNSYm9xcmtTdzFndkZXUFBFSHgxTWc3WnR4WG9yd3MKLT4gc3NoLWVkMjU1
|
||||||
|
MTkgU3JIYXFBIFBHUlRUdTcyeHg5M29HZElJWVZUL1dUckZZUzJ1NWZBcnJCM3ZZ
|
||||||
|
cFBDQ1kKRm9hZEFwb2ZqciszVkZpbjlxeDRaVFN4WGh1Uk1uVTZjSUZHdVZlZTd4
|
||||||
|
YwotPiBzc2gtZWQyNTUxOSBsR3FWWmcgcHV3QmdPeWZPbmpOaVlkUElFbGVxNVZE
|
||||||
|
QVpZdUxzVzM3eDl3RVhoYmEyZwp5MkNxWDh1czhoNmVxWnNJdTNYeFlBV0VDYXNG
|
||||||
|
Z3V5ZDVuQ0Z2TlJRVmZJCi0+IHNzaC1lZDI1NTE5IENTTXloZyBrM1drcTA0YUdZ
|
||||||
|
WEx4S2xqRjlEN2s0enRTMVhIWEczTjgrY3VybjRTOURVCmEzQmVidTNwT2pJNE5Y
|
||||||
|
MjdKSmxrVisvcHREbnpiQnd5TFhWU3ZEYXVodDAKLT4gZlFLLWdyZWFzZSAjZyks
|
||||||
|
eSwgeFwKOWNUS1c2SkRVSlZ4Ci0tLSAyQ1FzV2htYmFJWFJHMXZSOEo2eHdWeWIx
|
||||||
|
eXNLZ1BwS1Z1WmFvLzhIL2ZVCiGw1Yk57rkI5NDZz9Vvz2K1+WlerYUOH/Bf6drc
|
||||||
|
bTQaToEAGH/KtwuLktMvmDyn
|
||||||
|
-----END AGE ENCRYPTED FILE-----
|
||||||
35
secrets/n8n-env-prm.age
Normal file
35
secrets/n8n-env-prm.age
Normal file
@@ -0,0 +1,35 @@
|
|||||||
|
-----BEGIN AGE ENCRYPTED FILE-----
|
||||||
|
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IFpoVnNlZyBBbzlJ
|
||||||
|
U0xXd2RyeVJXblFzeis1NTUvTitCZmxlYVMxbWhKNTlwTEgvOFdzCjFEa3FjTm96
|
||||||
|
TTdoWWIwV0lDZUcxbDJkQ2ZpK2t6aXJPNy9aZXQzbDkvYlkKLT4gc3NoLWVkMjU1
|
||||||
|
MTkgU3JIYXFBIEU4OEt0RlhUZlRlUzNTMlRCSDUwUkhUbG8vZG9NSUJ1Q3JxVm5T
|
||||||
|
WU1FMTQKS0huejlvdkFJLytRcUw5dU9XdnkyZUR6WHl2TkFtd1FobGxZUGduRXZU
|
||||||
|
SQotPiBzc2gtZWQyNTUxOSBsR3FWWmcgZW9ZZllzOU1EdmQySHBiRWM1L1dzcjgw
|
||||||
|
L3JhWVB3dnVHSFlydEZwNFlnbwp4eWRuTWRCci92SGE5V1hJT3NQZ1lsWkpkU1R1
|
||||||
|
cVJ4SjNLTUlONWNaMERzCi0+IHNzaC1lZDI1NTE5IENTTXloZyBSSis4MWhxR3JV
|
||||||
|
RGY4V0h0NUdYMDJzd0dqOFZzRnJ0RjZIbVYyYTNSWWlJClhhVWhiNzgrQlZQaDND
|
||||||
|
VTBMNlZKRFNsaSs1N3FsM0taRFVpZ01ha2l1alkKLT4gd3FhaWNcbV4tZ3JlYXNl
|
||||||
|
IDp0ZnAKZHlLcHJSOElYTEZFNmFxdDBQTU1XZnhTRXVDZiswanp3cnkzT0dzeSta
|
||||||
|
aFNTV0ZOUEpFYk1KYUVJSGU5NlV0SwpKUQotLS0gY011RXdUbmJrOTNzVmtNOUpJ
|
||||||
|
c01UOTl4OXZkLzBjTXl2NzNQNlNBT2ptRQp7QiUkXygzzq4vn+JyEikKiO5Tlp9H
|
||||||
|
QNYQGTLaWJpkY8afT04ux3/JiAKdkEpbQA8RPNbDlHc7YYQ04UMY3iKPnWTbZpLT
|
||||||
|
PaqTamseLzubX8vKdvJnD0QsEnuUxNSDu68FGW9MNDPrQDvM4A47hmHNX7bdFl1J
|
||||||
|
cE4oH0VAHdG1yg3lcTyaRYp+dfKIv2dpzpvnPLHB/IPdpaxFSn3YVerMXCMYelR5
|
||||||
|
otSBUyqf2iY0NyEqkBDYCmNiD5tRCUuwteeMMmpvUbXpzmnpDj6U0QM/R6C7BQPB
|
||||||
|
/K8cKE23SgxamvkMqK/blgTNlUcO8/KAJrkSGqeQ37m2RrCgUVB53tVaInSFi4ds
|
||||||
|
K1PL/CmVGFTF7DCOSTsX7CzyivG+Ii0asonyVlsbURMVbf5WhWWUxBMMEvY2AMSC
|
||||||
|
l1lHij3Qbc39IHY70mezkIuU1jlGtTrb0pmoymWfSSpiCTYKKky69y1mxRB6m1Ir
|
||||||
|
kfwI0ykG6mbyHG7FfHkzwCYI+5qmbdGs6VcaK5aIiCCwz0fd/MW7z3TnKW8gikaY
|
||||||
|
hOHK5Pmse5B/JMY3lG96G6cbT3vm1YVDmutRp5lFMwX7TmiCiYBIyTdaVkekbNzg
|
||||||
|
iPryKQKTlpDNlmpGr63O4+id+fU5Qa/d6ja92D01PzweeSxRPe0Uh9Ps42oOlGzS
|
||||||
|
9k9sKuXFVaeG5TiJIcV6rukmYEuYWo/kaFRK4bq6lYhxxhQEAcxGyprC2CHkFYHl
|
||||||
|
5slXn+l2XYX0X/iltWkH9H8BW/g9rBfUnZgPYHdx0MypOzPH+S4inomdCNJYytZ1
|
||||||
|
h5wu20m/pjxmc2yLSy/psTrwIDOft0b6NQjvVfU+74ZBV7rREcY5ymAFdioEAEyw
|
||||||
|
2QleXg9ihlkeg7GSgsvyPFgh/T1GysZdo8QatBbNOS/hiEidCiUpfyytHlf7ZM3V
|
||||||
|
nQmZDKt0HRs0pHfWwLAoT1yTp2pjr9BMSJ8KItR2L2pGo0EpgAGMG+p7ssbIt9VR
|
||||||
|
QhsIyYxDQyeKasxoyFogW28KnMySr4uKBHuYEk5ht6d7spv2u5y+/FxxhSZaHqgv
|
||||||
|
fvsqtFOuyHI8Exa9QsbyF3hp0JBmj1BWGYJGLZrjFm9TDQ/2y3bG9AJXuy4CDUgS
|
||||||
|
tFIIb1wAXJnd7ndomGDVr8kdcFlR65IKcZbTlzt/2hFxgxq7QQyVGyfAeqpNRp2U
|
||||||
|
512yBw98SKYxrcvV0nFxkUPzS1E0IEnxappsnaW+kN8XcdiAG+oOAM9PIoc/vQFc
|
||||||
|
1FNOvJhUTg5wCZFbfZkCbWWKP+hk4YhoFzw56m8pwlDwMQKkc9whKuCvXX5bSb0=
|
||||||
|
-----END AGE ENCRYPTED FILE-----
|
||||||
36
secrets/n8n-env.age
Normal file
36
secrets/n8n-env.age
Normal file
@@ -0,0 +1,36 @@
|
|||||||
|
-----BEGIN AGE ENCRYPTED FILE-----
|
||||||
|
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IFpoVnNlZyBhLzMr
|
||||||
|
K05GUnNuQndGa2JoSm5TT2ZpU3FOTTZ6aG9SdElHREVjQm5BRERRCjBwelhQTjBi
|
||||||
|
L1JXOXhSZ1BpNDhqdGRCV3dwNFFjbXdPSzNINXVFRU9ydzQKLT4gc3NoLWVkMjU1
|
||||||
|
MTkgU3JIYXFBIDFFd0xzbDhEOUNxdDdudVFLeU1yM2VqR3RwOHZFM2VQMmpHNStS
|
||||||
|
b21NQ1kKdUtHQU5qUHlLd1ZwNWxpZ1Y2ZVN0NVZVdXlvVUkwdEdPbkdPU0UvcTB0
|
||||||
|
MAotPiBzc2gtZWQyNTUxOSBsR3FWWmcgbE1KaFR5TmFnb1BKb3lKek5DdVNjZVk4
|
||||||
|
cmF4UjRpTDU4WFJVU21penlHMApUM0YwSnU0cVhVUS85ekpzT2Y1N3Q0Y1p6THZo
|
||||||
|
OE5hQWZYYVVEREg1a2d3Ci0+IHNzaC1lZDI1NTE5IENTTXloZyBRL2t4d0ZvNmxm
|
||||||
|
K2tDOS82WEZOZGxXa3RGdkZKSFliS0JzOEZiK3JqY0EwCm13N1VhMUIyK1VuZm5l
|
||||||
|
TjV5bDdLYXRDWGF6eDVOQ21zTTVLQ2hIem1vT3cKLT4gM18/Lnp8SS1ncmVhc2Ug
|
||||||
|
bmV+X24tbkogV3plb14KcEh4alk2V3U3ZitUZ3ZsTzJTbDdvb1VuM3JlL0FCZVl3
|
||||||
|
bTNCSDdkOVJTWDZMSGNqM200eEd6OWg0TS9VRWhYSwpIYlVEY1FWeTR4b25zTDZp
|
||||||
|
Uk1NCi0tLSBqOGFrOEVmbTY0N3pCM0kzVExBcXdYam85WVpGZXZVUk1YMU9pSTdD
|
||||||
|
NjhBCmMGbE45ce2jAoYuG+L27X0LDsJxOrydZqA/lZ9I21J+9LTIpLIDiMlr/n7C
|
||||||
|
FNOW39bbaPudck8b0THImIsuu+ylzMSpt3CVXdZIzaB4hRKctLRv4zRL/UkbfMsl
|
||||||
|
mPFcdxNPkqmZsABgTui6b5suxdB5aWFx4EYcDIAjokZFuLXHrbIYOYNWEWBA3tVn
|
||||||
|
ji1n8aVPw1keln8qmzYJiL9bjGxq3KB7NJEhzGrqDVcn0koXpynSJxz+dlw6jmO4
|
||||||
|
Nk+wych9gLOq6g9agDUXjpj4Q7l1cUmuAD+Xh5CPVJIV4xpjUDm+GCBLryFWcHdH
|
||||||
|
XC1MEnr/x5OuX0/XcPL7pRXvOjxAPgjSn/omisZtFNhBKzmNZZG2XLReyDJttXQ6
|
||||||
|
QoNXp8DhoaPBFES6fi6NvYE2KpjSoTjHFRuJuslpmPGPC3yOSXpJlwlUI9wC6TTh
|
||||||
|
8rXYvb3mxT90KJK9SoKvSUFN5/63N15IzD8PFc1A5lP1MAL+pPUF3vX89mUGKB92
|
||||||
|
+8uKs5RqhOFJSgYSqmdC10TUdg61WTsXlivbue6l54v+rfIKxaNAzxxFEvkYWIwP
|
||||||
|
Sl7tG7bwr+joqg2p4JnGc/nD4UU7zAwXIZGefmPMktpDple6JhsggvDy4FLebdpk
|
||||||
|
NTjTSsYCWTLymXcW+K+syibVc3jH6RFLW9n9rVmsVDHxSXFDOcPEdjEOS2RMOMdB
|
||||||
|
RdDJMfx330a6lXVjM1VhCotPnVQ9j51KjfIzsduXJ39xRremTGzEsbrY8a9dmVgO
|
||||||
|
T2++xCPnuH8oGqt77AozSLCUKfh2fKrUQRkuROwjRgBsx0KB2W6+lY3hNZzgvUq2
|
||||||
|
VLlZSLQApl1tR+bZE+OOZFOYw6s4CjEfBToL5ovwVIZFirLVHog1iWdDN5qc8MPy
|
||||||
|
7Lr18UWWEFJ6ceaCZEaFLvOeNa36emIeqwReIkUG3IGlU6CMcbGsCpDVPKI2CKFB
|
||||||
|
WRCuYFckOKcmmvlcHxdg46c18uwAHkSwVV6wEWPrw68jPTyYaYu7UEy4p0wVYhcS
|
||||||
|
cOiGqb8Nkc+xkBwF7zyvkiDWx9yWSBwJHz6pLQJ2kg6W+IdIxEKgv/VrbpuzoyE9
|
||||||
|
PJ4QVdz5/f4aGAmw/iSrIsl48gNoScUvxGZjrE0dqBj4yu+aEy7Xj8fST7XmyZgw
|
||||||
|
DRcOPowQD5hxdtkG63uesZvFSlNNfouoR4klRPoCkJBHNRrtIsmaPJiw+WZgr3hj
|
||||||
|
rf/MeswTbtwaFuCUM2AwrHCRTKqRenc5c9+jl7JNAB0sBnJhukumA4tK3v/8eXtK
|
||||||
|
y8wGLyS6WAgK0pptoY7ntcz7djhlyYg=
|
||||||
|
-----END AGE ENCRYPTED FILE-----
|
||||||
16
secrets/netbird-auth-secret.age
Normal file
16
secrets/netbird-auth-secret.age
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
-----BEGIN AGE ENCRYPTED FILE-----
|
||||||
|
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IFpoVnNlZyBTN3lq
|
||||||
|
L3FlNGlnQUc4ZVkySzlpaG1lbTM5WlhvNDFBUDVrS1Y0Y284N3lFCmJXREpYd1Q0
|
||||||
|
QkljSjRjRlVjV0NtU1RQN2d3bHcybzRsbi80clI5Zi9MYVEKLT4gc3NoLWVkMjU1
|
||||||
|
MTkgU3JIYXFBIFpWeEdJQlpFUVBiQmNSZGlydnQxbk94UmVvTWd2K2ZxQjQ0SllU
|
||||||
|
QXcyRVkKL0lmdzFGdDVQdWxBbmNFaGRsNW01N2ExaG5tK2dhVDdTM1hhdlFOb2FK
|
||||||
|
cwotPiBzc2gtZWQyNTUxOSBsR3FWWmcgZURGdjg1R2VJTnJqTlRYeWdVS2xnTUJp
|
||||||
|
TWp6R2ZjNkdwNElTeFJ1ZG8ySQp3UFltbExRb1EvYXdoMStqaTVFV0liNkJlYmow
|
||||||
|
bVhyRGRFbFFjdW4rUGpNCi0+IHNzaC1lZDI1NTE5IENTTXloZyBFTVhieW5TYTZz
|
||||||
|
OERHc2RYbFBoQnJIQlBTVmlXWnUwTjZsSTJBTjhndHkwCllSTjlHckxMZURtR1pq
|
||||||
|
RzF0blJRNmJXazNITFRTZXR1anBiUkhaWmcyYzAKLT4gK2UtZ3JlYXNlIHUnIEkg
|
||||||
|
Rgp6T09qb2FNWlNnNk9ESG1VakFaeUZpWGRabnR6Ci0tLSBNcmlHY1JSMkdzaUhx
|
||||||
|
cjlVNm1xdE9BVk5tTVFGamNQc3VYeXBMbmcxcFZ3Cpwa49J3NyyWv60TgFKXkXiY
|
||||||
|
vN8zmVgsbyD+WWGrTgkZz3GAhZbixmwT3AYlZrg0WSbOIFChi4awfCAnPd64NnYs
|
||||||
|
cWkoutlG6f2SMWVa
|
||||||
|
-----END AGE ENCRYPTED FILE-----
|
||||||
25
secrets/netbird-dashboard-env.age
Normal file
25
secrets/netbird-dashboard-env.age
Normal file
@@ -0,0 +1,25 @@
|
|||||||
|
-----BEGIN AGE ENCRYPTED FILE-----
|
||||||
|
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IFpoVnNlZyBZNW5E
|
||||||
|
TkNEM0lrSkJGbWZER2pUbk5QN2FBOWduejU3Vjc2TU9lZ2dCcjNvCjBwWGNHVmNZ
|
||||||
|
eU4wWVk5YUNMWDdkMTVIdEZVYlBnLy9Zd2JGU0lZWUJGNGMKLT4gc3NoLWVkMjU1
|
||||||
|
MTkgU3JIYXFBIHdrZndQdFNLQjFkMUFBT1NyZkJqYWM1SEtrYTI2TUdtUVQxVFk4
|
||||||
|
Uy93RDAKNHVLdnJLc0t5N25kd2kxZEg1WncxU2hrREdPM1I3anBkczhET2g3dXF6
|
||||||
|
ZwotPiBzc2gtZWQyNTUxOSBsR3FWWmcgOUVsajNrNkQ1RGdOeXdzdk9tNkZzUG1M
|
||||||
|
bUFSZFdmVy9iWFpnTzZjWncycwpma3dUK1BwOUVyMTFGM1R5YjByK1duZmlRWHBx
|
||||||
|
aHByeXlIK2dBY0JuVVBBCi0+IHNzaC1lZDI1NTE5IENTTXloZyBydzNidUlXZEU3
|
||||||
|
R0NPc2FmeVhmSUhaNXlPdW9FUnpaam81dkRSamxsYjFFCnRMSlY4Y1Q4eUxWOFY0
|
||||||
|
dnZZQVhrRFFTRll6U2hvRG5FenROWUtUMmMya0UKLT4gZ346RS1ncmVhc2UgIzpS
|
||||||
|
dSVPIGFgcDoKKzA2K091SERpQ0ZPNVFRVEl3SkoxUFFDbnFLdmNrS1NzRXVGTUJr
|
||||||
|
T2NWbnQwRW51cXcKLS0tIGtBQm1zNGhINk9pMXVMajFBNUFlM0pNNEpKSi9WUjEw
|
||||||
|
QmJxN0xONk0ycjgK/rP65jS9PAVr7E1IFR4+vOiP2qp1lYKBWQopIchhb0EFq45k
|
||||||
|
XjTUoQFq8x+lob74gj4LxnE3jGuyxbyxR6BbfjwyGKizO9q+M9a4XH4HbDxeAvTJ
|
||||||
|
RNCUH0w2XyJgSM6aEJT6Mb6iNJRXRephhyzR2fYyrzdQ968yLZNkYybrezyv4gYB
|
||||||
|
EfEBvRd6bfmxxPPcRmK3rJeOWd0naphR2u4K0KJDtaTjArD32WBsAimCyoEGqlSp
|
||||||
|
7lJVr4yFovCYEYjPozkLzc/f9coV/LKG31Yf5QW87V/HbPO9EHcq4MdbvKvi4xA5
|
||||||
|
qFuVDeX64bFq2ATm7n1kWlnAKut+xhYK0wBNSu3ewsuIlWyrytVKOAestiDlFGSP
|
||||||
|
iet2nYj8rVKv1ZNx6rvUAZm1C59MOQzGDdRkWfAhyL3/5K6WwLFSytubX+CmHduB
|
||||||
|
8VqFEt9LGtAW2PeSmCNmlJR5D2LNJmrzLshEJVkuAs088CKbRv3cc5GVGIEf9BHG
|
||||||
|
H6lWAO7Dp3ijdiOHr4JdFQna9jqsjBhOFaMprt/lI47kETCLvDpnUlc/Jm8X/nOK
|
||||||
|
NrhU9YyRvx2QZNXZCWQ5cW/6XwXi7QEx/ln3ezh4Mv//ZHAHmJrI2dDs2D6a0BQq
|
||||||
|
t6VlZFj0eGXqfRoZqpPH6hxCQLmhlVI+vXnwglBGk4hQPd1i2A==
|
||||||
|
-----END AGE ENCRYPTED FILE-----
|
||||||
16
secrets/netbird-db-password.age
Normal file
16
secrets/netbird-db-password.age
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
-----BEGIN AGE ENCRYPTED FILE-----
|
||||||
|
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IFpoVnNlZyA1UHBB
|
||||||
|
ZCtta1llMERjQ3pWWnJZWk9sbDYzbE1qTlJ3RGRMNkN5eTI2MlhZCkUzVDl2ZkJD
|
||||||
|
UnRaenQydFZvcHJicjlXc2N1cVJRL0VqeGlabFRMckVsUFkKLT4gc3NoLWVkMjU1
|
||||||
|
MTkgU3JIYXFBIEw1NWJPalpaSFdqTE9QYXh0TWV4eG9ydGZ3a1VIMTliTzFNVGNy
|
||||||
|
K0YyQWMKTFlCcndISDFQT2RPWHVNREYxRFJnL1IxRXFVWGxSdzNYVS9wczFGZ3pm
|
||||||
|
NAotPiBzc2gtZWQyNTUxOSBsR3FWWmcgRllZbkhLb2Nrcm1QcitSVE8xZkNnSHhj
|
||||||
|
eUFrY0E2RGRqWk4vTXZzdWZFcwp1T0w0TFJiRmVaNWhYVDBFakFuQllqSGUwN3Mw
|
||||||
|
NUhydWNkWXV4M0pURnh3Ci0+IHNzaC1lZDI1NTE5IENTTXloZyBOVzZqNHIxR25B
|
||||||
|
TUYvdkdjMSs0ckdrWHk1NkdjeGlTTy9mVFZPTXhTVWdnCkpPSExkZHdNVFRUaVgr
|
||||||
|
NVZpeDRrTGcvY2xwMHROa3d4d3VGVHBUZTErR28KLT4gISJsWG5xLWdyZWFzZSBH
|
||||||
|
TXgxIFxyKCcKUGxuZTVCNll3aVFSbU9XVzRhOHZjWXBBVnE0a3hHbk5MY0J0RlFl
|
||||||
|
dm9hT1VsOWdjM21tdEZGZGtKdE1YSmt0aApNMzBaTkZxQ3pPUW1HMDgKLS0tIHMv
|
||||||
|
Q1dZczNWWEpnb08wdU5yOHZCZWZxYnB5RHQvc1BMVVBocklIZkdpTjAKFU29fabQ
|
||||||
|
zrltjK2cFcSdV9f/LLq+/Hm/0HW2Op11Vs/Btg5NK/yS+AW5+AnAp3s=
|
||||||
|
-----END AGE ENCRYPTED FILE-----
|
||||||
16
secrets/netbird-encryption-key.age
Normal file
16
secrets/netbird-encryption-key.age
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
-----BEGIN AGE ENCRYPTED FILE-----
|
||||||
|
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IFpoVnNlZyA3anBt
|
||||||
|
VEN6R21MenhIZm00MklYS2dNaHFYYWhTQmFHSk5BMHFLbzQvWjJVCkNKaUxrdi96
|
||||||
|
M3VVV3k4dmRHd3BjMm02bUVDUFl4bmE1R0hKVXJ4Q1YydncKLT4gc3NoLWVkMjU1
|
||||||
|
MTkgU3JIYXFBIGU3QTFQS0VsYmpGSFlUNjhNTlA1TkJHY0wwNXhCenhwdmg2WjJu
|
||||||
|
dTk4eDQKL3FLL1gyOUJ1TjhGaFBLNGZFZXpHdzBZdUcyTHBDSkpxQWtHai9uUFRz
|
||||||
|
MAotPiBzc2gtZWQyNTUxOSBsR3FWWmcgOWdNbXBGcTZ6eVdXZUw2ZkZIM0xZanhi
|
||||||
|
MHIyZTA2aU1YQkdaL2IvUDBUVQpvSElFNWFKSXN4UzZWZkt2WlhtK1NYcFJHYTFq
|
||||||
|
NzZHRTVwWitPOUdWNURNCi0+IHNzaC1lZDI1NTE5IENTTXloZyBCMzVxczU0RFJE
|
||||||
|
SmhlS3h4OXRTWityMkp4SnhMN1NYdm9tYzRtUjhBVms0Ci9sMWtTYzgrblZPMUlJ
|
||||||
|
dG4reitkdTJlU1FFUExrQWNpbk9ITzFkdnhaZkkKLT4gJC1ncmVhc2UgeyFhIFUg
|
||||||
|
eUwueTEiQy4gN2hLPmIKRFB6cG83R0dBOXZkeFF6SmN1QW9zdHVoCi0tLSArcGtW
|
||||||
|
M1l6MlRyYlVUOFdqOUd0NTFWckE3b1YyQkdvZ1BYSDZ5S1BpVDh3Crt0Cq8Rs/JG
|
||||||
|
ocaVzmIsjZRfvk/Z0RYzSOtrdN9aLEn/XZ88qghD8poRMicQaxm3Jxpt6mhMPS7N
|
||||||
|
FBhRO1mDN3hdyfTh6Wr1eM4tfh0y
|
||||||
|
-----END AGE ENCRYPTED FILE-----
|
||||||
18
secrets/netbird-proxy-env.age
Normal file
18
secrets/netbird-proxy-env.age
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
-----BEGIN AGE ENCRYPTED FILE-----
|
||||||
|
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IFpoVnNlZyB6Qkh2
|
||||||
|
eENEdjVZMjFRbHA4UGplU2FObkg4ZHBCOWkwTXBsKy9ways0aFdVCkhqYXBaTDRY
|
||||||
|
NS9KY1FKcjV6SlZjbFhCV2p4Y3ZXVWdFZy9FR2FzNVlBR28KLT4gc3NoLWVkMjU1
|
||||||
|
MTkgU3JIYXFBIENMTVJCdkpQZ25LSC9nU1dqK1Z2WnpHZ0tSZ25lT0tKVDNqeEow
|
||||||
|
UmJHQmsKL3NaN01sRDhqbE00cTJIOTIwVTgzeUZtbkt4Zi9iLzIvblFENFcyblNC
|
||||||
|
ZwotPiBzc2gtZWQyNTUxOSBsR3FWWmcgeUIweTlXY2J4MzR6YnVmMXoxQ1piNlcv
|
||||||
|
Lzd5MUlTQUljeTBQc0hJbzlUcwpYQlhMcG5uNCtKcmZEc1FyeHJONVp1N3NLZ085
|
||||||
|
N1NIK05iV21kdXZUZVMwCi0+IHNzaC1lZDI1NTE5IENTTXloZyBRaDdQOERuZnR3
|
||||||
|
eXlkSmZwUlpOVmJLSnUwSzZyS0ZMYmtKdFk3RWt2TkM4CkJxMUVrcHVMcXlES2d3
|
||||||
|
VlhnRUtLRGpiMmNhRVdSbklValNmemZwS05hY1UKLT4gMHY0RVo0Jy1ncmVhc2Ug
|
||||||
|
XitpLSBFSkluR3YgLTBHfVY0dXMgcUkKTzh2RzJjck9vaURXUnlCdzVQelB3RTEy
|
||||||
|
aU9OaEowL1JPOFhoWEo4MCtPdkJOaXJnTXdjdW5OMVMKLS0tIFM1U0YwcjEyejlK
|
||||||
|
L3R0NlFVR2o4SUg3cVp0VGJHSGNMSXZiZzZjdXYyM2sKP4P1QxABPu65mR1VQeym
|
||||||
|
poM/S0TLXiOffDZnRgu3lg/sZ6oWPNiUC9h4e58ZGPo7spMTFfU6OpdZ1sU98OFM
|
||||||
|
VebDFdBbWRrthaAYklbAa236hXLVkxPDWT4E6iaid8Sys9xBNrDhDJ+XYWeMX4FA
|
||||||
|
4NF2/payDqijP3ZtHPDXrDEJRHnhX6yzLIxDBPIm6af9
|
||||||
|
-----END AGE ENCRYPTED FILE-----
|
||||||
18
secrets/netbird-server-env.age
Normal file
18
secrets/netbird-server-env.age
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
-----BEGIN AGE ENCRYPTED FILE-----
|
||||||
|
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IFpoVnNlZyB4QmJM
|
||||||
|
R0wzRnBEUUdKMEpnMEZ4Y3hDS3FHbzVCSUpIeVJ6a21xd0ZrRzJVClVma2RBK1hV
|
||||||
|
djZTVWx2TDdkWmFWMzlKN01yTmgrbnRuYmF3cjA5VXZDakkKLT4gc3NoLWVkMjU1
|
||||||
|
MTkgU3JIYXFBIEU1Rm9Kam8zZFZaT0pQSXJ0VzV4NWdSUytZVnhGMEV3a3NweTRs
|
||||||
|
Zk4vR0kKZ0FldCtML0o3b2J4Zm9xMWtzTHMvTEhMQjd3SENXSWNEVFBHTmxnMFpo
|
||||||
|
ZwotPiBzc2gtZWQyNTUxOSBsR3FWWmcgZG1OTTVza0VkVDRuR3Y5K1czZnJScTg3
|
||||||
|
NDN3WTVoVXFsTkI5N2ZkK3B5OApQbUtiYWZycW5pN2pzcitQN1F0eXZmUk5Ua29p
|
||||||
|
aUVoOHpRUGRXUjBTVWV3Ci0+IHNzaC1lZDI1NTE5IENTTXloZyBsa0lzelhFaU1w
|
||||||
|
MzBjUHVub1g5cmZJNzZTSElMSUU1VHJWNTA0TEg0R0RjCmlyYmduTnRmK0tQbDNx
|
||||||
|
YndaVzQ0bmwvSTF4QTJlNnJ4ckowT2pRd09rYnMKLT4gen1BLWdyZWFzZSBWSSFS
|
||||||
|
bTAgTkBqCnpPakZESmg0WnBTR3ZPaXh2MXpHR1VvQ3M5OGJ0QUVlWjdrcFRjNWlP
|
||||||
|
UFMrd0Q4RUdET2QyaE9SeEdKV0gvK2IKUWZDNmVSNExaQQotLS0gV0txT1RnNVFK
|
||||||
|
K0FuSGU4VVBtRzVaY05XSzQ2KzNrZkx2eEpjV05WU3Z1bwoYtiMOoy3cJVJ+zRC1
|
||||||
|
HQpg0VrPumvAgU96Ql5BOHeQewJGWPLehNlQcdd6MMsmbAqHgr9HO8OV1Q2VL3U0
|
||||||
|
h7y0stLCoKXaMwsFBCL+HBvRtEG+/b7r0nW9IRYmhMZ8l2/yTjZQ2hupVAor+FEF
|
||||||
|
LXeQe0+QaQrXlWgbzJsmOpG2i/LyVnTQ29el
|
||||||
|
-----END AGE ENCRYPTED FILE-----
|
||||||
21
secrets/outline-env.age
Normal file
21
secrets/outline-env.age
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
-----BEGIN AGE ENCRYPTED FILE-----
|
||||||
|
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IFpoVnNlZyBFV3NC
|
||||||
|
NWV3bmw3bHZaUlVHdC9GekJSazJIUVVOb2xlY091emloT1JTblVNCmo5Y3BmZnlC
|
||||||
|
TkFzaDBUSUNuVjAwaWV3UVhJdkorbllLR3lyaFRrTlhvY2sKLT4gc3NoLWVkMjU1
|
||||||
|
MTkgU3JIYXFBIEtvRHdHV1UxZDI0L0xQODdaR1l4dkVYcHBzM09ReDVXckdDQVV5
|
||||||
|
ekdWSHMKWVBYOU92Z29ZSnZ6WElNdzMrOUpyRFFEaHRPZE40NXF0VGFCOUY5bUp3
|
||||||
|
UQotPiBzc2gtZWQyNTUxOSBsR3FWWmcgQlROOFE1VFoxaHY1NDRhTCsrOTZJTGt1
|
||||||
|
TUlQKzR1LzZwb2hLamVtZHpWTQo2cUNnR2xJaXgzR25HcHRPWlRrb1ZmUlhwbWJv
|
||||||
|
TkJLRGg5SUpLZk1ZQzBZCi0+IHNzaC1lZDI1NTE5IENTTXloZyBlKzZ4MEZyNnk2
|
||||||
|
aVJIRjdOYXB0WTBITFVYM29tUTV1aXlyRFRQWTdsODNNCm8veUJEVW9ZU0JWRTFJ
|
||||||
|
WHNJbVJtOHB1MFJNUkhUU2krTXRWUjM0Zi9zMkUKLT4gfTwtZ3JlYXNlIER9Cnho
|
||||||
|
N1FlWGpKUGN5enZrNU93ZDJ3cUNrWW9NUjVBOFJUCi0tLSBod0pwaEJnQ05iSnE3
|
||||||
|
aGVqSnllMEpOcHgzd2wrNWl2Z1BHT1ZJNVozemh3CovsqvKiGIKS3b17xCLpmp8w
|
||||||
|
Pd55k0Qgovl1EHbcFjrdKmcDvFjmOaQlNOl1zfqxb88u9AkPtpNZzdxOa0E+YdM/
|
||||||
|
keofxFjI7sXerNEV64QZY2yle6odUpzq9CRS8SVdTFcibvCsKWiJbWYVZNWH5kah
|
||||||
|
iyfnmjnFiWQCZCbkpImw4qSALE6NQw+uM99qv4dG0wm4VZ2t042WAsPuiFGfg9Z4
|
||||||
|
bvuq/1PAxiTMxUpnddNFhTBR7/3aAb6uzbLOMCANVDPtnyTRANapCoS+2MY/7TGz
|
||||||
|
lzf2157ekRefOYc4wzZKZJZuqDBO2D2XO5LZx55NbLWIBfOvKnAFSrgfEF80D4/I
|
||||||
|
gpWiQrhoeBL8gJCo9XoSvuHqsXiE7JFAj7OSSzkSAVraoLyfdU7J5iLmEYrnoBwn
|
||||||
|
ld/EZIdIY4XO/FH/XkpBQ71Wt08f0LPtowUXEeRc5D9FkTOdLjoX7DGEl3Q5ww==
|
||||||
|
-----END AGE ENCRYPTED FILE-----
|
||||||
18
secrets/outline-key.age
Normal file
18
secrets/outline-key.age
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
-----BEGIN AGE ENCRYPTED FILE-----
|
||||||
|
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IFpoVnNlZyBNaW4v
|
||||||
|
L1hjc1FtN25BYVpEMFpaSVlwcko4UkZ1N081QXJrWTZsb1NyeWdVClg4SzdTMTlY
|
||||||
|
T05xQUk2VmJoMDFzRmxwajdmYmloRThRY0ZsbVZENU4yYXcKLT4gc3NoLWVkMjU1
|
||||||
|
MTkgU3JIYXFBIGdyVlhuQk4rb2hJUTQ0NGg1clF1ckpMM0NmMnpOQmxnNlJRb1kx
|
||||||
|
OWtWMzgKMmZiOW9KMUUrSTdJRVdZVkxERXBXb2lPM2htM0syUVlvM0s5WDBqSnJE
|
||||||
|
awotPiBzc2gtZWQyNTUxOSBsR3FWWmcgY2QrR20xcmdGczBucWg1MXBOVjdhclFa
|
||||||
|
eGkyVjRwSGxMTjdJUEFDL0FUZwp0OEVKaVFqVm9YK3p4U1BlUmxTTmhLT3RVYVZk
|
||||||
|
eEtpU1VkT3RvZEw4WEZjCi0+IHNzaC1lZDI1NTE5IENTTXloZyB5M1lqYnJ0Vzdy
|
||||||
|
R0JsUlJWQjBpUmZtcVV6cFViNDZVZTBTMzRFbGVwNWpFCkJIcmFiT1lDN2xmNUdh
|
||||||
|
UFh4TTlhcUI1KzQ4MHdXSjBIN1RwbzV1MEtlejAKLT4gIi1ncmVhc2UgUistNiAp
|
||||||
|
c1JKRSYuVyA3WEFSZHMgQj1eYwpscGpWSHBVT08xdUJ0WHd6dUJ2OVpSam9VK29T
|
||||||
|
NG5lMXJBQXN1MzdLTnlTUmdreDFteVk1Q0tWU1dXaDRSQmlmCnh1QWJWelhFaGFF
|
||||||
|
UHJaRWFaUER3RW1IQnhQbzNZNU5jMXFUSG9IVjlSaUM5blE0K1IvK3MyUlhyOEFD
|
||||||
|
UmU1ZwotLS0gUS9UMGMrSkp1eHE1ZXdvK2NuS1VuRWVJcjcrTUVxYWdtT0xsM1ht
|
||||||
|
NGwzMAp+/8ljDP/BuXO0W79ytfqeShojmbsE3+myF0wWp+aHmRUBdV/99qAzKaOM
|
||||||
|
oKAxwVXtsAOlFESNk/Onrr2q0gO/KSMHlE/WCHyc+oQ8HWk=
|
||||||
|
-----END AGE ENCRYPTED FILE-----
|
||||||
17
secrets/pgadmin-pw.age
Normal file
17
secrets/pgadmin-pw.age
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
-----BEGIN AGE ENCRYPTED FILE-----
|
||||||
|
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IFpoVnNlZyBLNnNn
|
||||||
|
TVNDbFp1WWVHS0J1YVJtZVpYSkdmQmRsdVl6QklJSjgwMXJPT1ZVCllvRHdIc1Na
|
||||||
|
Z1VqN1dISVY4MlNWcURmWEJiTjN3Q0hHT0YrSlAyMFd0YWMKLT4gc3NoLWVkMjU1
|
||||||
|
MTkgU3JIYXFBIGJ1V3o5bkFRbHlxTE45OEhjejEwR05PTzhtS1RDVCt0bG1MbVdh
|
||||||
|
Rm1zaWcKZjl4aUJpdXdGNGQvc3llNkVwTHdxZ0hYRlpqd29iSS9SMlBNNHFQRlk0
|
||||||
|
UQotPiBzc2gtZWQyNTUxOSBsR3FWWmcgYVhmajRITVo3RHd3WVNhejRZcDA5UlNj
|
||||||
|
UzBrMURzQ0dkNmEwL3BNejJGUQo3MnZDczVCMjhCMm1JL0I1SjMxQ1dlVjFuTGdJ
|
||||||
|
Qk0xcEk1WTZvWjZWbFRrCi0+IHNzaC1lZDI1NTE5IENTTXloZyA1amRvUFFHNDFq
|
||||||
|
YlB3MktrMEJwdjYweXRYL2JvNURhMFBoWWFTL2IwZlVnCkVTV0c1MytnRTRwWUZ6
|
||||||
|
cUNYRGhpVnJYTUczRzcvdTZrVVgxRG5CZWI1OHMKLT4gcy8wPS1ncmVhc2UgVGJf
|
||||||
|
dmd4WSB3YiFECkg4UkN2N3QySXY4YzlUWXJ1S3o5Z0lHRzM5dkc1S0UxczVmSk1S
|
||||||
|
VkZWeFpHcWt3ck9SbXAzL0RnY0sxYzRqWEEKanVzbjRONlJzMDJZYmpSQXRsc1lI
|
||||||
|
eGNLRDF2ald0akdpUzVRMENtdlMvSG0KLS0tIGFGUFUvNUZzRUw0NEF4TUgzT2xG
|
||||||
|
YldCNzBWSUNIUjZROHgweFlrS0U2OFEKZ77eC2qmlp7GA4idRyw3Czky/xuEN33d
|
||||||
|
iIFQUU99qo0sWlnm8WE6AH+F+oIu+4ik0wWAOF0g
|
||||||
|
-----END AGE ENCRYPTED FILE-----
|
||||||
16
secrets/ref-key.age
Normal file
16
secrets/ref-key.age
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
-----BEGIN AGE ENCRYPTED FILE-----
|
||||||
|
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IFpoVnNlZyBaT0Mx
|
||||||
|
MVdUU3BsakFkR05Mc0NObG5OejhqVTNGS2FpZU9objhITWFDaUhFCm9remwrUlZs
|
||||||
|
VnNjYllXNFlDWnJmYzl2VWFQaEpEcjZJYVd2WmlRL0h0NDQKLT4gc3NoLWVkMjU1
|
||||||
|
MTkgU3JIYXFBIGNPc1FzMnNFalhHbmV4eDkrR1N6WmlJMUtlUTZBOE5jMU5iUE9t
|
||||||
|
cUNZVHcKY2JhbmVQRWdjdHUyaWsxdUdHN0VCcW9pcWlJa3VLMWZyWDZ2M1RDNjhv
|
||||||
|
NAotPiBzc2gtZWQyNTUxOSBsR3FWWmcgQm5TVkhSWFFNVzBNVElTRDVVakpaZ1RP
|
||||||
|
NGQrREV2eldjTkRKQ2tPd1VYSQpPNjErbmovUTYzZ3VSOStVUSsvNXhmRFhNS0FT
|
||||||
|
bkZEUFp0NXNoWDQvQTVRCi0+IHNzaC1lZDI1NTE5IENTTXloZyA0dlRDYWQxQWZo
|
||||||
|
eW00NEtmTUNTeVVFQ2psMmV0b2h5VGI1bldNK0NVU0EwCjFjMmR5VWZXcG9UUFBv
|
||||||
|
Z2Y1eTdvM2tvNHRoSW9hNnJzQytXTFd5M0lNZUkKLT4gbSctZ3JlYXNlIGJfLi4g
|
||||||
|
SkB9USE4J0IKUE9nNFgwdkpnYjhNYi9ERW1ONUpZaVE2YUVYUUJ6TmljNWtDdG9x
|
||||||
|
NEl5MXhIb2FLWHY3Wm5KOXdGRXhhV0E1eQpvU25BNnUzbQotLS0gdEdjd1orKyty
|
||||||
|
MnNuaFduVTJWdTU4WHBtWVZJcHZQMzhUUkdhKzNLTEVVMAqjeXkWDCOkjkDx1h/s
|
||||||
|
YvIT2+Hp0ovVICvcvtWDR+ANKqn/fcHSf4cj8Gjx0bUgNtdPSk/q4tCq61U=
|
||||||
|
-----END AGE ENCRYPTED FILE-----
|
||||||
53
secrets/server.crt.age
Normal file
53
secrets/server.crt.age
Normal file
@@ -0,0 +1,53 @@
|
|||||||
|
-----BEGIN AGE ENCRYPTED FILE-----
|
||||||
|
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IFpoVnNlZyBxcGkr
|
||||||
|
bmpoNGVOR1IybjRCNlF1dk5iVjByM0lHS3JGNU93K003d0hMdWhrClIxZ3FqaVlK
|
||||||
|
MDh0UEdHQ2lGbktNODkxMExrdFNWZ3ZlNGNKUHp5TVFlMjAKLT4gc3NoLWVkMjU1
|
||||||
|
MTkgU3JIYXFBIGFPT05CQzEwaHZKQWdPVkgvZDlpc3AzVW5XM1hJd0ZWT0RXb0RI
|
||||||
|
clRMakEKNGphYUg3Z00rZXQzVUlvbm8wb25Oc3YwWExBTWdYU284cU9IYUpVZ3VP
|
||||||
|
OAotPiBzc2gtZWQyNTUxOSBsR3FWWmcgK2VSYytURExtOHJhMDAzakdVYTV2Q01P
|
||||||
|
QWNYRE5XTVcwODBpZmRDeWEyVQpSckRTS0NBaUpTU1RCcTJVdmwxekNzcTB6TzZs
|
||||||
|
U2hUeTFUc3kvSW9pcXdRCi0+IHNzaC1lZDI1NTE5IENTTXloZyBPSEhSU05ac1h4
|
||||||
|
WHVWUk01U3NJV2ZHK0h6VlJHeFo2a1MzNVNRcG1wNWgwCks0UFBiWHE2SEV3MjB2
|
||||||
|
Vks1TFQzbDJzWTlxUXh4bHF1RkpmR0poT3MvZGMKLT4gbTI5LS1ncmVhc2UgdSBr
|
||||||
|
Q2ogJVUjektuIG44NApwWXcKLS0tIEQvZ3ViKzdWN3YxVDRxaC9OKzBUT3FNck5r
|
||||||
|
akJlRzBwMFY3eUhzMlpiM0EKx1a4jRv5B/jeVRuGyTy1ALemEBaQRms+s3x2TNuD
|
||||||
|
Abg9qjy6cEljUFh21/k2jEKKplcXRb4wZCtfu7SFca0fHpfjqmv8AzG1JzqWBrDi
|
||||||
|
xVTUjHeld3YNm9xqdFVB7gWbRasu4SZ0MJK+mxkBgQLosfQHh19HYmn5ItaiF9+Q
|
||||||
|
5r2uuntW29nVO2c7eCGa//aAk7dAjNxZ+KCqiaPzMg/JhQgIP6Owyd8H6tBKVKR5
|
||||||
|
dlKJv/lttl8F8A9nHyOueRMxR63vROgR/fK0vKRezbzaoXpWd/Ojl63YH1k9+v7a
|
||||||
|
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
|
||||||
|
CMVomA==
|
||||||
|
-----END AGE ENCRYPTED FILE-----
|
||||||
83
secrets/server.key.age
Normal file
83
secrets/server.key.age
Normal file
@@ -0,0 +1,83 @@
|
|||||||
|
-----BEGIN AGE ENCRYPTED FILE-----
|
||||||
|
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IFpoVnNlZyBMTUR5
|
||||||
|
bFVQRzZpYXpsd3Z6emY3bDBnTXZPYjUvMFVSWlRYaXBuWTNGWEFzCk5nKzhzZDh2
|
||||||
|
YitvUWVsbnFZZ2tBMnV2T3RqUXR3UGVycDc2SXlmUXExcjAKLT4gc3NoLWVkMjU1
|
||||||
|
MTkgU3JIYXFBIGxaT1gvcS9uZWZmTGlQKzVjbGlDZ0kxckhVZVhFOVVpckRqdjBz
|
||||||
|
WEZzV3cKT05RYnVwY1QyWE55K0I4RGxQVFZaczVVWkxBV1VsVzFzQVBXOU82OFgv
|
||||||
|
VQotPiBzc2gtZWQyNTUxOSBsR3FWWmcgTG5hNktnNXlGUUpuNGFPQjAyNHdTdzZE
|
||||||
|
V3M2VTNJQXRtbmN5Q0NQOFAzYwpuVmtjR3dNQU9td3ZQM09SRlo4czhjcVVSTFJY
|
||||||
|
WHNudzkzcVRTVVlxYjlnCi0+IHNzaC1lZDI1NTE5IENTTXloZyBqRVJXazI4dUEw
|
||||||
|
UG84bUwvUVpRMXl2YUozUnJyRjFvc0VaWEU4VkdBNWt3Cml1L1ZXdWVFM3VXMjFT
|
||||||
|
ak9sQWVBZE1wL3BaM1NLL0Zzelg0c1Mxd2xmeXcKLT4gVHItZ3JlYXNlIDNjdzZA
|
||||||
|
cC9+IE5JCk00ZjFTa2JNRkV4c1A5QjE1SDJDRi9YbzBhMzBiY3RrRVEKLS0tIGtP
|
||||||
|
a25JRmMycHR4aVhIdnZWVUFKeWE0R3dza0dtSWZadkk4NnROZEJ2b3MK/bcPydJe
|
||||||
|
F8igxyn5G35RIxnurUh27uRHG3vvAUUv7eOIdtdjCP4oEy9yMmCGhTIcPdud4roA
|
||||||
|
ChpKOEnFzbjXp7VqiNsFYMPwA8In96gSAjxF2a555geICnYN1XioqgYPefOKCFlb
|
||||||
|
p5jigZ170etOUY4ZptG6jXeZaBsvWxyv3ZxOkBBOyTPAMbPV+qnceQJFFcJaZDx9
|
||||||
|
yMMXWFRsvvma1N3TMVxj6ELWbhFsxYzrc+aWA9TlZuT43ojRMb+D31jD0IvoEm56
|
||||||
|
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
|
||||||
|
-----END AGE ENCRYPTED FILE-----
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user