Build & Launch Tools (BLT) Automating best practices for enterprise sites

Size: px
Start display at page:

Download "Build & Launch Tools (BLT) Automating best practices for enterprise sites"

Transcription

1 Build & Launch Tools (BLT) Automating best practices for enterprise sites

2 Who are you? Matthew on Drupal.org, twitter, etc. Acquia Professional Services, 4yrs Drupalist, 9yrs Maintainer of BLT

3 Let s start with the problem that we re solving.

4

5

6

7 FTP

8 This was good It was fast and simple.

9 But it had problems! We d overwrite each other s files We couldn t track or revert changes It wasn t redundant or resilient

10 FTP

11

12 This was better But also a bit more complicated.

13 Meanwhile... Our backend tools were evolving

14

15

16

17 This was better But also a bit more complicated.

18 Meanwhile... Our front end tools were changing too

19

20

21

22

23 This was better But also a bit more complicated.

24 Meanwhile... We starting getting great testing tools

25

26

27

28

29

30

31 This was better But also a bit more complicated.

32 Meanwhile... Our local environments were changing

33

34

35

36 This was better But also a bit more complicated.

37 Meanwhile... The PHP community continued to evolve

38

39

40 These are all great tools! That we run locally.

41 Teams have many machines And continuous integration requires even more machines

42

43

44

45 At some point it became very complex And painful.

46 This is the problem We re trying to solve.

47 Real world consequences 1. You don t use these tools a. You don t have a build process to manage dependencies b. You don t use automated testing c. You don t have a CI process 2. You spend a long time orchestrating these tools a. You painstakingly create your own build process, for every project b. You configure your own CI setup, for every project c. You maintain it constantly, for every project

48 There has to be a way... To approach this more consistently and efficiently.

49

50

51

52 Build & Launch Tools BLT

53

54

55 Package, integrate, automate A stack of Drupal development tools.

56 What s in the box?

57 BLT high-level features: Open source Standardized template for Drupal 8 sites Set of tools for building, testing, deploying Commands for automating usage of those tools

58 Template

59 What is the template? Pre-defined structure for files and directories Boiler plate code and configuration

60 Opinionated placement of... Settings files Exported configuration Modules, themes, profiles, etc. Drush commands Patches

61 Nothing earth-shattering.

62 Actually, it s kind of a big deal.

63 Why is it helpful? Faster on-boarding Better collaboration Simpler hand-offs

64 Tools

65 We re all using the same things The same tools, the same versions Testing tools PHP Packages Modules Preconfigured to work together

66 Also a big deal.

67 What makes this powerful?

68 Automation!

69 Make complex things simple Create an entire project Boot (& create) a VM Validate all of your code Test you application Sync environments Deploy to cloud in one command

70 Seeing is believing.

71 Warning: we re going CLI.

72 Creating a new project

73 Use composer and then wait a bit.. $ composer create-project acquia/blt-project [project-name] --no-interaction

74 You have a complete project!

75

76 Install blt alias and then you can use blt $ composer blt-alias

77 Setup LAMP stack Dev Desktop, DrupalVM, MAMP, Native LAMP, etc. $ blt vm

78 You have a virtual machine!

79 Let s do the other [local] stuff.

80 Do all the [local] things $ blt setup build dependencies install drupal import configuration set file permissions

81 You have a fully functional Drupal site!

82 That s a lot of work you didn t have to do.

83 Login to Drupal because it s ready to go $ cd docroot && drush uli

84

85 You ve only run 4 commands.

86 Automated testing

87 Don t freak out.

88 We provide the tools and example tests Testing Behat PHPUnit Validation PHPCS Linting (PHP/Twig)

89 Validate code phpcs, lint, composer The right standards, on the right extensions, in the right dirs $ blt validate

90 Run them all! Behat, PHPUnit all rolled up. $ blt tests

91 Let s stop and appreciate this.

92 2016 Acquia Inc. Confidential and Proprietary

93 Let s talk about workflow Not just local development

94 Develop, Build & Test Review Build & Test Deploy Local Machine E.g., GitHub Continuous Integration Cloud BLT BLT

95 With this workflow... Before merging, you: Test your changes automatically Review your changes on GitHub Preview your changes on a dedicated environment

96 Gives the confidence To merge a deploy code

97 Adding Continuous Integration Acquia Cloud CD and Travis CI out-of-the-box.

98 We provide CI config You don t need to figure it out.

99 Acquia Cloud CD pipelines acquia-pipelines.yml $ blt ci:pipelines:init

100 You now have acquia-pipelines.yml pre-configured.

101 Travis CI.travis.yml $ blt ci:travis:init

102 You now have.travis.yml pre-configured.

103 Push $ git commit -a $ git push origin to the Cloud

104 CI + BLT will build & test your site Triggered by a push or pull request

105

106

107

108 Your tests run before merging so you don t break things.

109 After merge, code deploys all by itself.

110 Develop, Build & Test Review Build & Test Deploy Local Machine E.g., GitHub Continuous Integration Cloud BLT BLT

111 Deploying to the Cloud Deployment is special.

112 Only deploy artifacts! Wait what? What s an artifact?

113 Things you need for!= development process <> Things you need for production website

114 Development Artifact

115 Development (SASS) #navbar { width: 80%; border: solid red 1px; float: left; padding: 5px; ul { list-style-type: none; } li { float: right; a{ font-weight: bold; color: red; } } } Artifact (CSS) #navbar { width: 80%; border: solid red 1px; float: left; padding: 5px; } #navbar ul { list-style-type: none; } #navbar ul li { float: right; } #navbar ul li a { font-weight: bold; color: red; }

