Commit Graph

61 Commits

Author SHA1 Message Date
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 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 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 15b07ea85d feat(encryption): refactor encryption provider scripts, update KMS integration, and enhance key management 2025-05-12 22:43:42 +02:00
alexandre.pires 05d1624bdd feat(terraform): update metallb version, refactor IAM policies, and enhance security 2025-05-11 20:58:05 +02:00
alexandre.pires 457f2bd810 feat(encryption): implement AWS KMS integration with encryption provider and update related configurations 2025-05-11 19:41:48 +02:00
alexandre.pires bbc4fef0e8 feat(trivy): add Trivy integration with Kubernetes, including cron job and email reporting 2025-05-10 18:16:08 +02:00
alexandre.pires e6e85b00f7 feat(mail): enhance mail configuration with getmail and dovecot settings
- Added getmail configuration generation using template files.
- Introduced postfix and dovecot configuration checksums for deployment.
- Created new dovecot configuration file and sieve script for email handling.
- Updated main.tf to utilize local variables for configuration management.
- Removed redundant external password hasher from main.tf.

feat(nginx): improve nginx configuration management

- Centralized nginx configuration into a local variable with checksum.
- Created separate config maps for default website configurations.
- Updated deployment to utilize new configuration structure.

feat(sftpgo): add SFTPGo application deployment

- Introduced SFTPGo with Kubernetes resources including namespace, config maps, and secrets.
- Configured SFTPGo with SMTP settings and AWS credentials.
- Implemented health checks and volume mounts for persistent storage.

refactor(seafile): remove Seafile module

- Deleted Seafile module and associated resources as part of cleanup.
2025-05-05 00:47:36 +02:00
alexandre.pires 5b341c9430 feat: Update Ansible playbooks and host variables for improved organization and functionality 2025-05-02 14:24:08 +02:00
alexandre.pires 4e5346e2e0 feat: Enhance website deployment and build process
- Added rsync installation in setup-env action for file synchronization.
- Excluded playbook_websites.yml from ansible-apply-playbook workflow.
- Created a new workflow for building and releasing the Hugo website.
- Added submodule for Hugo theme in .gitmodules.
- Updated host_vars for production to include websites configuration.
- Introduced playbook_websites.yml for managing static files deployment.
- Implemented hugo_build script for building and archiving Hugo sites.
- Updated inventory to include a new web group for website deployment.
- Refactored Terraform configuration to support new website structure.
- Removed deprecated WordPress Terraform configuration.
- Added .gitignore files for websites and specific Hugo site.
- Created archetype and configuration files for the Hugo site.
- Added static assets including CV and images for the Hugo site.
- Integrated Hugo profile theme as a submodule for the website.
2025-04-27 14:03:56 +02:00
alexandre.pires d15ee52a49 Add Fail2Ban configuration for Postfix and create playbooks for Duo Security and GeoIP roles 2025-04-24 22:24:13 +02:00
alexandre.pires b4178c92a2 Add Fail2Ban playbook for Linux hosts 2025-04-24 19:53:59 +02:00
alexandre.pires 558c867bc7 Add fail2ban configuration for Postfix and adjust logging settings 2025-04-24 19:34:28 +02:00
alexandre.pires e980abcb2e Refactor RHEL7 repository installation command for better readability 2025-04-24 19:16:22 +02:00
alexandre.pires 2657388998 Refactor sectool usage in workflows to include configuration file and remove redundant sectool.json files 2025-03-22 13:06:35 +01:00
alexandre.pires 51d6229b03 Enhance mail configuration: add envelope support in Sieve, create SMTP and IMAP SRV records, update Dovecot settings, and implement Postfix startup script 2025-03-16 19:37:44 +01:00
alexandre.pires afe0a1010d Add mail playbook and update firewall rules for mail services 2025-03-15 22:49:13 +01:00
alexandre.pires 7c5f6c5f0f Updated to new sectool 2025-03-15 22:45:15 +01:00
alexandre.pires e8710ea134 Refactor database path variables in Ansible and Terraform playbooks; add local database folder variable 2025-01-12 15:15:16 +01:00
alexandre.pires 09067f62b2 Added comments 2024-12-12 18:55:45 +01:00
alexandre.pires 8bf60ac9c0 Added office ip to access k8s 2024-12-12 18:46:12 +01:00
alexandre.pires 226425fad9 Changed back to portugal ip 2024-12-12 18:44:34 +01:00
alexandre.pires 01ff893f8d Changed ip of office 2024-12-12 18:35:25 +01:00
alexandre.pires d9600e2734 Added Terraform/Ansible configuration to include RustDesk deployment 2024-10-26 21:41:10 +02:00
alexandre.pires 748b8ff7e2 Refactor Ansible actions to improve host inventory handling 2024-10-06 18:06:37 +02:00
alexandre.pires b0a0e4ea4d Refactor host_vars and inventory paths for prod-01.alexpires.me 2024-10-06 14:33:19 +02:00
alexandre.pires 90852bb9a6 Refactor AIDE configuration and add exclusion paths 2024-10-05 21:19:51 +02:00
alexandre.pires 9c02c2b839 Refactor inventory path in ansible.cfg 2024-10-05 19:26:07 +02:00
alexandre.pires f8ddb332e8 Minor fixes
- DNS implementation
- Fixed missing mount in encrypted volumes
- Improved chronograph.sh
2024-10-05 18:11:41 +02:00
alexandre.pires 325c105fe3 Added monitoring support 2024-10-03 23:03:41 +02:00
alexandre.pires 6c1d7f59b3 Refactor requirements-dev.txt and remove molecule-vagrant 2024-10-02 21:28:32 +02:00
alexandre.pires ff523bd14b Refactor inventory file and add encryption scripts 2024-10-01 22:57:13 +02:00
alexandre.pires 9ae5a6446b Add encryption role and related files 2024-09-29 16:11:31 +02:00
alexandre.pires a03aca39df Refactor ansible-apply.yaml to include playbook_login.yml 2024-09-29 11:42:32 +02:00
alexandre.pires 5324ef7ec0 Refactor encryption secret in microk8s install.yml and repository.vault 2024-09-29 01:38:48 +02:00
alexandre.pires 6a9c86bd91 Refactor encryption secret in microk8s install.yml 2024-09-29 01:19:11 +02:00
alexandre.pires 0cef49cda3 Refactor encryption secret in microk8s install.yml 2024-09-29 01:11:37 +02:00
alexandre.pires 2206c2b67a Refactor systemd unit files for mounting and opening LUKS devices 2024-09-29 00:16:51 +02:00
alexandre.pires abf28888fb Refactor ansible-lint configuration 2024-09-28 23:30:41 +02:00
alexandre.pires d2bf2ed418 Refactor sshconfig.yml to set ssh version as fact only when ssh_version.stderr is not empty 2024-09-28 23:24:08 +02:00
alexandre.pires 6248286ad2 Encryption and major changes 2024-09-28 23:12:19 +02:00
alexandre.pires 1f060541c3 Refactor playbook_microk8s.yml and ansible-apply.yaml
Simplify playbook_microk8s.yml by removing duplicate lines and whitespace changes.
Update ansible-apply.yaml to include a scheduled job for Terraform Apply.
2024-09-28 21:27:24 +02:00
alexandre.pires 4de62d7334 Add infrastructure bucket for storing assets 2024-09-28 19:15:56 +02:00