2. ∗ Introduction
∗ Need of CI Integration
∗ What are the differences between continuous
integration, continuous delivery, and continuous
deployment?
∗ Different CI Tools
∗ How to choose perfect CI Tool
∗ Benefits of Bitbucket Pipelines
∗ Live Demo
Index
3. ∗ Continuous integration (CI) is a practice where a team
of developers integrate their code early and often to
the main branch or code repository.
∗ Goal
∗ To reduce the risk of seeing “integration hell”
Introduction
4. ∗ Reduced integration risk.
∗ Reduce the amount of time spent on fixing bugs
∗ Save your time
∗ Identifying and addressing conflicts early.
∗ The code in version control works.
∗ Reduced friction between team members.
∗ Higher code quality.
CI: Benefits
5. ∗ Continuous Integration
∗ To check that the application is not broken whenever
new commits are integrated into the main branch.
∗ Continuous delivery: Extension of CI
∗ Automated your release process and
∗ Deploy your application at any point of time by clicking
on a button.
∗ Continuous deployment:
∗ No human intervention, &
∗ Only a failed test will prevent a new change to be
deployed to production.
Continuous Integration vs Continuous Delivery
vs Continuous Deployment
7. Practice Requirement Benefit
Continuous integration • Automated Test
Scripts,
• Continuous
integration server ,
and,
• Code Commit (at
least once in a day)
• Less Bugs
• Reduce Testing cost
• Building the release
is easy
• Less context
switching
Continuous delivery • Strong foundation in
CI and Good test
case code coverage
• Deployment needs
to be Automated
• Need to embrace
feature flags
• Complexity of
deployment process
is taken away.
Continuous deployment • Testing culture
needs to be at its
best
• Releases are less
risky and easier to
fix
9. ∗ Build process flexibility
∗ No hassle setup and greater scalability
∗ User Interface
Perfect CI Tool
10. ∗ Traditional cost associated with CI is
∗ Installation and maintenance of a CI server.
∗ Benefits:
∗ Easy setup and configuration
∗ Easy to managing the code
∗ Store and manage your build configurations in a single
bitbucket-pipelines.yml file.
Why Bitbucket pipeline is used?
11. ∗ Increased project maintenance overhead.
∗ Too much change.
∗ Hardware/Software costs.
∗ Developers are already doing all these operations.
∗ Project too small.
Potential Pitfalls