What is Blue Ocean in Jenkins
Jenkins, an open-source automation server, is widely used for building, testing, and deploying code. And when it comes to a user-friendly and visually appealing interface for Jenkins, Blue Ocean takes the lead. This guide will walk you through the basics of getting started with Jenkins using the Blue Ocean interface and its core functionality.
Table of contents
- Understanding Blue Ocean in Jenkins
- Is Blue Ocean dead?
- Alternative options of Blue Ocean
- Getting started with Blue Ocean in Jenkins
- Viewing output of Jenkins job in Blue Ocean
- Jenkins Blue Ocean vs Classic UI
- Troubleshooting common Blue Ocean errors
- Conclusion
Understanding Blue Ocean in Jenkins
What is Blue Ocean?
Blue Ocean is a transformative plugin for Jenkins, not a standalone tool, designed to boost the user experience in continuous integration and automation. As a visual extension to Jenkins, Blue Ocean offers an elegant and intuitive interface, revolutionizing how users interact with their pipelines and projects.
Its key features include visual pipelines, a user-friendly dashboard, and enhanced pipeline editing. It is an essential addition for those desiring a more accessible and delightful experience managing and monitoring Jenkins workflows.
How Blue Ocean works
Blue Ocean seamlessly integrates with Jenkins, enhancing its capabilities without replacing its core functionality. By reimagining the user interface, Blue Ocean transforms the traditional Jenkins experience into an interactive journey, providing a modern and streamlined platform for managing automation workflows.
It simplifies complex automation tasks by offering a good interface that allows users to focus effortlessly on their projects and pipelines. The clean and accessible format improves the user experience and accelerates the adoption of Jenkins, catering to beginner and experienced professionals.
Blue Ocean’s integration doesn’t disrupt the existing Jenkins infrastructure; instead, it adds a layer of visual refinement, making automation more accessible and enjoyable for all users.
Key features of Blue Ocean
Visual pipelines
Blue Ocean’s graphical pipeline representation not only aids in troubleshooting but also provides real-time insights into the progress of your workflows. The intuitive visualizations make it easy to identify bottlenecks and optimize your CI/CD processes effortlessly. With interactive timeline markers, users can delve deeper into specific stages, enhancing the granularity of performance analysis.
User-friendly interface
Blue Ocean’s streamlined interface caters to beginners and experts and allows for personalized dashboards, ensuring users can tailor their Jenkins experience according to their preferences. Its simplicity promotes collaboration among team members, fostering a more efficient development environment. Additionally, the interface supports dark mode, offering a comfortable coding environment for those who prefer low-light settings.
Interactive dashboard
Blue Ocean introduces an interactive dashboard that displays your projects and pipelines in a visually engaging way. This dashboard not only makes it simpler to monitor ongoing builds but also allows for quick navigation and management. Users can also share dashboard snapshots for concise project updates during meetings.
Enhanced pipeline editing
Blue Ocean’s guided wizard simplifies pipeline creation and includes template options for common use cases. This empowers users to expedite the setup process, ensuring a more efficient and standardized approach to building and deploying code. Advanced users can leverage a code editor within Blue Ocean to manipulate pipeline scripts directly, offering flexibility for customization.
Integration with third-party tools
Blue Ocean integrates with popular third-party tools, extending its functionality beyond Jenkins. This integration facilitates a unified development environment, connecting your pipelines with the tools your team relies on for testing, deployment, and collaboration. With support for major version control systems and collaboration platforms, Blue Ocean enhances cross-tool communication and ensures a cohesive workflow.
Is Jenkins Blue Ocean dead?
People often ask if Blue Ocean is deprecated. The short answer is no.
However, here is what the Jenkins website has to say about its current status:
Blue Ocean will not receive further functionality updates. Blue Ocean will continue to provide easy-to-use Pipeline visualization, but it will not be enhanced further. It will only receive selective updates for significant security issues or functional defects.
/ Blue Ocean offical documentation
At the time of this initial writing, Blue Ocean continues to receive regular updates, mainly in the form of bug fixes and maintenance. If you are unsure, you can visit the Blue Ocean releases page to stay up to date on what is happening with Blue Ocean from a development perspective.
In summary, Blue Ocean has not officially been deprecated, canceled, or left for dead.
Let’s explore some Blue Ocean alternatives for the adventurous reader out there.
Alternative options of Blue Ocean
If you’re wondering what some alternatives to Blue Ocean are, please keep reading.
There are a few alternative tools and plugins, such as Pipeline Stage View, Pipeline Graph View, Build Monitor, Radiator View, and Delivery Pipeline Plugin, that may offer similar functionality, but it’s essential to note that they cannot entirely replace the comprehensive and user-friendly experience provided by Blue Ocean in Jenkins. Each tool has its strengths and use cases, and the choice depends on specific project requirements and team preferences.
Pipeline Stage View
Pipeline Stage View, another plugin for Jenkins, visually represents the stages within your pipeline. It allows users to monitor the progress of each stage, ensuring a clear understanding of the pipeline’s flow and identifying potential bottlenecks. While Pipeline Stage View lacks the extensive modern interface of Blue Ocean, it remains a valuable option for those seeking a more granular view of their pipeline’s execution.
Pipeline Graph View
Like Pipeline Stage View, Pipeline Graph View offers a graphical representation of your Jenkins pipeline. It displays the relationships between different stages and their dependencies, providing a visual overview of the entire pipeline structure. While Pipeline Graph View might not have the same user-friendly interface as Blue Ocean, it presents a detailed and comprehensive visual representation of your pipeline, aiding in troubleshooting and optimization.
Build Monitor
Build Monitor is a Jenkins plugin that concentrates on visualizing the health and status of your builds. It provides a customizable dashboard that displays real-time information about your builds, including their success or failure status. While Build Monitor might not offer the exact extensive visual representation as Blue Ocean, it is an effective tool for teams looking for a straightforward and concise display of their build statuses, allowing for quick identification of issues.
Radiator View
The Radiator View plugin for Jenkins is designed to present an easy-to-read, color-coded view of your build status. It offers a simple and concise display, resembling a radiator with its color gradients. Radiator View is handy for teams that prioritize a quick visual assessment of the overall health of their builds, making it a lightweight alternative to more feature-rich solutions like Blue Ocean.
Delivery Pipeline Plugin
The Delivery Pipeline Plugin for Jenkins focuses on providing a visual representation of your application delivery pipeline. It allows users to visualize the progression of changes from development through various stages to production. While it may not boast the same modern interface as Blue Ocean, the Delivery Pipeline Plugin is a practical choice for teams emphasizing a clear visualization of their end-to-end delivery process.
Getting started with Blue Ocean in Jenkins
Install Blue Ocean
To install the Blue Ocean module, you have to install its respective plugins to your Jenkins application:
Ensure you are logged in to Jenkins as an Admin user. Select Manage Jenkins from the Jenkins dashboard page and then Plugins.
Select the Available tab and enter blue ocean in the text box. This will show the list of plugins based on the filtering search results.
Mark the check box to the left of Blue Ocean, then select either the Install option or the Install after restart (recommended) at the top of the page.
Note:
Installing all other plugins on that page is not mandatory. The primary Blue Ocean plugin automatically selects and installs all the dependent plugins to manage Blue Ocean.
How to access Blue Ocean
Once the Blue Ocean has been installed in your Jenkins environment, you can open the Blue Ocean module by selecting the Open Blue Ocean tab from the left side.
Otherwise, you can open the Blue Ocean directly by adding /blue to the end of your Jenkins server’s URL as follows: http://localhost:8080/blue/
If your Jenkins application has some existing Pipeline projects, then the Blue Ocean Dashboard displays all of those.
Otherwise, click on the New Pipeline button if you want to create a new pipeline project.
Next, select the respective tool from where you want to create your new pipeline, i.e., GitHub, Git, GitHub Enterprise, Bitbucket Cloud, and Bitbucket Server.
Creating a Git repository pipeline
To create a new Pipeline project for the Git repository, click on the Git button under Where do you store your code? section.
Then, put your Repository URL under Connect to a Git repository.
Then, add that repository’s respective Username and Password and click the Create Credential button.
Lastly, click the Create Pipeline button to add the new pipeline.
Creating a GitHub repository pipeline
To create a new Pipeline project for your GitHub repository, click on the GitHub icon under Where do you store your code? section.
In the Connect to GitHub section, put your valid GitHub access token into the Your GitHub access token field and click the Connect button.
If you do not have any GitHub access token, select the Create an access token here option to open GitHub to the new personal access token page.
Copy your newly generated access token on the resulting Personal access tokens page. Back in Blue Ocean, paste the access token into the Your GitHub access token field, then select Connect.
How to disable Jenkins Blue Ocean
Jenkins Blue Ocean provides a feature by which you can navigate back to the default Jenkins user interface.
On the Create Pipeline page, Click on Classic Item Creation. After that, you will be redirected to the default Create Pipeline page of Jenkins.
Again, click the Go to classic button at the top on the Blue Ocean page. Then, you will be redirected to the default dashboard page of Jenkins.
Viewing output of Jenkins job in Blue Ocean
Navigate to Jenkins dashboard > New Item. Add a new pipeline job with a valid name and click OK.
Add your pipeline script under Pipeline > Script on the configuration page.
pipeline { agent any stages { stage('Hello') { steps { echo 'Hello World' } } } }
Then click the Save button to create the new pipeline job.
In the Pipeline status page, click on Open Blue Ocean.
A new page will appear, and click on the Run button inside that page.
The execution of the new pipeline job will start, and its record will appear in that table with Run ID, Status message, Time (Duration and Completed), and a rerun button.
Click on the pipeline run record from the table, and a new page will appear with the respective output of that Pipeline job.
Select the Artifacts tab at the top of the page.
Click on the log extension file to open the pipeline artifacts status, where you can see the console output of the pipeline job.
Jenkins Blue Ocean vs Classic UI
The following table provides a quick overview of the key differences between Jenkins Blue Ocean and the Classic UI, covering aspects such as user interface, pipeline visualization, ease of use, customization options, collaboration features, and more.
Feature | Blue Ocean | Jenkins Classic UI |
User Interface | Modern, visual, and intuitive interface. | Traditional and text-based interface. |
Pipeline Visualization | Graphical representation of pipelines. | Text-based pipeline visualization. |
Ease of Use | All stages are displayed by default. | Steeper learning curve for newcomers. |
Dashboard | Interactive dashboard with project views. | Standard dashboard with build lists. |
Customization Options | Limited theming and layout customization. | Minimal customization options for UI. |
Aesthetic Appeal | Offers a visually appealing design. | A more traditional and functional appearance. |
Collaboration Features | Allows collapsing and expanding of stages. | All stages displayed by default. |
Troubleshooting common Blue Ocean errors
Blue Ocean plugin installation error
Issue
During the Blue Ocean plugin installation in Jenkins, specific sub-modules associated with it will appear as Failure in the download progress page.
Cause
Blue Ocean plugin installation errors in Jenkins, particularly when encountering failures in downloading associated sub-modules, often stem from connectivity issues, network restrictions, or problems with the plugin repository. The root cause may be firewall settings blocking the necessary connections, intermittent internet connectivity, or outdated plugin dependencies incompatible with the Jenkins version. Conflicts between the Blue Ocean plugin and other existing plugins can also contribute to installation failures.
Resolution
Ensure your Jenkins server has stable and unrestricted internet access to resolve these issues. Verify that firewalls or proxy settings are not impeding the download process. Additionally, updating Jenkins to the latest version and ensuring compatibility with the Blue Ocean plugin is crucial.
If conflicting plugins exist, consider disabling or removing them temporarily during installation. Downloading and installing the Blue Ocean plugin from the official Jenkins plugin repository may be a possible solution, allowing for a more controlled installation.
Bitbucket cloud loading error
Issue
Sometimes, a problem is connecting Jenkins with Blue Ocean to Bitbucket Cloud during the new pipeline job creation. Although the connection is made perfectly, after providing the Bitbucket user ID and app password with full permissions, it does not finish loading any repository; it always stays loading.
Cause
The issue of Jenkins failing to connect with Blue Ocean to Bitbucket Cloud, leading to an endless loading state, often arises due to a misconfiguration in the Bitbucket Cloud integration. The error message io.jenkins.blueocean.commons.ServiceException: Not Found
suggests that Jenkins cannot locate the repositories on the specified Bitbucket Cloud account. This could be caused by an incorrect Bitbucket user ID, app password, or insufficient permissions for accessing the repositories.
io.jenkins.blueocean.commons.stapler.export.ExportInterceptor$1 getValue
Failed to get “repositories” from a io.jenkins.blueocean.blueocean_bitbucket_pipeline.BitbucketRepositoryContainer
io.jenkins.blueocean.commons.ServiceException: Not Found
at io.jenkins.blueocean.blueocean_bitbucket_pipeline.HttpResponse.getContent(HttpResponse.java:75)
at io.jenkins.blueocean.blueocean_bitbucket_pipeline.cloud.BitbucketCloudApi.getRepos(BitbucketCloudApi.java:161)
at io.jenkins.blueocean.blueocean_bitbucket_pipeline.BitbucketRepositoryContainer$BitbucketRepositories.(BitbucketRepositoryContainer.java:80)
at io.jenkins.blueocean.blueocean_bitbucket_pipeline.BitbucketRepositoryContainer.getRepositories(BitbucketRepositoryContainer.java:41)
at io.jenkins.blueocean.commons.stapler.export.MethodProperty.getValue(MethodProperty.java:72)
Caused: java.lang.reflect.InvocationTargetException
Code language: JavaScript (javascript)
Resolution
Double-check the Bitbucket user ID and app password provided in the Jenkins configuration to resolve this issue, ensuring they are accurate. Confirm that the app password has the required permissions, including full access to repositories. Additionally, verify that the specified Bitbucket Cloud account has the repositories intended for Jenkins integration.
If the issue persists, consider regenerating the app password and updating the Jenkins configuration accordingly. Additionally, reviewing Bitbucket Cloud API documentation for any changes or updates in the authentication process can provide insights into addressing compatibility issues.
Final thoughts on Jenkins with Blue Ocean
In conclusion, this article provides a complete overview for individuals embarking on their journey with continuous integration and delivery. Exploring the seamless integration of Jenkins and Blue Ocean brings an understanding of how these tools streamline the software development lifecycle, offering an intuitive and visually appealing interface.
This guide provides the foundational knowledge to set up and optimize the Jenkins environments, from installation to troubleshooting common issues. Ultimately, mastering Jenkins with Blue Ocean enhances efficiency, collaboration, and automation within development teams, enabling a more agile and streamlined approach to software delivery.
Related articles
- How to create a Jenkins pipeline
- Declarative vs scripted pipelines in Jenkins
- Jenkins shared libraries
- Jenkins monitoring guide
- Jenkins vs top competitors
Follow our blog
Be the first to know when we publish new content.
Jenkins Blue Ocean Pipeline
- Top 10 API Testing Tools - April 6, 2024
- The ABCs of UAT Testing: Understanding User Acceptance Testing - March 21, 2024
- Agile Testing: Key Principles and Practices - March 15, 2024