Flexible, High-Performance Jenkins Integration From Perforce
Jenkins pioneered a better way to implement Continuous Integration/Continuous Delivery (CI/CD). It works with nearly any project or product development process. Many companies use Jenkins for DevOps. It’s become the most popular way to integrate your entire chain of build, test, and deployment tools.
Most of the customized tasks done by Jenkins use plugins. Jenkins' well-defined API allows you to customize and perform actions to accelerate your pipeline.
Helix Core and Jenkins Integrations
What Helix Core Does
Helix Core is the version control software from Perforce. Development teams use it to securely manage all digital content — even large binary files — all in one repository. And it quickly deliver files to large, distributed teams.
Integrating Helix Core and Jenkins lets you to set up powerful pipelines. Together, these bring together your:
- Source code
- Non-code assets
The assets can be stored in multiple repositories or file systems. Plus all your assets can be accessed from development centers or design studios around the globe.
P4 Plugin for Jenkins
The P4Plugin for Jenkins provides a fast, seamless way to extract projects from Helix Core into pipeline stages. It’s written using P4Java, the Helix Core Java API. This makes it easy to create custom Jenkins configurations.
You can use the plugin to run builds using Perforce Streams or shelves. And you can create a workspace automatically, or use an existing workspace template. To boost performance, sync Helix Core depots in parallel using Jenkinsfile syntax.
After the build, the P4Plugin will automatically push files back to Helix Core, and label the files. This helps organize and manage your CI/CD processes, which improves quality and traceability.
API for Version Control
If you want to extend functionality and integrate more tools, P4Java is ready. It’s a Java API that enables applications to access Helix Core. Now you can control your connection to the Helix Core server to enhance your build automation.
When the P4Plugin’s commands aren’t enough, you can use the Perforce-supplied P4Groovy to integrate workflows. It works with the Jenkins supplied Domain Specific Language (DSL) based on Groovy. With Jenkins’ Job-DSL-plugin, you can better describe jobs and manage scripts.
Helix Swarm and Jenkins
What Is Helix Swarm?
Helix Swarm is a collaboration and code review tool that comes free with Helix Core. You can review, approve, and ship with Helix Swarm and Jenkins. It can organize large-scale projects with ease, and eliminate confusion across your development environments. Plus you gain speed and enhanced security along the way.
How Does Helix Swarm Work With Jenkins?
It’s simple to integrate Jenkins, Helix Core, and Swarm. Once it's setup, there are no additional steps for developers to fire off build and test automation. Your team simply completes their work, submits it, and the integration takes over.
Once Jenkins reports that the build and tests have passed, Swarm notifies the team that changes are waiting to be reviewed and approved. Once approved, the code can be deployed automatically. It’s an integral part of your CI/CD workflow.
Working With Git
What Is Helix4Git?
With Helix4Git, you can create Jenkins pipelines that easily incorporate Helix Core and Git assets. This makes it simpler and faster to manage and build. This is because Helix4Git leverages the power and scale of the Helix server, and it lets you manage Git repos natively.
Even better, Helix4Git is easy to implement without changing your existing toolset. It can be added to any Git environment to improve performance and seamlessly scale. Plus with Helix4Git, you can sync multiple Git repositories and Helix Core depots at the same time using Jenkinsfile syntax. You get 40-80% faster builds compared to open source Git.
How the Jenkins Integration Works
Developers can work seamlessly with Git commands and workflows. And they can automate using Helix client workspaces and P4 commands. You can map parts of a Git repository into a Helix Client workspace by choosing specific paths to files using your favorite syntax, including wildcards.
This creates the equivalent of a “narrow clone” of the Git repository. You can also bring multiple Git repositories into the client. And you can even combine assets in Helix Core depots with Git repositories in a hybrid Helix Client workspace.
Helix QAC and Jenkins Integration
What Helix QAC Does
Helix QAC is a static code analyzer for C/C++. It analyzes code, checks it against coding rules, and ensures compliance. Developers use Helix QAC to ensure higher code quality.
How the Jenkins Integration Works
Helix QAC has a Jenkins plugin for both C and C++. With this plugin, you’ll get immediate feedback on compliance to a coding standard.
Here’s how it works…
Analyze Your Code With Helix QAC
You commit your code as usual. A job then prompts Helix QAC to run an analysis on the source code. Summary information — such as how compliant the code is to the coding standard — is immediately available on the CI server.
The plugin also generates a compliance report. It compares the total number of messages in the project against a threshold. The build status gets set to “unstable” if that threshold is exceeded. This stops subsequent tasks.
The results of this analysis are also automatically uploaded to Helix QAC’s dashboard. Developers can view the annotated source code via their browser. They can then pinpoint the exact location of non-compliances and fix issues before re-committing the code.
Klocwork and Jenkins Integration
What Klocwork Does
Klocwork is a C/C++/Java/C# static code analysis solution designed for enterprise with CI/CD in mind. It inspects source code for defects, vulnerabilities, and coding rule violations to ensure complex software is safe, secure, compliant and reliable.
How the Jenkins Integration Works
Klocwork integrates with build systems and CI environments. Its unique differential analysis technology provides the fastest analysis results for CI pipelines.
Our customized Jenkin plugin helps you to easily setup the automation of Klocwork static code analysis into your CI process.
Klocwork’s Jenkins plugin supports both CI/CD pipelines and freestyle, which provides you with a flexible job configuration.
- Setup build triggers with hooks to your code repository.
- Customize your build steps and leverage Differential Analysis for the fastest static code analysis result times.
- Set build pass/failure conditions to quality gate commits and visualize your build history (Figure 1).
- View analysis results in Klocwork Portal or within Jenkins (Figure 2).
- View your project issue trend over time. (Figure 3).
Contact us for more details. We can walk you through Perforce and Jenkins integrations to give you better performance, and an easy way to integrate your entire toolchain.