There are often multiple resources in an ARM template, and, by default, they are all provisioned in parallel. However, this default behavior can be modified using the dependsOn element. dependsOn helps to define dependencies between resources within an ARM template. If there are resources that are dependent on another resource availability, the resources should be provisioned only after those independent resources have been provisioned. dependsOn does not create a parent-child relationship between resources, however; it just mandates the deployment sequence of resources. Each resource can declare multiple resources within its dependsOn section, but they will only be provisioned after all declared resources are provisioned. It is important to note that there can be multiple levels of dependencies between Azure resources.
The dependsOn element accepts a JSON...