diff --git a/hosts/cesium/services/atuin.nix b/hosts/cesium/services/atuin.nix
index cfb56f6..445bcca 100644
--- a/hosts/cesium/services/atuin.nix
+++ b/hosts/cesium/services/atuin.nix
@@ -14,4 +14,19 @@
};
};
};
+
+ services.gatus.settings.endpoints = [
+ {
+ name = "atuin.fainsin.bzh";
+ group = "services";
+ url = "https://atuin.fainsin.bzh";
+ interval = "15m";
+ conditions = [
+ "[STATUS] == 200"
+ "[RESPONSE_TIME] < 300"
+ "[CERTIFICATE_EXPIRATION] > 240h"
+ "[BODY].homage == pat(*Sir Terry Pratchett*)"
+ ];
+ }
+ ];
}
diff --git a/hosts/cesium/services/default.nix b/hosts/cesium/services/default.nix
index 4b1852e..69f04bd 100644
--- a/hosts/cesium/services/default.nix
+++ b/hosts/cesium/services/default.nix
@@ -5,7 +5,7 @@
./atuin.nix
./fail2ban.nix
./gatus.nix
- ./gitea.nix
+ ./forgejo.nix
./ssh.nix
];
}
diff --git a/hosts/cesium/services/gitea.nix b/hosts/cesium/services/forgejo.nix
similarity index 70%
rename from hosts/cesium/services/gitea.nix
rename to hosts/cesium/services/forgejo.nix
index 40eb4f8..fb7b509 100644
--- a/hosts/cesium/services/gitea.nix
+++ b/hosts/cesium/services/forgejo.nix
@@ -37,4 +37,19 @@
proxyWebsockets = true;
};
};
+
+ services.gatus.settings.endpoints = [
+ {
+ name = "git.fainsin.bzh";
+ group = "services";
+ url = "https://git.fainsin.bzh";
+ interval = "5m";
+ conditions = [
+ "[STATUS] == 200"
+ "[RESPONSE_TIME] < 300"
+ "[CERTIFICATE_EXPIRATION] > 240h"
+ "[BODY] == pat(*
Explore - Forgejo: Beyond coding. We Forge.*)"
+ ];
+ }
+ ];
}
diff --git a/hosts/cesium/services/gatus.nix b/hosts/cesium/services/gatus.nix
index 8e0b01e..2814f1a 100644
--- a/hosts/cesium/services/gatus.nix
+++ b/hosts/cesium/services/gatus.nix
@@ -6,61 +6,6 @@
web.port = 2020;
endpoints = [
- {
- name = "fainsin.bzh";
- url = "https://fainsin.bzh";
- interval = "6h";
- conditions = [
- "[DOMAIN_EXPIRATION] > 720h"
- ];
- }
- {
- name = "laurent.fainsin.bzh";
- group = "web";
- url = "https://laurent.fainsin.bzh";
- interval = "5m";
- conditions = [
- "[STATUS] == 200"
- "[RESPONSE_TIME] < 300"
- "[BODY] == pat(*Laurent Fainsin*)"
- "[CERTIFICATE_EXPIRATION] > 240h"
- ];
- }
- {
- name = "resume.laurent.fainsin.bzh";
- group = "web";
- url = "https://resume.laurent.fainsin.bzh";
- interval = "5m";
- conditions = [
- "[STATUS] == 200"
- "[RESPONSE_TIME] < 300"
- "[CERTIFICATE_EXPIRATION] > 240h"
- ];
- }
- {
- name = "git.fainsin.bzh";
- group = "services";
- url = "https://git.fainsin.bzh";
- interval = "5m";
- conditions = [
- "[STATUS] == 200"
- "[RESPONSE_TIME] < 300"
- "[CERTIFICATE_EXPIRATION] > 240h"
- "[BODY] == pat(*Explore - Forgejo: Beyond coding. We Forge.*)"
- ];
- }
- {
- name = "atuin.fainsin.bzh";
- group = "services";
- url = "https://atuin.fainsin.bzh";
- interval = "15m";
- conditions = [
- "[STATUS] == 200"
- "[RESPONSE_TIME] < 300"
- "[CERTIFICATE_EXPIRATION] > 240h"
- "[BODY].homage == pat(*Sir Terry Pratchett*)"
- ];
- }
{
name = "status.fainsin.bzh";
group = "services";
@@ -73,150 +18,6 @@
"[BODY] == pat(*Health Dashboard | Gatus*)"
];
}
- {
- name = "n7.laurent.fainsin.bzh";
- group = "n7.laurent.fainsin.bzh";
- url = "https://n7.laurent.fainsin.bzh";
- interval = "15m";
- conditions = [
- "[CERTIFICATE_EXPIRATION] > 240h"
- ];
- }
- {
- name = "projet-audionumerique";
- group = "n7.laurent.fainsin.bzh";
- url = "https://n7.laurent.fainsin.bzh/projet-audionumerique/";
- interval = "15m";
- conditions = [
- "[STATUS] == 200"
- "[RESPONSE_TIME] < 300"
- "[BODY] == pat(*Whisper*)"
- ];
- }
- {
- name = "projet-systemes-algorithmes-repartis";
- group = "n7.laurent.fainsin.bzh";
- url = "https://n7.laurent.fainsin.bzh/projet-systemes-algorithmes-repartis/";
- interval = "15m";
- conditions = [
- "[STATUS] == 200"
- "[RESPONSE_TIME] < 300"
- "[BODY] == pat(*The RAFT Consensus Algorithm*)"
- ];
- }
- {
- name = "projet-intelligence-artificielle-multimedia";
- group = "n7.laurent.fainsin.bzh";
- url = "https://n7.laurent.fainsin.bzh/projet-intelligence-artificielle-multimedia/";
- interval = "15m";
- conditions = [
- "[STATUS] == 200"
- "[RESPONSE_TIME] < 300"
- "[BODY] == pat(*Projet IAM*)"
- ];
- }
- {
- name = "projet-probleme-inverse-3D";
- group = "n7.laurent.fainsin.bzh";
- url = "https://n7.laurent.fainsin.bzh/projet-probleme-inverse-3D/";
- interval = "15m";
- conditions = [
- "[STATUS] == 200"
- "[RESPONSE_TIME] < 300"
- "[BODY] == pat(*slidevjs/slidev*)"
- "[BODY] == pat(*/projet-probleme-inverse-3D/assets/index*)"
- ];
- }
- {
- name = "projet-modelisation-geometrique";
- group = "n7.laurent.fainsin.bzh";
- url = "https://n7.laurent.fainsin.bzh/projet-modelisation-geometrique/";
- interval = "15m";
- conditions = [
- "[STATUS] == 200"
- "[RESPONSE_TIME] < 300"
- "[BODY] == pat(*Projet de Modélisation Géométrique*)"
- ];
- }
- {
- name = "projet-long";
- group = "n7.laurent.fainsin.bzh";
- url = "https://n7.laurent.fainsin.bzh/projet-long/";
- interval = "15m";
- conditions = [
- "[STATUS] == 200"
- "[RESPONSE_TIME] < 300"
- "[BODY] == pat(*slidevjs/slidev*)"
- "[BODY] == pat(*/projet-long/assets/index*)"
- ];
- }
- {
- name = "projet-oral-japonais";
- group = "n7.laurent.fainsin.bzh";
- url = "https://n7.laurent.fainsin.bzh/projet-oral-japonais/";
- interval = "15m";
- conditions = [
- "[STATUS] == 200"
- "[RESPONSE_TIME] < 300"
- "[BODY] == pat(*わたしたちのまちは*)"
- ];
- }
- {
- name = "projet-oral-anglais";
- group = "n7.laurent.fainsin.bzh";
- url = "https://n7.laurent.fainsin.bzh/projet-oral-anglais/";
- interval = "15m";
- conditions = [
- "[STATUS] == 200"
- "[RESPONSE_TIME] < 300"
- "[BODY] == pat(*CAPTCHA*)"
- ];
- }
- {
- name = "projet-fin-etude";
- group = "n7.laurent.fainsin.bzh";
- url = "https://n7.laurent.fainsin.bzh/projet-fin-etude/";
- interval = "15m";
- conditions = [
- "[STATUS] == 200"
- "[RESPONSE_TIME] < 300"
- "[BODY] == pat(*slidevjs/slidev*)"
- "[BODY] == pat(*/projet-fin-etude/assets/index*)"
- ];
- }
- {
- name = "TP-calcul-parallele";
- group = "n7.laurent.fainsin.bzh";
- url = "https://n7.laurent.fainsin.bzh/TP-calcul-parallele/";
- interval = "15m";
- conditions = [
- "[STATUS] == 200"
- "[RESPONSE_TIME] < 300"
- "[BODY] == pat(*Benchmarking Distributed GEMM Algorithms*)"
- ];
- }
- {
- name = "TP-reinforcement-learning";
- group = "n7.laurent.fainsin.bzh";
- url = "https://n7.laurent.fainsin.bzh/TP-reinforcement-learning/";
- interval = "15m";
- conditions = [
- "[STATUS] == 200"
- "[RESPONSE_TIME] < 300"
- "[BODY] == pat(*pluto_notebook*)"
- ];
- }
- {
- name = "TP-traitement-audio-visuel";
- group = "n7.laurent.fainsin.bzh";
- url = "https://n7.laurent.fainsin.bzh/TP-traitement-audio-visuel/";
- interval = "15m";
- conditions = [
- "[STATUS] == 200"
- "[RESPONSE_TIME] < 300"
- "[BODY] == pat(*pluto_notebook*)"
- ];
- }
];
};
};
diff --git a/hosts/cesium/services/nginx/laurent/resume.nix b/hosts/cesium/services/nginx/laurent/resume.nix
index b83cf1f..098fcb3 100644
--- a/hosts/cesium/services/nginx/laurent/resume.nix
+++ b/hosts/cesium/services/nginx/laurent/resume.nix
@@ -15,4 +15,18 @@
};
};
};
+
+ services.gatus.settings.endpoints = [
+ {
+ name = "resume.laurent.fainsin.bzh";
+ group = "web";
+ url = "https://resume.laurent.fainsin.bzh";
+ interval = "5m";
+ conditions = [
+ "[STATUS] == 200"
+ "[RESPONSE_TIME] < 300"
+ "[CERTIFICATE_EXPIRATION] > 240h"
+ ];
+ }
+ ];
}
diff --git a/hosts/cesium/services/nginx/laurent/website.nix b/hosts/cesium/services/nginx/laurent/website.nix
index eea8de8..4396859 100644
--- a/hosts/cesium/services/nginx/laurent/website.nix
+++ b/hosts/cesium/services/nginx/laurent/website.nix
@@ -23,4 +23,27 @@
locations."/".return = ''301 "$scheme://laurent.fainsin.bzh" '';
};
};
+
+ services.gatus.settings.endpoints = [
+ {
+ name = "fainsin.bzh";
+ url = "https://fainsin.bzh";
+ interval = "6h";
+ conditions = [
+ "[DOMAIN_EXPIRATION] > 720h"
+ ];
+ }
+ {
+ name = "laurent.fainsin.bzh";
+ group = "web";
+ url = "https://laurent.fainsin.bzh";
+ interval = "5m";
+ conditions = [
+ "[STATUS] == 200"
+ "[RESPONSE_TIME] < 300"
+ "[BODY] == pat(*Laurent Fainsin*)"
+ "[CERTIFICATE_EXPIRATION] > 240h"
+ ];
+ }
+ ];
}
diff --git a/hosts/cesium/services/nginx/n7/TP-calcul-parallele.nix b/hosts/cesium/services/nginx/n7/TP-calcul-parallele.nix
index 37b8d17..69019bd 100644
--- a/hosts/cesium/services/nginx/n7/TP-calcul-parallele.nix
+++ b/hosts/cesium/services/nginx/n7/TP-calcul-parallele.nix
@@ -3,5 +3,21 @@
system,
...
}: {
- alias = inputs.TP-calcul-parallele.packages.${system}.report + "/";
+ services.nginx.virtualHosts."n7.laurent.fainsin.bzh".locations."/TP-calcul-parallele/" = {
+ alias = inputs.TP-calcul-parallele.packages.${system}.report + "/";
+ };
+
+ services.gatus.settings.endpoints = [
+ {
+ name = "TP-calcul-parallele";
+ group = "n7.laurent.fainsin.bzh";
+ url = "https://n7.laurent.fainsin.bzh/TP-calcul-parallele/";
+ interval = "15m";
+ conditions = [
+ "[STATUS] == 200"
+ "[RESPONSE_TIME] < 300"
+ "[BODY] == pat(*Benchmarking Distributed GEMM Algorithms*)"
+ ];
+ }
+ ];
}
diff --git a/hosts/cesium/services/nginx/n7/TP-reinforcement-learning.nix b/hosts/cesium/services/nginx/n7/TP-reinforcement-learning.nix
index 722d9e2..453ad42 100644
--- a/hosts/cesium/services/nginx/n7/TP-reinforcement-learning.nix
+++ b/hosts/cesium/services/nginx/n7/TP-reinforcement-learning.nix
@@ -3,5 +3,21 @@
system,
...
}: {
- alias = inputs.TP-reinforcement-learning.packages.${system}.notebooks + "/";
+ services.nginx.virtualHosts."n7.laurent.fainsin.bzh".locations."/TP-reinforcement-learning/" = {
+ alias = inputs.TP-reinforcement-learning.packages.${system}.notebooks + "/";
+ };
+
+ services.gatus.settings.endpoints = [
+ {
+ name = "TP-reinforcement-learning";
+ group = "n7.laurent.fainsin.bzh";
+ url = "https://n7.laurent.fainsin.bzh/TP-reinforcement-learning/";
+ interval = "15m";
+ conditions = [
+ "[STATUS] == 200"
+ "[RESPONSE_TIME] < 300"
+ "[BODY] == pat(*pluto_notebook*)"
+ ];
+ }
+ ];
}
diff --git a/hosts/cesium/services/nginx/n7/TP-traitement-audio-visuel.nix b/hosts/cesium/services/nginx/n7/TP-traitement-audio-visuel.nix
index dc9bc38..e2551fc 100644
--- a/hosts/cesium/services/nginx/n7/TP-traitement-audio-visuel.nix
+++ b/hosts/cesium/services/nginx/n7/TP-traitement-audio-visuel.nix
@@ -3,5 +3,21 @@
system,
...
}: {
- alias = inputs.TP-traitement-audio-visuel.packages.${system}.notebooks + "/";
+ services.nginx.virtualHosts."n7.laurent.fainsin.bzh".locations."/TP-traitement-audio-visuel/" = {
+ alias = inputs.TP-traitement-audio-visuel.packages.${system}.notebooks + "/";
+ };
+
+ services.gatus.settings.endpoints = [
+ {
+ name = "TP-traitement-audio-visuel";
+ group = "n7.laurent.fainsin.bzh";
+ url = "https://n7.laurent.fainsin.bzh/TP-traitement-audio-visuel/";
+ interval = "15m";
+ conditions = [
+ "[STATUS] == 200"
+ "[RESPONSE_TIME] < 300"
+ "[BODY] == pat(*pluto_notebook*)"
+ ];
+ }
+ ];
}
diff --git a/hosts/cesium/services/nginx/n7/default.nix b/hosts/cesium/services/nginx/n7/default.nix
index aa9d52d..50a6c76 100644
--- a/hosts/cesium/services/nginx/n7/default.nix
+++ b/hosts/cesium/services/nginx/n7/default.nix
@@ -1,34 +1,37 @@
-{
- inputs,
- system,
- pkgs,
- ...
-}: {
+{...}: {
services.nginx.virtualHosts = {
"n7.laurent.fainsin.bzh" = {
enableACME = true;
forceSSL = true;
- locations =
- {
- "/".return = "301 $scheme://git.fainsin.bzh/ENSEEIHT";
- }
- // {
- "/projet-audionumerique/" = import ./projet-audionumerique.nix {inherit inputs system;};
- "/projet-systemes-algorithmes-repartis/" = import ./projet-systemes-algorithmes-repartis.nix {inherit inputs system;};
- "/projet-intelligence-artificielle-multimedia/" = import ./projet-intelligence-artificielle-multimedia.nix {inherit inputs system;};
- "/projet-probleme-inverse-3D/" = import ./projet-probleme-inverse-3D.nix pkgs;
- "/projet-modelisation-geometrique/" = import ./projet-modelisation-geometrique.nix {inherit inputs system;};
- "/projet-long/" = import ./projet-long.nix pkgs;
- "/projet-oral-japonais/" = import ./projet-oral-japonais.nix {inherit inputs system;};
- "/projet-oral-anglais/" = import ./projet-oral-anglais.nix {inherit inputs system;};
- "/projet-fin-etude/" = import ./projet-fin-etude.nix pkgs;
- }
- // {
- "/TP-calcul-parallele/" = import ./TP-calcul-parallele.nix {inherit inputs system;};
- "/TP-reinforcement-learning/" = import ./TP-reinforcement-learning.nix {inherit inputs system;};
- "/TP-traitement-audio-visuel/" = import ./TP-traitement-audio-visuel.nix {inherit inputs system;};
- };
+ locations."/".return = "301 $scheme://git.fainsin.bzh/ENSEEIHT";
};
};
+
+ imports = [
+ ./projet-audionumerique.nix
+ ./projet-fin-etude.nix
+ ./projet-intelligence-artificielle-multimedia.nix
+ ./projet-long.nix
+ ./projet-modelisation-geometrique.nix
+ ./projet-oral-anglais.nix
+ ./projet-oral-japonais.nix
+ ./projet-probleme-inverse-3D.nix
+ ./projet-systemes-algorithmes-repartis.nix
+ ./TP-calcul-parallele.nix
+ ./TP-reinforcement-learning.nix
+ ./TP-traitement-audio-visuel.nix
+ ];
+
+ services.gatus.settings.endpoints = [
+ {
+ name = "n7.laurent.fainsin.bzh";
+ group = "n7.laurent.fainsin.bzh";
+ url = "https://n7.laurent.fainsin.bzh";
+ interval = "15m";
+ conditions = [
+ "[CERTIFICATE_EXPIRATION] > 240h"
+ ];
+ }
+ ];
}
diff --git a/hosts/cesium/services/nginx/n7/projet-audionumerique.nix b/hosts/cesium/services/nginx/n7/projet-audionumerique.nix
index 6b91881..638f5e3 100644
--- a/hosts/cesium/services/nginx/n7/projet-audionumerique.nix
+++ b/hosts/cesium/services/nginx/n7/projet-audionumerique.nix
@@ -3,5 +3,21 @@
system,
...
}: {
- alias = inputs.projet-audionumerique.packages.${system}.slides + "/";
+ services.nginx.virtualHosts."n7.laurent.fainsin.bzh".locations."/projet-audionumerique/" = {
+ alias = inputs.projet-audionumerique.packages.${system}.slides + "/";
+ };
+
+ services.gatus.settings.endpoints = [
+ {
+ name = "projet-audionumerique";
+ group = "n7.laurent.fainsin.bzh";
+ url = "https://n7.laurent.fainsin.bzh/projet-audionumerique/";
+ interval = "15m";
+ conditions = [
+ "[STATUS] == 200"
+ "[RESPONSE_TIME] < 300"
+ "[BODY] == pat(*Whisper*)"
+ ];
+ }
+ ];
}
diff --git a/hosts/cesium/services/nginx/n7/projet-fin-etude.nix b/hosts/cesium/services/nginx/n7/projet-fin-etude.nix
index dc0c304..6d19ca3 100644
--- a/hosts/cesium/services/nginx/n7/projet-fin-etude.nix
+++ b/hosts/cesium/services/nginx/n7/projet-fin-etude.nix
@@ -5,7 +5,24 @@
sha256 = "sha256-pOu0lohJ1Yqg/a5hqnNTePTrU8t5By5AbhUAJfL5MBg=";
};
in {
- alias = "${pages}/";
- index = "index.html";
- tryFiles = "$uri $uri/ /projet-fin-etude/index.html";
+ services.nginx.virtualHosts."n7.laurent.fainsin.bzh".locations."/projet-fin-etude/" = {
+ alias = "${pages}/";
+ index = "index.html";
+ tryFiles = "$uri $uri/ /projet-fin-etude/index.html";
+ };
+
+ services.gatus.settings.endpoints = [
+ {
+ name = "projet-fin-etude";
+ group = "n7.laurent.fainsin.bzh";
+ url = "https://n7.laurent.fainsin.bzh/projet-fin-etude/";
+ interval = "15m";
+ conditions = [
+ "[STATUS] == 200"
+ "[RESPONSE_TIME] < 300"
+ "[BODY] == pat(*slidevjs/slidev*)"
+ "[BODY] == pat(*/projet-fin-etude/assets/index*)"
+ ];
+ }
+ ];
}
diff --git a/hosts/cesium/services/nginx/n7/projet-intelligence-artificielle-multimedia.nix b/hosts/cesium/services/nginx/n7/projet-intelligence-artificielle-multimedia.nix
index c6d3a3a..d9a7ef0 100644
--- a/hosts/cesium/services/nginx/n7/projet-intelligence-artificielle-multimedia.nix
+++ b/hosts/cesium/services/nginx/n7/projet-intelligence-artificielle-multimedia.nix
@@ -3,7 +3,23 @@
system,
...
}: {
- alias =
- inputs.projet-intelligence-artificielle-multimedia.packages.${system}.slides
- + "/";
+ services.nginx.virtualHosts."n7.laurent.fainsin.bzh".locations."/projet-intelligence-artificielle-multimedia/" = {
+ alias =
+ inputs.projet-intelligence-artificielle-multimedia.packages.${system}.slides
+ + "/";
+ };
+
+ services.gatus.settings.endpoints = [
+ {
+ name = "projet-intelligence-artificielle-multimedia";
+ group = "n7.laurent.fainsin.bzh";
+ url = "https://n7.laurent.fainsin.bzh/projet-intelligence-artificielle-multimedia/";
+ interval = "15m";
+ conditions = [
+ "[STATUS] == 200"
+ "[RESPONSE_TIME] < 300"
+ "[BODY] == pat(*Projet IAM*)"
+ ];
+ }
+ ];
}
diff --git a/hosts/cesium/services/nginx/n7/projet-long.nix b/hosts/cesium/services/nginx/n7/projet-long.nix
index e2385b8..80f1a7d 100644
--- a/hosts/cesium/services/nginx/n7/projet-long.nix
+++ b/hosts/cesium/services/nginx/n7/projet-long.nix
@@ -5,7 +5,24 @@
sha256 = "1xwc0hfdn77183vvm6gadibdd0bh379192qkzf2xvidfhb8yzgqr";
};
in {
- alias = "${pages}/";
- index = "index.html";
- tryFiles = "$uri $uri/ /projet-long/index.html";
+ services.nginx.virtualHosts."n7.laurent.fainsin.bzh".locations."/projet-long/" = {
+ alias = "${pages}/";
+ index = "index.html";
+ tryFiles = "$uri $uri/ /projet-long/index.html";
+ };
+
+ services.gatus.settings.endpoints = [
+ {
+ name = "projet-long";
+ group = "n7.laurent.fainsin.bzh";
+ url = "https://n7.laurent.fainsin.bzh/projet-long/";
+ interval = "15m";
+ conditions = [
+ "[STATUS] == 200"
+ "[RESPONSE_TIME] < 300"
+ "[BODY] == pat(*slidevjs/slidev*)"
+ "[BODY] == pat(*/projet-long/assets/index*)"
+ ];
+ }
+ ];
}
diff --git a/hosts/cesium/services/nginx/n7/projet-modelisation-geometrique.nix b/hosts/cesium/services/nginx/n7/projet-modelisation-geometrique.nix
index fa44997..30e7ef0 100644
--- a/hosts/cesium/services/nginx/n7/projet-modelisation-geometrique.nix
+++ b/hosts/cesium/services/nginx/n7/projet-modelisation-geometrique.nix
@@ -3,5 +3,21 @@
system,
...
}: {
- alias = inputs.projet-modelisation-geometrique.packages.${system}.report + "/";
+ services.nginx.virtualHosts."n7.laurent.fainsin.bzh".locations."/projet-modelisation-geometrique/" = {
+ alias = inputs.projet-modelisation-geometrique.packages.${system}.report + "/";
+ };
+
+ services.gatus.settings.endpoints = [
+ {
+ name = "projet-modelisation-geometrique";
+ group = "n7.laurent.fainsin.bzh";
+ url = "https://n7.laurent.fainsin.bzh/projet-modelisation-geometrique/";
+ interval = "15m";
+ conditions = [
+ "[STATUS] == 200"
+ "[RESPONSE_TIME] < 300"
+ "[BODY] == pat(*Projet de Modélisation Géométrique*)"
+ ];
+ }
+ ];
}
diff --git a/hosts/cesium/services/nginx/n7/projet-oral-anglais.nix b/hosts/cesium/services/nginx/n7/projet-oral-anglais.nix
index 4eb0e03..f868068 100644
--- a/hosts/cesium/services/nginx/n7/projet-oral-anglais.nix
+++ b/hosts/cesium/services/nginx/n7/projet-oral-anglais.nix
@@ -3,5 +3,21 @@
system,
...
}: {
- alias = inputs.projet-oral-anglais.packages.${system}.slides + "/";
+ services.nginx.virtualHosts."n7.laurent.fainsin.bzh".locations."/projet-oral-anglais/" = {
+ alias = inputs.projet-oral-anglais.packages.${system}.slides + "/";
+ };
+
+ services.gatus.settings.endpoints = [
+ {
+ name = "projet-oral-anglais";
+ group = "n7.laurent.fainsin.bzh";
+ url = "https://n7.laurent.fainsin.bzh/projet-oral-anglais/";
+ interval = "15m";
+ conditions = [
+ "[STATUS] == 200"
+ "[RESPONSE_TIME] < 300"
+ "[BODY] == pat(*CAPTCHA*)"
+ ];
+ }
+ ];
}
diff --git a/hosts/cesium/services/nginx/n7/projet-oral-japonais.nix b/hosts/cesium/services/nginx/n7/projet-oral-japonais.nix
index ff2df1a..f7a9184 100644
--- a/hosts/cesium/services/nginx/n7/projet-oral-japonais.nix
+++ b/hosts/cesium/services/nginx/n7/projet-oral-japonais.nix
@@ -3,5 +3,21 @@
system,
...
}: {
- alias = inputs.projet-oral-japonais.packages.${system}.slides + "/";
+ services.nginx.virtualHosts."n7.laurent.fainsin.bzh".locations."/projet-oral-japonais/" = {
+ alias = inputs.projet-oral-japonais.packages.${system}.slides + "/";
+ };
+
+ services.gatus.settings.endpoints = [
+ {
+ name = "projet-oral-japonais";
+ group = "n7.laurent.fainsin.bzh";
+ url = "https://n7.laurent.fainsin.bzh/projet-oral-japonais/";
+ interval = "15m";
+ conditions = [
+ "[STATUS] == 200"
+ "[RESPONSE_TIME] < 300"
+ "[BODY] == pat(*わたしたちのまちは*)"
+ ];
+ }
+ ];
}
diff --git a/hosts/cesium/services/nginx/n7/projet-probleme-inverse-3D.nix b/hosts/cesium/services/nginx/n7/projet-probleme-inverse-3D.nix
index aab8d84..7b3292a 100644
--- a/hosts/cesium/services/nginx/n7/projet-probleme-inverse-3D.nix
+++ b/hosts/cesium/services/nginx/n7/projet-probleme-inverse-3D.nix
@@ -5,7 +5,24 @@
sha256 = "19s8ccvarlps70aqc8njn92sbmmjbpc1d7q08hdb5apghmkplj9f";
};
in {
- alias = "${pages}/";
- index = "index.html";
- tryFiles = "$uri $uri/ /projet-probleme-inverse-3D/index.html";
+ services.nginx.virtualHosts."n7.laurent.fainsin.bzh".locations."/projet-probleme-inverse-3D/" = {
+ alias = "${pages}/";
+ index = "index.html";
+ tryFiles = "$uri $uri/ /projet-probleme-inverse-3D/index.html";
+ };
+
+ services.gatus.settings.endpoints = [
+ {
+ name = "projet-probleme-inverse-3D";
+ group = "n7.laurent.fainsin.bzh";
+ url = "https://n7.laurent.fainsin.bzh/projet-probleme-inverse-3D/";
+ interval = "15m";
+ conditions = [
+ "[STATUS] == 200"
+ "[RESPONSE_TIME] < 300"
+ "[BODY] == pat(*slidevjs/slidev*)"
+ "[BODY] == pat(*/projet-probleme-inverse-3D/assets/index*)"
+ ];
+ }
+ ];
}
diff --git a/hosts/cesium/services/nginx/n7/projet-systemes-algorithmes-repartis.nix b/hosts/cesium/services/nginx/n7/projet-systemes-algorithmes-repartis.nix
index 2afb004..77cddfb 100644
--- a/hosts/cesium/services/nginx/n7/projet-systemes-algorithmes-repartis.nix
+++ b/hosts/cesium/services/nginx/n7/projet-systemes-algorithmes-repartis.nix
@@ -3,5 +3,21 @@
system,
...
}: {
- alias = inputs.projet-systemes-algorithmes-repartis.packages.${system}.slides + "/";
+ services.nginx.virtualHosts."n7.laurent.fainsin.bzh".locations."/projet-systemes-algorithmes-repartis/" = {
+ alias = inputs.projet-systemes-algorithmes-repartis.packages.${system}.slides + "/";
+ };
+
+ services.gatus.settings.endpoints = [
+ {
+ name = "projet-systemes-algorithmes-repartis";
+ group = "n7.laurent.fainsin.bzh";
+ url = "https://n7.laurent.fainsin.bzh/projet-systemes-algorithmes-repartis/";
+ interval = "15m";
+ conditions = [
+ "[STATUS] == 200"
+ "[RESPONSE_TIME] < 300"
+ "[BODY] == pat(*The RAFT Consensus Algorithm*)"
+ ];
+ }
+ ];
}