Jenkins X replaces Prow with Lighthouse for better source control compatibility

Jenkins X replaces Prow with Lighthouse for better source control compatibility

CloudBees has released the May update of its distribution for CI/CD tool Jenkins X, which highlights some of the progress made by the open source project recently.

Besides fixing some issues, Jenkins X made a major step by moving to Lighthouse as a default webhook handler. In earlier versions, Prow used to do this job, and it was indeed used as the foundation for Lighthouse. However, with less moving parts and potential configuration, it is meant to be easier to use and less resource hungry. 

Far more important is its use of jenkins-x/go-scm as an abstraction layer, which helped the Jenkins X team to implement proper support for GitHub Enterprise, and to get rid of “significant” workflow limitations present earlier. 

Admins will also soon see fewer difficulties when using Jenkins X with GitLab or BitBucket Server in versions newer than 7.0, since previews for the respective support have been integrated as well. Interested parties daunted by the preview label should note that this is mainly down to testing and usage. While the support is tested with every project change, the Jenkins X team is mainly working with the GitHub API and therefore needs outside feedback in order to improve on other provider integrations in order to make sure it is doing what it should.

It therefore calls for users of those tools to share their experience and open issues if they run into problems. In a blog post from earlier this month, Andrew Bayer, a senior software engineer at CloudBees, also noted that “some functionality may not behave exactly the same on all providers, the core functionality of ChatOps should work on all”. 

Examples of the limitations mentioned are fewer options to format comments and the need for additional comments to emulate labels on BitBucket Server, and the possibility of GitLab running into API rate limits quicker.

Amongst the issues that could be closed in the run-up to the release are a fix to have jx edit buildpack working again, since it tended to just do nothing before, and one mitigating problems with hmac-tokens when failing to interpret a pipeline file.

Jenkins X is a tool for pipeline automation using Kubernetes and was initially developed at CloudBees. Along with its predecessor Jenkins, and projects Spinnaker and Tekton, it became one of the founding projects of the Continuous Delivery Foundation. 

The latter was started in March 2019 as a part of the Linux Foundation with the goal of becoming a “vendor-neutral home of many of the fastest-growing projects for continuous integration/continuous delivery (CI/CD)” and fostering collaboration to come up with best practices and industry specification. 

Since its inception, it has welcomed just one additional project under its roof. Yahoo-born build-service Screwdriver made its way into the CDF incubator in February 2020.