Is it possible we have one single terraform template for deploying my app in both aws and azure
It is perfectly possible to write code that deploys things to both AWS & Azure.
If you are meaning “can I create a module that can deploy to different clouds” then that is also possible - you’d just create two sets of resources (AWS & Azure) and use
count to decide which are used.
If you are asking “can a resource be used by Azure & AWS without different code” then no. In Terraform resources are specific to a particular cloud, so you’d need to have different code for each destination.