Beginners guide to at #phpworld
|
|
- Adrian Crawford
- 5 years ago
- Views:
Transcription
1 Beginners guide to deployments at #phpworld
2 Let s talk deployment
3 Your deploys should be as boring, straightforward, and stress-free as possible. - Zach Holman (
4 How do you deploy?
5 Edit on the server?
6 FTP?
7 git pull?
8 Third party deployment?
9 Deployment script?
10 OS packages?
11 These are all valid ways to deploy
12 Deployment for beginners
13 Your deploys should be as boring, straightforward, and stress-free as possible. - Zach Holman (
14 1. What is a deployment? 2. Option A: External tools 3. Option B: Internal tools 4. Option C: System packages 5. Option D: Blue / Green deployments 6. Option E: Immutable infrastructure 7. Deployment techniques 8. Summary
15 What is a deployment?
16 Code
17 Dependencies
18 Configuration
19 Database Migrations
20 Other Migrations
21 Assets
22 Post Install Tasks
23 We re aiming for
24 Your deploys should be as boring, straightforward, and stress-free as possible. - Zach Holman (
25 Our Codebase
26 Simple to do list application
27 Composer Silex Doctrine Migrations
28 Time to deploy!
29 Option A: External tool
30
31
32
33
34
35
36
37
38
39
40 Useful tools Beanstalkapp DeployHQ Laravel Forge
41 Pros Cons 1. Easy setup 2. One-click deployments 3. Environment support 4. Can only deploy from repo 1. Files copied one by one 2. Composer run on server 3. No build steps 4. Their way, or the highway 5. Can t deploy if provider is offline
42 Option B: Internal tool
43
44 $ gem install capistrano
45 $ cap install => mkdir -p config/deploy => create config/deploy.rb => create config/deploy/staging.rb => create config/deploy/production.rb => mkdir -p lib/capistrano/tasks => create Capfile => Capified
46 $ cat config/deploy.rb lock '3.6.1' set :application, 'silex_todo' set :repo_url, set :deploy_to, '/var/www/todo'
47 $ cat config/deploy/production.rb server 'todo.example.com', user: 'deploy', roles: %w{app db}
48 $ cap production deploy 00:00 git:wrapper 01 mkdir -p /tmp 02 chmod 700 /tmp/git-ssh-silex_todo-production-michael.sh 00:07 git:check 01 git ls-remote --heads 00:08 deploy:check:directories 01 mkdir -p /var/www/todo/shared /var/www/todo/releases 00:08 git:clone 01 git clone --mirror /var/www/todo/repo 01 Cloning into bare repository '/var/www/todo/repo'... 00:10 git:update 01 git remote update --prune 01 Fetching origin 00:11 git:create_release 01 mkdir -p /var/www/todo/releases/ git archive master tar -x -f - -C /var/www/todo/releases/ :12 git:set_current_revision 01 echo "6cc1b6cbc827e205b24d0d599ea7b667a3ec5ca0" >> REVISION 00:12 deploy:symlink:release 01 ln -s /var/www/todo/releases/ /var/www/todo/releases/current 02 mv /var/www/todo/releases/current /var/www/todo 00:12 deploy:log_revision 01 echo "Branch master (at 6cc1b6cbc827e205b24d0d599ea7b667a3ec5ca0) deployed as release by michael" >> /var/www/todo/revisions.log
49 $ cap production deploy Generate and upload deployment script Clone repo Generate archive from repo Untar archive into releases folder Symlink current folder to the latest release
50 $ gem install capistrano-composer In Capfile: require 'capistrano/composer'
51 $ cap production deploy 00:18 composer:run 01 composer install --no-dev --prefer-dist --no-interaction -- quiet --optimize-autoloader s
52 lib/capistrano/tasks/database_tasks.rake: namespace :database do desc 'migrate database' task :migrate do on roles(:db) do execute "cd #{release_path} &&./vendor/bin/ doctrine-migrations migrations:migrate --db-configuration config/db-config.php --configuration config/migrations.yml" end end end
53 lib/capistrano/tasks/database_tasks.rake: namespace :database do desc 'migrate database' task :migrate do on roles(:db) do execute "cd #{release_path} &&./vendor/bin/ doctrine-migrations migrations:migrate --db-configuration config/db-config.php --configuration config/migrations.yml" end end end
54 lib/capistrano/tasks/database_tasks.rake: namespace :database do desc 'migrate database' task :migrate do on roles(:db) do execute "cd #{release_path} &&./vendor/bin/ doctrine-migrations migrations:migrate --db-configuration config/db-config.php --configuration config/migrations.yml" end end end
55 lib/capistrano/tasks/database_tasks.rake: namespace :database do desc 'migrate database' task :migrate do on roles(:db) do execute "cd #{release_path} &&./vendor/bin/ doctrine-migrations migrations:migrate --db-configuration config/db-config.php --configuration config/migrations.yml" end end end
56 lib/capistrano/tasks/database_tasks.rake: namespace :database do desc 'migrate database' task :migrate do on roles(:db) do execute "cd #{release_path} &&./vendor/bin/ doctrine-migrations migrations:migrate --db-configuration config/db-config.php --configuration config/migrations.yml" end end end
57 Capfile: after "composer:install", "database:migrate"
58 $ cap production deploy 00:22 database:migrate 01 cd #{release_path} &&./vendor/bin/doctrine-migrations migrations:migrate db-co s
59
60 Useful tools Capistrano Webistrano Rocketeer Ansible
61 Pros Cons 1. One-click deployments 2. Environment support 3. Can only deploy from repo 4. Internal solution 5. Atomic deploys 1. Learning curve 2. Composer run on server 3. No build steps 4. Probably want to use Bundler to manage versions 6. Rollback support
62 Option C: System Packages
63 $ apt-get install todo $ yum install todo $ pacman -S todo
64
65
66 .!"" resources!"" src #!"" application # #!"" controller # # # $"" IndexController.php # #!"" model # # # $"" User.php # # $"" view # # $"" show-user.php #!"" composer.json #!"" composer.lock #!"" config # #!"" mappings.json # # $"" targets.json # $"" public # $"" index.php $"" test
67 .!"" resources $ fpm -s dir -t rpm -n todo!"" src #!"" application # #!"" controller # # # $"" IndexController.php # #!"" model # # # $"" User.php # # $"" view # # $"" show-user.php #!"" composer.json #!"" composer.lock #!"" config # #!"" mappings.json # # $"" targets.json # $"" public # $"" index.php $"" test
68 .!"" resources!"" src #!"" application $ fpm -s dir -t rpm -n todo \ src/=/var/www/todo \ src/config/=/etc/todo # #!"" controller # # # $"" IndexController.php # #!"" model # # # $"" User.php # # $"" view # # $"" show-user.php #!"" composer.json #!"" composer.lock #!"" config # #!"" mappings.json # # $"" targets.json # $"" public # $"" index.php $"" test
69 .!"" resources!"" src #!"" application # #!"" controller # # # $"" IndexController.php $ fpm -s dir -t rpm --config-files /etc \ -n todo \ src/=/var/www/todo \ src/config/=/etc/todo # #!"" model # # # $"" User.php # # $"" view # # $"" show-user.php #!"" composer.json #!"" composer.lock #!"" config # #!"" mappings.json # # $"" targets.json # $"" public # $"" index.php $"" test
70 .!"" resources!"" src #!"" application # #!"" controller # # # $"" IndexController.php # #!"" model $ fpm -s dir -t rpm --config-files /etc \ --exclude "var/www/todo/config*" \ -n todo \ src/=/var/www/todo \ src/config/=/etc/todo # # # $"" User.php # # $"" view # # $"" show-user.php #!"" composer.json #!"" composer.lock #!"" config # #!"" mappings.json # # $"" targets.json # $"" public # $"" index.php $"" test
71 $ fpm -s dir -t rpm --config-files /etc --exclude "var/www/todo/config*" -n todo src/=/var/ www/todo src/config/=/etc/todo => Created package {:path=>"todo x86_64.rpm"}
72 Continous Integration
73 What is Continous Integration?
74 Use it to run tests
75 Use it to composer install
76 Use it to mitigate risk
77 Use it to build on identical platforms
78 Use it to package your application
79 Use it to deploy to production
80 Use it to AUTOMATE THINGS
81
82 Option C: System Packages
83 $ apt-get install todo $ yum install todo $ pacman -S todo
84 Almost
85 Database migrations
86 $ fpm -s dir -t rpm --config-files /etc --exclude "var/www/todo/config*" -n todo src/=/var/ www/todo src/config/=/etc/todo => Created package {:path=>"todo x86_64.rpm"}
87 $ fpm -s dir -t rpm --config-files /etc --exclude "var/www/todo/config*" -n todo --after-install /path/to/script src/=/var/www/ todo src/config/=/etc/todo => Created package {:path=>"todo x86_64.rpm"}
88 Useful tools FPM Jenkins RPM / Deb / Pkg
89 Releases are immutable
90 Pros Cons 1. Atomic releases 2. Build on system tools 3. Proper build toolchain 1. Steep learning curve 2. Need to run package repo 3. Ideal to run CI system 4. Signed builds 5. Easy upgrade/rollback 6. Immutable
91 Option D: Blue / Green
92 Load Balancer
93 Load Balancer
94 Shared databases
95 Single database
96 Server maintenance
97 g u l P p a s s e e h l e m a Sh
98 Infrastructure level
99 Useful tools Puppet / Chef / Ansible HAProxy
100 Pros Cons 1. Low risk deployments 2. Test on production systems 3. Easy changeover 1. Can be expensive 2. Databases are hard 3. More moving parts to manage
101 Option E: Immutable
102 1 0 0 Load Balancer 1 0 1
103 Load Balancer 1 0 1
104 1 0 1 Load Balancer
105 1 0 1 Load Balancer
106 Load Balancer
107 Why immutable?
108 1 0 0 Load Balancer 1 0 1
109 1 0 0 Load Balancer 1 0 1
110 1 0 0 Load Balancer
111 1 0 0 Load Balancer 1 0 2
112 Useful tools Puppet / Chef / Ansible Packer Cloud providers
113 Pros Cons 1. Known environment 2. Test 2+ releases at once 3. Easy changeover 1. Cost 2. Slow to build 3. Database sync 4. Truly atomic releases
114 Deployment techniques
115 Build (at least) daily (even better if it s automated)
116 Announce releases
117 Staggered Releases
118 Canary deploys
119 Go / No Go
120 Containers
121 Chatops
122 Summary
123 Automate your deployment
124 Local builds
125 Immutable releases
126 Think about deployment before you write any code
127 The three strikes rule
128 Make it a single command
129 Your deploys should be as boring, straightforward, and stress-free as possible. - Zach Holman (
130 Michael Heap at #phpworld
The Long Road from Capistrano to Kubernetes
The Long Road from Capistrano to Kubernetes Tobias Schwab, Co-Founder of PhraseApp Slides: http://bit.ly/cap-to-kube How to deploy Ruby on Rails? Deploying Ruby on Rails required on all servers: OS + system
More informationAdvanced 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 informationPulp Python Support Documentation
Pulp Python Support Documentation Release 1.0.1 Pulp Project October 20, 2015 Contents 1 Release Notes 3 1.1 1.0 Release Notes............................................ 3 2 Administrator Documentation
More informationGarment Documentation
Garment Documentation Release 0.1 Evan Borgstrom March 25, 2014 Contents i ii A collection of fabric tasks that roll up into a single deploy function. The whole process is coordinated through a single
More informationDEVOPS COURSE CONTENT
LINUX Basics: Unix and linux difference Linux File system structure Basic linux/unix commands Changing file permissions and ownership Types of links soft and hard link Filter commands Simple filter and
More informationManaging Infrastructure with Python, Fabric and Ansible. By Tim Henderson hackthology.com github.com/timtadh
Managing Infrastructure with Python, Fabric and Ansible By Tim Henderson tadh@case.edu hackthology.com github.com/timtadh part 00 death of a sys-admin there are too many machines now, we have become root
More informationGIT. A free and open source distributed version control system. User Guide. January, Department of Computer Science and Engineering
GIT A free and open source distributed version control system User Guide January, 2018 Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur Table of Contents What is
More informationComposer 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 informationDeployability. of Python. web applications
Deployability of Python web applications Bruno Renié EuroPython 2013 Deployability, n The extent to which something is deployable Disclaimer Most of this isn't python-specific or even web-specific Oriented
More informationLinux 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 informationAEM Code Promotion and Content Synchronization Best Practices
AEM Code Promotion and Content Synchronization Best Practices Ian Reasor, Technical Architect, Adobe Partner Experience Introduction When considering the movement of content through environments in an
More informationGetting Started With Containers
DEVNET 2042 Getting Started With Containers Matt Johnson Developer Evangelist @mattdashj Cisco Spark How Questions? Use Cisco Spark to communicate with the speaker after the session 1. Find this session
More informationContinuous 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 informationPipeline 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 informationGETTING STARTED WITH. Michael Lessard Senior Solutions Architect June 2017
GETTING STARTED WITH Michael Lessard Senior Solutions Architect June 2017 Agenda What is Git? Installation of Git Git basis Github First steps with Git 2 WHAT IS GIT? What is Git? Started in 2005 Created
More informationGetting the Source Code
Getting the Source Code The CORD source code is available from our Gerrit system at gerrit.opencord.org. Setting up a Gerrit account and ssh access will also enable you to submit your own changes to CORD
More informationDrupal & 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 informationDeploy Like A Boss Oliver Nicholas
Deploy Like A Boss Oliver Nicholas DEPLOY LIKE A BOSS THE JOURNEY FROM 2 SERVERS TO 20,000 THE DEPLOYMENT PIPELINE MARCH 1, 2015 3 UBER TECHNOLOGIES, INC BUSINESS METRICS 311 Cities 57 Countries 1,000,000+
More informationComposer 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 informationGit & Github Fundamental by Rajesh Kumar.
Git & Github Fundamental by Rajesh Kumar About me Rajesh Kumar DevOps Architect @RajeshKumarIN www.rajeshkumar.xyz www.scmgalaxy.com 2 What is git Manage your source code versions Who should use Git Anyone
More informationVersion control system (VCS)
Version control system (VCS) Remember that you are required to keep a process-log-book of the whole development solutions with just one commit or with incomplete process-log-book (where it is not possible
More informationLENS Server Maintenance Guide JZ 2017/07/28
LENS Server Maintenance Guide JZ 2017/07/28 Duty Maintain LENS server with minimum downtime Patch critical vulnerabilities Assist LAB member for using the LENS services Evaluate for custom requirements
More informationQuick Prototyping+CI with LXC and Puppet
Quick Prototyping+CI with LXC and Puppet Ben Kero 2014-05-04 Introduction Ben Kero Release Engineer Responsible for version control systems: CVS, SVN, BZR, Darcs, RCS, Git, Mercurial Before at Mozilla
More informationThere Should be One Obvious Way to Bring Python into Production. Sebastian Neubauer
There Should be One Obvious Way to Bring Python into Production Sebastian Neubauer sebastian.neubauer@blue-yonder.com 1 Agenda What are we talking about and why? Delivery pipeline Dependencies Packaging
More informationWalter walterebert.de slideshare.net/walterebert
Walter Ebert @wltrd walterebert.de slideshare.net/walterebert https://getcomposer.org/doc/00-intro.md Composer installieren php -r \ "readfile('https://getcomposer.org/installer');" \ > composer-setup.php
More informationBuild & Launch Tools (BLT) Automating best practices for enterprise sites
Build & Launch Tools (BLT) Automating best practices for enterprise sites Who are you? Matthew Grasmick @grasmash on Drupal.org, twitter, etc. Acquia Professional Services, 4yrs Drupalist, 9yrs Maintainer
More informationGunnery Documentation
Gunnery Documentation Release 0.1 Paweł Olejniczak August 18, 2014 Contents 1 Contents 3 1.1 Overview................................................. 3 1.2 Installation................................................
More informationCOMPOSER 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 informationDevOps 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 informationThis tutorial provides a basic understanding of the infrastructure and fundamental concepts of managing an infrastructure using Chef.
About the Tutorial Chef is a configuration management technology developed by Opscode to manage infrastructure on physical or virtual machines. It is an open source developed using Ruby, which helps in
More informationTizen Project Guideline. SKKU Embedded Software Lab.
1 Tizen Project Guideline Tizen Project Process 2 Assume that you have done flashing Tizen images. 1. Preparation Install Tizen Development Environments 2. Github 1. Sign in Github 2. Make an Organization
More informationConfiguration Management - Using Puppet. lctseng / Liang-Chi Tseng
Configuration Management - Using Puppet lctseng / Liang-Chi Tseng Our Target Share several files Configuration files (httpd.conf) Regular data files (wallpapaer.jpg) System-wide configuration Add/Modify
More informationDeveloping 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 informationPHP-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 informationRuby in the Sky with Diamonds. August, 2014 Sao Paulo, Brazil
Ruby in the Sky with Diamonds August, 2014 Sao Paulo, Brazil JELASTIC PLATFORM AS INFRASTRUCTURE Jelastic provides enterprise cloud software that redefines the economics of cloud deployment and management.
More informationIf you had a freshly generated image from an LCI instructor, make sure to set the hostnames again:
Storage Node Setup A storage node (or system as your scale) is a very important unit for an HPC cluster. The computation is often about the data it produces and keeping that data safe is important. Safe
More informationGit Command Line Tool Is Not Installed
Git Command Line Tool Is Not Installed Make Sure It Is Accessible On Y Error: "git" command line tool is not installed: make sure it is accessible on y I have installed git tool. even in git bash its showing
More informationCreated by: Nicolas Melillo 4/2/2017 Elastic Beanstalk Free Tier Deployment Instructions 2017
Created by: Nicolas Melillo 4/2/2017 Elastic Beanstalk Free Tier Deployment Instructions 2017 Detailed herein is a step by step process (and explanation) of how to prepare a project to be deployed to Amazon
More informationVersion Control: Gitting Started
ting Started Cai Li October 2014 What is Version Control? Version control is a system that records changes to a file or set of files over time so that you can recall specific versions later. Local Version
More informationDevOps Online Training
DevOps Online Training IQ Online training facility offers Devops online training by trainers who have expert knowledge in the Devops and proven record of training hundreds of students. Our Oracle Devops
More informationCS 261 Recitation 1 Compiling C on UNIX
Oregon State University School of Electrical Engineering and Computer Science CS 261 Recitation 1 Compiling C on UNIX Winter 2017 Outline Secure Shell Basic UNIX commands Editing text The GNU Compiler
More informationTECHNICAL DESCRIPTION
TECHNICAL DESCRIPTION Product Snow Inventory Version 5 Release date 2016-09-27 Document date 2017-11-24 CONTENTS 1 Introduction... 3 1.1 What s new?... 3 2 Platform overview... 4 2.1 Architecture... 4
More informationImplementing the Twelve-Factor App Methodology for Developing Cloud- Native Applications
Implementing the Twelve-Factor App Methodology for Developing Cloud- Native Applications By, Janakiram MSV Executive Summary Application development has gone through a fundamental shift in the recent past.
More informationInfoblox Kubernetes1.0.0 IPAM Plugin
2h DEPLOYMENT GUIDE Infoblox Kubernetes1.0.0 IPAM Plugin NIOS version 8.X August 2018 2018 Infoblox Inc. All rights reserved. Infoblox Kubernetes 1.0.0 IPAM Deployment Guide August 2018 Page 1 of 18 Overview...
More informationUP! TO DOCKER PAAS. Ming
UP! TO DOCKER PAAS Ming Jin(mjin@thoughtworks.com) March 15, 2015 1 WHO AM I Ming Jin Head of Cloud Solutions of ThoughtWorks China Architect, Agile Consulting Solutions and Consulting on DevOps & Cloud
More informationContinuous 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 informationCopyright Heraflux Technologies. Do not redistribute or copy as your own. 1
@kleegeek davidklee.net heraflux.com in/davidaklee Specialties / Focus Areas / Passions: Performance Tuning Business Continuity Virtualization & Cloud Infrastructure Architecture Health & Efficiency Capacity
More informationTangeloHub Documentation
TangeloHub Documentation Release None Kitware, Inc. September 21, 2015 Contents 1 User s Guide 3 1.1 Managing Data.............................................. 3 1.2 Running an Analysis...........................................
More informationDocker 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 informationThe 12-Factor app and IBM Bluemix IBM Corporation
The 12-Factor app and IBM Bluemix After you complete this section, you should understand: The characteristics of a 12-Factor app Examples of following 12-Factor App methodology in Bluemix 2 What are the
More informationDebian 8 Jessie. About. Commit Log. Please NOTE that Debian 9 Stretch is now officially supported by FreeSWITCH.
Debian 8 Jessie About Please NOTE that Debian 9 Stretch is now officially supported by FreeSWITCH. Debian 8 "Jessie" was the reference platform for FreeSWITCH as of version 1.6. We recommend Debian 9 "Stretch"
More informationSimplified CICD with Jenkins and Git on the ZeroStack Platform
DATA SHEET Simplified CICD with Jenkins and Git on the ZeroStack Platform In the technical article we will walk through an end to end workflow of starting from virtually nothing and establishing a CICD
More informationSQL Server Administration on Linux 2017
@kleegeek davidklee.net heraflux.com davidaklee Specialties / Focus Areas / Passions: Performance Tuning Business Continuity Virtualization & Cloud Infrastructure Architecture Health & Efficiency Capacity
More informationAspirin 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 informationgit the SCM system Jan-Simon Möller training.linuxfoundation.org
git the SCM system Jan-Simon Möller training.linuxfoundation.org Topics What is git (what is a SCM) How to install git How to personalize git How to use git for development What is git? What is a SCM System?
More informationfpm-cookery Documentation
fpm-cookery Documentation Release 0.33.0 Bernd Ahlers Jun 10, 2018 Contents 1 Features 3 2 Documentation Contents 5 2.1 Getting Started.............................................. 5 2.2 Using Hiera................................................
More informationCS 520: VCS and Git. Intermediate Topics Ben Kushigian
CS 520: VCS and Git Intermediate Topics Ben Kushigian https://people.cs.umass.edu/~rjust/courses/2017fall/cs520/2017_09_19.zip Our Goal Our Goal (Overture) Overview the basics of Git w/ an eye towards
More informationWe are ready to serve Latest Testing Trends, Are you ready to learn?? New Batches Info
We are ready to serve Latest Testing Trends, Are you ready to learn?? New Batches Info START DATE : TIMINGS : DURATION : TYPE OF BATCH : FEE : FACULTY NAME : LAB TIMINGS : PH NO: 9963799240, 040-40025423
More informationCORD How to build a POD and automate deployments. #OpenCORD
CORD How to build a POD and automate deployments Full POD: definition The minimum amount of hardware that can be used to perform a full test of the current CORD features Mgmt L2 switch switch Tricks Avoid
More informationplatform 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 informationGit Basi, workflow e concetti avanzati (pt2)
Git Basi, workflow e concetti avanzati (pt2) Andrea Fornaia, Ph.D. Department of Mathema.cs and Computer Science University of Catania Viale A.Doria, 6-95125 Catania Italy fornaia@dmi.unict.it hfp://www.cs.unict.it/~fornaia/
More informationOXID eshop developer documentation
OXID eshop developer documentation Release 1.0.0 OXID esales AG Oct 26, 2017 Contents 1 Table of Contents 3 1.1 Getting started.............................................. 3 1.1.1 Environment preparation....................................
More informatione2 factory the emlix Embedded Build Framework
e2 factory the emlix Embedded Build Framework Agenda Motivation Basic Concepts Design and Implementation Working with e2 factory e2 factory Motivation Motivation Development Tools Source Code Management
More informationAPEX Installation Guide. Sven van der Meer, Liam Fallon, John Keeney. Version SNAPSHOT, T16:01:13Z
APEX Installation Guide Sven van der Meer, Liam Fallon, John Keeney Version 2.0.0-SNAPSHOT, 2018-10-10T16:01:13Z Table of Contents 1. Requirements............................................................................................
More informationCONTINUOUS INTEGRATION CONTINUOUS DELIVERY
USING KUBERNETES FOR CONTINUOUS INTEGRATION AND CONTINUOUS DELIVERY Carlos Sanchez csanchez.org / @csanchez ABOUT ME Engineer @ CloudBees, Scaling Jenkins Author of Jenkins Kubernetes plugin Contributor
More informationCon$nuous Integra$on Development Environment. Kovács Gábor
Con$nuous Integra$on Development Environment Kovács Gábor kovacsg@tmit.bme.hu Before we start anything Select a language Set up conven$ons Select development tools Set up development environment Set up
More informationThink Small to Scale Big
Think Small to Scale Big Intro to Containers for the Datacenter Admin Pete Zerger Principal Program Manager, MVP pete.zerger@cireson.com Cireson Lee Berg Blog, e-mail address, title Company Pete Zerger
More informationINDIGO PAAS TUTORIAL. ! Marica Antonacci RIA INFN-Bari
INDIGO PAAS TUTORIAL RIA-653549! Marica Antonacci!! marica.antonacci@ba.infn.it! INFN-Bari INDIGO PAAS Tutorial Introductory Concepts TOSCA Ansible Docker Orchestrator APIs INDIGO TOSCA custom types and
More informationPlatform Migrator Technical Report TR
Platform Migrator Technical Report TR2018-990 Munir Contractor mmc691@nyu.edu Christophe Pradal christophe.pradal@inria.fr Dennis Shasha shasha@cs.nyu.edu May 12, 2018 CONTENTS: 1 Abstract 4 2 Platform
More informationBuilding Tizen Development Environment
Building Tizen Development Environment Minsoo Ryu Real-Time Computing and Communications Lab. Hanyang University msryu@hanyang.ac.kr Tizen 2.3 Development Environment Target hardware device Tizen Reference
More informationWhat 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@jonahhorowitz. Configuration Management is an anti-pattern
Configuration Management is an anti-pattern jonah@laptop$ cvs update website jonah@laptop$ tar zcvf website.tar.gz website jonah@laptop$ scp website.tar.gz root@server1:/var/ something/ jonah@laptop$ ssh
More informationAutomating All The Things. Sebastian Feldmann
Automating All The Things Sebastian Feldmann Automation "Automate until the job is boring as hell" Automation System Configuration Software Deployment Software Preparation Putting it all together App deployment,
More informationDEVOPS TRAINING COURSE CONTENT
DEVOPS TRAINING COURSE CONTENT SECTION 1 Introduction to DevOps Certification What is DevOps? Why DevOps? Benefits of DevOps Overview of DevOps SECTION 2- Provisioning Vargant-What is vagrant-compare with
More informationWorking 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 informationA BASIC UNDERSTANDING OF VERSION CONTROL
A BASIC UNDERSTANDING OF VERSION CONTROL DID YOU EVER DO THIS? DID YOU EVER DO THIS? DID YOU EVER DO THIS? DID YOU EVER DO THIS? DID YOU EVER DO THIS? DID YOU EVER DO THIS? DID YOU EVER DO THIS? DID YOU
More informationTechnical Manual. Software Quality Analysis as a Service (SQUAAD) Team No.1. Implementers: Aleksandr Chernousov Chris Harman Supicha Phadungslip
Technical Manual Software Quality Analysis as a Service (SQUAAD) Team No.1 Implementers: Aleksandr Chernousov Chris Harman Supicha Phadungslip Testers: Kavneet Kaur Reza Khazali George Llames Sahar Pure
More informationVersion control. what is version control? setting up Git simple command-line usage Git basics
Version control what is version control? setting up Git simple command-line usage Git basics Version control - intro ensure we keep track of changes, updates, contributions, suggested mods... could try
More informationStep 1: Setup a Gitlab account
Most of us agree that Continuous Integration (CI), Continuous Delivery (CD), cloud infrastructure, test automation, and configuration management make up the basics of devops. Depending on the scale of
More informationLecture 01 - Working with Linux Servers and Git
Jan. 9, 2018 Working with Linux Servers: SSH SSH (named for Secure SHell) is a protocol commonly used for remote login. You can use it from a command line interface with the following syntax ssh username@server_url
More informationFlatpak a technical walk-through. Alexander Larsson, Red Hat
Flatpak a technical walk-through Alexander Larsson, Red Hat What is Flatpak? apps for the Linux Desktop Distribute your app Run it anywhere Build in anywhere Run it sandboxed How is this different from
More informationGIT DISTRIBUTED IS THE NEW CENTRALISED
GIT DISTRIBUTED IS THE NEW CENTRALISED BEGINNER WORKSHOP FETCH YOURSELF LAPTOP INSTALLING linux: sudo apt-get install git linux: sudo yum install git osx: brew install git osx: macports install git windows:
More informationSometimes Tools Matter. John E. Vincent DevOpsDays Goteborg 2011
Sometimes Tools Matter John E. Vincent DevOpsDays Goteborg 2011 We all know about DevOps We all know about DevOps I R DEV! I R OPS! So what's the big deal? With XXXXX you are be able to do easily common
More informationAnsible Cookbook 2014
René Moser Tue Nov 25 23:13:45 UTC 2014 1 Contents Contents Intro 4 Basics 5 How do I use all hosts data in my play or template? 6 Solution................................................... 6 Explanation.................................................
More informationModern and Fast: A New Wave of Database and Java in the Cloud. Joost Pronk Van Hoogeveen Lead Product Manager, Oracle
Modern and Fast: A New Wave of Database and Java in the Cloud Joost Pronk Van Hoogeveen Lead Product Manager, Oracle Scott Lynn Director of Product Management, Oracle Linux and Oracle Solaris, Oracle October
More informationUsing git to download and update BOUT++
ER Meeting 14th Sept 2015 1/28 Using git to download and update BOUT++ Peter Hill ER Meeting 14th Sept 2015 2/28 Outline What is git? Getting git Basic git usage Getting BOUT++ Compiling BOUT++ Running
More informationLSST software stack and deployment on other architectures. William O Mullane for Andy Connolly with material from Owen Boberg
LSST software stack and deployment on other architectures William O Mullane for Andy Connolly with material from Owen Boberg Containers and Docker Packaged piece of software with complete file system it
More informationa. puppet should point to master (i.e., append puppet to line with master in it. Use a text editor like Vim.
Head Node Make sure that you have completed the section on Precursor Steps and Storage. Key parts of that are necessary for you to continue on this. If you have issues, please let an instructor know to
More informationHowto: CVS to Git Efficient Multi-Module CVS Migration
Howto: CVS to Git Efficient Multi-Module CVS Migration Simon Cook Embecosm Application Note 11. Issue 1 Publication date February 2013 Legal Notice This work is licensed under the Creative Commons Attribution
More informationDevOps Course Content
Introduction to DevOps: Background Ingredients of DevOps DevOps principles Who has adopted? Mirage or Reality? Challenges, Domain specific Technology specific DevOps Toolchain (Practices and Tools) SDLC
More informationIBM z Systems Development and Test Environment Tools User's Guide IBM
IBM z Systems Development and Test Environment Tools User's Guide IBM ii IBM z Systems Development and Test Environment Tools User's Guide Contents Chapter 1. Overview......... 1 Introduction..............
More informationThis tutorial introduces you to FuelPHP framework and makes you comfortable with its various components.
About the Tutorial FuelPHP is an open source web application framework, designed for developers who need a simple and elegant toolkit to create full-featured web applications. The development of FuelPHP
More informationswiftenv Documentation
swiftenv Documentation Release 1.3.0 Kyle Fuller Sep 27, 2017 Contents 1 The User Guide 3 1.1 Installation................................................ 3 1.2 Getting Started..............................................
More informationCMSilex Documentation
CMSilex Documentation Release 0.1 Leigh Murray December 01, 2016 Contents 1 Introduction 3 2 Usage 5 2.1 Installation................................................ 5 2.2 Bootstrap.................................................
More informationAALOK INSTITUTE. DevOps Training
DevOps Training Duration: 40Hrs (8 Hours per Day * 5 Days) DevOps Syllabus 1. What is DevOps? a. History of DevOps? b. How does DevOps work anyways? c. Principle of DevOps: d. DevOps combines the best
More informationBPPM Patrol Agent Installation Steps on Linux and Automation Integration
BPPM Patrol Agent Installation Steps on Linux and Automation Integration Author: Karlis Peterson, Software Consultant, BMC Software Version: 1.0 Date: May 12, 2013 DISCLAIMER NOTICE This is Field Developed
More informationContinuous Integration using Docker & Jenkins
Jenkins LinuxCon Europe 2014 October 13-15, 2014 Mattias Giese Solutions Architect giese@b1-systems.de - Linux/Open Source Consulting, Training, Support & Development Introducing B1 Systems founded in
More informationAWS Course Syllabus. Linux Fundamentals. Installation and Initialization:
AWS Course Syllabus Linux Fundamentals Installation and Initialization: Installation, Package Selection Anatomy of a Kickstart File, Command line Introduction to Bash Shell System Initialization, Starting
More informationNiv Mizrahi. VP github.com/nivm
Python Packaging Niv Mizrahi VP R&D @ emedgene @ravinizme github.com/nivm Python We Love Python Python The syntax is simple and expressive, it has tons of open source modules and frameworks and a great
More informationHg Tutorial. For : COP Object oriented Programming (Using C++) Biswas Parajuli
Hg Tutorial For : COP 3330. Object oriented Programming (Using C++) http://www.compgeom.com/~piyush/teach/3330 Biswas Parajuli Need for Version Control http://hginit.com/01.html Repository Working directory:
More information