80 lines
1.5 KiB
Markdown
80 lines
1.5 KiB
Markdown
# How to use pycloud tofu module
|
|
|
|
## Step 1
|
|
|
|
Create a file named "main.tf" with this basic content :
|
|
```
|
|
module "deployment" {
|
|
source = "./modules/pycloud"
|
|
|
|
vra_url = var.vra_url
|
|
vra_refresh_token = var.vra_refresh_token
|
|
vra_insecure_ssl = true
|
|
|
|
deployments = local.deployments
|
|
}
|
|
```
|
|
Create a file for your "deployments" named as you like deployments.tf for example
|
|
```
|
|
locals {
|
|
deployments = {}
|
|
}
|
|
```
|
|
|
|
## Step 2
|
|
|
|
Get a refresh token from VRA (your problem not mine).
|
|
Or if you are lazy, use pytofu ;)
|
|
|
|
## Step 3
|
|
|
|
Test your tofu, with pytofu we are lazy
|
|
|
|
```
|
|
$ pytofu -a https://vra-ng-ppd.iaas.in.cloe.education.gouv.fr plan
|
|
|
|
```
|
|
|
|
## Step 4
|
|
|
|
Add some deployments to the deployments.tf file, like ... MonoVM-DEV
|
|
|
|
```
|
|
module "deployment" {
|
|
source = "./modules/pycloud"
|
|
|
|
vra_url = var.vra_url
|
|
vra_refresh_token = var.vra_refresh_token
|
|
vra_insecure_ssl = true
|
|
|
|
deployments = {
|
|
"test-pc-vf" = {
|
|
name = "test-pc-vf"
|
|
description = "test deployment"
|
|
catalog_item_name = "MonoVM-Dev"
|
|
project_name = "GRP-CLOE-TSS-DEV"
|
|
|
|
inputs = {
|
|
MonoVM_cpu = 2
|
|
MonoVM_memory = 2048
|
|
MonoVM_securityTag = "DEV-TIER-APP"
|
|
MonoVM_service = "app"
|
|
MonoVM_disks = jsonencode([
|
|
{
|
|
mountpoint = "/toto",
|
|
size = 10
|
|
},
|
|
{
|
|
mountpoint = "/titi",
|
|
size = 20
|
|
}
|
|
])
|
|
MonoVM_image = "DEB10X"
|
|
MonoVM_instances = 1
|
|
MonoVM_startOrder = "1"
|
|
leaseDays = "1"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
``` |