fix(caddy): switch dns provider from hetzner to cloudflare across all services
This commit is contained in:
@@ -4,31 +4,31 @@
|
|||||||
...
|
...
|
||||||
}: {
|
}: {
|
||||||
sops = {
|
sops = {
|
||||||
secrets."hetzner/api_key".owner = config.services.caddy.user;
|
secrets."cloudflare/api_key".owner = config.services.caddy.user;
|
||||||
templates = {
|
templates = {
|
||||||
"HETZNER_API_KEY.env".content = ''
|
"CLOUDFLARE_API_KEY.env".content = ''
|
||||||
HETZNER_API_KEY=${config.sops.placeholder."hetzner/api_key"}
|
CLOUDFLARE_API_KEY=${config.sops.placeholder."cloudflare/api_key"}
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
services = {
|
services = {
|
||||||
caddy = {
|
caddy = {
|
||||||
enable = true;
|
enable = true;
|
||||||
environmentFile = config.sops.templates."HETZNER_API_KEY.env".path;
|
environmentFile = config.sops.templates."CLOUDFLARE_API_KEY.env".path;
|
||||||
globalConfig = ''
|
globalConfig = ''
|
||||||
debug
|
debug
|
||||||
'';
|
'';
|
||||||
extraConfig = ''
|
extraConfig = ''
|
||||||
(hetzner) {
|
(cloudflare) {
|
||||||
tls {
|
tls {
|
||||||
propagation_timeout -1
|
propagation_timeout -1
|
||||||
propagation_delay 120s
|
propagation_delay 120s
|
||||||
dns hetzner {env.HETZNER_API_KEY}
|
dns cloudflare {env.CLOUDFLARE_API_KEY}
|
||||||
resolvers 1.1.1.1
|
resolvers 1.1.1.1
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
'';
|
'';
|
||||||
package = pkgs.caddyWithHetzner;
|
package = pkgs.caddyWithCloudflare;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
{...}: {
|
{...}: {
|
||||||
services = {
|
services = {
|
||||||
caddy.virtualHosts."lmstudio.shiro.darksailor.dev" = ''
|
caddy.virtualHosts."lmstudio.shiro.darksailor.dev" = ''
|
||||||
import hetzner
|
import cloudflare
|
||||||
reverse_proxy localhost:1234
|
reverse_proxy localhost:1234
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -4,10 +4,10 @@
|
|||||||
...
|
...
|
||||||
}: {
|
}: {
|
||||||
sops = {
|
sops = {
|
||||||
secrets."hetzner/api_key".owner = config.services.caddy.user;
|
secrets."cloudflare/api_key".owner = config.services.caddy.user;
|
||||||
templates = {
|
templates = {
|
||||||
"HETZNER_API_KEY.env".content = ''
|
"CLOUDFLARE_API_KEY.env".content = ''
|
||||||
HETZNER_API_KEY=${config.sops.placeholder."hetzner/api_key"}
|
CLOUDFLARE_API_KEY=${config.sops.placeholder."cloudflare/api_key"}
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
@@ -15,28 +15,22 @@
|
|||||||
caddy = {
|
caddy = {
|
||||||
enable = true;
|
enable = true;
|
||||||
extraConfig = ''
|
extraConfig = ''
|
||||||
(hetzner) {
|
(cloudflare) {
|
||||||
tls {
|
tls {
|
||||||
propagation_timeout -1
|
propagation_timeout -1
|
||||||
propagation_delay 120s
|
propagation_delay 120s
|
||||||
dns hetzner {env.HETZNER_API_KEY}
|
dns cloudflare {env.CLOUDFLARE_API_KEY}
|
||||||
resolvers 1.1.1.1
|
resolvers 1.1.1.1
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
'';
|
'';
|
||||||
package = pkgs.caddyWithHetzner;
|
package = pkgs.caddyWithCloudflare;
|
||||||
# package = pkgs.caddy.withPlugins {
|
|
||||||
# plugins = ["github.com/caddy-dns/hetzner@v1.0.0"];
|
|
||||||
# # hash = "sha256-9ea0CfOHG7JhejB73HjfXQpnonn+ZRBqLNz1fFRkcDQ=";
|
|
||||||
# # hash = "sha256-9ea0CfOHG7JhejB73HjfXQpnonn+ZRBqLNz1fFRkcDQ="
|
|
||||||
# hash = "sha256-YUrprDZQL+cX3P8fVLKHouXTMG4rw3sCaQdGqiq37uA=";
|
|
||||||
# };
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
systemd.services.caddy = {
|
systemd.services.caddy = {
|
||||||
after = ["sops-install-secrets.service"];
|
after = ["sops-install-secrets.service"];
|
||||||
serviceConfig = {
|
serviceConfig = {
|
||||||
EnvironmentFile = config.sops.templates."HETZNER_API_KEY.env".path;
|
EnvironmentFile = config.sops.templates."CLOUDFLARE_API_KEY.env".path;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -27,7 +27,7 @@
|
|||||||
};
|
};
|
||||||
caddy = {
|
caddy = {
|
||||||
virtualHosts."llama.ryu.darksailor.dev".extraConfig = ''
|
virtualHosts."llama.ryu.darksailor.dev".extraConfig = ''
|
||||||
import hetzner
|
import cloudflare
|
||||||
reverse_proxy localhost:${builtins.toString config.services.llama-cpp.port}
|
reverse_proxy localhost:${builtins.toString config.services.llama-cpp.port}
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -41,7 +41,7 @@
|
|||||||
# };
|
# };
|
||||||
caddy = {
|
caddy = {
|
||||||
# virtualHosts."llama.ryu.darksailor.dev".extraConfig = ''
|
# virtualHosts."llama.ryu.darksailor.dev".extraConfig = ''
|
||||||
# import hetzner
|
# import cloudflare
|
||||||
# forward_auth tako:5555 {
|
# forward_auth tako:5555 {
|
||||||
# uri /api/authz/forward-auth
|
# uri /api/authz/forward-auth
|
||||||
# copy_headers Remote-User Remote-Groups Remote-Email Remote-Name
|
# copy_headers Remote-User Remote-Groups Remote-Email Remote-Name
|
||||||
@@ -49,7 +49,7 @@
|
|||||||
# reverse_proxy localhost:${builtins.toString config.services.open-webui.port}
|
# reverse_proxy localhost:${builtins.toString config.services.open-webui.port}
|
||||||
# '';
|
# '';
|
||||||
virtualHosts."ollama.ryu.darksailor.dev".extraConfig = ''
|
virtualHosts."ollama.ryu.darksailor.dev".extraConfig = ''
|
||||||
import hetzner
|
import cloudflare
|
||||||
reverse_proxy localhost:${builtins.toString config.services.ollama.port}
|
reverse_proxy localhost:${builtins.toString config.services.ollama.port}
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -5,14 +5,14 @@
|
|||||||
./flaresolverr.nix
|
./flaresolverr.nix
|
||||||
# # ./games
|
# # ./games
|
||||||
# ./gitea.nix
|
# ./gitea.nix
|
||||||
# ./homepage.nix
|
./homepage.nix
|
||||||
# # ./llama.nix
|
# # ./llama.nix
|
||||||
# # ./monitoring.nix
|
# # ./monitoring.nix
|
||||||
# # ./nextcloud.nix
|
# # ./nextcloud.nix
|
||||||
# # ./paperless.nix
|
# # ./paperless.nix
|
||||||
./prowlarr.nix
|
./prowlarr.nix
|
||||||
# ./resolved.nix
|
# ./resolved.nix
|
||||||
# ./searxng.nix
|
./searxng.nix
|
||||||
# ./headscale.nix
|
# ./headscale.nix
|
||||||
# ./shitpost.nix
|
# ./shitpost.nix
|
||||||
./atuin.nix
|
./atuin.nix
|
||||||
|
|||||||
@@ -86,13 +86,13 @@
|
|||||||
href = "https://cloud.darksailor.dev";
|
href = "https://cloud.darksailor.dev";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
{
|
# {
|
||||||
"Open WebUI" = {
|
# "Open WebUI" = {
|
||||||
icon = "open-webui.png";
|
# icon = "open-webui.png";
|
||||||
description = "Open WebUI for self hosted llms";
|
# description = "Open WebUI for self hosted llms";
|
||||||
href = "https://llama.darksailor.dev";
|
# href = "https://llama.darksailor.dev";
|
||||||
};
|
# };
|
||||||
}
|
# }
|
||||||
{
|
{
|
||||||
"Immich" = {
|
"Immich" = {
|
||||||
icon = "immich.png";
|
icon = "immich.png";
|
||||||
@@ -159,7 +159,7 @@
|
|||||||
};
|
};
|
||||||
caddy = {
|
caddy = {
|
||||||
virtualHosts."dashboard.darksailor.dev".extraConfig = ''
|
virtualHosts."dashboard.darksailor.dev".extraConfig = ''
|
||||||
import auth
|
# import auth
|
||||||
reverse_proxy localhost:${builtins.toString config.services.homepage-dashboard.listenPort}
|
reverse_proxy localhost:${builtins.toString config.services.homepage-dashboard.listenPort}
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -4,10 +4,10 @@
|
|||||||
...
|
...
|
||||||
}: {
|
}: {
|
||||||
sops = {
|
sops = {
|
||||||
secrets."hetzner/api_key".owner = config.services.caddy.user;
|
secrets."cloudflare/api_key".owner = config.services.caddy.user;
|
||||||
templates = {
|
templates = {
|
||||||
"HETZNER_API_KEY.env".content = ''
|
"CLOUDFLARE_API_KEY.env".content = ''
|
||||||
HETZNER_API_KEY=${config.sops.placeholder."hetzner/api_key"}
|
CLOUDFLARE_API_KEY=${config.sops.placeholder."cloudflare/api_key"}
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
@@ -15,11 +15,11 @@
|
|||||||
caddy = {
|
caddy = {
|
||||||
enable = true;
|
enable = true;
|
||||||
extraConfig = ''
|
extraConfig = ''
|
||||||
(hetzner) {
|
(cloudflare) {
|
||||||
tls {
|
tls {
|
||||||
propagation_timeout -1
|
propagation_timeout -1
|
||||||
propagation_delay 120s
|
propagation_delay 120s
|
||||||
dns hetzner {env.HETZNER_API_KEY}
|
dns cloudflare {env.CLOUDFLARE_API_KEY}
|
||||||
resolvers 1.1.1.1
|
resolvers 1.1.1.1
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -31,17 +31,13 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
'';
|
'';
|
||||||
package = pkgs.caddy.withPlugins {
|
package = pkgs.caddyWithCloudflare;
|
||||||
plugins = ["github.com/caddy-dns/hetzner@v1.0.0"];
|
|
||||||
hash = "sha256-Iwsu3s1qOwavcmmnd1w4GVeCkU1HhlWAJXMuc5NOc24=";
|
|
||||||
};
|
|
||||||
# package = pkgs.caddyWithHetzner;
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
systemd.services.caddy = {
|
systemd.services.caddy = {
|
||||||
after = ["sops-install-secrets.service"];
|
after = ["sops-install-secrets.service"];
|
||||||
serviceConfig = {
|
serviceConfig = {
|
||||||
EnvironmentFile = config.sops.templates."HETZNER_API_KEY.env".path;
|
EnvironmentFile = config.sops.templates."CLOUDFLARE_API_KEY.env".path;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -7,7 +7,7 @@
|
|||||||
};
|
};
|
||||||
caddy = {
|
caddy = {
|
||||||
virtualHosts."deluge.tsuba.darksailor.dev".extraConfig = ''
|
virtualHosts."deluge.tsuba.darksailor.dev".extraConfig = ''
|
||||||
import hetzner
|
import cloudflare
|
||||||
reverse_proxy localhost:8112
|
reverse_proxy localhost:8112
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -36,7 +36,7 @@
|
|||||||
|
|
||||||
services.caddy = {
|
services.caddy = {
|
||||||
virtualHosts."home.darksailor.dev".extraConfig = ''
|
virtualHosts."home.darksailor.dev".extraConfig = ''
|
||||||
import hetzner
|
import cloudflare
|
||||||
reverse_proxy localhost:8123
|
reverse_proxy localhost:8123
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -33,15 +33,15 @@
|
|||||||
# };
|
# };
|
||||||
caddy = {
|
caddy = {
|
||||||
# virtualHosts."jellyseerr.tsuba.darksailor.dev".extraConfig = ''
|
# virtualHosts."jellyseerr.tsuba.darksailor.dev".extraConfig = ''
|
||||||
# import hetzner
|
# import cloudflare
|
||||||
# reverse_proxy localhost:${builtins.toString config.services.jellyseerr.port}
|
# reverse_proxy localhost:${builtins.toString config.services.jellyseerr.port}
|
||||||
# '';
|
# '';
|
||||||
virtualHosts."jellyfin.tsuba.darksailor.dev".extraConfig = ''
|
virtualHosts."jellyfin.tsuba.darksailor.dev".extraConfig = ''
|
||||||
import hetzner
|
import cloudflare
|
||||||
reverse_proxy localhost:8096
|
reverse_proxy localhost:8096
|
||||||
'';
|
'';
|
||||||
virtualHosts."media.darksailor.dev".extraConfig = ''
|
virtualHosts."media.darksailor.dev".extraConfig = ''
|
||||||
import hetzner
|
import cloudflare
|
||||||
reverse_proxy localhost:8096
|
reverse_proxy localhost:8096
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
};
|
};
|
||||||
caddy = {
|
caddy = {
|
||||||
virtualHosts."prowlarr.tsuba.darksailor.dev".extraConfig = ''
|
virtualHosts."prowlarr.tsuba.darksailor.dev".extraConfig = ''
|
||||||
import hetzner
|
import cloudflare
|
||||||
reverse_proxy localhost:9696
|
reverse_proxy localhost:9696
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -37,27 +37,27 @@
|
|||||||
};
|
};
|
||||||
caddy.virtualHosts = {
|
caddy.virtualHosts = {
|
||||||
"sonarr.tsuba.darksailor.dev".extraConfig = ''
|
"sonarr.tsuba.darksailor.dev".extraConfig = ''
|
||||||
import hetzner
|
import cloudflare
|
||||||
import auth
|
import auth
|
||||||
reverse_proxy localhost:${builtins.toString config.services.sonarr.settings.server.port}
|
reverse_proxy localhost:${builtins.toString config.services.sonarr.settings.server.port}
|
||||||
'';
|
'';
|
||||||
"radarr.tsuba.darksailor.dev".extraConfig = ''
|
"radarr.tsuba.darksailor.dev".extraConfig = ''
|
||||||
import hetzner
|
import cloudflare
|
||||||
import auth
|
import auth
|
||||||
reverse_proxy localhost:${builtins.toString config.services.radarr.settings.server.port}
|
reverse_proxy localhost:${builtins.toString config.services.radarr.settings.server.port}
|
||||||
'';
|
'';
|
||||||
"lidarr.tsuba.darksailor.dev".extraConfig = ''
|
"lidarr.tsuba.darksailor.dev".extraConfig = ''
|
||||||
import hetzner
|
import cloudflare
|
||||||
import auth
|
import auth
|
||||||
reverse_proxy localhost:${builtins.toString config.services.lidarr.settings.server.port}
|
reverse_proxy localhost:${builtins.toString config.services.lidarr.settings.server.port}
|
||||||
'';
|
'';
|
||||||
"bazarr.tsuba.darksailor.dev".extraConfig = ''
|
"bazarr.tsuba.darksailor.dev".extraConfig = ''
|
||||||
import hetzner
|
import cloudflare
|
||||||
import auth
|
import auth
|
||||||
reverse_proxy localhost:${builtins.toString config.services.bazarr.listenPort}
|
reverse_proxy localhost:${builtins.toString config.services.bazarr.listenPort}
|
||||||
'';
|
'';
|
||||||
"prowlarr.tsuba.darksailor.dev".extraConfig = ''
|
"prowlarr.tsuba.darksailor.dev".extraConfig = ''
|
||||||
import hetzner
|
import cloudflare
|
||||||
import auth
|
import auth
|
||||||
reverse_proxy tako.darksailor.dev:9696
|
reverse_proxy tako.darksailor.dev:9696
|
||||||
'';
|
'';
|
||||||
|
|||||||
@@ -162,9 +162,9 @@
|
|||||||
cargoLock = {lockFile = "${src}/Cargo.lock";};
|
cargoLock = {lockFile = "${src}/Cargo.lock";};
|
||||||
};
|
};
|
||||||
# alvr-master = inputs.alvr.packages.${prev.system}.default;
|
# alvr-master = inputs.alvr.packages.${prev.system}.default;
|
||||||
caddyWithHetzner = final.pkgs.caddy.withPlugins {
|
caddyWithCloudflare = final.pkgs.caddy.withPlugins {
|
||||||
plugins = ["github.com/caddy-dns/hetzner@v1.0.0"];
|
plugins = ["github.com/caddy-dns/cloudflare@v0.2.2"];
|
||||||
hash = "sha256-KNKmbZ65NwbEbseo5S3O0HzKseJkm4ZPugNOjMai02s=";
|
hash = "sha256-ea8PC/+SlPRdEVVF/I3c1CBprlVp1nrumKM5cMwJJ3U=";
|
||||||
};
|
};
|
||||||
nix-auth = inputs.nix-auth.packages.${prev.system}.nix-auth;
|
nix-auth = inputs.nix-auth.packages.${prev.system}.nix-auth;
|
||||||
kitty = inputs.nixpkgs-stable.legacyPackages.${prev.system}.kitty;
|
kitty = inputs.nixpkgs-stable.legacyPackages.${prev.system}.kitty;
|
||||||
|
|||||||
@@ -13,6 +13,8 @@ llama:
|
|||||||
api_key: ENC[AES256_GCM,data:wib+xbb25sTY2K9pacc1mU5eVSyQRurHiCMZyDVSqCAmG4yjkzEykvBevpThNbTZlsk6GZuK4hH0SYJM,iv:GTU6CQ83chXHAuuL0bFMf4L+UWqlcVfXnEE0/SxLzj4=,tag:0LkOSQsuuQd6TK3KHE95TA==,type:str]
|
api_key: ENC[AES256_GCM,data:wib+xbb25sTY2K9pacc1mU5eVSyQRurHiCMZyDVSqCAmG4yjkzEykvBevpThNbTZlsk6GZuK4hH0SYJM,iv:GTU6CQ83chXHAuuL0bFMf4L+UWqlcVfXnEE0/SxLzj4=,tag:0LkOSQsuuQd6TK3KHE95TA==,type:str]
|
||||||
hetzner:
|
hetzner:
|
||||||
api_key: ENC[AES256_GCM,data:8lDAf8wyM5b7SH/TaQxXyfITStiiO0obDMdWuRHHxHA=,iv:tHwpmW1Unr8DQXOUKutqyssOKOxtNYMIEc2aMXcmSbE=,tag:N2o9tsdaeoi/cm0ETf3UTQ==,type:str]
|
api_key: ENC[AES256_GCM,data:8lDAf8wyM5b7SH/TaQxXyfITStiiO0obDMdWuRHHxHA=,iv:tHwpmW1Unr8DQXOUKutqyssOKOxtNYMIEc2aMXcmSbE=,tag:N2o9tsdaeoi/cm0ETf3UTQ==,type:str]
|
||||||
|
cloudflare:
|
||||||
|
api_key: ENC[AES256_GCM,data:t8kBhlFUxIqjV9f6eJboUrYMAmi5sH3serhD8gBZHVKAAiuy4HHlpg==,iv:xm1EBj5xqnfLYRIJ3XJ0VgyTubG7PMvKrkmlk86YTsE=,tag:0APDuhkAaxv/ozNPVsANLg==,type:str]
|
||||||
openai:
|
openai:
|
||||||
api_key: ENC[AES256_GCM,data:d6z9TySB6r2myUYu4u9aZwdoy1qL+DdU4MIuel1lFMMKD4XAqn5U9Vc3t5sJ/E3hDXud,iv:500n8CY8Qd/tg+MuT+RDRAyjgy6E9Aolud/2KrRyyqk=,tag:nCowF/czJMkYoNuSl1c3ZA==,type:str]
|
api_key: ENC[AES256_GCM,data:d6z9TySB6r2myUYu4u9aZwdoy1qL+DdU4MIuel1lFMMKD4XAqn5U9Vc3t5sJ/E3hDXud,iv:500n8CY8Qd/tg+MuT+RDRAyjgy6E9Aolud/2KrRyyqk=,tag:nCowF/czJMkYoNuSl1c3ZA==,type:str]
|
||||||
openrouter:
|
openrouter:
|
||||||
@@ -82,7 +84,7 @@ sops:
|
|||||||
VGZKdHpVeFRpQUxtSEkyaEhLMlBJcGsKLb0DvPNZosPBUuiX6qz1s5IO5INQh8CK
|
VGZKdHpVeFRpQUxtSEkyaEhLMlBJcGsKLb0DvPNZosPBUuiX6qz1s5IO5INQh8CK
|
||||||
ZtXTVClwMSmaUYhdSB2gKFrKVZHXTJZ4oAL5t/BpC0pOHyr+o96T3Q==
|
ZtXTVClwMSmaUYhdSB2gKFrKVZHXTJZ4oAL5t/BpC0pOHyr+o96T3Q==
|
||||||
-----END AGE ENCRYPTED FILE-----
|
-----END AGE ENCRYPTED FILE-----
|
||||||
lastmodified: "2025-11-27T13:28:41Z"
|
lastmodified: "2025-11-27T16:07:40Z"
|
||||||
mac: ENC[AES256_GCM,data:KVdCTn6EXEAnj76kUL0d5eaYQJUc1HdfWTlwF+vku5wo2f9aJA2s6uyKXmhhx0e6q8muu10gMVObZzgae0vYZBOhO7GSxlLU9gCi4PaQo2Vz5mC75liCt3geoO9PTShZmLGaEPeuA9DFt/t3ggC2yqXij6uwz0SifvCuKM2QNzw=,iv:FSAa/eJBRDcxY+RLPy9O2PxLDibzRJrLh6+CtQNFtaQ=,tag:iNDr5XvpTJS8pNt9vZgOFw==,type:str]
|
mac: ENC[AES256_GCM,data:uoEAPUETfHQHnuvP1Mv4OqLUmWqMZxEr4VAElMwaOoYmkMR2blr6htMY5A3y1Qzc1CDv9o5p7cUUNdkYU1VoCj/bGwKgASYjZKM7gZDmrivyl0/XXcdA56pmgPfmO5PCkml1SJwQwwty4uwGNruKfUDrhMH5fIfS4KbS/GmnFeQ=,iv:IIQNHJOoMY9WrWEw2blenTv7RDGRVN8dXxYwMDyZPg8=,tag:vTP8Zv3TOoacVs8JqgMi3A==,type:str]
|
||||||
unencrypted_suffix: _unencrypted
|
unencrypted_suffix: _unencrypted
|
||||||
version: 3.11.0
|
version: 3.11.0
|
||||||
|
|||||||
4784
server/facter.json
4784
server/facter.json
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user