116 Development.drush-use.git/.gitignore.idea/.travis.yml.vagrant/ README.md Vagrantfile box/ build/ composer.json composer.lock config/ docroot/ drush/ drush.wrapper* example.project.local.yml factory-hooks/ hooks/ patches/ project.local.yml project.yml readme/ reports/ scripts/ tests/ vendor/ Artifact.gitignore composer.json composer.lock config/ docroot/ drush/ factory-hooks/ hooks/ scripts/ vendor/

117 Working Repo Artifact Push Develop Build Artifact & Push Review Build & Test

118 Why are we doing this? Lots of good reasons.

119 Improves process, improves product. Maintainability Performance Prevents hacking contrib & core (not committed). Deployments are scripted and repeatable (update hooks are required). Removes unnecessary tools and libraries. Security Artifacts are sanitized.

120 Show me. Manual deployment is good for debugging.

121 deploying manually from your local machine $ blt deploy

122 What just happened? A deployment artifact was created at your/project/path/deploy Files were copied. Front end assets were compiled. Prod dependencies were built. Directory was sanitized. Everything was committed. The deployment artifact was: Committed to the <original-branch>-build branch. Pushed to ${project.git.remotes}

123 Recap

124 BLT is a box with: Standardized template for Drupal 8 sites Set of tools for building, testing, deploying Commands for automating usage of those tools

125 Make complex things simple Create an entire project Boot (& create) a VM Validate all of your code Test your application Deploy to cloud in one command

126 Develop, Build & Test Review Build & Test Deploy Local Machine E.g., GitHub Continuous Integration Cloud BLT BLT

127 github.com/acquia/blt Thanks! Questions? Reminder: Sprints are /2oa9j1w bit.ly

Configuration Management

Configuration Management Configuration Management A True Life Story October 16, 2018 Page 1 Configuration Management: A True Life Story John E. Picozzi Senior Drupal Architect Drupal Providence 401-228-7660 oomphinc.com 72 Clifford

More information

Drupal & Composer Matthew Grasmick & Jeff Geerling

Drupal & Composer Matthew Grasmick & Jeff Geerling Drupal & Composer Matthew Grasmick & Jeff Geerling Speakers Matthew Grasmick @grasmash Jeff Geerling @geerlingguy Acquian BLT maintainer 10+ years of Drupal Acquian Drupal VM maintainer Agenda Composer

More information

Composer and Drupal. CIDUG Meeting December 13, 2018 John Rearick

Composer and Drupal. CIDUG Meeting December 13, 2018 John Rearick Composer and Drupal CIDUG Meeting December 13, 2018 John Rearick * Similar to other dependency managers such as: yum, apt, brew, macports, npm, pip, etc. * Helps manage dependency hell. * Lots of dependencies

More information

Cheaper by the Dozens

Cheaper by the Dozens Cheaper by the Dozens Building Drupal Websites En Masse JAMES NETTIK James Nettik F R O N T- E N D D E V E L O P E R @JNETTIK @atendesign aten.io Work That Matters Work That Matters A BRIGHTER TOMORROW

More information

Composer for Absolute Beginners. Alison Jo McCauley Drupal Developer, Cornell University

Composer for Absolute Beginners. Alison Jo McCauley Drupal Developer, Cornell University & l a up Dr Composer for Absolute Beginners Alison Jo McCauley Drupal Developer, Cornell University What is Composer? Composer is a (command-line) tool for dependency management in PHP. With composer,

More information

Drupal Command Line Instructions Windows 7 List All Files >>>CLICK HERE<<<

Drupal Command Line Instructions Windows 7 List All Files >>>CLICK HERE<<< Drupal Command Line Instructions Windows 7 List All Files The command line patch utility can run on Windows natively with GnuWin32 or select all text and copy it to clipboard (Ctrl+ C), Menu _ project

More information

Improving the Magento 2 Developer Experience

Improving the Magento 2 Developer Experience Improving the Magento 2 Developer Experience Alan Kent Magento Chief Architect Consistent Magento 2 Feedback I have been working on some larger Magento 2.1 EE solutions for a few months now and I really

More information

More Dev / Less Ops. Sean Dietrich DrupalCorn '18

More Dev / Less Ops. Sean Dietrich DrupalCorn '18 More Dev / Less Ops Sean Dietrich DrupalCorn '18 Hi there! I m a Technical Lead at Kanopi Studios. @seanedietrich / sean_e_dietrich / sean.e.dietrich Maintainer on the Docksal Project Drupal Development

More information

CONFIGURATION AS DEPENDENCY. Managing Drupal 8 Configuration with Git and Composer

CONFIGURATION AS DEPENDENCY. Managing Drupal 8 Configuration with Git and Composer CONFIGURATION AS DEPENDENCY Managing Drupal 8 Configuration with Git and Composer ERICH BEYRENT Senior Drupal Developer at BioRAFT Working with Drupal since 2004 Drupal: https://drupal.org/u/ebeyrent Twitter:

More information

TM DevOps Use Case. 2017TechMinfy All Rights Reserved

TM DevOps Use Case. 2017TechMinfy All Rights Reserved Document Details Use Case Name TMDevOps Use Case04 First Draft 10 th Dec 2017 Author Reviewed By Amrendra Kumar Pradeep Narayanaswamy Contents Scope... 4 About Customer... 4 Pre-Conditions/Trigger... 4

