This project contains the automation for the infrastructure and application deployments of the Veiled Haven Project utilizing OpenTofu/Terraform and Ansible. It streamlines the process of provisioning and managing the needed resources in a cloud environment, specifically leveraging OpenStack and/or VMware Cloud Director (vcd)
Technically, everything runs on a fairly standard Linux Virtual Machine, and could be hosted anywhere.
Veiled Haven currently runs on a single Virtual Machine with the following Specs:
System Information
==================
Hostname: pig
OS: Ubuntu 24.04 LTS
CPU Information
================
Model: AMD EPYC 7543
Cores: 8
Memory Information
===================
Mem: 16Gi
Swap: 0B
Disk Information
=================
Root Volume 50G
Data Volume 450G
The terraform
directory contains configuration files for provisioning cloud infrastructure.
Checkout the ./terraform/README.md
for detailed information!
- Initialize the Terraform working directory:
cd terraform/openstack terraform init
- Apply the Terraform configuration:
terraform apply
The ansible
directory contains:
- Playbooks: Define tasks to be executed on target machines.
- Group Variables: Configuration files for various services.
- Roles: Modular units of functionality, such as managing certificates, deploying applications, and configuring load balancers.
The folowing commands are executed within the ./ansible
directory.
- Install the required Ansible roles:
ansible-galaxy install -r requirements.yml
- Run the Ansible playbook:
ansible-playbook -i openstack.yml site.yml
- Fork the repository.
- Create a feature branch (
git checkout -b feature-branch
). - Commit your changes (
git commit -am 'Add new feature'
). - Push to the branch (
git push origin feature-branch
). - Create a new Pull Request.
This project is licensed under the MIT License. See the LICENSE.md
file for more details.
For questions or support, please open an issue on the GitHub repository or contact the maintainer at [email protected].