357 Commits

Author SHA1 Message Date
alexandre.pires 8724360fb2 Enhance infrastructure and application configurations
- Updated AGENTS.md to include new directories for execution plans and implemented feature reports.
- Modified Ansible host variables for dev-02 and gpu-01 to change API endpoints and add new configurations for Scaleway.
- Adjusted firewall rules in gpu-01 to allow HTTPS traffic instead of the previous Ollama port.
- Added OAuth2 proxy configurations to gpu-01 for enhanced security.
- Removed deprecated open-webui module from Terraform app configurations.
- Updated Terraform configurations to reflect changes in local variables and removed unused secrets.
- Created a new sectool.json file for CloudNS integration with Bitwarden.
- Enhanced SELinux configurations for nginx to allow connections to any port and added oauth2-proxy port.
2026-07-12 16:28:45 -04:00
alexandre.pires a4a8554fb6 Update firewall rules for VPN devices and add dev-02 to nginx group in inventory 2026-07-11 19:45:35 -04:00
alexandre.pires 272ed647cf Refactor and enhance Ansible configurations for dev-02 and nginx proxy setup
- Updated host_vars for dev-02 to include login history settings and modified code server authentication.
- Adjusted opencode server configurations and reduced resource allocation.
- Introduced a new playbook for configuring nginx reverse proxy with TLS and OAuth2.
- Enhanced linux_dev_station role defaults and tasks, including package updates and service configurations.
- Removed unnecessary credential assertions in linux_dev_station tasks.
- Created nginx_proxy role with tasks for certbot, nginx installation, and oauth2-proxy setup.
- Added templates for nginx and oauth2-proxy configurations.
- Updated terraform configuration to reflect new DNS records for ide and agent services.
- Documented changes and configurations in linux_dev_station.md for clarity and future reference.
2026-07-11 19:29:50 -04:00
alexandre.pires 5818b05d96 Enhance Linux and macOS development station configurations:
- Add user management and Oh My Zsh settings
- Update service scripts to use Zsh
- Include new packages and environment variables
- Modify Terraform configuration for upstream services
2026-07-10 17:15:24 -04:00
alexandre.pires 59b2c10c43 Add Linux development station role with systemd services for code-server and OpenCode
- Implemented handlers for restarting code-server and OpenCode services.
- Created main tasks for setting up a Linux development station, including user management, package installation, and configuration.
- Added validation for OpenCode server credentials and code-server password.
- Introduced tool package management for npm, uv, and go installers.
- Developed templates for systemd service units for code-server and OpenCode.
- Included scripts for starting code-server and OpenCode with SSH agent support.
- Updated inventory and Terraform configuration to include new development host.
2026-07-10 15:44:18 +02:00
alexandre.pires e1ebe7d139 Merge branch 'fix/copilot-install' 2026-07-07 20:54:00 +02:00
alexandre.pires 86decddcd1 Refactor Gitea runner configurations: remove obsolete runners, add container name resolution, and implement stale container cleanup 2026-07-07 20:50:48 +02:00
alexandre.pires c1c2d1c83b Refactor Dockerfiles for Gitea runners: streamline package installations, remove unnecessary dependencies, and ensure non-root execution 2026-07-07 20:50:04 +02:00
alexandre.pires 58ca1561ec Refactor Dockerfiles for Gitea runners: update package installations, remove obsolete files, and enhance build configurations 2026-07-06 21:13:11 +02:00
alexandre.pires 95efe242ac Add GitHub Copilot installation support to macOS development station 2026-07-06 17:04:24 +02:00
alexandre.pires 3063561832 Improved mac dev station role 2026-07-05 20:55:48 +02:00
alexandre.pires ebbb1254fb Initial setup of gitea actions 2026-07-05 18:36:41 +02:00
alexandre.pires 040f7a382f Add macOS development station playbook and role
- Created a new Ansible playbook for configuring macOS development stations.
- Added role `macos_dev_station` with default variables, handlers, and tasks.
- Implemented tasks for installing Homebrew packages, managing user configurations, and setting up launch agents for code-server and opencode.
- Included templates for launchd plist files and startup scripts for code-server and opencode.
- Added validation for required environment variables and configurations.
- Updated inventory to include macOS hosts and added a setup script for initial prerequisites.
- Modified Terraform configuration to include DNS records for new services.
2026-07-04 15:37:35 +02:00
alexandre.pires dfeaea3283 Refactor Windows Gitea runner Dockerfiles and update CI configuration 2026-07-03 23:56:19 +02:00
alexandre.pires 9a9b36cac6 Add multiple Dockerfiles for various Gitea runner profiles and update host vars 2026-07-03 21:52:13 +02:00
alexandre.pires c6f3b0f829 Add Windows Gitea runner role with Podman and Docker support
- Created templates for configuration files for both Podman and Docker-based Windows Gitea runners.
- Added default variables for Windows Gitea runner role, including instance URL, registration token, and image settings.
- Implemented tasks for validating settings, ensuring Docker service is running, and managing Docker users.
- Developed logic for building and managing Windows runner images and containers, including checks for existing images and containers.
- Updated inventory to include new groups for Windows Gitea runners.
- Adjusted Terraform configurations for timeout settings in ingress resources.
2026-07-03 19:12:48 +02:00
alexandre.pires c4d1db3a91 Add Windows runner profiles and configuration for Gitea CI
- Introduced Dockerfiles for various Windows runner profiles: C/C++, .NET, Go, and MSYS.
- Added a PowerShell script to start the Gitea runner with appropriate configurations.
- Updated Ansible host variables to include new Windows build root and runner configurations.
- Enhanced the Windows Gitea runner role to support multiple execution modes (linux_podman and windows_mcr).
- Implemented tasks to validate runner execution modes, ensure necessary services are running, and manage Docker containers for Windows runners.
- Created a new task file for managing Windows-specific runner operations.
- Updated the configuration template to dynamically set paths for runner files and cache directories.
2026-07-03 00:18:20 +02:00
alexandre.pires e59a832d5d Added linux gitea runners 2026-06-30 20:31:12 +02:00
alexandre.pires df5a98853b auto_suspend: binary GPU idle counter replaces EMA for GPU 2026-06-29 18:10:35 +02:00
alexandre.pires 4825ad1495 - Added windows llama proxy
- Added terraform-mcp
- Added S3 storage to gitea
- Changed context size for windows LLMs
- Changed number of cores for VMs, added P2000 support
2026-06-29 14:31:28 +02:00
alexandre.pires 80c154df03 auto_suspend: busctl->shutdown now, 1min timer config, AMD JSON parsing, locale fix, unit tests 2026-06-09 20:45:08 +02:00
alexandre.pires f8a0a8ab1f fix(auto_suspend): update SELinux context handling to avoid ignoring errors 2026-06-08 22:14:41 +02:00
alexandre.pires 98b0f215aa Add fixtures and unit tests for auto suspend functionality
- Introduced fixture files for AMD and NVIDIA GPU monitoring outputs, CPU usage statistics, and user sessions.
- Created a comprehensive unit test suite for the auto_suspend module, covering state management, CPU and GPU measurement, user activity detection, and evaluation logic.
- Updated Ansible tasks to install Python instead of bc, create necessary directories and log files, and ensure proper SELinux context for the auto suspend script.
- Modified the systemd service and timer configurations to improve the auto suspend functionality, including command-line arguments for the Python script.
2026-06-08 22:09:21 +02:00
alexandre.pires 25d3eafa5b Add support for Ubuntu containers and WSL verification
- Implemented tasks for managing Ubuntu containers using Podman, including inspection, creation, starting, and SSH setup.
- Added verification tasks for WSL and Podman installation, machine existence, and NSSM service status.
- Created PowerShell scripts for Podman auto-start on Windows boot.
- Introduced Prometheus role with default configurations and installation tasks.
- Updated Windows SSH role to improve authorized_keys management and permissions handling.
- Modified inventory to include Windows containers host.
- Updated Grafana datasource configurations with direct IP addresses for Prometheus instances.
2026-06-07 20:35:59 +02:00
alexandre.pires 3775fa4b6e Refactor llama_server role for Windows support and EL-specific setup
- Added Windows-specific tasks for llama_server role, including installation of dependencies, setup of services using NSSM, and configuration of firewall rules.
- Introduced a new task file for Windows Exporter setup.
- Consolidated EL-specific setup tasks into a separate include file.
- Updated inventory to include additional host for llama server.
- Adjusted error handling in Prometheus service removal task to prevent failures.
2026-06-01 14:59:30 +02:00
alexandre.pires bb8b14dcca feat(vaultwarden): add SMTP password handling and update email configurations 2026-05-30 23:48:41 +02:00
alexandre.pires ec740f458f feat(vaultwarden): add SMTP configuration options and enhance signup settings
- Introduced SMTP settings for Vaultwarden including host, port, security, and authentication details.
- Added variables for signup verification, 2FA settings, password hints, and logging options.
- Updated Vaultwarden deployment to utilize new SMTP configurations.
- Enhanced Grafana module to support dynamic dashboard and datasource provisioning.
- Added LLM proxy configuration for Open Web UI with necessary environment variables.
2026-05-30 23:24:44 +02:00
alexandre.pires 350650ecc2 Add GPU monitoring services and configurations
- Create systemd service templates for llama_exporter, nvidia_exporter, and podman.
- Add Prometheus configuration template for GPU metrics scraping.
- Introduce variables for GPU monitoring role in main.yml.
- Implement tasks for syncing llama models, including user setup and package installation.
- Update podman tasks to ensure proper sudo access and lingering for the podman user.
- Modify inventory to include gpu_monitoring group.
- Add Terraform modules for deploying Vaultwarden, including ingress and service configurations.
- Create Grafana dashboard for real-time GPU monitoring metrics.
- Update secrets and environment files to include Vaultwarden admin token.
2026-05-29 23:42:14 +02:00
alexandre.pires e9e28a5ca8 Add new model files and update Ansible playbooks for Qwen3.5 and Qwen3.6
- Created model files for Qwen3.5 with different context lengths.
- Added a new Ansible host variable file for CI server configuration.
- Updated GPU server host variables to include Ollama models and model files.
- Enhanced playbooks for Podman to manage Ollama models, including copying model files and checking existing models.
- Introduced a new playbook for setting up Qwen3.6 with specific configurations.
- Updated Windows SSH tasks to improve security and configuration management.
- Added a Python utility to parse Ollama model names from command output.
- Modified Terraform configurations to include new DNS entries and proxy settings.
- Improved Nginx proxy configurations with timeout settings.
2026-05-27 23:53:00 +02:00
alexandre.pires dd943c8963 fix: Add missing newline at end of trivy vulnerabilities dashboard JSON file 2026-05-22 23:41:31 +02:00
alexandre.pires 255ba6aec9 feat(trivy): Enhance Trivy report generation and metrics handling
- Updated `generate_report.sh` to include additional scanners and output paths.
- Enhanced `send_report.py` with new data classes for misconfigurations and vulnerabilities.
- Improved parsing logic for Trivy output, supporting both Kubernetes and image scans.
- Added Prometheus metrics generation for various scan results, including misconfigurations and vulnerabilities.
- Introduced unit tests for parsing Trivy output and generating Prometheus metrics.
- Modified Terraform variables for SMTP port type and added Pushgateway URL variable.
2026-05-22 23:41:26 +02:00
alexandre.pires 829ab48919 feat: Add SearXNG module and update infrastructure
- Introduced a new SearXNG module with configuration for Kubernetes deployment, service, and ingress.
- Updated existing Terraform app modules to include SearXNG in both dev-01 and prod-01 environments.
- Added necessary variables and secrets for SearXNG in the respective Terraform files.
- Updated Dockerfiles for llama.cpp and ollama to use latest versions.
- Enhanced security and hardening defaults in Kubernetes deployments.
- Improved documentation for Copilot instructions and Terraform workflows.
2026-05-20 20:58:02 +02:00
alexandre.pires dcf9a5c796 feat: Update Gitea version to 1.25-rootless and add SSH server key exchanges configuration 2026-03-09 22:03:30 +01:00
alexandre.pires 5acdfd6b23 feat: Remove virtio_fs configuration from virtual machine definitions 2026-01-08 23:50:03 +01:00
alexandre.pires 2c8b753393 feat: Update configuration for Nextcloud and Certbot, add image and video organization scripts 2026-01-08 23:39:55 +01:00
alexandre.pires 3c6647c215 feat: Add VFIO binding script and update playbook for enhanced virtualization support 2026-01-02 23:15:08 +01:00
alexandre.pires 03d5b39a4b feat: Add ROCm support and update Ollama configurations
- Created ansible playbooks for setting up AMD ROCm container environment.
- Added ROCm and AMD Graphics repositories in ansible tasks.
- Installed necessary ROCm packages including rocm-dkms and developer tools.
- Updated Dockerfile for Ollama to use version 0.13.4 and created a new Dockerfile for ROCm support.
- Enhanced game station scripts for better performance and added MangoHud configuration.
- Modified systemd service files to allow CPU core allocation.
- Updated playbooks for Ollama and Qwen2 to include new configurations and environment variables.
- Added Wake-on-LAN systemd service configuration.
- Updated Terraform configurations to include secret management for the web UI.
- Refactored Kubernetes deployment for open-webui to include secret handling and improved volume management.
2025-12-25 16:37:05 +01:00
alexandre.pires 4781ddbaff feat: Remove framerate and threaded optimizations from gamescope session script 2025-12-01 19:46:45 +01:00
alexandre.pires b4f4fe2f07 Refactor SteamOS session management and launcher scripts
- Removed obsolete launch_desktop.sh and launch_session.sh scripts.
- Introduced new steam-launcher script to handle Steam launching and session tracking.
- Added steam-short-session-tracker for monitoring short Steam sessions and triggering repairs.
- Created steamos and steamos-session scripts for managing the SteamOS session.
- Implemented steamos-session-select for switching between Gamescope and Plasma sessions.
- Updated SDDM configuration for autologin and session management.
- Added new systemd services and targets for managing Gamescope and Steam sessions.
- Created desktop entries and icons for ALVR and SteamOS shortcuts.
- Enhanced logging and error handling across scripts.
- Cleaned up unused systemd slice and service files.
- Updated Ansible playbook to reflect new configurations and file structures.
2025-12-01 17:25:18 +01:00
alexandre.pires edbe8fbf6f feat: Add ALVR installation and configuration to playbook, update mstream module with ingress and deployment resources 2025-11-18 18:19:42 +01:00
alexandre.pires b3601e08b1 feat: Update launch script and playbook for enhanced Gamescope and NVIDIA support 2025-11-16 14:31:55 +01:00
alexandre.pires 0cf0261359 feat: Update launch scripts for improved Gamescope and Steam integration, add custom EDID firmware, and enhance session management 2025-11-10 14:07:12 +01:00
alexandre.pires df2931ca81 feat: Enhance NVIDIA module management and optimize boot configuration 2025-11-01 15:27:21 +01:00
alexandre.pires d22ac2d4f4 feat: Update launch scripts to improve error handling and streamline RetroArch launching 2025-10-31 20:16:49 +01:00
alexandre.pires d42d717f6c feat: Add scripts and systemd services for SteamOS session management and game launching 2025-10-31 19:57:42 +01:00
alexandre.pires 7a7f2711fe feat: Add Gamescope and Sunshine configuration files and update session management 2025-10-28 19:24:43 +01:00
alexandre.pires 9fa68f3bc5 feat: Add configuration and scripts for Sunshine and Gamescope integration 2025-10-28 00:04:17 +01:00
alexandre.pires 49de842b57 feat: Refactor game station launch scripts and update session management 2025-10-27 00:06:05 +01:00
alexandre.pires adc893de6e feat: Enhance game station setup and configuration
- Updated README with detailed instructions for creating a dedicated Ansible user on Linux, including SSH key setup and passwordless sudo.
- Added userConfigurations.json for Steam ROM Manager with configurations for various gaming consoles.
- Introduced scripts for managing Gamescope and Steam sessions, including launch scripts for various emulators (Genesis, PSP, RPCS3, SNES).
- Created systemd service for Gamescope session management.
- Developed Ansible playbook for configuring Fedora for optimized Sunshine and Gamescope streaming, including user setup and system configurations.
- Updated Prometheus configuration to reflect changes in exporter targets.
- Commented out the Devolo exporter module in Terraform configuration for future reference.
2025-10-25 23:54:05 +02:00
alexandre.pires 161efa5230 fix(devolo-exporter): adjust scrape interval and enhance health check functionality 2025-10-14 22:43:02 +02:00