1. A computer implemented system comprising: a processor configured to execute computer executable components; and memory storing computer executable components including: a deployment engine component configured to obtain tasks associated with deploying an application on one or more servers, predicates required to perform each task, and parameters for executing each task from a deployment document that declaratively defines deployment actions for the application; a state evaluator component configured to receive the predicates required to perform each task from the deployment engine component, determine a state of each task by evaluating the predicates required to perform each task, and return the state of each task to the deployment engine component; and a rendering component configured to receive the tasks and the state of each task from the deployment engine component, display the tasks in a user interface, update the appearance of each task in the user interface based on the state of each task, and return user input that selects a task displayed in the user interface to the deployment engine component, wherein the deployment engine component forwards the parameters for executing the selected task to a task handler when the state of the selected task indicates that the predicates required to perform the selected task have been satisfied.