DevOps Pipe Line for Liferay ApplicationsDevOps Pipe Line for Liferay Applications
02-Jan-2017
Maruti Gollapudi
@gmaruti
AgendaAgenda
DevOps
Current Process
Liferay Application – Challenges
Recommended Process
DevOps - WhyDevOps - Why
 DevOps reduces the
cycle time from
development to
deployment
 With end to end
automation, failure rate
is reduced
 Frees up some time for
team which can be
used for innovations!
https://puppet.com/resources/white-paper/2016-state-of-devops-report
DevOps - WhatDevOps - What
 Driving principles
◦ Maximize left to right flow ofWork from
Development to IT Operations to Customer.
In order to maximize the flow we need small
intervals of work, never passing defects to
downstream.
◦ Constant flow of feedback from right to left at
all stages of the value stream
◦ Create a culture that forests continuous
experimentation (which helps continuous
innovation) and understanding that repetition
and practice is pre requisite to mastery.This
https://en.wikipedia.org/wiki/The_Phoenix_Project_(novel)
DevOps - WhatDevOps - What
A Culture and mind set for collaborating between developers and operations
http://www.slideshare.net/thekua/devops-from-the-ground-up
Plan Code Build Test Release Deploy Operate
DevOps
Continuous Delivery
Continuous Integration
Agile Development
• Automate Provisioning - Infrastructure as Code
• Automate Builds – Continuous Integration
• Automate Deployments – Defined Deployment
Pipeline and Continuous Deployments with
appropriate configurations for the environments
• Automate Testing – Continuous Testing,
Automated tests after each deployment
• Automate Monitoring – Proper monitors in place
sending alerts
• Automate Metrics – Performance Metrics, Logs
Jira
Rally
SVN
GIT
Jenkins
Hudson
Junit
Selenium
QTP
Chef
Puppet
Ansible
Data Center
Public Cloud
Monitoring
DevOps helps automating end to end flow from development to
deployment and monitoring.
Liferay Application LifecycleLiferay Application Lifecycle
Traditional FlowTraditional Flow
Develop Integrate, Test
Code
Bug
Report
Pull Code
Build
Run Test
Version Control
Package
Release, Deploy
Monitor
Operate
Dev
QA
Prod
Deploy
• Provision
• Install &
Configure Liferay,
java, MySQL DB,
Monitoring s/w
• Deploy
• Alert
• Add / Remove
node to Linux
Cluster
Check In
Test fail Test Pass
Developer
Manual
Trigger of
Build and
Test
Tester /
Build Rep
manually
logs in
Errors
Manual
Trigger of
Build and
Package
Process
Ops team
sets up
environment
manually
and triggers
deploy
script
Post
Deployment,
Themes and
Layouts are
manually
configured Ops team
checks the Log
files and raises
report in Jira
Liferay Application LifecycleLiferay Application Lifecycle
Traditional Flow - ChallengesTraditional Flow - Challenges
There are few tasks that need to be initiated or
require physical resource.This could potentially cause
delays due to non-availability of concerned resource.
The tasks that are done manually are error prone and
don’t guarantee to be consistent. In case of manual set
up of environment it is possible to install wrong
version of S/W.
One of the critical component of the Liferay
application is Themes and Layouts. In general these are
configured manually by development team even in
Production, post application deployment.
Liferay Application LifecycleLiferay Application Lifecycle
Recommended Process - DevOpsRecommended Process - DevOps
Develop Integrate, Test
Code
Bug
Report
Pull Code
Build
Run Test
Version Control
Package
Release, Deploy
Monitor
Operate
Dev
QA
Prod
Deploy
• Provision
• Install &
Configure Liferay,
java, MySQL DB,
Monitoring s/w
• Deploy
• Alert
• Add / Remove
node to Liferay
Cluster
Check In
On Check In
Test fail Test Pass
Liferay Application LifecycleLiferay Application Lifecycle
Recommended Process – Dev, Build &TestRecommended Process – Dev, Build &Test
Liferay Application LifecycleLiferay Application Lifecycle
Recommended Process – Deploy & MonitorRecommended Process – Deploy & Monitor
DevOps –Tools used in the SolutionDevOps –Tools used in the Solution
Tool Purpose
Eclispe IDE for development
Junit Unit testing framework
Java Development Language
GIT, SVN Code repository
Jenkins Continuous integration tool
Selenium Automated testing tool
Jira Bug report tracking tool
Puppet, Ansible Configuration and Infrastructure management tools
Zabbix System monitoring tool
Logstash Monitor and parse log files
Automated Activities & CodeAutomated Activities & Code
Using CI/CD tool jenkins along with Ansible playbooks, we
achieved automating the end to end flow.
The new process enables -
◦ Build and generate "build once, deploy everywhere" Liferay
application packages
◦ Quick and easy setup of environments (Dev,Test, QA and Prod)
and automated deployment and installation of the software on
new servers including automatically configuring Layouts and
Themes
◦ Automated deployment of upgrades on existing servers
◦ Execute multiple build, release, and deployment jobs
◦ Provision and configure nodes
◦ Monitor and Report
◦ Backup and Restore
CodeCode
 List of Ansible roles and their brief descriptiion
