A deployment is the process of moving software (broadly defined) through various preproduction stages to final production. Typically, each stage represents a step of higher criticality, such as quality assurance to production. Complexity arises from the sheer volume of things that are deployed, the number and variety of deployment targets, constantly decreasing deployment cycles, and the ever-increasing rate of technological change. While virtualization provides some relief to the process, it also, perhaps paradoxically, increases the challenge with its exponential growth of deployment targets.
IBM® UrbanCode Deploy helps you meet the challenge by providing tools that improve deployment speeds while simultaneously improving their reliability. The release automation tools in IBM UrbanCode Deploy provide complete visibility into n-tiered deployments, enabling you to model processes that orchestrate complex deployments across every environment and approval gate. The drag-and-drop design tools decrease design-time by making it easy to visualize the end-to-end deployment process and develop the big picture: the What, How, and Where of the deployment workflow:
In IBM UrbanCode Deploy, deployable items are combined into logical groupings called components. Components are deployed by component processes, which consist of user-configured steps, many taken from integrations with third-party tools called plug-ins. Multi-component deployments are handled by user-assembled applications.
IBM UrbanCode Deploy represents deployment targets by what it calls resources. Resources such as databases and servers reside on hosts. Complex deployments can contain numerous components that target multiple hosts. Deployments are managed by agents that reside on the hosts. Components can also remain independent of one another, which enables incremental or targeted deployments. Of course, you can model your components as you see fit; IBM UrbanCode Deploy is flexible and works the way that you work.
The IBM UrbanCode Deploy server is a stand-alone server that provides core services such as the user interface, component and application configuration tools, workflow engine, and security services, among others. Many services are REST-based.
IBM UrbanCode Deploy supports cross-network deployments with relay servers. Relay servers enable network-to-network communications.