Open skatsaounis opened 7 months ago
+1 as I have an issue with vm_host_machine, I need to fix an IP address (static) and this can be done only before deploy time. I compose (vm_host_machine) the VM then it is also commisioning then it is in ready state in machines. I should now configure an interface there hence need a resource machine but I don't know the PXE MAC address (sad thing is I know a lot on this machine like the hostname that I set during the compose phase)
I'm not sure to succeed easily here and may go back to using maas CLI, do you think it would be possible in terraform ? Do you have such examples ?
EDIT : I also thought about having the PXE MAC address in the attributes of the vm_host_machine resource but it is not available so I have no clue how to get this information without an external process from terraform
For your first point, import maas_machine.myMachine MAAS_ID
should be used instead.
Looking at your PR, I am not sure if it makes a lot of sense tinkering with the machine state flow.
Why not use tags and avoid defining maas_machine
at all ?
maas_instance
is what you ultimately need, isn't it?
Currently,
maas_machine
expects the pxe MAC address as a required field and also tries to create machine entries when it is used. However there are cases when the MAAS operators either do not know the PXE MAC address or the machine has already been discovered and the create is bound to fail since MAC address defined in Terraform module is already in use.New
)commission
should be used instead ofcreate
create
action with dummy PXE MAC address) and later on match the discovered (New
) machine, by comparing the MAC power address. Finally, the dummy machine has to be deleted. From this point, PXE MAC address is filled and the process is the same as the first case.By supporting the above use cases,
maas_machine
will fully support commissioning of machines.