◦ mysql-db-liferay-user: Installs mysql and creates mysql user
◦ liferay-portal: Installs Java and Liferay portal
◦ portal-sdk: Deploys the application into liferay
◦ backup: Creates Portal backup snapshot
◦ restore: Restores Portal snapshot
 List of utility shell script to trigger different Ansible roles
◦ portal_deploy.sh: Run to install mysql, liferay and deploy the portal
and application
◦ portal_update.sh: Run to update the application on portal.
◦ portal_backup.sh: Run to create a snapshot of the portal application
◦ portal_restore.sh: Run to restore the portal snapshot
 Above code is available at https://github.com/gunduv/portal-
deployment

More Related Content

PDF
Introduction to Progressive web app (PWA)
PDF
DevOps - A Gentle Introduction
PPTX
PPTX
Maven ppt
PPTX
Dockers and containers basics
PPTX
DevOps introduction
PDF
Angular vs React vs Vue | Javascript Frameworks Comparison | Which One You Sh...
PPTX
Azure Functions.pptx
Introduction to Progressive web app (PWA)
DevOps - A Gentle Introduction
Maven ppt
Dockers and containers basics
DevOps introduction
Angular vs React vs Vue | Javascript Frameworks Comparison | Which One You Sh...
Azure Functions.pptx

What's hot (20)

PDF
Introduction to CICD
PDF
Cloud Native Application
PDF
Getting Started with Infrastructure as Code
PDF
Terraform introduction
PDF
Introduction to Docker
PDF
CI CD Pipeline Using Jenkins | Continuous Integration and Deployment | DevOps...
PDF
What is Docker | Docker Tutorial for Beginners | Docker Container | DevOps To...
PDF
Let's build Developer Portal with Backstage
PPTX
Docker: From Zero to Hero
PPT
presentation on Docker
PPTX
Angular vs React vs Vue
PPTX
The Ideal Approach to Application Modernization; Which Way to the Cloud?
PPTX
Spring boot
PPTX
Jenkins Introduction
PPTX
Azure Container Apps
PPTX
Continues Integration and Continuous Delivery with Azure DevOps - Deploy Anyt...
PDF
OPENSHIFT CONTAINER PLATFORM CI/CD Build & Deploy
PPTX
Progressive Web Apps(PWA)
PDF
Best Practices of Infrastructure as Code with Terraform
Introduction to CICD
Cloud Native Application
Getting Started with Infrastructure as Code
Terraform introduction
Introduction to Docker
CI CD Pipeline Using Jenkins | Continuous Integration and Deployment | DevOps...
What is Docker | Docker Tutorial for Beginners | Docker Container | DevOps To...
Let's build Developer Portal with Backstage
Docker: From Zero to Hero
presentation on Docker
Angular vs React vs Vue
The Ideal Approach to Application Modernization; Which Way to the Cloud?
Spring boot
Jenkins Introduction
Azure Container Apps
Continues Integration and Continuous Delivery with Azure DevOps - Deploy Anyt...
OPENSHIFT CONTAINER PLATFORM CI/CD Build & Deploy
Progressive Web Apps(PWA)
Best Practices of Infrastructure as Code with Terraform
Ad

Viewers also liked (6)

PDF
Future of eLearning with Valamis
PPT
Liferay Devcon Presentation on Dynamic Forms with Liferay Workflow
PDF
Liferay Valamis e-learning March 17-2016
ODP
Kaleo workflow in Liferay
PDF
What to look for in a Digital Experience Platform?
PDF
Building an Enterprise Content Management solution on top of liferay
Future of eLearning with Valamis
Liferay Devcon Presentation on Dynamic Forms with Liferay Workflow
Liferay Valamis e-learning March 17-2016
Kaleo workflow in Liferay
What to look for in a Digital Experience Platform?
Building an Enterprise Content Management solution on top of liferay
Ad

Similar to DevOps Pipeline for Liferay Application (20)

