Automating Drupal Deployment Dominique De Cooman.

Slides:



Advertisements
Similar presentations
Drupal Continuous Integration With Jenkins – Deploy
Advertisements

Taxi Magic Mobile App Testing. iOS Testing Rapid Releases: Submit about every 30 days to iTunes CI Automated Tests: Polls git repository commits and executes.
Jenkins User Conference San Francisco, Sept #jenkinsconf Business Process Model & Notation (BPMN) Workflows in Jenkins Max Spring Cisco
Update on Version Control Systems: GitLab, SVN, Git, Trac, CERNforge
BizTalk Deployment using Visual Studio Release Management
Building Bridges, Connecting Communities Paul Lieberman Non-Profit, Government, and Higher Education. May 21, 2013 How Oregon State University manages.
European Organization for Nuclear Research Source Control Management Service (Subversion) Brice Copy, Michel Bornand EN-ICE 13 May 2009.
Talend 5.4 Architecture Adam Pemble Talend Professional Services.
DNN LOVES JENKINS FOR CONTINUOUS INTEGRATION
Version Control with git. Version Control Version control is a system that records changes to a file or set of files over time so that you can recall.
How to extend and configure Drupal without user interaction or database dump By Damien Snoeck for Switzerland Romandy Drupal Group January 27, 2010 Work.
Version control Using Git Version control, using Git1.
Puppet with vSphere Workshop Install, configure and use Puppet on your laptop for vSphere DevOps Billy Lieberman August 1, 2015.
Version Control. How do you share code? Discussion.
Michael Still Google Inc. October, Managing Unix servers the slack way Tools and techniques for managing large numbers of Unix machines Michael.
Continuous Integration and Code Review: how IT can help Alex Lossent – IT/PES – Version Control Systems 29-Sep st Forum1.
AppSec USA 2014 Denver, Colorado CMS Hacking 101 Hacking and Securing Popular Open Source Content Management Systems.
Introduction to GitHub Alex Bigazzi Dec. 4, 2013 ITS Lab GitHub Introduction1.
Oracle Data Integrator Architecture Components.
INFSO-RI Enabling Grids for E-sciencE SCDB C. Loomis / Michel Jouvin (LAL-Orsay) Quattor Tutorial LCG T2 Workshop June 16, 2006.
Drush: The Drupal Shell Utility Trevor Mckeown Founder & Owner Sublime Technologies
Wordpress with Mina Automated Deployment Solution Jonathan Gravato DIG 4104c.
Anubha Gupta | Software Engineer Visual Studio Online Microsoft Corp. Visual Studio Enterprise Leveraging modern tools to streamline Build and Release.
CMap Version 0.16 Ben Faga. CMap CMap Version 0.16 Bug fixes and code optimizations More intuitive menu system Asynchronous loading of comparative map.
Adxstudio Portals Training
Continuous Integration CruiseControl.Net. Best Practices Use version control; Automate the build; Build should be self tested; Developers must commit.
A Git Workflow Model Slides produced from blog by Vincent Driessen and secondary posting at The.
Build and Deployment Process Understand NCI’s DevOps and continuous integration requirements Understand NCI’s build and distribution requirements.
Continuous Deployments using SSDT
Introduction to Git - Chirag Dani. Objectives Basics of Git Understanding different “Mindset of Git” Demo - Git with Visual Studio.
Ansible and Ansible Tower 1 A simple IT automation platform November 2015 Leandro Fernandez and Blaž Zupanc.
Software collaboration tools as a stack of services Borja Aparicio Cotarelo IT-PES-IS 2HEPiX Fall 2015 Workshop.
1 Ivan Marsic Rutgers University LECTURE 2: Software Configuration Management.
BIT 285: ( Web) Application Programming Lecture 07 : Tuesday, January 27, 2015 Git.
Git workflows: using multiple branches for parallel development SE-2800 Dr. Mark L. Hornick 1.
Work Smarter Not Harder Standardize Your Environment With Best Practices.
DECTRIS Ltd Baden-Daettwil Switzerland Continuous Integration and Automatic Testing for the FLUKA release using Jenkins (and Docker)
Drupalcamp Vienna 2009 Development workflow and deployment at Klaus Purer
Web Application Development with PHP in Netbeans 6.5 ● Angad Singh Campus Ambassador Tech Lead
Introduction Aaron Day ● Software Architect ● Open Solutions Interests and Hobbies ● Family ● Software Development ● Woodworking ● Gaming ● Shooting.
Advanced Drush Scripting Jim Taylor Drupal Developer at Large Principal/Senior Engineer Rooty Hollow LLC.
Introducing Drush: Command line productivity for Drupal.
Learn Mercury Load runner as an Online Training. The advanced reality of a digital transformation in the digital world always been on a threshold in terms.
Version Control for PL/SQL
Joonas Sirén, Technology Architect, Emerging Technologies Accenture
Proposed IT Infrastructure for TOP OS project
Infrastructure Orchestration to Optimize Testing
LECTURE 2: Software Configuration Management
Trends like agile development and continuous integration speak to the modern enterprise’s need to build software hyper-efficiently Jenkins:  a highly.
Version control, using Git
4th Forum How to easily offer your application as a self-service template by using OpenShift and GitLab-CI 4th Forum Alberto.
Revision Control, Automated Testing and Docker RSE Conference 2017
Development and Deployment
App deployment in Cloud
Maintaining software solutions
Using Jenkins for your DSC CI Pipeline
LECTURE 3: Software Configuration Management
Site Deployment Module
Open Source Continuous Integration Server
Simplified Development Toolkit
Automated Testing and Integration with CI Tool
Continuous deployment best practices, methods and tools.
Quality Assurance in an Agile Development Team Michelle Wu 2018 PNSQC
Delivering Business Value Faster
Your code is not just…your code
CI/CD Workflow and Event Pages
Hop Aboard the Git Train – Transitioning from TFVC
Office 365 Development July 2014.
Overview on CI Use JJB (Jenkins Job Builder) to manage Jenkins jobs.
Your code is not just…your code
Presentation transcript:

