Why SaaS CI/CD Solutions Work for Open Source Projects
Let's look at the role SaaS CI/CD solutions play in an open source environment and run through some important features to consider.
Join the DZone community and get the full member experience.
Join For FreeToday, open source communities use a wide range of tools for building and delivering their software. These tools tend to also be open source, but more and more open source communities are starting to see the value of managed, SaaS tools to help support their communities and their goals. Still, finding the right fit can be a challenge — you want tools that help developers but also support the values of the open source community. Factors like hosting, cost, scalability, and integration support play a crucial role in making these choices. In this post, I'll take a look at why SaaS solutions are often the right choice for open source, and why they may be the right choice for your own continuous integration/continuous delivery (CI/CD) open source project.
While Jenkins is most open source projects' default choice for CI/CD — and often rightly so — it's not the only thing your team should consider. These days, teams working in open source projects have also started using various SaaS tools (Heroku, GitHub, JFrog, etc.) for their infrastructure and portions of their CI/CD pipeline. Still, somehow, they are reluctant to use hosted CI servers. This raises the point — if you can trust Heroku for your open source projects, then why shouldn't you trust a SaaS CI/CD provider whose core business is based on the same service?
Why SaaS?
Sometimes, an open source community may decide to use a hosted, SaaS tool so that it's one less piece of infrastructure they have to oversee and manage or to keep newer projects at the lowest level of community governance and decision-making needed for as long as possible. Cloud-based CI/CD solutions delivered on SaaS models can help let communities move fast and worry less for a variety of reasons:
- Cost. For open source projects, most of the SaaS CI/CD tools are available free of cost.
- Security. Organizations keen on security and compliance can adopt a hybrid approach, where they can host their code on servers running in private networks and run CI/CD builds in the cloud. This lets the CI/CD service own the security problems, which is one less thing for a community to worry about.
- Efficiency. SaaS CI/CD, such as CloudBees CodeShip, are optimized for speed and flexibility with no overhead or management to achieve those goals.
- Simplicity. It's easy to get started with SaaS CI/CD; provisioning can be done within a few clicks (discussed below). It is ideal for small teams managing the entire CI/CD setup as it significantly reduces overheads in the development and deployment process.
Out-of-the-Box CI/CD Solutions
A lot of teams and individual developers prefer to work with out-of-the-box cloud-based CI/CD solutions like CloudBees CodeShip, which one can use for free for their open source projects. That's because, in addition to the cost advantage and ease of setup, cloud-based hosting means there are no administration and maintenance — from version updated, to security patches to world-class technical support — everything is handled for you and made simple. With no hardware or software infrastructure to procure and maintain, teams can focus on working on their projects and writing high-quality code, not on infrastructure.
That is why organizations starting with small open source projects often find out-of-the-box SaaS CI/CD solutions useful as they make it possible to start small and scale up when required. The SaaS model enables easy scalability allowing developers to perform a higher number of commits, provision larger build machines for tests and use parallel pipelines. Therefore, these solutions are very popular in the CI/CD market. The tradeoff is that such solutions are not suited for all organizations as they offer limited flexibility for customization.
The Bottom Line
Teams comfortable with open source often cite a lack of openness in SaaS solutions as a major concern. However, vendors have gradually started exploring the benefits of open source; the biggest and most commonly cited example is that of Microsoft which has embraced open source as well as SaaS in recent years. Similar trends in the industry suggest that SaaS and open source will complement each other more in the future and certainly aren't at loggerheads.
Published at DZone with permission of Ethan Jones, DZone MVB. See the original article here.
Opinions expressed by DZone contributors are their own.
Comments