PPTX
Devops Introduction nd basics of DevOps.
PPTX
DevOps Overview in my own words
PPTX
Dev ops
PPTX
DevOps model in software engineering.pptx
PDF
DevOps & DevEx
PPTX
Introduction to devops
PPTX
Testing in the new age of DevOps
PDF
Getting to Walk with DevOps
PPTX
How Azure DevOps can boost your organization's productivity
PPTX
Devops Basic Concepts, Lifecycle of Devops
PPTX
Session on evaluation of DevSecOps
PDF
Introduction To Development And Operations
PPTX
DEVOPS - Laxmi Itikala.pptx bridging the gap
PDF
Taking AppSec to 11 - BSides Austin 2016
PDF
Code review automation and functional tests on Carrefour
PPTX
Devops
PDF
Exercising and Scaling Up Mobile DevOps in the Enterprise
PDF
GitOps, Driving NGN Operations Teams 211127 #kcdgt 2021
PDF
Taking AppSec to 11: AppSec Pipeline, DevOps and Making Things Better
PDF
DevOps Continuous Integration & Delivery - A Whitepaper by RapidValue
Devops Introduction nd basics of DevOps.
DevOps Overview in my own words
Dev ops
DevOps model in software engineering.pptx
DevOps & DevEx
Introduction to devops
Testing in the new age of DevOps
Getting to Walk with DevOps
How Azure DevOps can boost your organization's productivity
Devops Basic Concepts, Lifecycle of Devops
Session on evaluation of DevSecOps
Introduction To Development And Operations
DEVOPS - Laxmi Itikala.pptx bridging the gap
Taking AppSec to 11 - BSides Austin 2016
Code review automation and functional tests on Carrefour
Devops
Exercising and Scaling Up Mobile DevOps in the Enterprise
GitOps, Driving NGN Operations Teams 211127 #kcdgt 2021
Taking AppSec to 11: AppSec Pipeline, DevOps and Making Things Better
DevOps Continuous Integration & Delivery - A Whitepaper by RapidValue

Recently uploaded (20)

PPTX
Presentation - Summer Internship at Samatrix.io_template_2.pptx
PPTX
oracle_ebs_12.2_project_cutoveroutage.pptx
PDF
IObit Driver Booster Pro Crack Latest Version Download
PDF
C language slides for c programming book by ANSI
PPTX
Comprehensive Guide to Digital Image Processing Concepts and Applications
PDF
10 Mistakes Agile Project Managers Still Make
PDF
Difference Between Website and Web Application.pdf
PPTX
Phoenix Marketo User Group: Building Nurtures that Work for Your Audience. An...
PPTX
Advanced Heap Dump Analysis Techniques Webinar Deck
PDF
OpenAssetIO Virtual Town Hall - August 2025.pdf
PDF
MaterialX Virtual Town Hall - August 2025
PPTX
MCP empowers AI Agents from Zero to Production
PDF
SBOM Document Quality Guide - OpenChain SBOM Study Group
PDF
solman-7.0-ehp1-sp21-incident-management
PDF
How to Set Realistic Project Milestones and Deadlines
PPT
introduction of sql, sql commands(DD,DML,DCL))
PDF
OpenColorIO Virtual Town Hall - August 2025
PPTX
UNIT II: Software design, software .pptx
PPTX
Hexagone difital twin solution in the desgining
PPTX
ESDS_SAP Application Cloud Offerings.pptx
Presentation - Summer Internship at Samatrix.io_template_2.pptx
oracle_ebs_12.2_project_cutoveroutage.pptx
IObit Driver Booster Pro Crack Latest Version Download
C language slides for c programming book by ANSI
Comprehensive Guide to Digital Image Processing Concepts and Applications
10 Mistakes Agile Project Managers Still Make
Difference Between Website and Web Application.pdf
Phoenix Marketo User Group: Building Nurtures that Work for Your Audience. An...
Advanced Heap Dump Analysis Techniques Webinar Deck
OpenAssetIO Virtual Town Hall - August 2025.pdf
MaterialX Virtual Town Hall - August 2025
MCP empowers AI Agents from Zero to Production
SBOM Document Quality Guide - OpenChain SBOM Study Group
solman-7.0-ehp1-sp21-incident-management
How to Set Realistic Project Milestones and Deadlines
introduction of sql, sql commands(DD,DML,DCL))
OpenColorIO Virtual Town Hall - August 2025
UNIT II: Software design, software .pptx
Hexagone difital twin solution in the desgining
ESDS_SAP Application Cloud Offerings.pptx

