MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
DevOps
1. DevOps
Build and Release Management
Ravneet Kaur Arora
Tech Lead
QUARKXPRESS Publishing R&D (India) Pvt. Ltd.
2. Agenda
• What is DevOps?
• Introduction to Visual Studio Team Services
• Effective Release Pipeline
• Configuring CI/CD
• Build and Release Management(VSTS)
• Artifactory Management
• Jenkins CI
5. Problem in a Nutshell…
• Bottlenecks in Software Development
• Missed Deadlines
• Technology issues
• Code is not building. Issue with the Build Server
• Production Deployments
» Application crashes
» Login issues
» etc etc etc
Communication
Less of Understanding
Integration Issues
6. What is DevOps?
• It is a Culture- a mindset that your team or
organization can adopt which will make the
processes smoother
7. DevOps- Definition
• Harmonize People, Processes and Technologies
• Enhance the ability of an organization to bring
an optimal application delivery
Developer
Build
Engineer
QA
Team
End
Users
9. Visual Studio Team Services
• Cloud service for collaborating on code development
• Integrated set of features that are accessible through web
browser or IDE client
• Git repositories for source control
• Agile tools to support planning and tracking work
• Highly customizable dashboards
• VSTS instance
– Free of 5 users
– MSDN subscription
10. Visual Studio Team Services
Agile Tools Git
Package
Management
Release
Management
TFVC
Testing Reporting
Build
Management
11. Effective Release Pipeline
Continuous Integration(CI)
• Is a development practice that requires developers to
integrate code into a shared repository several times a
day. Each check-in is then verified by an automated
build, allowing teams to detect problems early
Developer 1
Developer 2
Git /TFVC
repo
VSBuild Agent1
VSBuild Agent2
12. Effective Release Pipeline
Continuous Deployment(CD)
• Is a software engineering approach in which teams produce
software in short cycles, ensuring that software can be
reliably released at any time. It aims at building, testing
and releasing software faster and more frequently
23. Release Management
• End to end release process for an application to
be deployed across various environments
• To author release definition; specify the
artifacts
• Can restrict the deployments using approvals
32. Jenkins
• Open source CI tool
• Integrate DevOps stages with the help of
plugins
• Every change made in source code is built
• Can be installed through Native System package,
Docker or even Standalone on a machine with JRE
34. Jenkins Master Slave Architecture
• Jenkins Master
– Schedule build jobs
– can execute jobs directly
– Dispatches builds to slaves for actual execution
• Jenkins Slave
– Java executable
– Listens requests from the Master instance