SlideShare a Scribd company logo
Practical experience in DevOps
at Tridens
Tomaž Kramberger
Agenda
• Tech Stack
• DevOps Stack
• DevOps Practices & Process
• Live presentation
• Amazon Web Services (AWS)
©2021 Tridens d.o.o. All rights reserved. 2
Tech Stack
©2021 Tridens d.o.o. All rights reserved. 3
DevOps Stack
©2021 Tridens d.o.o. All rights reserved. 4
DevOps
Practices & Process
Why DevOps?
©2021 Tridens d.o.o. All rights reserved. 6
• Higher speed and quality of product
releases.
• Faster responsiveness to customer needs.
• Team can react to change requests
from customers faster with adding
new and updating existing features.
• The time-to-market and value-delivery
rates increase.
DevOps Practices
• Continuous integration (CI)
• Merge changes back to the main branch as often as possible.
• Developer's changes are validated by creating a build and running automated tests against the build.
• Continuous delivery (CD)
• Automatically deploys all code changes to a testing environment after the build stage.
• Continuous testing (CT)
• Testing at earlier stages of the release pipeline.
• Testing more often before release.
• Testing everywhere, that is, across environments and devices.
• Continuous monitoring (CM)
• Help monitor software operation, especially performance issues, identify the cause of the error, and apply
appropriate solutions before significant damage to uptime and revenue.
• Infrastructure as code (IaC)
©2021 Tridens d.o.o. All rights reserved. 7
DevOps – CI/CD process
©2019 Tridens d.o.o. All rights reserved. 8
DevOps – GitFlow Strategy
©2021 Tridens d.o.o. All rights reserved. 9
• Production uploads are always made from Master.
• Master must always be stable and ready to deploy.
• The work is always done on Develop. Putting the
focus on the product being releasable and available.
• The Release branch is used to stabilize development.
• When we develop a feature, it is done on a Feature
branch.
• Feature branches always merge with Develop.
• Hotfix branch to resolve critical production issues. In
addition, this new branch will be merged with Master
and Develop as soon as this problem is solved.
DevOps – Cheat Sheet
©2021 Tridens d.o.o. All rights reserved. 10
DevOps – GIT Operations
©2021 Tridens d.o.o. All rights reserved. 11
git commit --allow-empty -m “[<command>]“
Example:
git commit –allow-empty –m “[ci-release]“
git commit –allow-empty –m “[ci-run]“
git commit –allow-empty –m “[ci-run|ere:feature/some-feature|tgw:feature/some-
feature]“
DevOps – CI Pipeline
©2021 Tridens d.o.o. All rights reserved. 12
.ci/Jenkinsfile
@Library('Tridens-CI’) _
JenkinsPipeline {
javaVersion='11'
buildTargetPrefix='app/'
dockerImageNamespace='monetization'
bddJobTag='monetizationIntegTag'
applicationType=si.tridenstechnology.jenkins.Configuration.ApplicationType.MAVEN
}
DevOps - JIRA Issue & Project Tracking Software
©2021 Tridens d.o.o. All rights reserved. 13
• Agile development
• Project tracking
• Reports
• Issue creation
• Time tracking
• Kanban board
DevOps
Live presentation
DevOps - Jenkins
15
©2021 Tridens d.o.o. All rights reserved.
DevOps - CI Pipeline
CI { … }
16
©2021 Tridens d.o.o. All rights reserved.
DevOps – End-To-End Tests
17
©2021 Tridens d.o.o. All rights reserved.
DevOps – ER Diagram
18
Image from trickyenough.com
©2021 Tridens d.o.o. All rights reserved.
DevOps – Swagger & API docs
19
©2021 Tridens d.o.o. All rights reserved.
DevOps – Spring Boot Admin
20
©2021 Tridens d.o.o. All rights reserved.
JIRA - Issue & project tracking software
21
©2021 Tridens d.o.o. All rights reserved.
AWS
Amazon Web Services (AWS)
22
AWS Architecture
23
©2021 Tridens d.o.o. All rights reserved.
AWS Cloudformation
• Easy to use
• Flexible and declarative
• Customisation through parameters
• Drag-and-drop UI for visualization
• DevOps principle IaC
24
©2021 Tridens d.o.o. All rights reserved.
AWS – CloudWatch monitoring
• Built-in metrics
• Custom metrics
• Operational view with dashboards
• Alarms
25
©2021 Tridens d.o.o. All rights reserved.
AWS – Performance Insights Monitoring
• Debug performance issues, for example, by identifying queries that are
causing high load.
• Tuning performance by identifying bottlenecks like CPU or I/O throughput.
• Monitor the performance by aggregating the core performance indicators of
your database.
• Analyze Queries, Analyze Bottlenecks
26
©2021 Tridens d.o.o. All rights reserved.
Questions?
Tomaž Kramberger
Software Architect
tomaz.kramgerger@tridenstechnology.com
©2021 Tridens d.o.o. All rights reserved. 27
Tridens DevOps

More Related Content

Similar to Tridens DevOps

Intro to GitOps with Weave GitOps, Flagger and Linkerd
Intro to GitOps with Weave GitOps, Flagger and LinkerdIntro to GitOps with Weave GitOps, Flagger and Linkerd
Intro to GitOps with Weave GitOps, Flagger and Linkerd
Weaveworks
 
Weave GitOps 2022.09 Release: A Fast & Reliable Path to Production with Progr...
Weave GitOps 2022.09 Release: A Fast & Reliable Path to Production with Progr...Weave GitOps 2022.09 Release: A Fast & Reliable Path to Production with Progr...
Weave GitOps 2022.09 Release: A Fast & Reliable Path to Production with Progr...
Weaveworks
 
Cloud Native Engineering with SRE and GitOps
Cloud Native Engineering with SRE and GitOpsCloud Native Engineering with SRE and GitOps
Cloud Native Engineering with SRE and GitOps
Weaveworks
 
Использование AzureDevOps при разработке микросервисных приложений
Использование AzureDevOps при разработке микросервисных приложенийИспользование AzureDevOps при разработке микросервисных приложений
Использование AzureDevOps при разработке микросервисных приложений
Vitebsk Miniq
 
DevSecOps: Bringing security to the DevOps pipeline
DevSecOps: Bringing security to the DevOps pipelineDevSecOps: Bringing security to the DevOps pipeline
DevSecOps: Bringing security to the DevOps pipeline
Aarno Aukia
 
Automation: The Good, The Bad and The Ugly with DevOpsGuys - AppD Summit Europe
Automation: The Good, The Bad and The Ugly with DevOpsGuys - AppD Summit EuropeAutomation: The Good, The Bad and The Ugly with DevOpsGuys - AppD Summit Europe
Automation: The Good, The Bad and The Ugly with DevOpsGuys - AppD Summit Europe
AppDynamics
 
DevOpsGuys - DevOps Automation - The Good, The Bad and The Ugly
DevOpsGuys - DevOps Automation - The Good, The Bad and The UglyDevOpsGuys - DevOps Automation - The Good, The Bad and The Ugly
DevOpsGuys - DevOps Automation - The Good, The Bad and The Ugly
DevOpsGroup
 
DevOps Culture & Enablement with Postgres Plus Cloud Database
DevOps Culture & Enablement with Postgres Plus Cloud DatabaseDevOps Culture & Enablement with Postgres Plus Cloud Database
DevOps Culture & Enablement with Postgres Plus Cloud Database
EDB
 
GitOps, Driving NGN Operations Teams 211127 #kcdgt 2021
GitOps, Driving NGN Operations Teams 211127 #kcdgt 2021GitOps, Driving NGN Operations Teams 211127 #kcdgt 2021
GitOps, Driving NGN Operations Teams 211127 #kcdgt 2021
William Caban
 
DevSecOps: Bringing security to the DevOps pipeline
DevSecOps: Bringing security to the DevOps pipelineDevSecOps: Bringing security to the DevOps pipeline
DevSecOps: Bringing security to the DevOps pipeline
Aarno Aukia
 
PHP Unconference Continuous Integration
PHP Unconference Continuous IntegrationPHP Unconference Continuous Integration
PHP Unconference Continuous Integration
Nils Hofmeister
 
A guide to modern software development 2018
A guide to modern software development 2018A guide to modern software development 2018
A guide to modern software development 2018
Peter Bittner
 
Build 12-Factor apps with Docker
Build 12-Factor apps with DockerBuild 12-Factor apps with Docker
Build 12-Factor apps with Docker
John Zaccone
 
Building environment of #UserDevOps and not only DevOps
Building environment of #UserDevOps and not only DevOpsBuilding environment of #UserDevOps and not only DevOps
Building environment of #UserDevOps and not only DevOps
Rajnish Chauhan
 
Continuous Integration
Continuous IntegrationContinuous Integration
Continuous Integration
XPDays
 
Introduction to DevOps
Introduction to DevOpsIntroduction to DevOps
Introduction to DevOps
Ahmed Adel
 
DevOps adoption in the enterprise
DevOps adoption in the enterpriseDevOps adoption in the enterprise
DevOps adoption in the enterprise
Sanjeev Sharma
 
DevOpsGuys FutureDecoded 2016 - is DevOps the Answer
DevOpsGuys FutureDecoded 2016 - is DevOps the AnswerDevOpsGuys FutureDecoded 2016 - is DevOps the Answer
DevOpsGuys FutureDecoded 2016 - is DevOps the Answer
DevOpsGroup
 
Starting the DevOps Train
Starting the DevOps TrainStarting the DevOps Train
Starting the DevOps Train
Cisco DevNet
 
Containers, microservices and serverless for realists
Containers, microservices and serverless for realistsContainers, microservices and serverless for realists
Containers, microservices and serverless for realists
Karthik Gaekwad
 

Similar to Tridens DevOps (20)

Intro to GitOps with Weave GitOps, Flagger and Linkerd
Intro to GitOps with Weave GitOps, Flagger and LinkerdIntro to GitOps with Weave GitOps, Flagger and Linkerd
Intro to GitOps with Weave GitOps, Flagger and Linkerd
 
Weave GitOps 2022.09 Release: A Fast & Reliable Path to Production with Progr...
Weave GitOps 2022.09 Release: A Fast & Reliable Path to Production with Progr...Weave GitOps 2022.09 Release: A Fast & Reliable Path to Production with Progr...
Weave GitOps 2022.09 Release: A Fast & Reliable Path to Production with Progr...
 
Cloud Native Engineering with SRE and GitOps
Cloud Native Engineering with SRE and GitOpsCloud Native Engineering with SRE and GitOps
Cloud Native Engineering with SRE and GitOps
 
Использование AzureDevOps при разработке микросервисных приложений
Использование AzureDevOps при разработке микросервисных приложенийИспользование AzureDevOps при разработке микросервисных приложений
Использование AzureDevOps при разработке микросервисных приложений
 
DevSecOps: Bringing security to the DevOps pipeline
DevSecOps: Bringing security to the DevOps pipelineDevSecOps: Bringing security to the DevOps pipeline
DevSecOps: Bringing security to the DevOps pipeline
 
Automation: The Good, The Bad and The Ugly with DevOpsGuys - AppD Summit Europe
Automation: The Good, The Bad and The Ugly with DevOpsGuys - AppD Summit EuropeAutomation: The Good, The Bad and The Ugly with DevOpsGuys - AppD Summit Europe
Automation: The Good, The Bad and The Ugly with DevOpsGuys - AppD Summit Europe
 
DevOpsGuys - DevOps Automation - The Good, The Bad and The Ugly
DevOpsGuys - DevOps Automation - The Good, The Bad and The UglyDevOpsGuys - DevOps Automation - The Good, The Bad and The Ugly
DevOpsGuys - DevOps Automation - The Good, The Bad and The Ugly
 
DevOps Culture & Enablement with Postgres Plus Cloud Database
DevOps Culture & Enablement with Postgres Plus Cloud DatabaseDevOps Culture & Enablement with Postgres Plus Cloud Database
DevOps Culture & Enablement with Postgres Plus Cloud Database
 
GitOps, Driving NGN Operations Teams 211127 #kcdgt 2021
GitOps, Driving NGN Operations Teams 211127 #kcdgt 2021GitOps, Driving NGN Operations Teams 211127 #kcdgt 2021
GitOps, Driving NGN Operations Teams 211127 #kcdgt 2021
 
DevSecOps: Bringing security to the DevOps pipeline
DevSecOps: Bringing security to the DevOps pipelineDevSecOps: Bringing security to the DevOps pipeline
DevSecOps: Bringing security to the DevOps pipeline
 
PHP Unconference Continuous Integration
PHP Unconference Continuous IntegrationPHP Unconference Continuous Integration
PHP Unconference Continuous Integration
 
A guide to modern software development 2018
A guide to modern software development 2018A guide to modern software development 2018
A guide to modern software development 2018
 
Build 12-Factor apps with Docker
Build 12-Factor apps with DockerBuild 12-Factor apps with Docker
Build 12-Factor apps with Docker
 
Building environment of #UserDevOps and not only DevOps
Building environment of #UserDevOps and not only DevOpsBuilding environment of #UserDevOps and not only DevOps
Building environment of #UserDevOps and not only DevOps
 
Continuous Integration
Continuous IntegrationContinuous Integration
Continuous Integration
 
Introduction to DevOps
Introduction to DevOpsIntroduction to DevOps
Introduction to DevOps
 
DevOps adoption in the enterprise
DevOps adoption in the enterpriseDevOps adoption in the enterprise
DevOps adoption in the enterprise
 
DevOpsGuys FutureDecoded 2016 - is DevOps the Answer
DevOpsGuys FutureDecoded 2016 - is DevOps the AnswerDevOpsGuys FutureDecoded 2016 - is DevOps the Answer
DevOpsGuys FutureDecoded 2016 - is DevOps the Answer
 
Starting the DevOps Train
Starting the DevOps TrainStarting the DevOps Train
Starting the DevOps Train
 
Containers, microservices and serverless for realists
Containers, microservices and serverless for realistsContainers, microservices and serverless for realists
Containers, microservices and serverless for realists
 

Recently uploaded

AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI AppAI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
Google
 
Using Query Store in Azure PostgreSQL to Understand Query Performance
Using Query Store in Azure PostgreSQL to Understand Query PerformanceUsing Query Store in Azure PostgreSQL to Understand Query Performance
Using Query Store in Azure PostgreSQL to Understand Query Performance
Grant Fritchey
 
Microservice Teams - How the cloud changes the way we work
Microservice Teams - How the cloud changes the way we workMicroservice Teams - How the cloud changes the way we work
Microservice Teams - How the cloud changes the way we work
Sven Peters
 
8 Best Automated Android App Testing Tool and Framework in 2024.pdf
8 Best Automated Android App Testing Tool and Framework in 2024.pdf8 Best Automated Android App Testing Tool and Framework in 2024.pdf
8 Best Automated Android App Testing Tool and Framework in 2024.pdf
kalichargn70th171
 
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Łukasz Chruściel
 
How to write a program in any programming language
How to write a program in any programming languageHow to write a program in any programming language
How to write a program in any programming language
Rakesh Kumar R
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 
Hand Rolled Applicative User Validation Code Kata
Hand Rolled Applicative User ValidationCode KataHand Rolled Applicative User ValidationCode Kata
Hand Rolled Applicative User Validation Code Kata
Philip Schwarz
 
openEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain SecurityopenEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain Security
Shane Coughlan
 
E-commerce Development Services- Hornet Dynamics
E-commerce Development Services- Hornet DynamicsE-commerce Development Services- Hornet Dynamics
E-commerce Development Services- Hornet Dynamics
Hornet Dynamics
 
DDS-Security 1.2 - What's New? Stronger security for long-running systems
DDS-Security 1.2 - What's New? Stronger security for long-running systemsDDS-Security 1.2 - What's New? Stronger security for long-running systems
DDS-Security 1.2 - What's New? Stronger security for long-running systems
Gerardo Pardo-Castellote
 
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit ParisNeo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j
 
What is Augmented Reality Image Tracking
What is Augmented Reality Image TrackingWhat is Augmented Reality Image Tracking
What is Augmented Reality Image Tracking
pavan998932
 
Revolutionizing Visual Effects Mastering AI Face Swaps.pdf
Revolutionizing Visual Effects Mastering AI Face Swaps.pdfRevolutionizing Visual Effects Mastering AI Face Swaps.pdf
Revolutionizing Visual Effects Mastering AI Face Swaps.pdf
Undress Baby
 
SWEBOK and Education at FUSE Okinawa 2024
SWEBOK and Education at FUSE Okinawa 2024SWEBOK and Education at FUSE Okinawa 2024
SWEBOK and Education at FUSE Okinawa 2024
Hironori Washizaki
 
Fundamentals of Programming and Language Processors
Fundamentals of Programming and Language ProcessorsFundamentals of Programming and Language Processors
Fundamentals of Programming and Language Processors
Rakesh Kumar R
 
Why Choose Odoo 17 Community & How it differs from Odoo 17 Enterprise Edition
Why Choose Odoo 17 Community & How it differs from Odoo 17 Enterprise EditionWhy Choose Odoo 17 Community & How it differs from Odoo 17 Enterprise Edition
Why Choose Odoo 17 Community & How it differs from Odoo 17 Enterprise Edition
Envertis Software Solutions
 
E-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian Companies
E-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian CompaniesE-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian Companies
E-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian Companies
Quickdice ERP
 
Oracle Database 19c New Features for DBAs and Developers.pptx
Oracle Database 19c New Features for DBAs and Developers.pptxOracle Database 19c New Features for DBAs and Developers.pptx
Oracle Database 19c New Features for DBAs and Developers.pptx
Remote DBA Services
 
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit ParisNeo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j
 

Recently uploaded (20)

AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI AppAI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
 
Using Query Store in Azure PostgreSQL to Understand Query Performance
Using Query Store in Azure PostgreSQL to Understand Query PerformanceUsing Query Store in Azure PostgreSQL to Understand Query Performance
Using Query Store in Azure PostgreSQL to Understand Query Performance
 
Microservice Teams - How the cloud changes the way we work
Microservice Teams - How the cloud changes the way we workMicroservice Teams - How the cloud changes the way we work
Microservice Teams - How the cloud changes the way we work
 
8 Best Automated Android App Testing Tool and Framework in 2024.pdf
8 Best Automated Android App Testing Tool and Framework in 2024.pdf8 Best Automated Android App Testing Tool and Framework in 2024.pdf
8 Best Automated Android App Testing Tool and Framework in 2024.pdf
 
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
 
How to write a program in any programming language
How to write a program in any programming languageHow to write a program in any programming language
How to write a program in any programming language
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 
Hand Rolled Applicative User Validation Code Kata
Hand Rolled Applicative User ValidationCode KataHand Rolled Applicative User ValidationCode Kata
Hand Rolled Applicative User Validation Code Kata
 
openEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain SecurityopenEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain Security
 
E-commerce Development Services- Hornet Dynamics
E-commerce Development Services- Hornet DynamicsE-commerce Development Services- Hornet Dynamics
E-commerce Development Services- Hornet Dynamics
 
DDS-Security 1.2 - What's New? Stronger security for long-running systems
DDS-Security 1.2 - What's New? Stronger security for long-running systemsDDS-Security 1.2 - What's New? Stronger security for long-running systems
DDS-Security 1.2 - What's New? Stronger security for long-running systems
 
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit ParisNeo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
 
What is Augmented Reality Image Tracking
What is Augmented Reality Image TrackingWhat is Augmented Reality Image Tracking
What is Augmented Reality Image Tracking
 
Revolutionizing Visual Effects Mastering AI Face Swaps.pdf
Revolutionizing Visual Effects Mastering AI Face Swaps.pdfRevolutionizing Visual Effects Mastering AI Face Swaps.pdf
Revolutionizing Visual Effects Mastering AI Face Swaps.pdf
 
SWEBOK and Education at FUSE Okinawa 2024
SWEBOK and Education at FUSE Okinawa 2024SWEBOK and Education at FUSE Okinawa 2024
SWEBOK and Education at FUSE Okinawa 2024
 
Fundamentals of Programming and Language Processors
Fundamentals of Programming and Language ProcessorsFundamentals of Programming and Language Processors
Fundamentals of Programming and Language Processors
 
Why Choose Odoo 17 Community & How it differs from Odoo 17 Enterprise Edition
Why Choose Odoo 17 Community & How it differs from Odoo 17 Enterprise EditionWhy Choose Odoo 17 Community & How it differs from Odoo 17 Enterprise Edition
Why Choose Odoo 17 Community & How it differs from Odoo 17 Enterprise Edition
 
E-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian Companies
E-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian CompaniesE-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian Companies
E-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian Companies
 
Oracle Database 19c New Features for DBAs and Developers.pptx
Oracle Database 19c New Features for DBAs and Developers.pptxOracle Database 19c New Features for DBAs and Developers.pptx
Oracle Database 19c New Features for DBAs and Developers.pptx
 
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit ParisNeo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
 

Tridens DevOps

  • 1. Practical experience in DevOps at Tridens Tomaž Kramberger
  • 2. Agenda • Tech Stack • DevOps Stack • DevOps Practices & Process • Live presentation • Amazon Web Services (AWS) ©2021 Tridens d.o.o. All rights reserved. 2
  • 3. Tech Stack ©2021 Tridens d.o.o. All rights reserved. 3
  • 4. DevOps Stack ©2021 Tridens d.o.o. All rights reserved. 4
  • 6. Why DevOps? ©2021 Tridens d.o.o. All rights reserved. 6 • Higher speed and quality of product releases. • Faster responsiveness to customer needs. • Team can react to change requests from customers faster with adding new and updating existing features. • The time-to-market and value-delivery rates increase.
  • 7. DevOps Practices • Continuous integration (CI) • Merge changes back to the main branch as often as possible. • Developer's changes are validated by creating a build and running automated tests against the build. • Continuous delivery (CD) • Automatically deploys all code changes to a testing environment after the build stage. • Continuous testing (CT) • Testing at earlier stages of the release pipeline. • Testing more often before release. • Testing everywhere, that is, across environments and devices. • Continuous monitoring (CM) • Help monitor software operation, especially performance issues, identify the cause of the error, and apply appropriate solutions before significant damage to uptime and revenue. • Infrastructure as code (IaC) ©2021 Tridens d.o.o. All rights reserved. 7
  • 8. DevOps – CI/CD process ©2019 Tridens d.o.o. All rights reserved. 8
  • 9. DevOps – GitFlow Strategy ©2021 Tridens d.o.o. All rights reserved. 9 • Production uploads are always made from Master. • Master must always be stable and ready to deploy. • The work is always done on Develop. Putting the focus on the product being releasable and available. • The Release branch is used to stabilize development. • When we develop a feature, it is done on a Feature branch. • Feature branches always merge with Develop. • Hotfix branch to resolve critical production issues. In addition, this new branch will be merged with Master and Develop as soon as this problem is solved.
  • 10. DevOps – Cheat Sheet ©2021 Tridens d.o.o. All rights reserved. 10
  • 11. DevOps – GIT Operations ©2021 Tridens d.o.o. All rights reserved. 11 git commit --allow-empty -m “[<command>]“ Example: git commit –allow-empty –m “[ci-release]“ git commit –allow-empty –m “[ci-run]“ git commit –allow-empty –m “[ci-run|ere:feature/some-feature|tgw:feature/some- feature]“
  • 12. DevOps – CI Pipeline ©2021 Tridens d.o.o. All rights reserved. 12 .ci/Jenkinsfile @Library('Tridens-CI’) _ JenkinsPipeline { javaVersion='11' buildTargetPrefix='app/' dockerImageNamespace='monetization' bddJobTag='monetizationIntegTag' applicationType=si.tridenstechnology.jenkins.Configuration.ApplicationType.MAVEN }
  • 13. DevOps - JIRA Issue & Project Tracking Software ©2021 Tridens d.o.o. All rights reserved. 13 • Agile development • Project tracking • Reports • Issue creation • Time tracking • Kanban board
  • 15. DevOps - Jenkins 15 ©2021 Tridens d.o.o. All rights reserved.
  • 16. DevOps - CI Pipeline CI { … } 16 ©2021 Tridens d.o.o. All rights reserved.
  • 17. DevOps – End-To-End Tests 17 ©2021 Tridens d.o.o. All rights reserved.
  • 18. DevOps – ER Diagram 18 Image from trickyenough.com ©2021 Tridens d.o.o. All rights reserved.
  • 19. DevOps – Swagger & API docs 19 ©2021 Tridens d.o.o. All rights reserved.
  • 20. DevOps – Spring Boot Admin 20 ©2021 Tridens d.o.o. All rights reserved.
  • 21. JIRA - Issue & project tracking software 21 ©2021 Tridens d.o.o. All rights reserved.
  • 23. AWS Architecture 23 ©2021 Tridens d.o.o. All rights reserved.
  • 24. AWS Cloudformation • Easy to use • Flexible and declarative • Customisation through parameters • Drag-and-drop UI for visualization • DevOps principle IaC 24 ©2021 Tridens d.o.o. All rights reserved.
  • 25. AWS – CloudWatch monitoring • Built-in metrics • Custom metrics • Operational view with dashboards • Alarms 25 ©2021 Tridens d.o.o. All rights reserved.
  • 26. AWS – Performance Insights Monitoring • Debug performance issues, for example, by identifying queries that are causing high load. • Tuning performance by identifying bottlenecks like CPU or I/O throughput. • Monitor the performance by aggregating the core performance indicators of your database. • Analyze Queries, Analyze Bottlenecks 26 ©2021 Tridens d.o.o. All rights reserved.