DevOps Pipeline for Liferay Application

  • 1. DevOps Pipe Line for Liferay ApplicationsDevOps Pipe Line for Liferay Applications 02-Jan-2017 Maruti Gollapudi @gmaruti
  • 3. DevOps - WhyDevOps - Why  DevOps reduces the cycle time from development to deployment  With end to end automation, failure rate is reduced  Frees up some time for team which can be used for innovations! https://puppet.com/resources/white-paper/2016-state-of-devops-report
  • 4. DevOps - WhatDevOps - What  Driving principles ◦ Maximize left to right flow ofWork from Development to IT Operations to Customer. In order to maximize the flow we need small intervals of work, never passing defects to downstream. ◦ Constant flow of feedback from right to left at all stages of the value stream ◦ Create a culture that forests continuous experimentation (which helps continuous innovation) and understanding that repetition and practice is pre requisite to mastery.This https://en.wikipedia.org/wiki/The_Phoenix_Project_(novel)
  • 5. DevOps - WhatDevOps - What A Culture and mind set for collaborating between developers and operations http://www.slideshare.net/thekua/devops-from-the-ground-up Plan Code Build Test Release Deploy Operate DevOps Continuous Delivery Continuous Integration Agile Development • Automate Provisioning - Infrastructure as Code • Automate Builds – Continuous Integration • Automate Deployments – Defined Deployment Pipeline and Continuous Deployments with appropriate configurations for the environments • Automate Testing – Continuous Testing, Automated tests after each deployment • Automate Monitoring – Proper monitors in place sending alerts • Automate Metrics – Performance Metrics, Logs Jira Rally SVN GIT Jenkins Hudson Junit Selenium QTP Chef Puppet Ansible Data Center Public Cloud Monitoring DevOps helps automating end to end flow from development to deployment and monitoring.
  • 6. Liferay Application LifecycleLiferay Application Lifecycle Traditional FlowTraditional Flow Develop Integrate, Test Code Bug Report Pull Code Build Run Test Version Control Package Release, Deploy Monitor Operate Dev QA Prod Deploy • Provision • Install & Configure Liferay, java, MySQL DB, Monitoring s/w • Deploy • Alert • Add / Remove node to Linux Cluster Check In Test fail Test Pass Developer Manual Trigger of Build and Test Tester / Build Rep manually logs in Errors Manual Trigger of Build and Package Process Ops team sets up environment manually and triggers deploy script Post Deployment, Themes and Layouts are manually configured Ops team checks the Log files and raises report in Jira
  • 7. Liferay Application LifecycleLiferay Application Lifecycle Traditional Flow - ChallengesTraditional Flow - Challenges There are few tasks that need to be initiated or require physical resource.This could potentially cause delays due to non-availability of concerned resource. The tasks that are done manually are error prone and don’t guarantee to be consistent. In case of manual set up of environment it is possible to install wrong version of S/W. One of the critical component of the Liferay application is Themes and Layouts. In general these are configured manually by development team even in Production, post application deployment.
  • 8. Liferay Application LifecycleLiferay Application Lifecycle Recommended Process - DevOpsRecommended Process - DevOps Develop Integrate, Test Code Bug Report Pull Code Build Run Test Version Control Package Release, Deploy Monitor Operate Dev QA Prod Deploy • Provision • Install & Configure Liferay, java, MySQL DB, Monitoring s/w • Deploy • Alert • Add / Remove node to Liferay Cluster Check In On Check In Test fail Test Pass
  • 9. Liferay Application LifecycleLiferay Application Lifecycle Recommended Process – Dev, Build &TestRecommended Process – Dev, Build &Test
  • 10. Liferay Application LifecycleLiferay Application Lifecycle Recommended Process – Deploy & MonitorRecommended Process – Deploy & Monitor
  • 11. DevOps –Tools used in the SolutionDevOps –Tools used in the Solution Tool Purpose Eclispe IDE for development Junit Unit testing framework Java Development Language GIT, SVN Code repository Jenkins Continuous integration tool Selenium Automated testing tool Jira Bug report tracking tool Puppet, Ansible Configuration and Infrastructure management tools Zabbix System monitoring tool Logstash Monitor and parse log files
  • 12. Automated Activities & CodeAutomated Activities & Code Using CI/CD tool jenkins along with Ansible playbooks, we achieved automating the end to end flow. The new process enables - ◦ Build and generate "build once, deploy everywhere" Liferay application packages ◦ Quick and easy setup of environments (Dev,Test, QA and Prod) and automated deployment and installation of the software on new servers including automatically configuring Layouts and Themes ◦ Automated deployment of upgrades on existing servers ◦ Execute multiple build, release, and deployment jobs ◦ Provision and configure nodes ◦ Monitor and Report ◦ Backup and Restore
  • 13. CodeCode  List of Ansible roles and their brief descriptiion ◦ mysql-db-liferay-user: Installs mysql and creates mysql user ◦ liferay-portal: Installs Java and Liferay portal ◦ portal-sdk: Deploys the application into liferay ◦ backup: Creates Portal backup snapshot ◦ restore: Restores Portal snapshot  List of utility shell script to trigger different Ansible roles ◦ portal_deploy.sh: Run to install mysql, liferay and deploy the portal and application ◦ portal_update.sh: Run to update the application on portal. ◦ portal_backup.sh: Run to create a snapshot of the portal application ◦ portal_restore.sh: Run to restore the portal snapshot  Above code is available at https://github.com/gunduv/portal- deployment