More information

Advanced Configuration Management with Config Split et al. Fabian Bircher

Advanced Configuration Management with Config Split et al. Fabian Bircher Advanced Configuration Management with Config Split et al. Fabian Bircher fabian@nuvole.org web: nuvole.org twitter: @nuvoleweb Our Distributed Team Nuvole: a 100% Drupal company with a distributed team

More information

@EvanMHerman Introduction to Workflow Automation

@EvanMHerman Introduction to Workflow Automation Introduction to Workflow Automation WordCamp Baltimore - October 14th, 2017 1 Evan Herman Software Engineer at GoDaddy WordPress Core Contributor Plugin Developer Goal The main goal of this talk is to

More information

Azure DevOps. Randy Pagels Intelligent Cloud Technical Specialist Great Lakes Region

Azure DevOps. Randy Pagels Intelligent Cloud Technical Specialist Great Lakes Region Azure DevOps Randy Pagels Intelligent Cloud Technical Specialist Great Lakes Region What is DevOps? People. Process. Products. Build & Test Deploy DevOps is the union of people, process, and products to

More information

Software Development I

Software Development I 6.148 Software Development I Two things How to write code for web apps. How to collaborate and keep track of your work. A text editor A text editor A text editor Anything that you re used to using Even

More information

Sunil Shah SECURE, FLEXIBLE CONTINUOUS DELIVERY PIPELINES WITH GITLAB AND DC/OS Mesosphere, Inc. All Rights Reserved.

Sunil Shah SECURE, FLEXIBLE CONTINUOUS DELIVERY PIPELINES WITH GITLAB AND DC/OS Mesosphere, Inc. All Rights Reserved. Sunil Shah SECURE, FLEXIBLE CONTINUOUS DELIVERY PIPELINES WITH GITLAB AND DC/OS 1 Introduction MOBILE, SOCIAL & CLOUD ARE RAISING CUSTOMER EXPECTATIONS We need a way to deliver software so fast that our

More information

Linux System Management with Puppet, Gitlab, and R10k. Scott Nolin, SSEC Technical Computing 22 June 2017

Linux System Management with Puppet, Gitlab, and R10k. Scott Nolin, SSEC Technical Computing 22 June 2017 Linux System Management with Puppet, Gitlab, and R10k Scott Nolin, SSEC Technical Computing 22 June 2017 Introduction I am here to talk about how we do Linux configuration management at the Space Science

More information

AVOIDING THE GIT OF DESPAIR

AVOIDING THE GIT OF DESPAIR AVOIDING THE GIT OF DESPAIR EMMA JANE HOGBIN WESTBY SITE BUILDING TRACK @EMMAJANEHW http://drupal.org/user/1773 Avoiding The Git of Despair @emmajanehw http://drupal.org/user/1773 www.gitforteams.com Back

More information

Drupal Command Line Instructions Windows 7 List All >>>CLICK HERE<<<

Drupal Command Line Instructions Windows 7 List All >>>CLICK HERE<<< Drupal Command Line Instructions Windows 7 List All Drush is a command-line interface for Drupal that provides a wide set of utilities for administering and drush @pantheon.drupal-7-sandbox.dev status

More information

Drupal Command Line Instructions Windows 7 List All Users >>>CLICK HERE<<<

Drupal Command Line Instructions Windows 7 List All Users >>>CLICK HERE<<< Drupal Command Line Instructions Windows 7 List All Users Last updated January 7, 2015. Alternatively, Windows users can often just use the Drush Command Prompt You will find out about all the other options

More information

Con guration Management

Con guration Management Con guration Management Theory and practice Andrea Pescetti andrea@nuvole.org Fabian Bircher fabian@nuvole.org Antonio De Marco antonio@nuvole.org web: nuvole.org twitter: @nuvoleweb Our Distributed Team

More information

Make the Leap - The Joy of Drupal 8

Make the Leap - The Joy of Drupal 8 Make the Leap - The Joy of Drupal 8 An experience share of working with Drupal 8 for a simple website project Baris Tosun @rominronin Web developer at identum Talk Summary Choosing Drupal 8 Configuration

More information

Continuous Delivery of your infrastructure. Christophe

Continuous Delivery of your infrastructure. Christophe Continuous Delivery of your infrastructure Christophe Vanlancker @Carroarmato0 Christophe Vanlancker Internal operations and consulting Mentor Kris couldn t make it so I s/kris/christophe/g Todays Goals

More information

Software. Full Stack Web Development Intensive, Fall Lecture Topics. Class Sessions. Grading

Software. Full Stack Web Development Intensive, Fall Lecture Topics. Class Sessions. Grading Full Stack Web Development Intensive, Fall 2017 There are two main objectives to this course. The first is learning how to build websites / web applications and the assets that compose them. The second

More information

Building and Deploying a Saas platform On Prem

Building and Deploying a Saas platform On Prem Building and Deploying a Saas platform On Prem A Digital Asset Management System as a Service Christophe Vanlancker @Carroarmato0 Slides by Michel van de Ven and Julien Pivotto Christophe Vanlancker Internal

More information

Composer Best Practices Nils Private Packagist

Composer Best Practices Nils Private Packagist Composer Best Practices 2018 Private Packagist https://packagist.com 2018? Delete your lock files 2018? Delete your lock files Composer Ecosystem Reality Update 2018 Best Practices? Deployment Improving

More information

Aspirin as a Service: Using the Cloud to Cure Security Headaches

