Industry: Computer Software
Summary: With its software development and testing environment, LzLabs turned to CloudBees to help orchestrate testing routines and more efficiently leverage the hardware resources.
Challenge: Facing rapid business growth and demanding clients, LzLabs needed to improve the software testing operations by introducing greater automation, better user control and more scalable computing resources.
Solution: LzLabs has implemented CloudBees to better automate development and testing pipelines while ensuring full control over user management and code merging.
Greater pipeline automation, parallelisation and so faster testing
10’s of thousands of tests in each run and do 10 or 15 runs a day
More efficient use of hardware resources
Faster, expert technical support
Product: CloudBees CI, CloudBees Professional Services
Based in Zürich, Switzerland, LzLabs enables companies to take their IT investments from the past and make them perform in the modern world. The combination of the existing with the modern is a winning formula to succeed in an ever-changing world. Choosing the LzLabs Software Defined Mainframe® (LzSDM) enables customers to decide where they host their data and accelerates application development which is a necessary skill to thrive in today’s industries.
"Software is core to what we do,” says Jon Griffiths, Head of DevOps at LzLabs. His DevOps organization plays a central role in leading the company’s software development programs. "My team is in the middle of everything,” says Griffiths. "Our developers produce the source code, we then run and maintain all the build, test and deployment environments.”
Since LzLabs works with customer legacy software, many of its developers have been working in the industry for decades. "Our team has really been around and knows their stuff. It’s incredible what some of them can do.”
Quality assurance (QA) and testing is a critical part of LzLabs’ development environment – and one that is uniquely challenging, involving complex procedures that create legacy application containers and then test them in parallel to save time.
Before LzLabs adopted DevOps orchestration, most of its software testing was done manually and had room for improvement. "It was a fragmented approach. Nothing ran completely smoothly because you could be waiting for one QA engineer to finish and they would have to remember to say they had finished before someone else could start moving on it,” he says.
Code could take days to weeks to be fully tested. "Now, via the container approach with CloudBees, we run 10’s of thousands of tests in each run and do 10 or 15 runs a day,” he says.
Moreover, time zone differences could slow the testing process further. Branches of code might take from days to a couple of weeks to be fully tested.
Testing efforts were also complicated by LzLabs’ fast growth, which was putting more demands on the company’s hardware inventory. "We started to hit the ceiling with hardware resources and a lack of flexibility,” Griffiths says. "We had no proper testing environment and didn’t use Groovy pipelines at all. We desperately needed that to be orchestrated.”
The team initially chose to orchestrate its projects using Jenkins®, but eventually hit a wall with open source. "It didn’t allow our groups the flexibility they needed to have control over their own jobs. So, when the opportunity to start using CloudBees came along, we jumped on it,” he said.
LzLabs’ development organization includes over 60 software developers, quality assurance (QA) engineers and DevOps engineers. "We automate everything we can, as often as we can and CloudBees enables us to have confidence in the result. We use CloudBees to orchestrate the entire process of getting code from a developer to a customer,” he says.
LzLabs said implementing CloudBees was carefully planned. "We needed just one weekend to move all the difficult jobs over to CloudBees and it just worked really nicely,” he says. Professional services consultants from CloudBees were there to assist the rollout and organize authentication to enable different client controllers and provide access to various groups. Even better, the move involved little change in the LzLabs developers’ existing environment.
Today the CloudBees orchestration platform is a core component of LzLabs’ development organization, underpinning a range of productivity improvements, especially in its testing operations.
With the help of advanced parallel pipeline orchestration capabilities, LzLabs has significantly accelerated its testing activities by running multiple tests simultaneously. For example, by enabling parallelization in the pipeline, LzLabs can run three full sequences of tests on three separate branches simultaneously.
Its new DevOps orchestration platform also allows LzLabs to deploy and manage its hardware assets more flexibly. The group can now fully utilize all the available hardware by sharing resources between different teams which each have their own CloudBees client controller. "We are able to fully utilize all of the hardware we have available to us, which we weren’t able to do previously,” he says.
Other capabilities in the CloudBees environment are helping the company automate development tasks and keep projects on track. Some developers, for example, are using the CloudBees platform to quality-check their code branches before they hand it over to the QA team. Teams are also using the system to manage the merge process automatically while ensuring that only one merge could happen at a time, thus avoiding a potential break in the process.
As LzLabs continues to grow, they look forward to leveraging the CloudBees software delivery platform to keep pace with demand for LzLabs’ Software Defined Mainframe solutions. "We have to stay flexible and agile. Our CloudBees platform will help us quickly and reliably deliver high-quality software products and services in a secure and compliant way,” he says.
In Their Own Words
Greater hardware flexibility
With CloudBees, LzLabs can pool its compute resources and share them between multiple software development and testing groups. "With CloudBees, we can move machines in and out of dedicated pools and we can move machines from test into production. We’re able to fully utilize all of the hardware we have available to us,” he says.
More control over environments
"With CloudBees, each group can now have their own client controller. The CloudBees environment really gives us a lot more control, certainty and reliability,” he says.
"The parallelism that we can get in the pipelines with CloudBees is fundamental to what we do. Without that, and without the ability of the hardware to be pooled, we would not have been able to achieve what we have,” he says.
Faster parallel testing
Before adopting DevOps orchestration, testing was done manually. "Now, via the container approach with CloudBees, we run 10’s of thousands of tests in each run and do 10 or 15 runs a day,” he says.
"We automate everything that we can, as often as we can and CloudBees orchestration enables us to have confidence in the end result,” he says.