Absolutely does depend on what your use case is. I find for very self contained terraform code it’s fine just to use the VCS-driven workflow, but when you have either a lot of inter-dependency or template driven terraform code using something like API/CLI-driven is ideal.