Aspirin as a Service: Using the Cloud to Cure Security Headaches SESSION ID: CSV-T10 Aspirin as a Service: Using the Cloud to Cure Security Headaches Bill Shinn Principle Security Solutions Architect Amazon Web Services Rich Mogull CEO Securosis @rmogull Little. Cloudy.

More information

CS314 Software Engineering Configuration Management

CS314 Software Engineering Configuration Management CS314 Software Engineering Configuration Management Dave Matthews Configuration Management Management of an evolving system in a controlled way. Version control tracks component changes as they happen.

More information

USING GIT FOR AUTOMATION AND COLLABORATION JUSTIN ELLIOTT - MATT HANSEN PENN STATE UNIVERSITY

USING GIT FOR AUTOMATION AND COLLABORATION JUSTIN ELLIOTT - MATT HANSEN PENN STATE UNIVERSITY USING GIT FOR AUTOMATION AND COLLABORATION JUSTIN ELLIOTT - MATT HANSEN PENN STATE UNIVERSITY AGENDA Version control overview Introduction and basics of Git Advanced Git features Collaboration Automation

More information

Review Version Control Concepts

Review Version Control Concepts Review Version Control Concepts SWEN-261 Introduction to Software Engineering Department of Software Engineering Rochester Institute of Technology Managing change is a constant aspect of software development.

More information

Version Control with Git ME 461 Fall 2018

Version Control with Git ME 461 Fall 2018 Version Control with Git ME 461 Fall 2018 0. Contents Introduction Definitions Repository Remote Repository Local Repository Clone Commit Branch Pushing Pulling Create a Repository Clone a Repository Commit

More information

Understanding the Dark Side

Understanding the Dark Side Understanding the Dark Side An Analysis of Drupal (and Other!) Worst Practices Kristen Pol Understanding the Dark Side An Analysis of Drupal (and Other!) Worst Practices Kristen Pol Image Source: http://bit.ly/1pb9en9

More information

Snapshot Best Practices: Continuous Integration

Snapshot Best Practices: Continuous Integration Snapshot Best Practices: Continuous Integration Snapshot provides sophisticated and flexible tools for continuously keeping Salesforce accounts, developer projects, and content repositories synchronized.

More information

Drupal Command Line Instructions Windows 7 List >>>CLICK HERE<<<

Drupal Command Line Instructions Windows 7 List >>>CLICK HERE<<< Drupal Command Line Instructions Windows 7 List Drush is a command-line interface for Drupal that provides a wide set of utilities directory in your home, or the aliases directory of your local Drush installation.

More information

Branching and Merging

Branching and Merging Branching and Merging SWEN-261 Introduction to Software Engineering Department of Software Engineering Rochester Institute of Technology Version control branching supports the ability to manage software

More information

PHP-Einführung - Lesson 8 - Composer (Dependency manager) and JSON. Alexander Lichter June 27, 2017

PHP-Einführung - Lesson 8 - Composer (Dependency manager) and JSON. Alexander Lichter June 27, 2017 PHP-Einführung - Lesson 8 - Composer (Dependency manager) and JSON Alexander Lichter June 27, 2017 Content of this lesson 1. Recap 2. Composer 3. JSON 4. Collections (next lesson) 1 Recap Recap Recap Recap

More information

For Starters: Creating CU Bear, a Drupal 8 Starter Kit

For Starters: Creating CU Bear, a Drupal 8 Starter Kit For Starters: Creating CU Bear, a Drupal 8 Starter Kit Alison McCauley Anthony Adinolfi Nazrin Tingstrom CIT/Custom Development Team, Cornell University Background / Goals / Needs Why bother with any of

More information

Technical Comparison Sheet: ez Platform Cloud vs Other Hosting Approaches

Technical Comparison Sheet: ez Platform Cloud vs Other Hosting Approaches Technical Comparison Sheet: vs Other Approaches This is a technical comparison worksheet between the various approaches to deploy and host your ez Platform project. Each approach is unique and has its

More information

Continuous Integration and Delivery with Spinnaker

Continuous Integration and Delivery with Spinnaker White Paper Continuous Integration and Delivery with Spinnaker The field of software functional testing is undergoing a major transformation. What used to be an onerous manual process took a big step forward

More information

Untangling your code: a git workflow for Noobs

Untangling your code: a git workflow for Noobs Untangling your code: a git workflow for Noobs Drupal GovCon 2016 Google Analytics has been moved to the main Auditorium Who are we? Greg Lund-Chaix Dan Zinkevich Senior Performance Engineer Developer

More information

Continuous Delivery the hard way with Kubernetes. Luke Marsden, Developer

Continuous Delivery the hard way with Kubernetes. Luke Marsden, Developer Continuous Delivery the hard way with Luke Marsden, Developer Experience @lmarsden Agenda 1. Why should I deliver continuously? 2. primer 3. GitLab primer 4. OK, so we ve got these pieces, how are we going

More information

Jenkins: A complete solution. From Continuous Integration to Continuous Delivery For HSBC

Jenkins: A complete solution. From Continuous Integration to Continuous Delivery For HSBC Jenkins: A complete solution From Integration to Delivery For HSBC Rajesh Kumar DevOps Architect @RajeshKumarIN www.rajeshkumar.xyz Agenda Why Jenkins? Introduction and some facts about Jenkins Supported

More information

Effizientere WordPress-Plugin-Entwicklung mit Softwaretests. Martin Schütte

