1. A computer implemented method for performing deployment with a processor, comprising: identifying a model corresponding to a topology, where the model corresponds to an inventory of components in the topology and dependency relationships for the components; using the model to identify dependencies for a deployment; based at least in part on the identified dependencies, determining a deployment procedure; and implementing the deployment procedure to perform the deployment in the topology.