UrbanCode Deploy : Application Deployment Automation

IBM UrbanCode Deploy is a tool for automating application deployments through your environments. It is designed to facilitate rapid feedback and continuous delivery in agile development while providing the audit trails, versioning and approvals needed in production.
IBMUCD 4 min demo UrbanCode Deploy Watch the 4 minute demo

UrbanCode Deploy provides

  • Automated, consistent deployments and rollbacks of applications
  • Orchestration of changes across servers, tiers and components
  • Configuration and security differences across environments
  • Clear visibility: what is deployed where and who changed what
  • Integrated with middleware, provisioning and service virtualization

Typical Uses

  • Continuous Delivery: Integrate with build and test tools to automatically deploy, test and promote new builds
  • Production Deployments: Orchestrate a complex production deployments of applications and configuration
  • Self-Service: Grant different teams rights to “push the go button” for different applications and environments
  • Incremental Updates: Deploy only the changes components or missing incremental (patch) versions

Key Features

Multi-Tier Application Models
Modern applications are often made up of many Components. Perhaps a three tier application with database, app and content components. Or A mobile application with the actual mobile application and back-end web services. Even related collections of batch programs are seen as a logical application. UrbanCode Deploy tracks which components make up and application so they can be deployed and tracked together. Snapshots offer the ability to create a version of the application encapsulating versions of each of the components. With Snapshots, it is easy to ensure that components that were tested together are released together.Learn more about application modeling and snapshots.
Easy Process Designer
Deployment processes are defined in browser using a simple, drag and drop process designer. Component processes are composed of automation steps delivered by integration plugins. Application processes are composed of Component processes.  Steps may be run in sequence or in parallel. Transitions between steps are governed by rules. Typically, “Go this way on success, or that way on failure.”The designer makes it easy to translate a cryptic manual process into an easy to understand automated flow. Learn more about the Process Designer.
Track What is Where: Inventory
It is critical to understand what is in each environment. Audit wants to know what is in production. Testers need to know what we just ran those tests against. And when things go wrong, we all want to know what is different between those environments? UrbanCode Deploy tracks what is where in its Inventory system. The Inventory system tracks the desired state of each environment, as well as what has been successfully deployed to each target resource and provides graphical alerts when an environment is out of compliance with that desired state. Learn more about Inventory.
Scalable Distributed Automation
UrbanCode Deploy is built to support mission-critical deployments to thousands of servers in numerous data centers. Master server clustering support provides high availability and horizontal scalability. UrbanCode Deploy uses light-weight deployments agents which provide an immediate presence on or near the target. Remote agents can be proxied through an Agent Relay to manage load and simplify firewall management.Learn more about UrbanCode Deploy’s Architecture
Quality Gates and Approvals
For some environments, deployments may not be allowed until some conditions are met. Perhaps the versions being deployed must have passed tests or received a blessing from a team. Or the time and date of the deployment must be approved by several people. UrbanCode Deploy provides Environment Quality Gates as well as Approval Processes to help you ensure that only the right stuff goes out at the right time. Because these rules are set per application and per environment, early test environments are likely to be setup to not require approvals.Learn more about quality gates and approvals.
Integrations Replace Custom Scripting
Tested integrations are provided with dozens of tools to make the deployment process easier to design and less risky. Integrations are provided for application servers, load balancers, databases, testing tools, build servers and more. Utilities to manage configuration files, registry settings and the like are also available. Teams who have great deployment scripts already can continue to use them through UrbanCode Deploy either by directly calling the scripts, or embedding them in custom plugins. Browse available plugins at the Plugins Portal.