Para los proveedores que no están en el registro de Terraform, se pueden descargar a mano en un directorio local. Por ejemplo, para libvirt…
~/.terraform.d/plugins/local.com/dmacvicar/libvirt/0.6.3/linux_amd64
En este caso, «local.com» es un dominio ficticio que usamos localmente. Si tienes tu propio registro Terraform, puedes usar tu dominio.
Luego, dentro del fichero de configuración indicamos a Terraform dónde buscar ese provider:
required_providers {
libvirt = {
source = "local.com/dmacvicar/libvirt"
version = "0.6.3"
}
}