Effizientere WordPress-Plugin-Entwicklung mit Softwaretests. Martin Schütte Effizientere WordPress-Plugin-Entwicklung mit Softwaretests Martin Schütte About DECK36 Small team of 7 engineers Longstanding expertise in designing, implementing and operating complex web systems Developing

More information

DevOps Course Content

DevOps Course Content DevOps Course Content 1. Introduction: Understanding Development Development SDLC using WaterFall & Agile Understanding Operations DevOps to the rescue What is DevOps DevOps SDLC Continuous Delivery model

More information

Continuous integration & continuous delivery. COSC345 Software Engineering

Continuous integration & continuous delivery. COSC345 Software Engineering Continuous integration & continuous delivery COSC345 Software Engineering Outline Integrating different teams work, e.g., using git Defining continuous integration / continuous delivery We use continuous

More information

THE GREAT CONSOLIDATION: ENTERTAINMENT WEEKLY MIGRATION CASE STUDY JON PECK, MATT GRILL, PRESTON SO

THE GREAT CONSOLIDATION: ENTERTAINMENT WEEKLY MIGRATION CASE STUDY JON PECK, MATT GRILL, PRESTON SO THE GREAT CONSOLIDATION: ENTERTAINMENT WEEKLY MIGRATION CASE STUDY JON PECK, MATT GRILL, PRESTON SO Slides: http://goo.gl/qji8kl WHO ARE WE? Jon Peck - drupal.org/u/fluxsauce Matt Grill - drupal.org/u/drpal

More information

A CD Framework For Data Pipelines. Yaniv

A CD Framework For Data Pipelines. Yaniv A CD Framework For Data Pipelines Yaniv Rodenski @YRodenski yaniv@apache.org Archetypes of Data Pipelines Builders Data People (Data Scientist/ Analysts/BI Devs) Exploratory workloads Code centric Software

More information

TM DevOps Use Case. 2017TechMinfy All Rights Reserved

TM DevOps Use Case. 2017TechMinfy All Rights Reserved Document Details Use Case Name TMDevOps Use Case03 First Draft 01 st Dec 2017 Author Reviewed By Prabhakar D Pradeep Narayanaswamy Contents Scope... 4 About Customer... 4 Use Case Description... 4 Primary

More information

What I ll be talking about. About me & bol.com The CI/CD bol.com Current setup. The future in the cloud

What I ll be talking about. About me & bol.com The CI/CD bol.com Current setup. The future in the cloud CI/CD @ bol.com What I ll be talking about 1. 2. 3. 4. 5. About me & bol.com The CI/CD story @ bol.com Current setup Mayfly The future in the cloud About me Maarten Dirkse @mdirkse on Twitter In IT since

More information

Pipeline as Code for your IAC. Kris

Pipeline as Code for your IAC. Kris Pipeline as Code for your IAC Kris Buytaert @krisbuytaert Kris Buytaert I used to be a Dev, Then Became an Op Chief Trolling Officer and Open Source Consultant @inuits.eu Everything is an effing DNS Problem

More information

Version control CSE 403

