We use UrbanCode Deploy for deploying containers and Kubernetes.
Within our organization, there are roughly 20 people using this solution.
Download the Release Automation Buyer's Guide including reviews and more. Updated: November 2022
IBM UrbanCode Deploy orchestrates and automates the deployment of applications, middleware configuration, and database changes into development, test, and production environments—local, dedicated or shared cloud environments—accelerating time to market and reducing cost by shrinking manual efforts from days to minutes with automation, while reducing risk by cutting deployment errors by up to 90 percent.
UrbanCode Deploy was previously known as uDeploy.
As policy, IBM does not release customer names on non-IBM web sites. However, public DevOps and UrbanCode Deploy case studies can be found here. IBM's UrbanCode Deploy customers span Small-Medium Businesses to Fortune 500 companies across all industries worldwide.
We use UrbanCode Deploy for deploying containers and Kubernetes.
Within our organization, there are roughly 20 people using this solution.
It helps us orchestrate enterprise applications that need to be coordinated.
I would like to see more reporting for container architecture.
I have been using this solution for five years.
The stability is good. I haven't experienced any issues.
If you really want to scale up, it's going to get a little complicated. You'll have to do some configurations to make it work. High scalability is a little complex with UrbanCode Deploy.
Overall, the scalability is good, but it's complex.
IBM recently sold the solution to HQL. Today, communication is not as fast as it was with IBM.
Currently, the support right now is HQL, but through the IBM systems.
Deployment times vary. It took us between five to six hours.
Considering COVID-19, the price is too high.
If you are deploying independent components that are not involved in an enterprise scenario, then maybe this solution could work; however, if you have a complex scenario with multiple components and multiple complications, then it's better to choose a more powerful solution.
On a scale from one to ten, I would give this solution a rating of ten.
We use UrbanCode Deploy for storing the artifacts of the environment.
In both our production and non-production environments, we rely on UrbanCode as an artifact repository. For example, if we want to deploy something in production then we take our usual steps, such as stopping what needs to be stopped, then we deploy using UrbanCode, and then we restart to make our production environment available again.
This solution is also useful for maintaining different versions of the artifacts because it has the capability of maintaining snapshots.
The most valuable feature is the snapshot functionality, which allows us to access previous versions of the artifacts. I can see what versions are there and it has helped a lot in one of my products that has many different artifacts that need to be managed. UrbanCode shows me which versions of which artifacts are in each environment.
This solution could be made more flexible with respect to deploying databases. Liquibase is a valuable feature but it is weak and could be better. I have just seen a video on a product called Datical, and the database workflows are easy to manage.
Not just anybody can use this tool without first taking at least the basic training online.
I would like to have the agent up and running at all times, as opposed to only while it is in the DevOps pipeline.
I have been using UrbanCode Deploy for nearly four years.
The stability is good and we've had no issues with it. We use it on a daily basis in both non-production and production environments.
This solution is very easy to scale. We have between 300 and 400 users and we have had no issues at all. Our development and support teams have access to this tool, although there are only four or five of us with administrator access.
We have only contacted support one time and it was concerning a very minor issue. Currently, we are running this solution without a support contract from IBM, although we will be purchasing support the next time we upgrade UrbanCode.
Before UrbanCode was implemented in the organization, we used to perform the basics using Jenkins. However, it was a very lengthy and difficult process.
For some of our products, we are not using UrbanCode. For example, we have implemented Ansible and we are looking forward to using it more as a Linux tool. The major difference between the two is that Ansible is agentless. I just need to log in to the server and do my deployments. The issue we are having with UrbanCode, where we want to keep the agent up and running at all times, is automatically resolved using Ansible.
We will continue to use multiple products for the time being.
The initial setup is easy, although it depends on the tool that you are comparing it to. For example, Ansible is a similar tool that is not agent-based. Overall, I would rate the ease of setup a three out of five.
When the product came in, one of my colleagues went for training and then assisted me with the implementation. I also took some online training and I think that anybody would need it before they can use UrbanDeploy.
The licensing fees for this solution are based on the number of servers that are being deployed and the number of agents that you have. There is a separate charge if you want support from IBM, and the cost of support also varies depending on the number of agents.
This is a solution that I recommend but I think that for anybody who is interested in implementing it, I would suggest that they start by reviewing the resources that IBM has online. It is not complicated, and they will be comfortable with how the variables are used and that kind of thing.
I would rate this solution a seven out of ten.
Currently, we are using UrbanCode Deploy, a product from IBM. Before I had a bit of expertise with it at a bank in Belgium that uses recent commissions from computer systems.
Now, I work in Belgium for an importer of Volkswagen, Audi, Porsche, Lamborghini, etc. I'm in the middleware department. What we do is we link all the different applications together.
We deploy UrbanCode as a middleware solution.
In the beginning, this tool was completely new to us, to everybody in the company, actually. At that time, Urban CodeDeploy was not performing well at all. After that, when we started to use the tool more and had some better insights, UrbanCode Deploy started performing better.
Last week we sat together with some IBM experts to see where we could gain some more deployment type of performance optimization. We still have to do this. We got new recommendations yesterday. We will now see how much effort it will take to implement them. We will not implement them if it takes over 2 weeks.
If we can gain maybe ten or fifteen percent optimization with UrbanCode Deploy, then we will invest further in the platform. The tool is performing not so bad now.
For me, the most valuable thing is that we have a full overview of our environment, where we have deployed what, when it went okay, when it went wrong, etc. These kinds of things.
It is very easy to make a software release. It used to take us at least a couple of hours to make a release, now we went to production with a new one last night. This new release took me five minutes.
It makes it easy to select what we want to deploy and to follow it up afterward. The reports that we get when something goes wrong work very well.
What UrbanCode Deploy improved for us is that we have better visibility. We are not deploying faster with it. Actually, it's a little bit slower.
We have the software application automation fully under control with UrbanCode Deploy. Whereas when we did it the old way, we had failures.
Before we used UrbanCode Deploy it was difficult to find out why we had failures. Now, we don't have any failures anymore, or almost none.
For the last couple of months, we have no failures at all and we have full visibility. The interface is doing very well.
Performance-wise, our deployment now takes longer. We know that, but that's something that we can live with to take advantage of UrbanCode Deploy's other feature set.
We are one major version behind and we will do the updates internally. The only problem is UrbanCode Deploy is used not only by me but by all of the company. We all do our deployments with UrbanCode. Upgrading is not my decision.
I certainly would like to have a better way to pass information between deployment steps using UrbanCode Deploy because that's really difficult to do.
Personally, I would like it if you can loop on some things like the tags and the agents. I would like to have some more loops.
I'm really not that satisfied with the stability of UrbanCode Deploy. First of all, it needs a lot of memory and it needs a lot of CPUs. This has a huge impact on viewing. I expected an interface that is far more responsive and it seems most of the screen handling is done on the server and not on the client. Hence, just for working with it, you need a machine with 4 CPU's or cores to be comfortable.
If you use the API's to do some stuff from Jenkins it performs way better. Doing the same action using the REST API, is literally just hundreds of milliseconds, whereas the GUI takes seconds. That is certainly something that UrbanCode Deploy could improve on.
The current version that we have, the 6 series, does not scale at all. It is not good enough, in my opinion. They knew this and they have upgraded this with a whole new technology. We do not need it to scale any further at this moment.
In the beginning, we had some issues with UrbanCode technical support, some things that did not work the way we thought they would work. For some of them, we opened PMR's with IBM. As always with IBM PMR's take a long time to respond.
I'm not happy with UrbanCode customer support at all. On the other hand, we also put some time in with these experts last week. These experts were certainly highly qualified. With them, we proceeded very well and very quickly on some items, so it's a little bit mixed.
The support that we get from PMR's is not good. I give it a score of 2 out of 10. We have PMR's open for more than a year.
Management wants to use UrbanCode to make sure that we all deploy the same way. I do not know if they evaluated other products. I was just given the product at the moment and I was in the company already for some time. The strategy behind this is that everybody deploys with UrbanCode.
We have a department called Infra. Management decided to use UrbanCode for several reasons so it was imposed on us that we should use it and it was installed outside our team.
Because the company likes to use the big solution providers, our middleware is IBM. Our deploy tool is IBM so they have a lot of big players. I personally prefer Open Source solutions. I don't just want to use Open Source. We use Jenkins & GitLab.
Jenkins & GitLab are tools that everybody uses and if there are problems, these problems are fixed quickly by the community or by the developers. That's basically how Open Source works. I am not at all against paying for a solution. For example, it could well be that we use GitLab but the Enterprise Edition. It gives us the opportunity to start with a community edition.
I like to evaluate tools to see how they work, to see how they fit us as a company, and then switch to a paid solution. This is something I miss with big companies like IBM.
In my opinion, the way you have to develop with UrbanCode Deploy is to use the graphical interface, which is nice. However, for development UrbanCode Deploy is slow.
Each time you have to click on something, you have dropdown menus, etc. I am a coder by nature. Some tasks I would normally prefer to go faster. It would be better if I could type commands directly using UrbanCode Deploy.
I would give UrbanCode Deploy a six or a seven because it is not easy to set up. The documentation is not commonly found. I think it's pretty expensive too. UrbanCode Deploy is not so much used in the market. When you implement, it's not so easy but you can overcome that. Afterward, when it runs, it runs slowly to complete. Now that we have the solution, we rely on it and really trust it now. I would have given it more points if it were easier to work with. My final rating would be seven out of ten.
Take at least one month and properly evaluate the tool with a real business case because it was sold to us in a different way. We were told this tool can do anything and within a week you will have a solution. In reality, it took us three or four months even to come to the final solution. The tool is not as easy as the vendor says it is. You have to get used to it and you should not think that this tool is just magic that will solve your problem. You have to think around your current problem and then see how you can get that into the tool and not vice versa. Don't expect the tool to solve your problems.
Reusable templates make your life easier.
Using reusable templates (mainframe and middleware), you can force developers to use the same rules for deployment. Also, you have choice to break that rule.
In our implementation, we created 16 PMR for this product. 15 of them were solved.
Perfect. IBM has one of the best customer services.Technical Support:
Perfect. IBM has one of the best technical supports.
We implemented in-house.
The most valuable feature is the ability to create a deployment process visually and to see that process executing in real time, step by step, with access to log files and with a click of a button.
It has drastically improved how we function. We can now realize continuous delivery practices. We can automate more and integrate with other system much more easily.
Need more granular security: for example, access to the Settings tab is all or nothing. I would like to be able to grant access to parts of the Settings tab and also provide read-only access to parts as well.
Reporting: I am excited to learn more about Insights. Until then, native reporting in UCD needs a lot of work.
I have used it for 1.5 years.
We have encountered scalability issues. We did not scale particularly well. We have not been able to maintain a cluster with 3 servers in UCD. When running with 3 servers, we have experienced instability and agent connectivity issues.
Customer service is average. For a company our size and the amount we stretched the tool, I would say more could have been done to help our journey. With that said, there are a lot of examples where IBM has worked very well with us.Technical Support:
Technical support is slightly above average. It has been good. We have challenges that we still need to work through.
We were previously using a home-grown solution. That solution couldn't scale, was risky to make changes to, and could not provide the features we need to achieve continuous delivery.
Initial setup was complex. There is a lot to consider in a large enterprise: security model, resource tree strategies, infrastructure topology (UCD servers, agent relays), management of UCD agents (installation, monitoring, troubleshooting, etc.).
We implemented it mostly in-house but we did have some help initially from IBM consultants. I would rate that help as fair.
It makes it easier to create new resources, especially new components, and to import new servers into uDeploy Environments.
I have used it for six months.
Once I understood the API, deployment was reliable.
We have not encountered any stability issues.
We have not encountered any scalability issues.
Customer service is good.Technical Support:
N/A: I have not had to invoke technical support.
We did not previously use a different solution.
I was not involved in the initial setup & configuration.
We use IGS on site to assist our IT staff as needed.
We are still evaluating competitors like XebiaLabs Release, Puppet and Chef Automate. There is a chance we could move to Chef Automate
Learn the API and automate common tasks from your CI|CD pipeline
The valuable features are “scriptability” and customizing the deployment processes.
It’s not necessarily the product, but more the drive to automate deployment that results in improvements.
UCD gives the freedom to create reusable component templates. You set up a process for deploying something once, such as a standalone Java application, and then that is “templetized” and can be reused.
In these templates, you can:
Many of the improvements are, therefore, based around automating the deployments. They are automated in such a way that no more "screwdrivers under the hood" are allowed in any stage.
This saves time, and makes the process much more reliable, reversible, repeatable, and traceable. In the beginning, this is painful. I can’t stress enough how much effort should go into getting this right.
WebSphere deployments, for some reason, don’t work out-of-the-box. We have worked on the Websphere issue with the IBM uDeploy development team a lot more now. What we want to be able to do is apply configurations to the Websphere using the standard plugin. This can be done by creating json snippets that must be parsed with the large json files of the cell, the node and the server that have been created during the mandatory initial configuration discovery of the target machine. We have had lots of difficulties getting the parsing to work, now a new version of the config plugin has been released which is an improvement.
However, what we want to be able to do with our CICD automation is to create configurations paired with the EAR files so that we can start doing partial updates, of only the parts that have changed. Also rollbacks will this way be much easier to accomplish. uDeploy can not work like this to date, the plugins do not allow it.
UCD needs to perform a discovery of the environment. This would not be needed if it would understand more about WebSphere environments and releases.
We have used this solution for one year.
In terms of deployment for WebSphere, the configure plugin didn’t do what we wanted. The plugin requires a discovery of the target WebSphere environment. For some reason, applying changed configurations via the plugin doesn’t work for us.
In itself, UCD is a stable tool. Once something works, it continues to work.
I would give customer support a rating of 6/10. The customer is expected to bring a significant amount of knowledge to be able to configure component templates, resource tree, etc.
Customer support is available, but it is remote and only acts upon raised incidents. At our own cost, we have hired IBM specialists on premise to solve the WebSphere issue.
We didn’t have a previous solution. This was our first real attempt to introduce one central deployment tool to automate and standardize deployment processes for all techniques, such as Linux, IIB, IIS, and WebSphere.
We chose the product because we have a long-lasting relationship with IBM.
Initial setup was done on only one environment. Even then, UCD has a quite complex setup due to a needed high-available setup with load balancers, queue managers, license servers, and databases.
Depending on the size and complexity of the organization, you need at least three environments:
IBM did the implementation. Unfortunately, they did it without considering that deployment automation is not just about a tool, but much more about standardizing and optimizing the deployment landscape and the processes.
It was done as a remote implementation, which of course didn’t fit. It had to be changed in numerous ways.
I have no knowledge on the ROI. In the end, I think the costs must be seen in the light of the objective you want to achieve. If you’re considering release management, CICD processes, and want to be a DevOps organization, then the costs for the tool don’t matter much.
Think about what deployment automation really is. It means no tweaking throughout the stages whilst applying changes. Everything must be code. That is the most important step; having everything as code.
Once that is done, then probably all of the good deployment tools in the upper-right corner can do the job.
In the end, deployment should be something that runs in the background; getting a signal to deploy something that has been created.
Ability to do automated deployments. It does what it promises: It helps you automate deployments. But, it works better for some application component types than for others.
Automated deployment forces the organization to standardize runtimes, development output and handling of platform provisioning.
They could add support for some of IBM’s own middleware. IBM is so big a company that the left hand doesn’t understand the right hand.
I’ve been using UrbanCode Deploy for too long.
We have not had stability issues.
We have not had scalability issues.
Technical support is bad.
We had various solutions before this one.
Setup was complex because IBM started on the wrong foot.
Don't use the tool in combination with IBM as datacentre manager.
We didn’t evaluate other tools. We were forced to use it by IBM as datacentre manager.
Look for other tools if IBM runs your datacentre.
It provides a wide list of OOTB plugins for middleware.
By standardizing the automated deployment application process, reducing the amount of errors due to manual steps and by providing visibility into the release cycles of various teams/applications, we've improved our global efficiency by at least 25% and still counting, since we've only used the product for a short period of time.
I have used UrbanCode Deploy for six months.
We have not had any stability issues so far.
We have not had any scalability issues so far.
They have very good response time to our technical support tickets. The solution/answer that allows us to close the ticket typically comes from level 2 or level 3 support (i.e., not level 1).
We didn’t have a previous solution. We just had a very wide variety of custom in-house scripts.
Initial setup was straightforward.
The licensing model can be very simple, or quite complex, depending on how you want it to be and how you negotiate with IBM. I suggest to deeply evaluate your growth/scaling capacity, since this will dictate your choice of licensing model. If you know that your needs in terms of applications to automate is fairly stable and very predictable, then you might consider a simple approach of the server and agent licensing model. If you're in a rapidly evolving environment and it's hard to predict, but you know that it will grow rapidly, then you might consider a PVU licensing model based on the CPU capacity of the server, regardless on the number of agents deployed into your datacenter(s). And somewhere in between, the hybrid approach is the floating model that is a good fit for the shrink-and-expand type scenario (our choice).
It all depends on your requirements and the guesstimate of growth and potential shrink capacity.
We continued with custom in-house scripting; a dead end, obsolete approach that cannot scale and belongs to the past, not the future. Open source-based products (Jenkins and others) that we complement with in-house custom functions, require too much human investment in development effort to provide minimum features that make solutions properly operational in large-scale enterprises with complex IT landscapes; a buy vs. build decision.
Its competitors are: Xebia Labs, CA Release Automation.
Properly evaluate the ratio of applications that are based on newer architecture models (cloud native vs hybrid vs traditional). Weigh in that element into the decision and consider a hybrid approach: big vendors' ARA tools vs. new cloud-based deployment technology like Kubernetes.
The most valuable feature is auto-deployment of application versions through direct connectivity with UrbanCode Deploy.
Previously, for a planned release, an Excel-based implementation plan had to be created and validated beforehand in a production-like environment. On the go-live date, a high number of resources were required to run that implementation plan and perform a high number of deployments and validations. This eventually takes almost a day for a release leading to business impact and high release cost. The Excel implementation plan size climbs to 2000+ lines depending on the size of the release, which is prone to errors.
UrbanCode Release is used to run deployment from non-production environments and hence the plan continues to mature until we reach the go-live day. It is run through the non-production releases a number of times and hence is validated beforehand. With the usage of UrbanCode Release, we are able to save on efforts required to create a detailed, accurate implementation plan. Also, as it has direct connectivity with UrbanCode Deploy, we can schedule automatic deployments and hence save on time and cost of resources. The overall release efficiency has improved multifold.
Performance of the tool is quite slow. It takes a lot of time to load a plan if the plan size is bigger. Also, the reporting feature needs to be strengthened to provide more valuable real-time reports.
I’ve used UrbanCode for 1.5 years.
Sometimes the tool gets hung while running a plan. Also, sometimes the deployment status is not accurate with regard to UrbanCode Deploy.
The tool's performance goes down when the number of simultaneous users increases.
Technical support for us is good as we are one of the initial big customers for this tool. The tool has developed in consultancy with us.
We were completely manual before this.
Initial setup was complex, as providing user privileges, environment-application mapping, and environment release allocation are some of the pre-install tasks to be completed for creating a plan. Creating a long plan is also complex.
Pricing is on the higher side. Individual licenses for each user is not an expected model for a tool like UrbanCode Release. It should have group licensing.
We evaluated Nolio by CA for release management.
It’s a must have. UrbanCode Deploy provides great advantages.
Gates is one interesting feature, which will help approvers provide their approvals in advance, without having to rely on when deployment happens.
It has helped developers manage and deploy their own applications.
The Archiving policy is something which should be looked at.
The resource tree is pretty bulky and slow. Making a change to the resource tree manually is pretty difficult when size increases.
I have been using it for more than six years.
Sometimes logs were not returned back and answers were not found, but still re-executing them worked fine.
Also, when the application history grows and resource tags with component tags are used, actual deployment take-off occurs much later than when you start the deployment.
I have not encountered any stability issues, as such, in 6.1
I have encountered scalability; the artifact's clean-up policy is not efficient, so it takes up a huge amount of storage.
Also, when you have a large number of components in the same application, the deployment take-off is very slow. I assume it fetches the current inventory and compares it against the requested version.
Customer service is good, as opposed to earlier products where recreating the problem on the IBM side used to take days.Technical Support:
Support is great, I would say. They are very reachable, collaboratively connect and help solve the problem
We had home-grown solutions different for different applications. We have standardized by adopting this solution.
Initial setup was not that complex, but you need to work on integrating this with your company standards, and tools and policies supported.
Implementation started initially with vendor support but post that, it was done on our own. This was when there were only a few members at the company when we started in 2010. So, not much documentation and help was available.
ROI is difficult to explain but it's provided huge savings.
It is a bit costly but good ARA tools are not free, and this has competitive pricing.
Before we chose this solution, we evaluated other options.
It is a good tool to use if you have a substantially big enterprise.
It has out-of-the-box integration with source-code repositories, various ticketing systems, plus a wide variety of plugins to use during deployment. Custom plugin development was easy and the tools capability of keeping the version tracking of workflows were pretty good.
It provided a reduction in deployment time and lowered the application downtime.
More out of the box plugins are required though good number are avaialble at the moment.
I've used it for one-and-a-half years. The sole purpose of the tool was to pick the application binaries from various sources and deploy them on target systems.
There were some issues related to high memory consumption, but those were primarily due to the deployment workflows being developed incorrectly.
There were no issues with the stability.
The tool is capable of handling the load. The single application server was handling 50-70 applications which were quite complex in nature.
We used BMC BladeLogic previously. BladeLogic is more for automating tasks performed on servers like compliance, patching, and provisioning. It is not suited for devops/application deployment and hence the migration from BMC to IBM.
It was fairly simple as the product is easy to install.
We did it in-house with failover.
For us, it was more about automating the complex application deployments which were manual for years. IBM products are expensive unless you can strike a deal. However, the tool did help us in automating the use cases and integrate with existing platforms via plugins.
We explored Ansible, Puppet and Chef. I worked on Chef for a few days and I am not a very big fan of it, probably due to my lack of interest.
For DevOps, this tool is one of the best with all its integration capabilities for repositories and various systems. Perform the initial setup carefully, and probably with someone who has knowledge on the tool plus enough experience of designing infrastructure solutions. For me, the pain starts due to mostly incorrectly designed/implemented tools.
It has flexible deployment options, allowing us to model our components as we want and need, which is the most valuable feature we've found from our experience with it.
It reduced more than 70% of our manual effort when it automated deployment of both UNIX and Windows-based applications using UrbanCode Deploy. We used plugins available in the plugin center and used UNIX shell and powershell scripts to automate completely.
More plugins are required. There are also many bugs in UrbanCode Deploy. Finally, database deployment and rollback of databases needs to be worked on.
I've used it for one year two months.
It does not support variable changes and utilizations while executing the application. We were setting the variable values in the application process and using it in the same process, but apparently that's not supported.
There have been no issues with the stability.
We have had no issues scaling it.
Technical support is very good.
Refer to the IBM Learning Center as that will help with the setup
We used a vendor team for our implementation.
Rundeck is also a good option, but UrbanCode Deploy provides more features and is easier to use.
Before buying this, try the trial version and check if it serves your purpose.
It has automated the deployment of tasks to different environments which we were previously only able to do manually.
They need to reduce the footprint and improve the performance of UD agent. If the agent runs for too long it can cause a memory issue on the production server. We must keep the agent offline and only enable them during deployment.
We've used it for three years.
There have been no issues with the deployment.
There was no issues with the stability of UD agent.
We have had no issues scaling it for our needs.
In my experience, I'd say that technical support has been good so far.
The initial setup is easy and straightforward.
We implemented it with our in-house team.
We compared UrbanCode Deploy with XebiaLabs XL. We chose UCD because of the process design function.
The product became more complex after IBM acquired it.
We have 5,000 to 6,000 developers and we wanted to make sure that with such a large community, we were able to scale up to support thousands and thousands of applications, around 4,000 of them. They're all being continuously deployed through UrbanCode.
It's a great product and a great framework. If you're on a team that has a good mixture of both developers and people who operate the environment or have an operations focus, you're going to love this tool because it allows you to easily integrate with your environment.
Our integration involves a portal that allows our developer and app teams to order application environments (similar to an AWS portal). The self-service tool integrates with APIs for deployments that automatically create the integrations required to develop and deploy our code. So UrbanCode's APIs have made it much easier to enable application developers to create apps much more quickly with its self-service mechanism, speeding up the entire process. If we didn't have the API, it would make it much tougher for us to support, scale, and do self-service in our application-development process.
One area is with Java deployment. We were able to reduce this from 20 steps to 4 or 5 steps, which is about a 4x reduction in complexity and specification, making it easier for our Java developers to develop and deploy their code.
The other area is not just with the tool itself, but with company culture and taking advantage of technology. UrbanCode Deploy has really transformed the way we do code deployment, connecting development and operations more closely. We're almost 100% of the way there with a cohesive devops, which I can quantify at about a 28% improvement.
Its reliability has been a little suspect, and one of our frustrations has been that it's taken them some time to focus on fixing that problem. They're able to simulate customer environments and configurations in terms of size and setup, so that when they're in development, they can run test cycles and build product enhancements and fix problems for customers. Instead, it seems they're building something locally with synthetic data that doesn't really match any customer.
Another area of improvement would be plug-ins, which seem to not have kept pace with current technology. I feel that they don't have enough staff to build plug-ins, and it's a struggle for us. It should be part and parcel of what the product is, which includes the ability to integrate with many different technologies in a centralized deployment architecture. Plug-ins multiply the value of the product, especially when you then have the ability to stretch to new integrations and technologies without having to wait on IBM to develop something.
I've used it for two years.
We had a fairly in-depth POC where we took all our key platform deployment types. For example, at the time we had a very small WebLogic environment and deployed into Teradata, Oracle, and Red Hat OpenShift. During the 2-3 week POC, we analyzed our deployment of existing scripts, embedded them into UrbanCode Deploy, and automated their execution. This required a bit of decomposition in our existing scripts in order to properly implement the product.
It actually didn't require a lot of effort on our part, which is one of the advantages of UrbanCode. So that was one of the compelling things that encouraged our thinking during our POC -- that it wouldn't take us that much time to convert our environment over to using it.
On the whole, I've had really good experiences with technical support, especially since we're a strong partner with IBM. As I'm an architect, I don't submit as many trouble tickets as I used to, but when I did, the tickets were impactful and technical support was very responsive. I was able to get to level 3 support fairly easily.
I set it up, but I did have someone bless the configuration to reassure us that we had set it up well enough to scale to cover our IT.
ROI is tricky to pin down. There are a couple of good metrics in areas for which we were able to reduce the complexity of deployments. See the above discussion regarding organizational improvements.
Understand your environment, your processes, and how your teams use your technologies. Make sure you spend some time decomposing those areas and making sure that the orchestrations and automations you create fit your customers' needs. Don't have the expectation that it's going to be easy and plug-and-play out-of-the-box.
Getting the deployments automated adds a lot of value. Before we automated deployments, there was a big problem with manual intervention and people making changes on production services and forgetting what they did. It was just impossible to reproduce deployments.
Then there's the traceability aspect -- you can trace back to the code which is stored in ClearCase through the build. All the deployment artifacts can be traced back to the original source.
The biggest area of improvement that I would suggest is in the upgrade process. We started 2015 with uDeploy 4.7, and in order to get the latest version, we had to upgrade first to version 5, which was introduced for the IBM branding. That was straightforward enough, but the jump from version 5 to version 6.1.2 was enormous. We had to focus on testing the security model because it was completely new. We documented and tested it in a production environment. Once we did the upgrade, we found another big change in the version implemented, which we didn't anticipate and which caused problems in our production environment. We re-architected the implementation and there were 4-5 failings we had to work through. Future upgrades probably won't be this difficult, but this one was tough.
In terms of functionality, the reporting could be improved a bit. It seems like the new version has better reporting capability, but data visualization would be nice to have.
We first started using uDeploy around 2011 or 2012, but when we started to automate our deployments in 2010, we used Anthill Pro. When we started using uDeploy, we kept Anthill Pro as a backend for the builds. We now are on version 6.1.2 of uDeploy.
It's less stable than our other IBM products. We have ClearCase, and it rarely is unstable as it's designed for devops work and can deal with the development process on the product itself. There have been a lot of broken stoppages in uDeploy 6.1.2, particularly in the upgrade. We installed the newer 6.2.01 in our sister environment and actually had some regressions in the interface. It seems to have the stability level of open-source products.
It's scaled fine for what we need it to do. We have over a hundred applications configured in it.
They're always knowledgeable, but it seems they're overwhelmed. They're great and deal with our issues, but it seems the hurdle is their other customers who also need help. There aren't enough resources available.
It's really good if you have a lot of applications that need to be deployed in different environments. You need to have a team to support it because there's a lot of different pieces and it's a really deep solution. There are many features, only some of which we've been using. It's not the kind of thing that only one person can work on. It's not for a small shop; it's for an enterprise.
The ability to deploy as often as possible allows a number of people to work on it at the same time.
It's provided us with more reliable and faster deployments, as well as the ability and flexibility to create and modify deployment applications to meet the needs of the ping.
We're running version 4.8.4, which isn't the latest version. This version lacks reporting, which may be improved in the latest version.
I've used it for four years.
It's been a very stable product. We've had a few performance issues, but they haven't been serious. I'd say we've been going for a couple of years without having any issues or needing any support or assistance.
It's absolutely scalable. We have gone from about 17 products to 32, maybe it was 42 since we've gotten uDeploy. Before it could take a couple of days and we could only do a few deployments, just barely a few in a month. Now we can do multiple deployments in a day, we can get hotfixes out very quickly, and we can easily modify and customize processes as the needs of the teams change. It scales very well for us. We also, for instance, have needed to improve our security and all that is there in uDeploy. We don't have to do anything other than figure out how to configure it.
Technical support is always very knowledgeable and proactive. In contacting different people, we've always had very good responses.
We weren't using anything before and we had to get something up and running quickly. It did take us a little longer to get the uDeploy up and running than we'd hoped, but once we did it certainly met all of our needs.
It was complex at times. It took us a while to come up with the standard process that we needed, but then once we had it it also took a while to actually get all of our projects up and running. We didn't know how to use the CLI at that time. We might have been able to do better if we knew that.
It was all done in-house. I'll add a comment that the learning curve for uDeploy is high. Even now there's a couple of us who know it well, but being able to bring somebody else on-board and explain it to them would take a little time. Of course, now that we know what we're doing, we have somebody so we can explain it to somebody else, but at the time when we started and since we didn't know what we were doing, and it took a lot of trial and error to figure out how to use it.
Standardize processes as much as possible so that you can re-use them. Don't be afraid to create multiple applications when that reduces the complexity. Don't make applications really complex to try and do all these things all at once. If you can, break it down into smaller apps because they're easier to manage. Generally the more independent things are then the fewer things break at any one time.
If you have problems, it doesn't affect more than just the particular instance that you're looking at. Our developers have done a lot to break down our projects into smaller and smaller pieces so that they help with that. We can deploy an application, but if it's only got three modules that are changed, then we only need to deploy three modules. Breaking it down into independent pieces and reusing them, I think, is really important.
Integrating it with an automated build system, I highly recommend that. We use Jenkins. We can easily connect our Jenkins artifacts and push them to uDeploy so that they can be deployed. We have some interaction between the two so that we have good auditing and knowing which build is the one that got deployed. In fact, using versions that relate to the build version, so that when you go into uDeploy and you look at a version then you can see that that version came from specific build and the build tool, that's really helpful.
It just changed my whole job and made it easier. I'm sure that some people might have different opinions on that, but coming from where we were and getting to where we are was just never could have been done without uDeploy and it's just incredibly powerful for us.
There are several most valuable features for us.
It's improved our organization's functions in a few ways.
I think that the IBM support team needs to be more proactive in their responses to PMR tickets raised by customers. Also, the plugins for ServiceNow Integration need to be updated.
I've used it for three years.
We've haven't encountered any issues with deployment.
We haven't experienced any issues of instability.
We've been able to scale sufficiently.
I'd rate customer service at a 5 out of 10.Technical Support:
I'd rate technical support at a 6 out of 10.
We previously used IBM Rational Build Forge and then migrated to UrbanCode Deploy, which has more flexibility and process-oriented features.
The initial setup was pretty straightforward with the installation of agents and clients. The configuration process and specific jobs are dependent on the complexity of your application or project.
Our client's in-house team helped with the implementation, and they had an expertise of about an 8 out of 10.
I can't say exactly what our ROI is, but as we're in the insurance sector, I know that this is a cost-efficient tool.
It's available at a very reasonable price.
We evaluated OpenStack and Amazon Web Services.
It's best to do a POC on the applications you're currently running to check the feasibility of using UrbanCode Deploy.
We like a few things, such as the calendar, the permissions model, and the process editing. The component template and deployment interface are very good.
Our organization has already improved by quite a bit by taking out so much manual intervention from multiple people doing the deployments. We've simplified our process and the deployments are now much faster.
Sometimes the deployment process reports are faulty. I've run into situations where the job says it was successful but it really erred-out. It would be nice if the reports are correct all the time.
The configurations tab takes forever to load. It doesn't work very well so that needs to be improved. Also, you can't filter by resource tag, which would be useful.
We've used it for six months.
The deployment reports are faulty.
So far, the product has been very stable.
We're in the process of moving pretty much most of our codes to run through it one way or another. I anticipate it will scale well.
So far, we haven't had an issues with support so it seems okay.
Our existing solution was mostly manual deployments so that, of course, is very error-prone. We looked at several different solutions to try to see what we could implement quickly and what would have the most impact, the most return on investment in a relatively quick amount of time. This was the tool we decided to try out and so far it's working pretty good.
It's very time consuming, the setup of the solution. We ended up scripting a lot of it, so that it was quicker. There's a lot of pieces that you have to set up for one particular job to run on it. You can actually make steps and end up having to sit there and figure out what you missed, so we ended up scripting a lot of it so that we wouldn't miss pieces, which made it also quicker to set up new applications, to be able to get all the way through deployment.
We implemented it with our in-house team.
It's a pretty straightforward tool for straightforward deployments. If they have many complicated deployments, they're going to really want to look at the plugins and what's out of the box to make sure that it's going to be able to do what they need to do, and that they need to make sure that they have the resources and time to spend setting it up.
There are three main valuable features for us:
Teams are now able to schedule deployments to any environment and watch in a screen the deployment occur. This has allowed teams to reduce the number of staff online when a deployment occurs.
Tracking and audit-ability of the deployments are easy and allow teams to research any issues quickly and resolve the issue with little assistance.
The reporting functionality is limited and it is difficult to retrieve information from the database due to the table structure.
We've used it for about one year.
We encountered no issues with deployment.
We have occasional minor issues with stability.
We've had no issues scaling it.
The prior solution was created by our company. We determined that to add the features required to expand our solution, it was better to use a vendor product.
The initial setup was straightforward and well-documented.
We implemented it through our in-house team.
I'm not able to answer this.
Cost is based on the number of agents installed. This is normally one agent per target box/system.
Yes, we evaluated Jenkins.
This product is excellent for deploying components and running processes related to deployments. It is not intended to be a build system, but is easy enough to incorporate into any CI Build system. The tool has two "sister" products which work well with UrbanCode Deploy. It is intended for this tool to be used for larger companies.
Repeatable, reliable deployments from one environment to the next.
We are able to help customers automate deployments reliably.
I've used it for eight months.
No issues encountered.
No issues encountered.
No issues encountered.
The IBM Urbancode team is a great bunch of people and they are extremely knowledgeable.
It has provided a platform for traceability across the whole release cycle for more than 700 diverse applications.
No issues encountered.
No issues encountered.
No - scalability is handled via client relays which offload the server's work to proxies.
Good so far. Not a lot of history there.
Yes, we used Build Forge. It's a build tool that was being re-purposed for deploy and it was beginning to fail often.
Very straightforward. Command line prompts to install all components, and hook into enterpriseDB. Trial version will use its own Derby DB.
TBD. Have handled most of this in-house so far, but we have a service contract available. No info on expertise.
No specific numbers right now, but we're saving the deploy team, the infrastructure team, the help desk team, and the development teams many hours. Results are variable based on how much automation was already done, and the quality of the legacy code.
Evaluated Automic, CA product offerings. Also kept tabs on the Serena offering.
I've found that the most valuable feature is the Server/Agent architecture. In most cases, once you install the agent onto a machine, you rarely (if ever) need to log on to the agent machine itself to diagnose issues with most scripted deployment tasks.
Urbancode Deploy allowed us to implement a nearly-complete Continuous Delivery solution for one of our web applications - builds were deployed and promoted straight through from a development environment all the way to a Staging/UAT environment with little to no engineer interaction.
Upgrade & Migration from older versions, as well as Import & Export of application automation data between multiple environments has some room for improvement.
Installation into a clean environment is easy and straightforward. Upgrading an existing Urbancode Deploy server is unfortunately quite tricky, as many of the migration scripts for the database need patching and fixes based on the specific customer install.
Only on a couple of very rare occasions, and IBM Tech Support was very responsive in all of those.
Yes, with this particular product it is important to heed the provided best practices for inventory management and server specs - the larger the installation footprint, the more quickly the internal database size and repository size will grow if not managed appropriately.
Their sales and licensing support seems adequate. I would encourage any potential customer to make sure they accurately forecast their licensing needs as the PO process seems to take weeks rather than days.Technical Support:
IBM's Technical support is fantastic when you are in a "down" state - unfortunately I feel it drops off quite quickly from there. If the application is not entirely non-functional, their capacity for working through functional issues does not seem very deep.
Yes, I have used FinalBuilder for deployment automation - which did not use a Server/Agent model or offer any sort of repository management or inventory tracking, which were the major selling points for Urbancode Deploy.
Initial setup in a clean environment is very straightforward.
Urbancode Deploy allowed our group to go from managing deployment of two enterprise applications to fifteen, over the course of 18 months, with no increase in staffing or increase in system downtime. The number of deployments performed by our group increased exponentially and our deployment success rate went up by quite a bit.
Yes, we evaluated Thoughtworks GO and Nolio alongside this product.
Be sure to budget for/ accommodate a demo/dev/test environment for uDeploy as well as a production environment.
Deployment to various environments can be done from a web interface without needing to manually copy files around or log into systems to run scripts.
Full blown support for repositories such a SonaType Nexus would be better than having to deploy an agent to watch particular filesystem paths.
We've been using IBM UrbanCode for 3 months.
No issues with deployment and the automatic deployment of agents and agent relay has proved very useful.
We have not encountered any issues with stability.
Currently a single node is sufficient for our needs, so scalability has not been an issue.
There was no need to contact customer service.Technical Support:
There was no need to contact technical support.
The previous solution was a mix of manually copying files around and logging into systems to run scripts. IBM UrbanCode Deploy enabled us to easily take builds from SonaType Nexus and deploy them into the environments without needing manual steps.
The initial setup was straightforward. It was very easy to install and configure IBM UrbanCode Deploy and remotely deploy its agents.
Before chosing this product we also evaluated Midvision RapidDeploy, Thoughtworks Go and Xebia Labs XL Deploy.
Thoughtworks Go: the plugin to integrate with Sonatype Nexus is a thirdparty plugin and has been broken for sometime.
Xebia Labs XL Deploy: The set up of each app for deployment is overly complicated.