Today, 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?
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. In fact, SaaS-based software delivery solutions like CloudBees CodeShip are gaining acceptance among open source communities - which suggests that the future of such solutions is bright.
SaaS CI/CD solutions like CloudBees CodeShip fits a variety of open-source and private projects, offering better scalability, customization and ease of use. Moreover, as these solutions are generally free, teams using Jenkins-based solutions can easily try the CloudBees CodeShip CI/CD solution in their environment and make an informed decision for its adoption with their open source projects.