Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/sudo-kraken/multiplatform-terraform-module-actions
Automate VM deployments with this repository, featuring Terraform modules for AWS and VMware. Seamlessly integrated with Packer-generated templates for Ubuntu, Rocky Linux, and Windows Server, my GitHub Actions ensure swift, efficient infrastructure setup
https://github.com/sudo-kraken/multiplatform-terraform-module-actions
actions aws eks eks-cluster github-actions iac iac-module iac-terraform packer packer-template rocky-linux rockylinux terraform terraform-module terraform-modules vmware vmware-vsphere vsphere windows-server
Last synced: 28 days ago
JSON representation
Automate VM deployments with this repository, featuring Terraform modules for AWS and VMware. Seamlessly integrated with Packer-generated templates for Ubuntu, Rocky Linux, and Windows Server, my GitHub Actions ensure swift, efficient infrastructure setup
- Host: GitHub
- URL: https://github.com/sudo-kraken/multiplatform-terraform-module-actions
- Owner: sudo-kraken
- License: gpl-3.0
- Created: 2024-01-22T13:24:03.000Z (10 months ago)
- Default Branch: main
- Last Pushed: 2024-02-21T10:28:51.000Z (9 months ago)
- Last Synced: 2024-09-27T19:01:22.750Z (about 1 month ago)
- Topics: actions, aws, eks, eks-cluster, github-actions, iac, iac-module, iac-terraform, packer, packer-template, rocky-linux, rockylinux, terraform, terraform-module, terraform-modules, vmware, vmware-vsphere, vsphere, windows-server
- Language: HCL
- Homepage:
- Size: 102 KB
- Stars: 6
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
Repo Languages and Tools
> [!NOTE]
> Within this repo, you'll find multiple Terraform modules capable of provisioning and customising a variety of resources across different providers such as AWS and VMware. Each module is accompanied by its own README, providing detailed instructions and prerequisites. It's crucial to read these READMEs thoroughly before proceeding with any deployment.## Deploying a Virtual Machine using Terraform
This section guides you through deploying a VM using one of our Terraform modules, executed via a GitHub runner - a critical component for running Terraform in a GitHub Action.## Prerequisites
Before diving into deployment, ensure you have:
- Configured the necessary infrastructure elements (VLANs for VMware, VPC's, IAM roles etc. for AWS).
- Cloned this repository to your GitHub account, renaming it appropriately.
- Secured access to the organisation-level GitHub secrets if using this within a GitHub org.
- Familiarised yourself with the repository's structure and content.
- To clone the GitHub repository using the CLI use following command:
```code
$ git clone https://github.com/sudo-kraken/multiplatform-terraform-module-actions.git
```## Integration with my Packer Repository (vSphere Modules Only)
My Terraform vSphere-based modules are designed to use VM templates created by my Packer repository. Make sure you have the latest templates from the Packer repo, as they're essential for the VM deployment process.## Executing the IAC Actions
The actions within this repo will generate a custom main.tf files to call the individual modules contained here, be sure to follow each of the modules instructions.All of the acitons perform the following functions:
1. Generates a main.tf file: This file contains the Terraform configuration code that specifies the desired infrastructure resources, such as virtual machines, networks, and storage.
2. Executes the main.tf file: The code uses the Terraform CLI (Command-Line Interface) to apply the configuration defined in the main.tf file. This triggers the provisioning of the infrastructure resources specified in the configuration.
>[!Note]
>Make sure to provide the necessary input variables and authentication credentials, such as access keys or service account credentials, for the Terraform execution to succeed.