Proper workflow management for multiple Terraform Providers?

I just started playing with Terraform via Upcloud’s guide at How to get started with Terraform - UpCloud and articles at Tutorials - UpCloud. My beginners journey for Upcloud and Terraform is being updated on my Github repo at GitHub - centminmod/upcloud-terraform: Upcloud Terraform Server creation with upctl cli command line tool set. Comments and suggestions are welcomed :slight_smile:

But being new to Terraform, what are the best practices for workflow management for multiple Terraform Providers?

I plan to use Terraform with Upcloud, Linode, Vultr and DigitalOcean at least.

Linode’s articles at Terraform | Linode outline one way of dealing with multiple Terraform providers at How to Create a Multicloud Infrastructure Using Terraform | Linode. However, they’re just defining each Terraform provider and servers to spin up in a single .tf file - one for each Terraform provider.

How should I lay out the directory structure/Terraform workspaces for this?

Any advice or directions to articles and documentation is much appreciated :slight_smile:

cheers

George