diff --git a/modules/nixos/server/default.nix b/modules/nixos/server/default.nix index 0f9ccaa..6fa6bae 100644 --- a/modules/nixos/server/default.nix +++ b/modules/nixos/server/default.nix @@ -10,6 +10,7 @@ enable = true; loadCredential = [ "cf_token:${config.sops.secrets."keys/cloudflare".path}" + "telegram_bot_token:${config.sops.secrets."keys/telegram_bot".path}" ]; settings = { provider = "Cloudflare"; @@ -41,6 +42,14 @@ ]; ip_type = "IPv4"; interval = 300; + notify = { + telegram = { + enabled = true; + bot_api_key_file = "$CREDENTIALS_DIRECTORY/telegram_bot_token"; + chat_id = "384288005"; + message_template = "Domain *{{ .Domain }} has been updated to %0A{{ .CurrentIP }}"; + }; + }; }; }; }) diff --git a/modules/nixos/system/secrets.nix b/modules/nixos/system/secrets.nix index cee97db..d7c01bf 100644 --- a/modules/nixos/system/secrets.nix +++ b/modules/nixos/system/secrets.nix @@ -8,6 +8,7 @@ "keys/gemini" = { }; "keys/cvt-jira" = { }; "keys/cloudflare" = { }; + "keys/telegram_bot" = { }; "misc/cvt-jira-link" = { }; "rafiq/hashedPassword".neededForUsers = true; }; diff --git a/secrets/secrets.yaml b/secrets/secrets.yaml index dfbaa5f..504f350 100644 --- a/secrets/secrets.yaml +++ b/secrets/secrets.yaml @@ -5,6 +5,7 @@ keys: gemini: ENC[AES256_GCM,data:t4XTzJLMbHBG7LNaWMwO0YyYHREYOp4Zn95Kwshunnpwq9ezVv+0,iv:ZHq1ytak7Qy5a/zHghwEIWRinDWAkk2Vxw4iu/Q/UPk=,tag:Wyk0FqLTOWelznWHg/anxg==,type:str] cvt-jira: ENC[AES256_GCM,data:y9enN905hAxp9F6TPcnYdcnA7VQQjTsysltBn7k9CVtOYUDBX5UKCbO4VEE=,iv:Hy/RshBTSFqEVlHq/fi/UqNdbzBvMaBmXnSHAz0WplY=,tag:bBgB+HJdHRu4bg/f9vq9nw==,type:str] cloudflare: ENC[AES256_GCM,data:nrtHnQR0Oon9BrSN0AeAjl8H8B7quuwSu/Qjabe9HFpWgcZq9n1JCA==,iv:ovyHqy5iKXDYXe4H7eRA51+kODhP+vAWoc98cS/6zG0=,tag:JyktO6EMRZ00CRhTb03+fg==,type:str] + telegram_bot: ENC[AES256_GCM,data:qGJx1Bph94oU2USjZL4h2NqV5ueCiYIvEbx84Xg687F5//MItLAS58MZdUPSuQ==,iv:WmldN5Je4miamLXCK6Cv17TTGmaBq/lde2czsEgNBi4=,tag:aU27eDE5PbYAniKEXk+MRA==,type:str] misc: cvt-jira-link: ENC[AES256_GCM,data:J3XpDV2yjO5DMd5JF2stCBWZntTxenHuj+kXGAOs8oI=,iv:1YqJ6NF24CtA+E8ZB0M/7//xihFggyMMj0k0voaVPa0=,tag:XTZqC4gAy5ld0nFyAqL/Ww==,type:str] sops: @@ -18,7 +19,7 @@ sops: WXFKbjNMWDF0LzNyekJJMGFva2diemcKQTc8ODuK6IWqRhulHiCF92aU+3p23riY M94Nzh+VT6QTFOgb3J7bBJMLhRH/fkQb6L6ia2n9QrVXFyYYMJ0oBw== -----END AGE ENCRYPTED FILE----- - lastmodified: "2025-05-28T07:06:10Z" - mac: ENC[AES256_GCM,data:NN4ZHiyrLJuJeMb65GiJa1e7/9KhpKKEju9QeWSVNyzG3wRh/+hLbnBw0K6r6C2sburzOgkeEviTPWKdMluQlgWI8J+Ev4evz5aQ++HPWWoe39kNulv467d52Sc/HyOsvBQZJ/Gbh0VmfsNk4xRht9Vl50K/FbP7+f6WU7yQcxw=,iv:EucE/AqdUZFWUGVaHExt2IXl0/evjnwVL84EHO0A0io=,tag:eT6teEIYJShs/+QbX676qA==,type:str] + lastmodified: "2025-05-29T08:03:55Z" + mac: ENC[AES256_GCM,data:MpX28rLk3L8W2iKETg/+T2ngQAJhipCTod2l7JhRO7eBcV9TskD6f8Cm/rfC7NtlwItTwO3oY8MC/oT31UbJw85nlk94puPqkynqckDp3QgmOhq4491rmhEuhjXJW0ukeFa/Bffiv20SHQKizAZ2MRbUXxdyX9uG9+5ibSVuGAI=,iv:XFYuG2KCl2nwEvjCRE6LqYghIcIWVvlgnS+6l89XvYQ=,tag:wT9MrEM8bsUu10ZHyCx7TA==,type:str] unencrypted_suffix: _unencrypted version: 3.10.2