SlideShare a Scribd company logo
1 of 63
A Brief About DevOps and its Practices
We manage learning.
“Building an Innovative Learning Organization. A Framework to Build a Smarter
Workforce, Adapt to Change, and Drive Growth”. Download now!
NetCom Learning
NetCom Learning – Managed Learning Services
DevOps:Terms
DevOps (development and operations) is an enterprise software development phrase used to mean a type of agile
relationship between Development and IT Operations.
The goal of DevOps is to change and improve the relationship by advocating better communication and collaboration
between the two business units.
Continuous delivery (CD) is a software engineering approach in which teams produce software in short cycles, ensuring
that the software can be reliably released at any time. It aims at building, testing, and releasing software faster and more
frequently.
Continuous software development is an umbrella term that describes several aspects of iterative software application
development, including continuous integration, continuous delivery, continuous testing and continuous deployment.
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.
Software Delivery is the process of getting a software product to market. Your particular “market” and “product” could
be: An alpha product to an early adopter. The next release of an internal operations product. A first release of a main
product for a major company
Continuous Delivery (CD) is the application development discipline that takes Agile to its logical conclusion, creating
software that is always ready to release. It does this by building upon and extending Agile, CI and DevOps practices and
tools to transform the way software is delivered. Automate everything.
DevOps LifeCycle
DevOps Model
Benefits of DevOps
DevOps Tools
A workflow
Maven build lifecycle
Maven build lifecycle Phases
Goal
A goal represents a specific task which contributes to the building and managing of a
project. It may be bound to zero or more build phases.
A goal not bound to any build phase could be executed outside of the build lifecycle
by direct
invocation.
Goal
Clean lifecycle
Points to Remember
Build Lifecycle Phases
Repository
Local Repository
Central Repository
Remote Repository
Plugins
Plugins: imp points
Task: do it
Archetype
Snapshot
Dependency Management
Deployment Automation
Solutions
case jenkins and github
Setup: set up a Jenkins job which builds a project of a GitHub repository.
Additionally, the build process is automatically started when a contributor
pushes to the respective GitHub repository.
Complete Solution
Jenkins
• Open source CI/CD project
• On premise tool
• Supports plugins
• Integrates with 3rd party tools and services
Organisation
folder
Workflow
Multibranch
Pipeli
ne
New in
Jenkins 2
Workflow Multibranch
• Automatic Workflow (job) creation in Jenkins per
new branch in the repository (assuming webhooks
are registered from SCM to Jenkins)
• Build specific to that child-branch and its unique
scm change and build history
• Automatic job pruning/deletion for branches
deleted from the repository, according to the
settings
• Flexibility to individually configure branch
properties, by overriding the parent properties, if
required
• * Source: Jenkins.io
Organization folder
• Works on project space level within
organization SCM.
• Provides ability to create and manage
workflow jobs for all repositories
• Automatically removes jobs for merged
back branches
• Simplified configuration that requires only
project name and credentials
• Provides pull request testing functionality.
Jenkins will create a new CD pipeline when
a pull-request is submitted and build/test
the pull-request.
Setting up Organization folder
Pipeline Execution
Pipeline definition
• Pipelines are “Jenkins job definitions” enabled
by the Pipeline plugin
• Based on Groovy programming language
• Pipelines leverage the power of multiple steps
to execute both simple and complex tasks
according to parameters that you establish
• Pipelines can build code and orchestrate the
work required to drive applications from
commit to delivery
• * Source: Jenkins.io
Pipeline attributes
• Durable: Pipelines can survive both planned and
unplanned restarts of your Jenkins master.
• Pausable: Pipelines can optionally stop and wait
for human input or approval before completing
the jobs for which they were built.
• Versatile: Pipelines support complex real-world
requirements, including the ability to fork or join,
loop, and work in parallel with each other.
• Extensible: The Pipeline plugin supports custom
extensions to its DSL (domain scripting language)
and multiple options for integration with other
plugins.
• * Source: Jenkins.io
Pipeline pros
• Supports complex, real-world, CD Pipeline requirements:
pipelines can fork/join, loop, parallel, to name a few
• Resilient - pipeline executions can survive master restarts
• Pausable - pipelines can pause and wait for human
input/approval
• Efficient - pipelines can restart from saved checkpoints
• Visualized - Pipeline StageView provides status at-a-glance
dashboards including trending
• Artifact traceability with fingerprinting - support tracking
versions of artifacts using file fingerprinting
Pipeline vocabulary
• Step is a single task that is part of build sequence
• Node typically enlists help from available executors on agents
to:
•Schedules the steps contained within it to run by adding them
to the Jenkins build queue
•Creates a workspace where resource-intensive processing
can occur without negatively impacting your pipeline
performance
• Stage is a logically distinct part of the execution of any task,
with parameters for locking, ordering, and labeling its part of a
process relative to other parts of the same process
• * Source: Jenkins.io
step([$class: 'ArtifactArchiver', artifacts: '**/target/*.war’,
fingerprint: true])
The Jenkinsfile
• Jenkinsfile is a container for pipeline (or
other) script, which details what specific
steps are needed to perform a job for
which you want to use Jenkins.
• Jenkinsfile can be created with text/Groovy
editor, or through the configuration page
on of Jenkins instance.
• Provides DSL steps with most common
build tasks
(https://jenkins.io/doc/pipeline/steps/)
• Can be extended by external shell scripts
and import user Groovy scripts
DSL examples
• sh, bat - script execution for Unix and
Windows system
• scm, checkout - checkout source code
from VCS
• readFile, writeFile, fileExists - file
handling
• stash, unstash - share workspace
results between stages
• withEnv, evn.Foo, $BUILD_NUMBER -
getting and setting variables
• parallel - set up concurrent tasks
node('nodeJs') {
currentBuild.result = "SUCCESS"
try {
stage('Checkout')
checkout scm
stage('Test')
env.NODE_ENV = "test"
print "Environment will be : ${env.NODE_ENV}"
sh 'node -v && npm prune && npm install && npm test'
stage('Build Docker')
sh './dockerBuild.sh'
stage('Deploy')
echo 'Push to Repo ssh to web server and tell it to pull new image'
sh './dockerPushToRepo.sh'
stage('Cleanup')
echo 'prune and cleanup'
sh 'npm prune && rm node_modules -rf'
mail body: 'project build successful', from: 'xxxx@yyyyy.com', replyTo: 'xxxx@yyyy.com', subject: 'project build successful',
to: 'yyy@yy.com'
} catch (err) {
currentBuild.result = "FAILURE"
def specificCause = currentBuild.rawBuild.getCause(hudson.model.Cause$UserIdCause)
mail body: "project build error is here: ${env.BUILD_URL}" , from: 'xxxx@yyyy.com', replyTo: 'yyyy@yyyy.com', subject:
'project build failed', to: 'zz@yy.com'
throw err }}
Master-agent architecture
• Master node has a list of all configured agents
• Master node starts required Agents and passes
build steps from Jenkinsfile
• All “hard work” is done by Agents
Http: 8080
Slave:
50000
Mast
er
Agent
nodejs
Agent
java
Agent
golang
Slave:
50000
Slave:
50000
Slave:
50000
Jenkins in Kubernetes
Jenkins usage across teams
Nan
a
Bet
a
Pi ...
Jenkins agent
images
Source code
+
Pipeline
libraries
What makes "Pipeline as a code" valuable
for build/deployments in Newsweaver?
• Organization folders - enable Jenkins to automatically detect and include any new
repositories within them as resources.
• Jenkinsfile as part of source code - A Jenkinsfile is a container for your pipeline (or
other) script, which details what specific steps are needed to perform a job for which
you want to use Jenkins.
• Groovy is good - Jenkinsfiles are written as Groovy scripts which makes them easy to
write and add complex logic
• Ability to record test results and artifacts
• Call agent for help - build tasks can be distributed and assigned to remote nodes.
• DRY - Pipeline can reuse build steps stored in SCM which can allow us to avoid code
duplication in all branches
• Inputs - pipelines can be programed with pauses/human interaction
• Concurrent build actions - with a help of Parallel Test Executor we can split steps in
parallel parts
• Active community - there are plenty code examples, best practices, tutorials on the
web
New & noteworthy features
• Blue Ocean - new UI tailored pipelines as a
central theme to the Jenkins user experience
• Visual Pipeline Editor - helps to make things
clearer for a range of users, to help with
Workflow adoption
Blue Ocean (https://jenkins.io/projects/blueocean/)
Visual Pipeline Editor (https://www.cloudbees.com/blog/introducing-experimental-visual-pipeline-editor)
Watch the Live Demonstration
Watch the recorded webinar here!
Recommended Courses
NetCom Learning offers a comprehensive portfolio for DevOps training
options. Please see below the list of recommended courses:
DevOps Engineering on AWS
Check out more DevOps training options with NetCom Learning – CLICK HERE
Our live webinars will help you to touch base a wide variety of IT, soft skills and business
productivity topics; and keep you up to date on the latest IT industry trends. Register now
for our upcoming webinars:
A Brief on MS-Access 2016 and its Integration – April 25
How About Cloud Computing in the Current Era? – April 27
Agile Project Management – May 02
5 Practices of Exemplary Leadership – May 04
Networking Fundamentals (Part. 1) – May 09
Special Promotion
Whether you're learning new IT or Business skills, or you are developing a learning plan for
your team, now you can register for our Guaranteed to Run classes with confidence.
From Microsoft, to CompTIA, to CISSP; all classes delivered by top-notch instructors in in-
person Instructor-led Classroom or Live Online.
Learn more»
To get latest technology updates, please follow our social media pages!
THANK YOU !!!
We manage learning.
“Building an Innovative Learning Organization. A Framework to Build a
Smarter Workforce, Adapt to Change, and Drive Growth”. Download now!

More Related Content

More from Tuan Yang

Agile Fundamentals One Step Guide for Agile Projects(Handout).pdf
Agile Fundamentals One Step Guide for Agile Projects(Handout).pdfAgile Fundamentals One Step Guide for Agile Projects(Handout).pdf
Agile Fundamentals One Step Guide for Agile Projects(Handout).pdfTuan Yang
 
Getting Started with AWS Devops.pdf
Getting Started with AWS Devops.pdfGetting Started with AWS Devops.pdf
Getting Started with AWS Devops.pdfTuan Yang
 
Certified Ethical Hacker v11 First Look.pdf
Certified Ethical Hacker v11 First Look.pdfCertified Ethical Hacker v11 First Look.pdf
Certified Ethical Hacker v11 First Look.pdfTuan Yang
 
An overview of agile methods and agile project management
An overview of agile methods and agile project management An overview of agile methods and agile project management
An overview of agile methods and agile project management Tuan Yang
 
The essentials of ccna master the latest principles(handouts)
The essentials of ccna master the latest principles(handouts)The essentials of ccna master the latest principles(handouts)
The essentials of ccna master the latest principles(handouts)Tuan Yang
 
Unlock the value of itil 4 with 5 key takeaways that can be used today(handout)
Unlock the value of itil 4 with 5 key takeaways that can be used today(handout)Unlock the value of itil 4 with 5 key takeaways that can be used today(handout)
Unlock the value of itil 4 with 5 key takeaways that can be used today(handout)Tuan Yang
 
CHFI First Look by NetCom Learning - A Free Course on Digital Forensics
CHFI First Look by NetCom Learning - A Free Course on Digital ForensicsCHFI First Look by NetCom Learning - A Free Course on Digital Forensics
CHFI First Look by NetCom Learning - A Free Course on Digital ForensicsTuan Yang
 
Master Class: Understand the Fundamentals of Architecting on AWS
Master Class: Understand the Fundamentals of Architecting on AWSMaster Class: Understand the Fundamentals of Architecting on AWS
Master Class: Understand the Fundamentals of Architecting on AWSTuan Yang
 
How to Deploy Microsoft 365 Apps and Workloads.
How to Deploy Microsoft 365 Apps and Workloads.How to Deploy Microsoft 365 Apps and Workloads.
How to Deploy Microsoft 365 Apps and Workloads.Tuan Yang
 
Learn to utilize cisco unified communications for better collaboration( hando...
Learn to utilize cisco unified communications for better collaboration( hando...Learn to utilize cisco unified communications for better collaboration( hando...
Learn to utilize cisco unified communications for better collaboration( hando...Tuan Yang
 
NetCom learning webinar how to manage your projects with disciplined agile (d...
NetCom learning webinar how to manage your projects with disciplined agile (d...NetCom learning webinar how to manage your projects with disciplined agile (d...
NetCom learning webinar how to manage your projects with disciplined agile (d...Tuan Yang
 
NetCom learning webinar cnd first look by netcom learning - network defender fre
NetCom learning webinar cnd first look by netcom learning - network defender freNetCom learning webinar cnd first look by netcom learning - network defender fre
NetCom learning webinar cnd first look by netcom learning - network defender freTuan Yang
 
NetCom learning webinar an introduction to itil®4 create, deliver & suppo...
NetCom learning webinar an introduction to itil®4 create, deliver & suppo...NetCom learning webinar an introduction to itil®4 create, deliver & suppo...
NetCom learning webinar an introduction to itil®4 create, deliver & suppo...Tuan Yang
 
NetCom learning webinar start your network foundations with ccna(handouts)
NetCom learning webinar start your network foundations with ccna(handouts)NetCom learning webinar start your network foundations with ccna(handouts)
NetCom learning webinar start your network foundations with ccna(handouts)Tuan Yang
 
NetCom learning webinar 5 disruptive trends impacting the project management ...
NetCom learning webinar 5 disruptive trends impacting the project management ...NetCom learning webinar 5 disruptive trends impacting the project management ...
NetCom learning webinar 5 disruptive trends impacting the project management ...Tuan Yang
 
Understanding Microsoft Dynamics 365 and the Power Platform in 30 Minutes | N...
Understanding Microsoft Dynamics 365 and the Power Platform in 30 Minutes | N...Understanding Microsoft Dynamics 365 and the Power Platform in 30 Minutes | N...
Understanding Microsoft Dynamics 365 and the Power Platform in 30 Minutes | N...Tuan Yang
 
4 tips to master the art of adobe in design
4 tips to master the art of adobe in design 4 tips to master the art of adobe in design
4 tips to master the art of adobe in design Tuan Yang
 
Build your Own Business Application Using Microsoft Power Apps
Build your Own Business Application Using Microsoft Power AppsBuild your Own Business Application Using Microsoft Power Apps
Build your Own Business Application Using Microsoft Power AppsTuan Yang
 
Draw IT Network Diagrams Like a Pro Using AutoCAD
Draw IT Network Diagrams Like a Pro Using AutoCADDraw IT Network Diagrams Like a Pro Using AutoCAD
Draw IT Network Diagrams Like a Pro Using AutoCADTuan Yang
 
Design a strong defense strategy to prevent hackers from evading antivirus so...
Design a strong defense strategy to prevent hackers from evading antivirus so...Design a strong defense strategy to prevent hackers from evading antivirus so...
Design a strong defense strategy to prevent hackers from evading antivirus so...Tuan Yang
 

More from Tuan Yang (20)

Agile Fundamentals One Step Guide for Agile Projects(Handout).pdf
Agile Fundamentals One Step Guide for Agile Projects(Handout).pdfAgile Fundamentals One Step Guide for Agile Projects(Handout).pdf
Agile Fundamentals One Step Guide for Agile Projects(Handout).pdf
 
Getting Started with AWS Devops.pdf
Getting Started with AWS Devops.pdfGetting Started with AWS Devops.pdf
Getting Started with AWS Devops.pdf
 
Certified Ethical Hacker v11 First Look.pdf
Certified Ethical Hacker v11 First Look.pdfCertified Ethical Hacker v11 First Look.pdf
Certified Ethical Hacker v11 First Look.pdf
 
An overview of agile methods and agile project management
An overview of agile methods and agile project management An overview of agile methods and agile project management
An overview of agile methods and agile project management
 
The essentials of ccna master the latest principles(handouts)
The essentials of ccna master the latest principles(handouts)The essentials of ccna master the latest principles(handouts)
The essentials of ccna master the latest principles(handouts)
 
Unlock the value of itil 4 with 5 key takeaways that can be used today(handout)
Unlock the value of itil 4 with 5 key takeaways that can be used today(handout)Unlock the value of itil 4 with 5 key takeaways that can be used today(handout)
Unlock the value of itil 4 with 5 key takeaways that can be used today(handout)
 
CHFI First Look by NetCom Learning - A Free Course on Digital Forensics
CHFI First Look by NetCom Learning - A Free Course on Digital ForensicsCHFI First Look by NetCom Learning - A Free Course on Digital Forensics
CHFI First Look by NetCom Learning - A Free Course on Digital Forensics
 
Master Class: Understand the Fundamentals of Architecting on AWS
Master Class: Understand the Fundamentals of Architecting on AWSMaster Class: Understand the Fundamentals of Architecting on AWS
Master Class: Understand the Fundamentals of Architecting on AWS
 
How to Deploy Microsoft 365 Apps and Workloads.
How to Deploy Microsoft 365 Apps and Workloads.How to Deploy Microsoft 365 Apps and Workloads.
How to Deploy Microsoft 365 Apps and Workloads.
 
Learn to utilize cisco unified communications for better collaboration( hando...
Learn to utilize cisco unified communications for better collaboration( hando...Learn to utilize cisco unified communications for better collaboration( hando...
Learn to utilize cisco unified communications for better collaboration( hando...
 
NetCom learning webinar how to manage your projects with disciplined agile (d...
NetCom learning webinar how to manage your projects with disciplined agile (d...NetCom learning webinar how to manage your projects with disciplined agile (d...
NetCom learning webinar how to manage your projects with disciplined agile (d...
 
NetCom learning webinar cnd first look by netcom learning - network defender fre
NetCom learning webinar cnd first look by netcom learning - network defender freNetCom learning webinar cnd first look by netcom learning - network defender fre
NetCom learning webinar cnd first look by netcom learning - network defender fre
 
NetCom learning webinar an introduction to itil®4 create, deliver & suppo...
NetCom learning webinar an introduction to itil®4 create, deliver & suppo...NetCom learning webinar an introduction to itil®4 create, deliver & suppo...
NetCom learning webinar an introduction to itil®4 create, deliver & suppo...
 
NetCom learning webinar start your network foundations with ccna(handouts)
NetCom learning webinar start your network foundations with ccna(handouts)NetCom learning webinar start your network foundations with ccna(handouts)
NetCom learning webinar start your network foundations with ccna(handouts)
 
NetCom learning webinar 5 disruptive trends impacting the project management ...
NetCom learning webinar 5 disruptive trends impacting the project management ...NetCom learning webinar 5 disruptive trends impacting the project management ...
NetCom learning webinar 5 disruptive trends impacting the project management ...
 
Understanding Microsoft Dynamics 365 and the Power Platform in 30 Minutes | N...
Understanding Microsoft Dynamics 365 and the Power Platform in 30 Minutes | N...Understanding Microsoft Dynamics 365 and the Power Platform in 30 Minutes | N...
Understanding Microsoft Dynamics 365 and the Power Platform in 30 Minutes | N...
 
4 tips to master the art of adobe in design
4 tips to master the art of adobe in design 4 tips to master the art of adobe in design
4 tips to master the art of adobe in design
 
Build your Own Business Application Using Microsoft Power Apps
Build your Own Business Application Using Microsoft Power AppsBuild your Own Business Application Using Microsoft Power Apps
Build your Own Business Application Using Microsoft Power Apps
 
Draw IT Network Diagrams Like a Pro Using AutoCAD
Draw IT Network Diagrams Like a Pro Using AutoCADDraw IT Network Diagrams Like a Pro Using AutoCAD
Draw IT Network Diagrams Like a Pro Using AutoCAD
 
Design a strong defense strategy to prevent hackers from evading antivirus so...
Design a strong defense strategy to prevent hackers from evading antivirus so...Design a strong defense strategy to prevent hackers from evading antivirus so...
Design a strong defense strategy to prevent hackers from evading antivirus so...
 

Recently uploaded

"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 

Recently uploaded (20)

"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 

A Brief About DevOps and its Practices

  • 1. A Brief About DevOps and its Practices We manage learning. “Building an Innovative Learning Organization. A Framework to Build a Smarter Workforce, Adapt to Change, and Drive Growth”. Download now!
  • 3. NetCom Learning – Managed Learning Services
  • 4.
  • 5. DevOps:Terms DevOps (development and operations) is an enterprise software development phrase used to mean a type of agile relationship between Development and IT Operations. The goal of DevOps is to change and improve the relationship by advocating better communication and collaboration between the two business units. Continuous delivery (CD) is a software engineering approach in which teams produce software in short cycles, ensuring that the software can be reliably released at any time. It aims at building, testing, and releasing software faster and more frequently. Continuous software development is an umbrella term that describes several aspects of iterative software application development, including continuous integration, continuous delivery, continuous testing and continuous deployment. 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. Software Delivery is the process of getting a software product to market. Your particular “market” and “product” could be: An alpha product to an early adopter. The next release of an internal operations product. A first release of a main product for a major company Continuous Delivery (CD) is the application development discipline that takes Agile to its logical conclusion, creating software that is always ready to release. It does this by building upon and extending Agile, CI and DevOps practices and tools to transform the way software is delivered. Automate everything.
  • 13. Goal A goal represents a specific task which contributes to the building and managing of a project. It may be bound to zero or more build phases. A goal not bound to any build phase could be executed outside of the build lifecycle by direct invocation.
  • 14. Goal
  • 30. case jenkins and github Setup: set up a Jenkins job which builds a project of a GitHub repository. Additionally, the build process is automatically started when a contributor pushes to the respective GitHub repository.
  • 32. Jenkins • Open source CI/CD project • On premise tool • Supports plugins • Integrates with 3rd party tools and services
  • 33.
  • 35. Workflow Multibranch • Automatic Workflow (job) creation in Jenkins per new branch in the repository (assuming webhooks are registered from SCM to Jenkins) • Build specific to that child-branch and its unique scm change and build history • Automatic job pruning/deletion for branches deleted from the repository, according to the settings • Flexibility to individually configure branch properties, by overriding the parent properties, if required • * Source: Jenkins.io
  • 36. Organization folder • Works on project space level within organization SCM. • Provides ability to create and manage workflow jobs for all repositories • Automatically removes jobs for merged back branches • Simplified configuration that requires only project name and credentials • Provides pull request testing functionality. Jenkins will create a new CD pipeline when a pull-request is submitted and build/test the pull-request.
  • 38.
  • 40. Pipeline definition • Pipelines are “Jenkins job definitions” enabled by the Pipeline plugin • Based on Groovy programming language • Pipelines leverage the power of multiple steps to execute both simple and complex tasks according to parameters that you establish • Pipelines can build code and orchestrate the work required to drive applications from commit to delivery • * Source: Jenkins.io
  • 41. Pipeline attributes • Durable: Pipelines can survive both planned and unplanned restarts of your Jenkins master. • Pausable: Pipelines can optionally stop and wait for human input or approval before completing the jobs for which they were built. • Versatile: Pipelines support complex real-world requirements, including the ability to fork or join, loop, and work in parallel with each other. • Extensible: The Pipeline plugin supports custom extensions to its DSL (domain scripting language) and multiple options for integration with other plugins. • * Source: Jenkins.io
  • 42. Pipeline pros • Supports complex, real-world, CD Pipeline requirements: pipelines can fork/join, loop, parallel, to name a few • Resilient - pipeline executions can survive master restarts • Pausable - pipelines can pause and wait for human input/approval • Efficient - pipelines can restart from saved checkpoints • Visualized - Pipeline StageView provides status at-a-glance dashboards including trending • Artifact traceability with fingerprinting - support tracking versions of artifacts using file fingerprinting
  • 43. Pipeline vocabulary • Step is a single task that is part of build sequence • Node typically enlists help from available executors on agents to: •Schedules the steps contained within it to run by adding them to the Jenkins build queue •Creates a workspace where resource-intensive processing can occur without negatively impacting your pipeline performance • Stage is a logically distinct part of the execution of any task, with parameters for locking, ordering, and labeling its part of a process relative to other parts of the same process • * Source: Jenkins.io
  • 44.
  • 45.
  • 46. step([$class: 'ArtifactArchiver', artifacts: '**/target/*.war’, fingerprint: true])
  • 47. The Jenkinsfile • Jenkinsfile is a container for pipeline (or other) script, which details what specific steps are needed to perform a job for which you want to use Jenkins. • Jenkinsfile can be created with text/Groovy editor, or through the configuration page on of Jenkins instance. • Provides DSL steps with most common build tasks (https://jenkins.io/doc/pipeline/steps/) • Can be extended by external shell scripts and import user Groovy scripts
  • 48. DSL examples • sh, bat - script execution for Unix and Windows system • scm, checkout - checkout source code from VCS • readFile, writeFile, fileExists - file handling • stash, unstash - share workspace results between stages • withEnv, evn.Foo, $BUILD_NUMBER - getting and setting variables • parallel - set up concurrent tasks
  • 49. node('nodeJs') { currentBuild.result = "SUCCESS" try { stage('Checkout') checkout scm stage('Test') env.NODE_ENV = "test" print "Environment will be : ${env.NODE_ENV}" sh 'node -v && npm prune && npm install && npm test' stage('Build Docker') sh './dockerBuild.sh' stage('Deploy') echo 'Push to Repo ssh to web server and tell it to pull new image' sh './dockerPushToRepo.sh' stage('Cleanup') echo 'prune and cleanup' sh 'npm prune && rm node_modules -rf' mail body: 'project build successful', from: 'xxxx@yyyyy.com', replyTo: 'xxxx@yyyy.com', subject: 'project build successful', to: 'yyy@yy.com' } catch (err) { currentBuild.result = "FAILURE" def specificCause = currentBuild.rawBuild.getCause(hudson.model.Cause$UserIdCause) mail body: "project build error is here: ${env.BUILD_URL}" , from: 'xxxx@yyyy.com', replyTo: 'yyyy@yyyy.com', subject: 'project build failed', to: 'zz@yy.com' throw err }}
  • 50. Master-agent architecture • Master node has a list of all configured agents • Master node starts required Agents and passes build steps from Jenkinsfile • All “hard work” is done by Agents Http: 8080 Slave: 50000 Mast er Agent nodejs Agent java Agent golang Slave: 50000 Slave: 50000 Slave: 50000
  • 52. Jenkins usage across teams Nan a Bet a Pi ... Jenkins agent images Source code + Pipeline libraries
  • 53. What makes "Pipeline as a code" valuable for build/deployments in Newsweaver? • Organization folders - enable Jenkins to automatically detect and include any new repositories within them as resources. • Jenkinsfile as part of source code - A Jenkinsfile is a container for your pipeline (or other) script, which details what specific steps are needed to perform a job for which you want to use Jenkins. • Groovy is good - Jenkinsfiles are written as Groovy scripts which makes them easy to write and add complex logic • Ability to record test results and artifacts • Call agent for help - build tasks can be distributed and assigned to remote nodes. • DRY - Pipeline can reuse build steps stored in SCM which can allow us to avoid code duplication in all branches • Inputs - pipelines can be programed with pauses/human interaction • Concurrent build actions - with a help of Parallel Test Executor we can split steps in parallel parts • Active community - there are plenty code examples, best practices, tutorials on the web
  • 54. New & noteworthy features • Blue Ocean - new UI tailored pipelines as a central theme to the Jenkins user experience • Visual Pipeline Editor - helps to make things clearer for a range of users, to help with Workflow adoption
  • 56. Visual Pipeline Editor (https://www.cloudbees.com/blog/introducing-experimental-visual-pipeline-editor)
  • 57. Watch the Live Demonstration Watch the recorded webinar here!
  • 58. Recommended Courses NetCom Learning offers a comprehensive portfolio for DevOps training options. Please see below the list of recommended courses: DevOps Engineering on AWS Check out more DevOps training options with NetCom Learning – CLICK HERE
  • 59. Our live webinars will help you to touch base a wide variety of IT, soft skills and business productivity topics; and keep you up to date on the latest IT industry trends. Register now for our upcoming webinars: A Brief on MS-Access 2016 and its Integration – April 25 How About Cloud Computing in the Current Era? – April 27 Agile Project Management – May 02 5 Practices of Exemplary Leadership – May 04 Networking Fundamentals (Part. 1) – May 09
  • 60. Special Promotion Whether you're learning new IT or Business skills, or you are developing a learning plan for your team, now you can register for our Guaranteed to Run classes with confidence. From Microsoft, to CompTIA, to CISSP; all classes delivered by top-notch instructors in in- person Instructor-led Classroom or Live Online. Learn more»
  • 61. To get latest technology updates, please follow our social media pages!
  • 62.
  • 63. THANK YOU !!! We manage learning. “Building an Innovative Learning Organization. A Framework to Build a Smarter Workforce, Adapt to Change, and Drive Growth”. Download now!