The purpose of the repo, is to centralise and manage some Terraform modules for the Exoscale cloud provider. In order to simplify the structure of the main Terraform module
In Terraform, a folder is a module. So each folder should follow the module structure given in the documentation
$ tree minimal-module/
.
├── README.md
├── main.tf
├── variables.tf
├── outputs.tf
Each module should have an explicit name, and provide some description in the nested README.md With the informations about the input variables and outputs
- exo-compute-module : specifies the creation of the
exoscale_computeresource. - exo-compute-template : specifies the creation of the
exoscale_computeresource with a specified template. - exo-ssh-keypair-private: specifies the creation of the
exoscale_ssh_keypairwithout providing the public key. - exo-ssh-keypair-public : specifies to generate an SSH keypair resource the creation of the
exoscale_ssh_keypairwith a given public key. - ansible: This module specifies the creation of the a
null_resourcethat will execute locally ansible.