357 Commits

Author SHA1 Message Date
alexandre.pires d069fe3585 feat(cert-checker): add Kubernetes resources for certificate checking functionality
- Implemented a new module for cert-checker with Kubernetes resources including ServiceAccount, Role, RoleBinding, ConfigMap, and CronJob.
- Added Python script to check certificate expiry and restart deployments if necessary.
- Configured environment variables for deployment name, namespace, and service details.
- Included requirements for the Python environment.

feat(devolo-exporter): introduce Devolo exporter for Prometheus metrics

- Created a new module for Devolo exporter with Kubernetes resources including ServiceAccount, ConfigMap, Deployment, and Service.
- Developed Python scripts to scrape metrics from Devolo devices and expose them to Prometheus.
- Configured environment variables for Devolo device IP, model, and ports.
- Added requirements for the Python environment.
2025-10-13 22:35:35 +02:00
alexandre.pires 84c8288f8a feat: implement getmail runner script and update email fetching configuration 2025-10-06 23:36:50 +02:00
alexandre.pires 7f9a64b0ed fix: update telegram chat ID comment for clarity 2025-10-06 18:49:02 +02:00
alexandre.pires 429a94332e feat: add disk exporter module and related configurations
- Introduced a new disk exporter module to monitor disk health using SMART data.
- Updated `apps.tf` to include the disk exporter module with necessary parameters.
- Added local variables for smartctl version and checksum in `config.tf`.
- Enhanced `alertmanager.yml` to handle DiskUnhealthy alerts with specific grouping and dispatch settings.
- Created new Prometheus rules for monitoring disk health, including alerts for unhealthy disks.
- Updated Prometheus configuration to scrape metrics from the new disk exporter.
- Enhanced Telegram notification template to include resolved alerts and improved formatting.
- Updated the auth-exporter module to specify the Python image tag correctly.
- Created the disk-exporter module with Kubernetes resources, including deployment, service account, and config map.
- Added necessary Python scripts and requirements for the disk exporter functionality.
2025-10-06 18:41:01 +02:00
alexandre.pires 0e167d747d Add hpz440 host configuration and SSH setup for Windows; update Prometheus targets and variables 2025-10-05 23:18:44 +02:00
alexandre.pires 9b330f84a2 Enhance Telegram alert template: add handling for resolved alerts and improve message formatting 2025-10-05 00:02:43 +02:00
alexandre.pires 0d3fb56f78 Add Prometheus and Alertmanager configurations: implement custom rules, alerting, and Telegram notifications 2025-10-04 18:05:10 +02:00
alexandre.pires 7cad175406 Add Prometheus setup for Windows: implement playbook, tasks, and Grafana dashboard configuration 2025-10-03 21:56:31 +02:00
alexandre.pires cd69dbc25a Add auth exporter module: implement Prometheus scrape configuration, exporter logic, and Grafana dashboard 2025-10-03 00:59:58 +02:00
alexandre.pires eb60d37c2d Add auth exporter module: implement Kubernetes resources, exporter logic, and testing 2025-10-03 00:26:47 +02:00
alexandre.pires 0a0d4c9c15 Add Node Exporter and Fail2Ban Exporter modules: implement Kubernetes resources and Prometheus scrape configurations 2025-10-02 20:02:53 +02:00
alexandre.pires a412c96c46 Add cert checker module: implement Kubernetes resources, certificate validation logic, and deployment restart functionality 2025-10-02 16:53:28 +02:00
alexandre.pires e6a3f3affd Add custom error pages and Nginx configuration for proxy module
- Introduced custom HTML error pages for various HTTP status codes (400, 401, 403, 404, 408, 429, 500, 502, 503, 504) in the proxy module.
- Created a .gitignore file to exclude non-HTML files in the error resources directory.
- Updated Nginx configuration to serve custom error pages for upstream errors.
- Added new Nginx configuration templates for handling HTTP and stream protocols.
- Implemented Wireguard configuration templates and associated variables for secure connections.
- Established Kubernetes resources for Stunnel and Wireguard, including deployment, service accounts, and config maps.
- Defined variables for the Stunnel and Wireguard modules to facilitate configuration.
- Created a new Wol Proxy module with Kubernetes resources for deployment and service management.
2025-10-02 00:19:01 +02:00
alexandre.pires 4d00986273 Refactor Trivy integration: update report generation scripts, enhance email dispatch logic, and remove obsolete test file 2025-09-22 19:23:45 +02:00
alexandre.pires 1e8526f442 Enhance Trivy integration: update email dispatch logic, add LLM prompt generation, and improve security context in deployments 2025-09-21 23:55:53 +02:00
alexandre.pires aee57a8b89 Refactor Gitea and SSH configurations, update backup scripts, and enhance Nginx settings
- Updated SSH configuration for Gitea to disable banner and TTY, and modified the AuthorizedKeysCommand.
- Simplified gitea-shell script to directly call the k8s_gitea_shell command with required parameters.
- Removed unused gitea-auth script from playbook_gitea.yml.
- Updated systools_version in playbook_systools.yml to 0.4.5.
- Enhanced ssh_locker_helper to copy redirect URL to clipboard based on OS.
- Added a new script test_imaps for IMAP testing.
- Updated Terraform configurations for various applications, including:
  - Added a backup script for MariaDB with retention policy.
  - Changed Gitea version to 1.24-rootless and adjusted SSH settings.
  - Updated Nginx configurations to log errors and access to stderr/stdout.
  - Refactored services to use ClusterIP type and adjusted security contexts for deployments.
  - Added temporary storage for applications using empty_dir.
  - Enhanced backup.sh scripts for better error handling and logging.
