Introduction to uDeploy

Part 1 – Automating deployments with HCL uDeploy

Software Deployment plays a crucial role in every product life cycle. It is the process of moving software through various environments and finally reach the production. Typically, each stage represents a step of higher criticality, such as quality assurance or UAT or pre-production setups. Gone are those days when software deployments were being done manually. Today, deploying software across multiple environments is seamlessly done using automated tools like uDeploy / UrbanCode Deploy, Atlassian Bamboo, XebiaLabs, Cloud native tools, etc. These tools enable teams to automate the deployment lifecycle and include all checkpoints as needed.

Product teams who are on the path on DevOps, first roll out Continuous Delivery (automating deployment from Dev environment up till Non-prod) and then extend it to Continuous Deployment (which automated deployment on Prod environment as well).

Continuous Delivery -versus- Continuous Deployment

One of my favorites is the tool called – uDeploy. It was developed in Java by Urban code, later it was obtained by IBM and now it is has been acquired by HCL and  renamed as HCL Launch/HCL UrbanCode Deploy. It’s a GUI based tool which is very user-friendly. uDeploy’s drag-and-drop design feature decrease design-time by making it easy to visualize the end-to-end deployment process and develop the big picture— What, How, and Where in the deployment workflow. It is designed to facilitate rapid feedback and continuous delivery in agile development while providing audit trials, versioning and approvals also known as Quality gates  needed for production.

The key benefits for adopting uDeploy are :

  • increase deployment frequency at reduced risk
  • reduce deployment related incidents with automation
  • run audits in an automated manner
  • increase team productivity

The key features of uDeploy are:

  • automate consistent deployments
  • automate rollbacks
  • deploy to large number of servers at a time
  • orchestrate changes across servers, tiers and components
  • track configuration and security differences across environments
  • integrate with cloud native and other DevOps tools
  • embed approval gates across every environment.

Hope this quick intro was useful!!