Continuous Integration and Continuous Delivery (CI/CD) are software engineering approaches that are a part of the larger software delivery pipeline. Used effectively, CI/CD can help ensure that software is high quality, reliable, and safe and secure. Learn more about the CI/CD process and CI/CD tools.
Your Guide to the CI/CD Process and CI/CD Tools
Read along or jump to the section on the CI/CD process that interests you most:
- Continuous Integration Overview
- A Look at How Continuous Integration Works
- How to Use Branching with Continuous Integration
- How to Use Continuous Integration Build Servers With Helix Core
- How to Test for Memory Leaks in Continuous Integration Systems
- Learn How to Reduce Lead Time with Continuous Delivery
- The Advantages and Common Barriers of Continuous Delivery
- Advice From DevOps Experts on How to Make the Transition to Continuous Delivery
- How to Use Jenkins to Create Continuous Delivery Pipelines
- How to Use Continuous Delivery with Jenkins, Nexus, and LiveRebel
- CI/CD Best Practices
- Discover the Keys to a Strong CI/CD Pipeline
- Learn How to Optimize Your Software Delivery Pipeline with CI/CD
- Learn More About Agile Development in CI/CD
- How Branching Works Within CI/CD
- What Is the Current State of CI/CD in DevOps
- Learn How to Pair Static Analysis with CI/CD Pipelines
Continuous Integration Overview
One of the key components of DevOps Automation, Continuous Integration (CI) refers to the automated process of building and testing code each time a change is made. These changes are then committed back to the central repository.
Each time changes are committed, it triggers a consistent, automated build and test process, which is often referred to as a “pipeline”. This process helps to report any defects found as code is being compiled and/or tested.
A Look at How Continuous Integration Works
Continuous Integration streamlines the software development process by automating the integration of code changes from multiple contributors into a single project. It does this by splitting the code integration process into smaller, more manageable tasks.
How to Use Branching with Continuous Integration
Feature branching and continuous integration can be problematic. This article from JRebel looks at how to use a Jenkins plugin called Feature Branch Notifier to launch builds on different branches without causing a mess.
How to Use Continuous Integration Build Servers With Helix Core
Build runners are at the center of Continuous Integration. It's important to choose the right one. Learn how— plus get tips for using it with version control (such as Helix Core).
How to Test for Memory Leaks in Continuous Integration Systems
Memory leaks are detrimental to an application, as they result in hangs, buffering, and crashes. For that reason, it is important to detect and fix memory leaks during the Continuous Integration process.
Learn How to Reduce Lead Time with Continuous Delivery
Speed is a crucial component of innovation. And for application developers, reducing lead time can mean the difference between the next big thing, and the second best thing. In this article from Zend, they show how to reduce lead time via continuous delivery
The Benefits of Continuous Delivery
Continuous delivery is hugely beneficial – but that doesn’t mean implementation is easy. In this article from Zend, they look at common barriers and benefits to continuous delivery and how teams can best prepare for implementation.
Advice From DevOps Experts on How to Make the Transition to Continuous Delivery
DevOps experts have a lot of opinions on the best way to deliver innovative software. In this white paper from Zend, they share their advice on transitioning to a continuous delivery model, and common mistakes teams make along the way.
How to Use Jenkins to Create Continuous Delivery Pipelines
Using Jenkins to chain and visualize jobs can make creating a continuous delivery pipeline an easier feat. In this blog from Toomas Römer, he shows practical examples of the Jenkins plugins best used for specific continuous delivery situations.
How to Use Continuous Delivery with Jenkins, Nexus, and LiveRebel
In this detailed guide from Toomas Römer, he shows an example of how to use Jenkins and Nexus to implement continuous delivery on a live chat application.
Continuous Integration and Continuous Delivery
CI/CD Best Practices
Used together, CI/CD form the backbone of efficient software development and DevOps automation. By adopting CI/CD best practices for software development, you can improve the quality of your software.
Discover the Keys to a Strong CI/CD Pipeline
Only 43% of developers deploy on demand or multiple times a day. But having a strong CI/CD pipeline is important. A fully-optimized CI/CD pipeline saves time and eliminates manual errors. It makes a complicated process from development to delivery more efficient.
Additionally, teams also benefit from faster feedback and increased visibility, and a CI/CD pipeline provides stability.
Learn How to Optimize Your Software Delivery Pipelines with CI/CD
Optimizing your delivery pipeline is important — whether it’s a CI/CD pipeline or not. That’s because you need to release more, faster. At the same time, teams are growing and projects are more complex.
Learn how to enhance your pipeline to handle more code, files, and assets to accelerate your pipeline.
Learn More About Agile Development in CI/CD
Continuous Testing (CT) is an important addition to CI/CD, especially in Agile development. While serving slightly different objectives, these elements can actually integrate to assist the team to achieve high-velocity delivery of quality applications.
Continuous Testing enables the promise of Agile development by automating all testing activities into every commit. Together, CI/CD/CT empower development and testing for faster processes and delivery.
How Branching Works Within CI/CD
Most organizations today have implemented some form of CI/CD to automate stages of development. Having a CI/CD branching strategy can help your teams integrate code easier and find bugs before they are released into production. Set up your pipeline for success with the right strategy.
What Is the Current State of CI/CD in DevOps
In the current state of CI/CD, the majority of organizations have shifted to Continuous Deployment. However, quality remains an issue for many organizations, and teams continue to struggle with identifying real issues rather than false negatives.
For that reason, many teams have adopted automation to help ensure the success of their CI/CD Pipelines. Learn more about current issues faced by teams trying to implement CI/CD, and how the market is responding.
Learn How to Pair Static Analysis with CI/CD Pipelines
Static analysis tools — like Klocwork for C, C++, C#, and Java — inspect your source code to identify defects, errors, and compliance issues as you code. What’s more, these tools can be easily and effectively integrated into your CI/CD pipeline to help ensure that no vulnerabilities are added as your codebase grows. This makes static analysis an essential part of any CI/CD pipeline.
Optimize Your CI/CD Process With Perforce
Contact us and see for yourself how Perforce’s CI/CD tools can help you optimize your CI/CD process.