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_compute
resource. - exo-compute-template : specifies the creation of the
exoscale_compute
resource with a specified template. - exo-ssh-keypair-private: specifies the creation of the
exoscale_ssh_keypair
without providing the public key. - exo-ssh-keypair-public : specifies to generate an SSH keypair resource the creation of the
exoscale_ssh_keypair
with a given public key. - ansible: This module specifies the creation of the a
null_resource
that will execute locally ansible.