Version control CSE 403 Version control CSE 403 Goals of a version control system Keep a history of your work Explain the purpose of each change Checkpoint specific versions (known good state) Recover specific state (fix bugs,

More information

Drupal Command Line Instructions Windows 7 Networking >>>CLICK HERE<<<

Drupal Command Line Instructions Windows 7 Networking >>>CLICK HERE<<< Drupal Command Line Instructions Windows 7 Networking Applying patches, modifying files according to instructions in the patch file, is the This page only deals with some basic principles using the command

More information

CONTINUOUS DELIVERY IN THE ORACLE CLOUD

CONTINUOUS DELIVERY IN THE ORACLE CLOUD CONTINUOUS DELIVERY IN THE ORACLE CLOUD Lykle Thijssen Bruno Neves Alves June 7, 2018 NLOUG Tech Experience Amersfoort eproseed Confidential ABOUT US Lykle Thijssen Principal Architect and Scrum Master

More information

SCALING DRUPAL TO THE CLOUD WITH DOCKER AND AWS

SCALING DRUPAL TO THE CLOUD WITH DOCKER AND AWS SCALING DRUPAL TO THE CLOUD WITH DOCKER AND AWS Dr. Djun Kim Camp Pacific OUTLINE Overview Quick Intro to Docker Intro to AWS Designing a scalable application Connecting Drupal to AWS services Intro to

More information

TM DevOps Use Case TechMinfy All Rights Reserved

TM DevOps Use Case TechMinfy All Rights Reserved Document Details Use Case Name TMDevOps Use Case01 First Draft 5 th March 2018 Author Reviewed By Prabhakar D Pradeep Narayanaswamy Contents Scope... 4 About Customer... 4 Use Case Description... 4 Primary

More information

How to version control like a pro: a roadmap to your reproducible & collaborative research

How to version control like a pro: a roadmap to your reproducible & collaborative research How to version control like a pro: a roadmap to your reproducible & collaborative research The material in this tutorial is inspired by & adapted from the Software Carpentry lesson on version control &

More information

Documentation External Synchronization FirstSpirit

Documentation External Synchronization FirstSpirit Documentation External Synchronization FirstSpirit 2018-10 Status RELEASED Department Copyright FS-Core 2018 e-spirit AG File name SYNC_EN_FirstSpirit_External_Synchronization e-spirit AG Stockholmer Allee

More information

Start Building CI/CD as Code The 7 Lessons Learnt from Deploying and Managing 100s of CI Environments

Start Building CI/CD as Code The 7 Lessons Learnt from Deploying and Managing 100s of CI Environments White Paper Start Building CI/CD as Code The 7 Lessons Learnt from Deploying and Managing 100s of CI Environments by Aaron Walker, Technology Director 1 Looking at Continuous Integration (CI) a bit differently

More information

OpenStack Enabling DevOps Shannon McFarland CCIE #5245 Distinguished DEVNET-1104

OpenStack Enabling DevOps Shannon McFarland CCIE #5245 Distinguished DEVNET-1104 OpenStack Enabling DevOps Shannon McFarland CCIE #5245 Distinguished Engineer @eyepv6 DEVNET-1104 Agenda Introduction DevOps OpenStack Virtualization CI/CD Pipeline Orchestration Conclusion What is DevOps?

More information

ContainerOps - DevOps Orchestration. Quanyi Ma

ContainerOps - DevOps Orchestration. Quanyi Ma ContainerOps - DevOps Orchestration Quanyi Ma Who Am I? Quanyi Ma DevOps & Open Source Expert Senior Architect & Full Stack Developer Email: maquanyi@huawei.com Twitter: @genedna

More information

Configuration Management in Drupal 8

Configuration Management in Drupal 8 Configuration Management in Drupal 8 Antonio De Marco - antonio@nuvole.org Fabian Bircher - fabian@nuvole.org Nuvole a 100% Drupal company Our Distributed Team Italy Belgium Czech Republic Our Clients

More information

GIT TO DA REPO! VERSION CONTROL, GITLAB, AND ISU

GIT TO DA REPO! VERSION CONTROL, GITLAB, AND ISU GIT TO DA REPO! VERSION CONTROL, GITLAB, AND ISU Tony Brook & Nathan Stien August 2nd, 2016 WHAT IS VERSION CONTROL (And why should you care?) Shared workspace for multiple collaborators Tracking history

More information

Continuous Delivery at Liferay A fast lane for your software updates. Rubén Eduardo

Continuous Delivery at Liferay A fast lane for your software updates. Rubén Eduardo Continuous Delivery at Liferay A fast lane for your software updates Rubén Pulido @_rubenpulido Eduardo García @edupgv What to expect During this session, you will 1. Understand what Continuous Delivery

More information

Magento Commerce Cloud. Implementing a Project Effectively

Magento Commerce Cloud. Implementing a Project Effectively Magento Commerce Cloud Implementing a Project Effectively Nadiia Syvokonenko Software Engineer Magento Commerce Billy Gilbert Software Engineer Magento Commerce Magento Commerce Cloud Magento Commerce

More information

Love Your Load Times. Trim seconds off page loads, secure private files and make the most of your digital assets

Love Your Load Times. Trim seconds off page loads, secure private files and make the most of your digital assets Love Your Load Times Trim seconds off page loads, secure private files and make the most of your digital assets Today s Featured Speakers Antonio Estevez Senior Drupal Architect - DOOR3 Erik Vilinskas

More information

Automatic MySQL Schema Management with Skeema. Evan Elias Percona Live, April 2017

Automatic MySQL Schema Management with Skeema. Evan Elias Percona Live, April 2017 Automatic MySQL Schema Management with Skeema Evan Elias Percona Live, April 2017 What is Schema Management? Organize table schemas in a repo Execution of all DDL, on the correct MySQL instances, with

More information

DrupalGovcon July 20th, 2016

DrupalGovcon July 20th, 2016 Agile Drupal 8 Builds: Doing the Most Without PHP DrupalGovcon July 20th, 2016 Matt Cheney & Molly Byrnes 1 Hello to Drupalcon Govcon My name is Matthew Cheney. I work on the magical platform that is Pantheon.

More information

Azure Day Application Development. Randy Pagels Sr. Developer Technology Specialist US DX Developer Tools - Central Region

Azure Day Application Development. Randy Pagels Sr. Developer Technology Specialist US DX Developer Tools - Central Region Azure Day Application Development Randy Pagels Sr. Developer Technology Specialist US DX Developer Tools - Central Region Azure App Service.NET, Java, Node.js, PHP, Python Auto patching Auto scale Integration

More information

COMPOSER IN DRUPAL WORLD

COMPOSER IN DRUPAL WORLD #drupaldevdays / Composer in Drupal World / @derhasi COMPOSER IN DRUPAL WORLD Johannes Haseitl - @derhasi ME Johannes Haseitl @derhasi everywhere Maintainer of Master, Search API Override,... CEO of undpaul

More information

Disclaimer This presentation may contain product features that are currently under development. This overview of new technology represents no commitme

Disclaimer This presentation may contain product features that are currently under development. This overview of new technology represents no commitme DEV2704BE Delivering Infrastructure as Code: Practical Tips and Advice Peg Eaton #vmworld #DEV2704BE Disclaimer This presentation may contain product features that are currently under development. This

More information

Index. Chaminda Chandrasekara 2017 C. Chandrasekara, Beginning Build and Release Management with TFS 2017 and VSTS, DOI /

Index. Chaminda Chandrasekara 2017 C. Chandrasekara, Beginning Build and Release Management with TFS 2017 and VSTS, DOI / Index A Agent platforms, 10 system and user capabilities, 10 Agent pool add user, 12 assign permissions, 55 56 default pool, 8 hosted Linux pool, 8 hosted pool, 7 set up assign administrator role, 45 auto-provision

More information

Drupal Command Line Instructions Windows 7 List Files >>>CLICK HERE<<<

Drupal Command Line Instructions Windows 7 List Files >>>CLICK HERE<<< Drupal Command Line Instructions Windows 7 List Files Getting the Open Atrium files Before you can install Open Atrium, you need to get the files. There are (NOTE: These instructions are for *nix-based

More information

Behat Drupal Integration Documentation

Behat Drupal Integration Documentation Behat Drupal Integration Documentation Release 1.1 Brendan MacDonald Jul 19, 2017 Contents 1 Introduction 3 2 System Requirements 5 3 Installation 7 4 Adding it to an existing project 9 5 Initial setup

More information

Strengthen and Scale security using DevSecOps

Strengthen and Scale security using DevSecOps OWASP Indonesia Meetup Strengthen and Scale security using DevSecOps $ www.teachera.io!"# @secfigo % secfigo@gmail.com # whoami Author, Speaker and Community Leader. Speaker/Trainer at Blackhat, AppSec EU,

More information

How to git with proper etiquette

How to git with proper etiquette How to git with proper etiquette Let's start fixing how we use git here in crew so our GitHub looks even more awesome and you all get experience working in a professional-like git environment. How to use

More information

Docker at Lyft Speeding up development Matthew #dockercon

Docker at Lyft Speeding up development Matthew #dockercon Docker at Lyft Speeding up development Matthew Leventi @mleventi #dockercon Lyft Engineering Lyft Engineering Organization - Rapidly growing headcount - Fluid teams - Everyone does devops Technology -

More information

Developing and Testing Java Microservices on Docker. Todd Fasullo Dir. Engineering

Developing and Testing Java Microservices on Docker. Todd Fasullo Dir. Engineering Developing and Testing Java Microservices on Docker Todd Fasullo Dir. Engineering Agenda Who is Smartsheet + why we started using Docker Docker fundamentals Demo - creating a service Demo - building service

More information

What is version control? (discuss) Who has used version control? Favorite VCS? Uses of version control (read)

What is version control? (discuss) Who has used version control? Favorite VCS? Uses of version control (read) 1 For the remainder of the class today, I want to introduce you to a topic we will spend one or two more classes discussing and that is source code control or version control. What is version control?

More information

Git. CSCI 5828: Foundations of Software Engineering Lecture 02a 08/27/2015

Git. CSCI 5828: Foundations of Software Engineering Lecture 02a 08/27/2015 Git CSCI 5828: Foundations of Software Engineering Lecture 02a 08/27/2015 1 Lecture Goals Present a brief introduction to git You will need to know git to work on your presentations this semester 2 Git

More information

Distributed CI: Scaling Jenkins on Mesos and Marathon. Roger Ignazio Puppet Labs, Inc. MesosCon 2015 Seattle, WA

Distributed CI: Scaling Jenkins on Mesos and Marathon. Roger Ignazio Puppet Labs, Inc. MesosCon 2015 Seattle, WA Distributed CI: Scaling Jenkins on Mesos and Marathon Roger Ignazio Puppet Labs, Inc. MesosCon 2015 Seattle, WA About Me Roger Ignazio QE Automation Engineer Puppet Labs, Inc. @rogerignazio Mesos In Action

More information

FREELANCE WORDPRESS DEVELOPER

FREELANCE WORDPRESS DEVELOPER FREELANCE WORDPRESS DEVELOPER HAVE A QUESTION? ASK! Read up on all the ways you can get help. CONFUSION IS GOOD :) Seriously, it s scientific fact. Read all about it! REMEMBER, YOU ARE NOT ALONE! Join

More information

Full Stack boot camp

Full Stack boot camp Name Full Stack boot camp Duration (Hours) JavaScript Programming 56 Git 8 Front End Development Basics 24 Typescript 8 React Basics 40 E2E Testing 8 Build & Setup 8 Advanced JavaScript 48 NodeJS 24 Building

More information

Agile CI/CD with Jenkins and/at ZeroStack. Kiran Bondalapati CTO, Co-Founder & Jenkins Admin ZeroStack, Inc. (

Agile CI/CD with Jenkins and/at ZeroStack. Kiran Bondalapati CTO, Co-Founder & Jenkins Admin ZeroStack, Inc. ( Agile CI/CD with Jenkins and/at ZeroStack Kiran Bondalapati CTO, Co-Founder & Jenkins Admin ZeroStack, Inc. (www.zerostack.com) Outline ZeroStack Hybrid Cloud Platform Jenkins and ZeroStack Jenkins at

More information

Lab 01 How to Survive & Introduction to Git. Web Programming DataLab, CS, NTHU

Lab 01 How to Survive & Introduction to Git. Web Programming DataLab, CS, NTHU Lab 01 How to Survive & Introduction to Git Web Programming DataLab, CS, NTHU Notice These slides will focus on how to submit you code by using Git command line You can also use other Git GUI tool or built-in

More information

FROM VSTS TO AZURE DEVOPS

FROM VSTS TO AZURE DEVOPS #DOH18 FROM VSTS TO AZURE DEVOPS People. Process. Products. Gaetano Paternò @tanopaterno info@gaetanopaterno.it 2 VSTS #DOH18 3 Azure DevOps Azure Boards (ex Work) Deliver value to your users faster using

More information

Accelerate OpenStack* Together. * OpenStack is a registered trademark of the OpenStack Foundation

Accelerate OpenStack* Together. * OpenStack is a registered trademark of the OpenStack Foundation Accelerate OpenStack* Together * OpenStack is a registered trademark of the OpenStack Foundation Considerations to Build a Production OpenStack Cloud Ruchi Bhargava, Intel IT Shuquan Huang, Intel IT Kai

More information

Version Control for PL/SQL

Version Control for PL/SQL Version Control for PL/SQL What is the problem? How did we solve it? Implementation Strategies Demo!! Customer Spotlight Success Story: (In other words, this really works. :-) ) Rhenus Logistics, leading

More information

platform Development Process Optimization For Drupal centric projects

platform Development Process Optimization For Drupal centric projects platform Development Process Optimization For Drupal centric projects Introduction This document explains how Platform impacts your Drupal centric project development process. Performance data from digital

More information

Building a reference IoT product with Zephyr. Ricardo Salveti Michael Scott Tyler Baker

Building a reference IoT product with Zephyr. Ricardo Salveti Michael Scott Tyler Baker Building a reference IoT product with Zephyr Ricardo Salveti Michael Scott Tyler Baker Introduction Linaro Technologies A small team within Linaro focusing on open source end-to-end solutions Who is here?

More information

1. Which of these Git client commands creates a copy of the repository and a working directory in the client s workspace. (Choose one.

1. Which of these Git client commands creates a copy of the repository and a working directory in the client s workspace. (Choose one. Multiple-Choice Questions: 1. Which of these Git client commands creates a copy of the repository and a working directory in the client s workspace. (Choose one.) a. update b. checkout c. clone d. import

More information

Your Engineering Excellency

Your Engineering Excellency Your Engineering Excellency With hundreds of projects in dozens of industries, EPAM Systems can boast expertise and excellence in lots of different technologies. E-commerce, Big Data, content management,

More information

Code Review for DevOps

Code Review for DevOps Code Review for DevOps FOSSASIA 2016 Saturday, 19 March 2016 Elizabeth K. Joseph Hewlett Packard Enterprise lyz@princessleia.com @pleia2 Elizabeth K. Joseph OpenStack Infrastructure Team DevOps Engineer,

More information

Submitting your Work using GIT

Submitting your Work using GIT Submitting your Work using GIT You will be using the git distributed source control system in order to manage and submit your assignments. Why? allows you to take snapshots of your project at safe points

More information

Working in Teams CS 520 Theory and Practice of Software Engineering Fall 2018

Working in Teams CS 520 Theory and Practice of Software Engineering Fall 2018 Working in Teams CS 520 Theory and Practice of Software Engineering Fall 2018 Version Control September 18, 2018 Thursday (September 20) First in-class exercise On using git (today is a prelude with useful

More information

Python Unit Testing and CI Workflow. Tim Scott, Python Meetup 11/07/17

Python Unit Testing and CI Workflow. Tim Scott, Python Meetup 11/07/17 Python Unit Testing and CI Workflow Tim Scott, Python Meetup 11/07/17 A Little About Me Started as a CoOp Engineer (2007-2008) and Design Engineer at Adtran (2010-2014) Currently work at Abaco Systems

More information

Software Development. Using GIT. Pr. Olivier Gruber. Laboratoire d'informatique de Grenoble Université de Grenoble-Alpes

Software Development. Using GIT. Pr. Olivier Gruber. Laboratoire d'informatique de Grenoble Université de Grenoble-Alpes Software Development 1 Using GIT Pr. Olivier Gruber olivier.gruber@imag.fr Laboratoire d'informatique de Grenoble Université de Grenoble-Alpes Overview 2 What is GIT Keeping histories of the evolution

More information

Version control CSE 403

Version control CSE 403 Version control CSE 403 Goals of a version control system Keep a history of your work Explain the purpose of each change Checkpoint specific versions (known good state) Recover specific state (fix bugs,

More information

Advanced Continuous Delivery Strategies for Containerized Applications Using DC/OS

Advanced Continuous Delivery Strategies for Containerized Applications Using DC/OS Advanced Continuous Delivery Strategies for Containerized Applications Using DC/OS ContainerCon @ Open Source Summit North America 2017 Elizabeth K. Joseph @pleia2 1 Elizabeth K. Joseph, Developer Advocate

More information

Designing the Home Page and Creating Additional Pages

Designing the Home Page and Creating Additional Pages Designing the Home Page and Creating Additional Pages Creating a Webpage Template In Notepad++, create a basic HTML webpage with html documentation, head, title, and body starting and ending tags. From

More information

1. I NEED TO HAVE MULTIPLE VERSIONS OF VISUAL STUDIO INSTALLED IF I M MAINTAINING APPLICATIONS THAT RUN ON MORE THAN ONE VERSION OF THE.

1. I NEED TO HAVE MULTIPLE VERSIONS OF VISUAL STUDIO INSTALLED IF I M MAINTAINING APPLICATIONS THAT RUN ON MORE THAN ONE VERSION OF THE. CUSTOMER PAIN POINTS 1. I NEED TO HAVE MULTIPLE VERSIONS OF VISUAL STUDIO INSTALLED IF I M MAINTAINING APPLICATIONS THAT RUN ON MORE THAN ONE VERSION OF THE.NET FRAMEORK. THAT S TAKING UP SPACE ON MY HARDDRIVE

More information

Tools. SWE 432, Fall Design and Implementation of Software for the Web

Tools. SWE 432, Fall Design and Implementation of Software for the Web Tools SWE 432, Fall 2016 Design and Implementation of Software for the Web Today Before we can really make anything, there s a bunch of technical stuff to get out of the way Tools make our lives so much

More information