2025-09-20 21:34:33 +02:00
alexandre.pires ff4197e757 Refactor m3uproxy configuration: update cache and data paths, adjust JSON structure for EPG and auth file 2025-09-07 20:56:44 +02:00
alexandre.pires 50758b2bb2 Update Dockerfile and Terraform configurations: upgrade Ollama version, add log level variable, and set default log level 2025-09-07 20:42:06 +02:00
alexandre.pires fa2d111bbe Minor fixes 2025-07-06 23:09:45 +02:00
alexandre.pires bef5d94023 Adde a few changes 2025-07-06 22:56:13 +02:00
alexandre.pires 1cc8294883 Update README and requirements: add MSYS2 setup instructions, remove unused packages 2025-07-06 14:08:22 +02:00
alexandre.pires 372df1b9e9 Add Windows game optimization setup and configuration scripts 2025-07-05 21:36:47 +02:00
alexandre.pires bc85a7bcef Added missing FW rule 2025-06-22 18:51:27 +02:00
alexandre.pires 6579e15394 Added auto-suspend, added wol proxy for ollama 2025-06-22 18:43:55 +02:00
alexandre.pires dab5520630 Enable WOL ansible task 2025-06-22 13:25:47 +02:00
alexandre.pires c162944a73 Add support for nginx streams 2025-06-16 23:19:25 +02:00
alexandre.pires b813cf8eda Added opnsense install 2025-06-15 22:48:22 +02:00
alexandre.pires fc21db9e43 Disabled sftpgo 2025-06-10 17:15:54 +02:00
alexandre.pires b130883bc6 Enable delete of mails after deliver 2025-06-10 17:07:44 +02:00
alexandre.pires 826959c903 Add Nextcloud deployment and configuration
- Introduced Nextcloud module with Kubernetes resources including deployment, service, ingress, and cron job.
- Configured Apache settings for Nextcloud with SSL support and compression.
- Created secrets for mail and admin credentials.
- Added necessary environment variables for Nextcloud configuration.
- Removed unused Scaleway access and secret keys from secrets and variables.
- Updated CoreDNS module to support custom host overrides.
- Implemented backup bucket policies and lifecycle rules for Scaleway object storage.
- Enhanced IAM policies and applications for backup and email services.
- Added outputs for backup bucket and API keys.
2025-06-09 23:49:43 +02:00
alexandre.pires cac269f160 Minor fixes 2025-06-09 13:34:30 +02:00
alexandre.pires 359b6d47aa feat(comfyui): add Dockerfile, playbook, and Terraform configurations for ComfyUI setup 2025-06-08 21:18:53 +02:00
alexandre.pires d969525b58 feat(nginx-reverse-proxy): add custom error pages and update configuration for error handling 2025-06-07 22:10:42 +02:00
alexandre.pires 01bf71f8d2 feat(cert-manager): Add Cloudns issuer and DNS-01 challenge support
- Introduced a new Cloudns issuer configuration for cert-manager.
- Created separate tasks for DNS-01 and HTTP-01 challenge issuers.
- Updated cert-manager tasks to include Cloudns provider and manage secrets.
- Refactored existing LetsEncrypt issuer registration to use new task structure.
- Added necessary Kubernetes resources for Cloudns integration, including RBAC and certificates.
- Updated Terraform configurations to support new DNS records and service changes.
- Adjusted deployment strategies for CoreDNS and Open WebUI applications.
2025-06-07 20:39:38 +02:00
alexandre.pires 3cda0b5624 Add configuration for CoreDNS and update host variables for lab environment 2025-06-07 16:12:55 +02:00
alexandre.pires d3b8aff1ae - Implemented samba service
- Improved firewall rules
2025-06-06 23:49:38 +02:00
alexandre.pires 3ea65f060f Major changes 2025-06-05 23:27:50 +02:00
alexandre.pires a2dc223d1f Added kokoro 2025-06-03 23:43:19 +02:00
alexandre.pires 755e14a602 Improved AI roles 2025-06-02 22:52:04 +02:00
alexandre.pires 54f7e5536a Added support for private apis 2025-06-02 01:42:17 +02:00
alexandre.pires b0162abb88 Addes support for reverse proxy to home server 2025-06-01 17:14:33 +02:00
alexandre.pires 8dd48ec2c7 feat(ansible): add AI tools setup playbook and related configurations 2025-05-31 17:59:01 +02:00
alexandre.pires b692627317 Add configuration and playbook for virtualization host setup
- Create host variable file for vh-01.alexpires.dev with user, SSH, firewall, and VM configurations.
- Update playbook_duo_security.yml to target the 2fa group.
- Introduce playbook_virt_host.yml for setting up GPU passthrough on Fedora with QEMU/KVM.
- Add required collections to requirements.yml for Podman and Libvirt.
- Modify ctrlaltdel.yml to remove existing symlink for ctrl-alt-del.target before masking it.
- Enhance users.yml to show warnings for users that could not be removed.
- Update Duo Security role to use the correct repository and package names.
- Improve login role to handle user UID and group assignments.
- Create udev rules template for NVMe devices.
- Add blacklist template for VFIO drivers.
- Implement domain XML template for virtual machines with detailed configurations.
- Update inventory to include vh-01.alexpires.dev in relevant groups.
- Refactor cpu_power_monitor.py for improved error handling and modularity.
2025-05-31 00:28:04 +02:00
alexandre.pires c1c92a866e Add Windows 11 VM configuration and setup for GPU passthrough
- Created a new XML configuration file for Windows 11 VM with enhanced resource allocation and device settings.
- Added an old configuration file for reference.
- Implemented an Ansible playbook to set up a GPU passthrough host on Fedora, including necessary package installations, GRUB configuration, and udev rules for persistent device access.
- Introduced a Python script to monitor CPU power usage via Intel RAPL interface.
2025-05-29 19:33:07 +02:00
alexandre.pires 071b4eea9e feat(ssh_locker): implement ssh locker helper scripts and configuration for Duo API integration 2025-05-22 22:55:27 +02:00
alexandre.pires f6be1d5dbe feat(ansible): update playbook to install ssh_locker service and create shared socket directory 2025-05-19 20:09:09 +02:00
alexandre.pires 2ba2df5cf7 refactor(encryption): update aws-encryption-provider service to use k8s_encryption_provider and remove obsolete scripts 2025-05-19 00:41:28 +02:00
alexandre.pires c9def750f6 feat(ansible): add playbook for installing A13Labs systools with tasks for downloading, unpacking, and setting permissions 2025-05-19 00:34:21 +02:00
alexandre.pires fef5c73726 feat(fwknopd): add Ansible role for fwknopd management with necessary tasks and configurations 2025-05-18 15:50:18 +02:00
alexandre.pires 4e07e062ce fix(m3uproxy): update playlist file references from .m3u8 to .json and correct descriptions in variables 2025-05-18 12:20:49 +02:00