Automating Drupal Deployment Dominique De Cooman

 Developer for 5 years  Web agencies in Belgium   Contributions  Blog Who am I

 Faster  Less errors  Well documented  Reproducable  History  Continous Integration Why deploying automaticaly

 Vps with a Lamp stack  Version control – Git  Drush  Drupal of course  Dev – Staging – Production setup  Continous integration server  Deployment scripts Basic components

 Vps  You can get a vps from 12€/month on most hosting platforms. There are trials available everywhere  Example:   How to set it up?

 Plenty of installation scripts online  Example  installing-drupal-ubuntu-drupal-training-purpose Install your lamp stack

 Git  We will use the succesfull branching model   Git flow  Production branch  Development branch  Release branch  Hotfixes  Install  Git flow  Bash complete Version control

 DRUpal SHell  Install   Drush aliasses  Simplyfies executing commands in builds Drush

 Create a proper repository layout  Bash  Updates  Installs  scripts  Docroot  Documentation  Etc  Drupal (settings files, robot.txt, htaccess, …)  Drush - aliases  Ssh  vhost  Configure you server to connect to drupal. Drupal

 Jenkins  Install  ci.org/display/JENKINS/Installing+Jenkins+on+Ubuntu ci.org/display/JENKINS/Installing+Jenkins+on+Ubuntu  Why?  Automate our workflow  Execute our tests Continous integration server

 Exporting database changes  Configuring jenkins jobs  Writing deployment scripts Automating the workflow

 Use features  Use hook_update()  D8 configuration management in core Exporting database changes

 Jenkins  Create jobs  Environments  Testbots  Basic setup  General settings  Repository configuration  Build triggers  Post build actions Configuring the jobs

 Copy files  Update the code  Settings file  Copy build script Build section

 Enable/Disable ui modules  Set environment specific variables  Error_level  Cache  Revert features  Update the database  Flush cache Deploy scripts

 Modules  Leave the opportunity to debug  Error level  Caching settings  Staging and production must by identical  Representative  No testrun on production Differences per environment

 Develop on feature branch  Run testbot – fix error  Export changes  Commit  Merge feature in development branch  Deploy on development environment  Monitor job execution  Evaluate tests  Manual testing  Create release branch  Deploy release branch on staging environment  Evaluate tests  Merge branch into master and development  Deploy master on production environment  Create hotfix branch - maintenance  Test and deploy hotfix branch  Merge hotfix into master and merge into development  Deploy master Demo

   References

 Minimizing overhead with git flow  Installing lamp stack drupal-ubuntu-drupal-training-purpose drupal-ubuntu-drupal-training-purpose  Go live checklist 7-tip-how-automate-and-control-your-go-live-checklisthttp:// 7-tip-how-automate-and-control-your-go-live-checklist  Install jenkins ci.org/display/JENKINS/Installing+Jenkins+on+Ubuntuhttps://wiki.jenkins- ci.org/display/JENKINS/Installing+Jenkins+on+Ubuntu   Get all the code, job scripts and presentation overview: deployment deployment Resources