The process designer in IBM UrbanCode Deploy enables users to orchestrate the deployment of applications by defining parallel and sequential activities, such as deploying database changes first, and then upgrade all web servers.
The process designer uses a drag and drop editor that allows you to chose from hundreds of plug-in steps and link the steps from start to finish converting a lengthy document with manual steps into an orchestrated, automated process in minutes.The drag and drop editor is used for two things, components, and applications:
The process editor supports looping constructs and conditions. For example, a conditional may be “Check if the application server is installed. If not, install it. Then proceed”. A looping construct may be “Remove a server from a load balancer, upgrade all components and return the components to the load balancer”.
Since the process for most of the components in the deployment may be similar, templates can be created to allow you to share tested configuration. Component templates contain configuration for where to retrieve new versions of the component, as well as the collection of deploy, rollback and modify processes that act on the type of component. Because some details will change for each component (paths, names, etc) component templates can be parameterized with properties. Each component can bind itself to a specific version of the template, or stay on the latest.
Each process is versioned. Old process versions may be used with deployments if a newer version is not compatible with what is being deployed. When a process is created, information is gathered to inform when a change was made and who made it. The process may be exported and saved in source control providing an audit trail.UrbanCode Deploy versions many entities, including:
- Component processes
- Application processes
- Component and configuration templates
- Automation and source plugins
- Property configuration including application, environment, and version.