89luca89 / 89luca89/terrible

[IMPROVEMENT] Improve inventory defaults

Aperta
#91 0 commenti 0 reazioni 1 assegnatario Rivendicata da @89luca89 Vedi su GitHub
enhancement experimental help wanted refactoring
Lingua principale
YAML
Stelle
259
Fork
29
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

Right now, setting up a VM can be quite a bit of YAML code, so we should improve this giving better and sane defaults for all aspects of a VM

Right now we could improve setting up:

1. if only 1 network is defined, it's `default_route` by default
2. if only 1 network is defined, DNS and Gateway will default to xxx.xxx.xxx.1
3. if only 1 network is defined, IP should default to `ansible_host`
3. if a disk is declared, it will default to the first FStype (ext4, ufs, etc...)
4. if a disk is declared, it will default mount to `/mnt/${ disk name }`
5. if a disk is declared, it will default to the `pool_name`
6. if a disk is declared, and it's a `swap` it should default `mount_point` to `none` without having to declare it
7. `pool_name` should default to `default`
8. if only 1 hypervisor is declared, VMs should default to it.

Ideally a simple inventory without many variables should be able to declare VMs in a simple manner like:

```yaml
all:
vars:
disk_source: "/mnt/template.qcow2"
os_family: RedHat
hosts:
terraform_node:
ansible_host: localhost
ansible_connection: local
hypervisor_1:
ansible_host: 10.90.20.12
ansible_user: root
children:
deploy:
children:
my_nodes:
hosts:
node-0:
cpu: 2
memory: 2512
ansible_host: 192.168.122.200
data_disks:
disk-1:
size: 5
...

```

Or even simpler if no external disks are declared

```yaml
all:
vars:
disk_source: "/mnt/template.qcow2"
os_family: RedHat
hosts:
terraform_node:
ansible_host: localhost
ansible_connection: local
hypervisor_1:
ansible_host: 10.90.20.12
ansible_user: root
children:
deploy:
children:
my_nodes:
hosts:
node-0:
cpu: 2
memory: 2512
ansible_host: 192.168.122.200
node-1:
cpu: 2
memory: 2512
ansible_host: 192.168.122.201

....
```

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Valutazione

Questa issue non è ancora stata valutata.

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.