Can you upgrade to Puppet 4.x? PuppetCamp Düsseldorf Martin Alfke

Size: px
Start display at page:

Download "Can you upgrade to Puppet 4.x? PuppetCamp Düsseldorf Martin Alfke"

Transcription

1 Can you upgrade to Puppet 4.x? PuppetCamp Düsseldorf Martin Alfke

2 About me Martin Alfke Berlin/Germany Freelancer / Trainer PuppetLabs Training Partner Puppet User Group Berlin

3 Poll Using Puppet 2.x?

4 Poll Using Puppet 2.x? Using Puppet 3.x?

5 Agenda Why upgrading at all? Is your code still working? How to upgrading Puppet? What brings Puppet 4?

6 Why do I need to bother? Fast releases Best Practices Changing functionality Removing deprecated stuff Puppet 4 is coming

7 Why should I upgrade Puppet at all? Do you want security updates? Do you want to make use of new functionality? (e.g. automatic data bindings, environmentpath, future parser) Do you want to get support (community or enterprise)?

8 Is my Puppet DSL code still working on new versions? Your code was developed some years ago and is still running unmodified Your code was written on old best practices and does not follow new style guide You do not check your Puppet runs for deprecation warnings (or do you?)

9 What to look for?

10 BAD Best practice Do you inherit from inherited classes? Do you still use import? Do you modify remote modules? Do you access non-local variables without scope names?

11 BAD Best practice Stop doing multiple levels of inheritance class foo { class foo::bar inherits foo { class foo::baz inherits foo::bar { class foo::foobar inherits foo::baz {

12 BAD Best practice Stop doing inheritance at all class foo { class foo::bar inherits foo { class foo::baz inherits foo { class foo::foobar inherits foo {

13 Best practice Restrict Inheritance In most cases you can use parameterised classes instead. Only one kind of inheritance is proven good practice: inherit from module params.pp class ssh ( $server = $ssh::params::server, $client = $ssh::params::client, $x11fwd = false, ) inherits ssh::params { class { ssh::params:: server => false, x11fwd => true, BETTER

14 BAD Best practice Stop importing # foo/manifests/init.pp class foo { import bar.pp # foo/manifests/bar.pp class foo::baz { # foo/manifests/baz.pp class foo::baz { Which class foo::baz will be used?

15 Best practice Use include In most cases you can make use of the puppet autoloader and you can use include. # foo/manifests/init.pp class foo { include foo::baz # foo/manifests/baz.pp class foo::baz { BETTER

16 BAD Best practice Stop modifying remote modules Take remote modules as a software provided by others. Are you also patching apache?

17 Best practice Co-Work on remote modules Do a PR if you want improvements. Keep your remote modules upgradeable. BETTER

18 BAD Best practice Stop using non-local variables without scope class foo ( $bar = baz ) { class foo::baz { notify { $bar:

19 Best practice Start using non-local variables with scope class foo ( $bar ) { class foo::baz { notify { $foo::bar: BETTER

20 BAD Best practice Stop using un-scoped variables in templates key = <%= var %>

21 Best practice Start using scoped variables in templates key = %> BETTER

22 BAD Best practice Stop using factor variables without top-scope class foo { notify { We are on OS: $operatingsystem : class foo::baz { if $is_virtual { notify { We are running on $virtual virtualisation : else { notify { We are running on hardware: $productname :

23 Best practice Start using factor variables with top-scope class foo { notify { We are on OS: ${::operatingsystem : class foo::baz { if $::is_virtual { notify { We are running on ${::virtual virtualisation : else { notify { We are running on hardware: ${::productname : BETTER

24 BAD Best practice Stop not doing data validation class foo ( $server = hiera( server, localhost ) ){ notify { We will use Server: ${server :

25 Best practice Start doing data validation class foo ( $server = hiera( server, localhost ) ){ # validate_string is a function from stdlib validate_string($server) notify { We will use Server: ${server : BETTER

26 Remote modules Do foreign modules support your version? Newer Puppet versions have new function attributes (arity) New foreign module versions might need newer modules not supported by your Puppet version

27 Remote modules Check Puppetfile / metadata.json for requirements Test prior upgrading in production

28 How can I test my actual Puppet DSL code?

29 How can I test my actual Puppet DSL code? Syntax/Semantic check puppet parser validate / puppet-syntax / puppetlint Unit test rspec-puppet Integration test beaker, vagrant, serverspec,

30 Simple rspec upgrade check

31 Simple rspec upgrade check Add rspec tests to all your modules and run them locally Use rvm or rbenv to choose between ruby versions Provide puppet version to verify in Gemfile Run spec tests locally and verify results

32 Automatic rspec upgrade check

33 Automatic rspec upgrade check Install a CI-Server (Jenkins, GO, Teamcity, ) and add build steps Add git commit hooks to identify changes in repositories Run rspec tests automatically

34 Simple Puppet upgrade test

35 Simple Puppet upgrade test Install Puppet tarball in a separate directory on your master Start puppet master manually using RUBYLIB or ruby -I on another port ( masterport 8141) Test run from a single node with noop against the new port

36 Simple Puppet upgrade test Example: additional Puppet Master process: tar zxf puppet tar.gz -C /opt/puppet ruby1.8 -I /opt/puppet-3.7.1/lib /opt/puppet-3.7.1/bin/puppet master \ nodaemonize masterport=8150 pidfile=/tmp/puppetmaster.pid Example: Agent run against additional Puppet Master process: puppet agent test masterport 8150

37 Demo

38 Puppet 4 Major update Removes deprecated functionality New language features

39 Puppet 4 Deprecated in Puppet 4: Ruby DSL node inheritance - use roles/profiles instead upper case variable names variable with underscore in first position references to classes using upper case name/title hypens and periods in names

40 Puppet 4 New in Puppet 4: Strict variable naming and lookup (will become mandatory in Puppet 5) Variable type validation Boolean conversion ( -> true instead of false) Environmentpath Functions in Puppet New function API

41 You can upgrade to Puppet 4.x Thank you. Martin Alfke

PUPPET MODULES: A HOLISTIC APPROACH

PUPPET MODULES: A HOLISTIC APPROACH PUPPET MODULES: A HOLISTIC APPROACH PuppetCamp Geneva 2012 Alessandro Franceschi PUPPET @ LAB 42 2007 - Meet Puppet. Managed the Bank of Italy webfarm 2008 - First generation of Lab42 Puppet Modules 2009

More information

Being a puppet master

Being a puppet master Being a puppet master More money, more time, more happiness, less work Thomas Merkel http://www.flickr.com/photos/serenaseblu/5062987760/ Agenda Overview Organize the master Modules Resources

More information

A power point by R Tyler Croy

A power point by R Tyler Croy A power point by R Tyler Croy Mr. Kanies 6 th Period GitHub Decentral High School 2014 http://tiny.cc/mrkaniesisthebest Who is Tyler! GitHub Decentral High Senior (GO CATS!) Member of the Ruby Pep Band

More information

Testing your puppet code

Testing your puppet code Libre Software Meeting 2013 July 10, 2013 1 2 Style and linting Catalogs 3 4 Homework sysadmin @ inuits open-source defender for 7+ years devops believer @roidelapluie on twitter/github Infrastructure

More information

Lecture 3. Miscellaneous Ruby and Testing 1 / 48

Lecture 3. Miscellaneous Ruby and Testing 1 / 48 Lecture 3 Miscellaneous Ruby and Testing 1 / 48 Homework 1 Grades were released! TAs provided feedback on best practices, but did not take off points Keep the comments in mind for future assignments! Any

More information

PUPPET. Use at General Mills

PUPPET. Use at General Mills PUPPET Use at General Mills Preface HP UX platform at GMI is 15+ years old Consolidated Superdome architecture today Moving enterprise apps to RHEL6 Oracle SAP BW/BI Warehouse Management Short migration

More information

Lecture 3. Miscellaneous Ruby and Testing 1 / 40

Lecture 3. Miscellaneous Ruby and Testing 1 / 40 Lecture 3 Miscellaneous Ruby and Testing 1 / 40 Homework 1 Grades were released! TAs provided feedback on best practices, but did not take off points Keep the comments in mind for future assignments! Any

More information

Continuous Integration using Docker & Jenkins

Continuous 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 information

James Turnbull

James Turnbull State of the Nation James Turnbull james@puppetlabs.com Where we were Puppet user mailing list membership was 3000 With about 600 messages a month The #puppet IRC channel averaged 400 people Puppet on

More information

Configuration Management with Puppet. Introduction

Configuration Management with Puppet. Introduction Configuration Management with Puppet Introduction What is Puppet is a configuration management system is a programming language offers a Client/Server architecture has a huge community widely used in the

More information

Active System Manager Release 8.2 SDK Reference Guide

Active System Manager Release 8.2 SDK Reference Guide Active System Manager Release 8.2 SDK Reference Guide Notes, cautions, and warnings NOTE: A NOTE indicates important information that helps you make better use of your computer. CAUTION: A CAUTION indicates

More information

Integrating the Cloud with Puppet. Tuesday, February 26, 13

Integrating the Cloud with Puppet. Tuesday, February 26, 13 Integrating the Cloud with Puppet About me: Dan Bode Some Dude at PuppetLabs @bodepd bodepd freenode Who is this talk for? Cloud Users Puppet beginners It will cover why integrate? explanation of

More information

DevOps Course Content

DevOps 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 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

Treating Deployments as Code with Puppet and the Atlassian Toolsuite Puppet Camp, Geneva

Treating Deployments as Code with Puppet and the Atlassian Toolsuite Puppet Camp, Geneva Treating Deployments as Code with Puppet and the Atlassian Toolsuite Christoph Leithner Who is celix? Puppet Labs Partner Atlassian Expert IT Service Management (ITSM) Continuous Deployment und DevOps

More information

An Introduction to the Puppet Ecosystem

An Introduction to the Puppet Ecosystem An Introduction to the Puppet Ecosystem Trevor Vaughan - Onyx Point, Inc. License: Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0) 0 Onyx Point, Inc. Puppet Labs and Red Hat Partner Government Contracting

More information

IT Automation with Puppet

IT Automation with Puppet IT Automation with Puppet Romain Tartière BSDCan 2018 University of Ottawa Ottawa, Canada June 9 th, 2018 Photo: Ollivier Robert Romain Tartière FreeBSD user since 2002 (I guess FreeBSD

More information

Syntax Warnings Language-Integrated Nitpicking

Syntax Warnings Language-Integrated Nitpicking Syntax Warnings Language-Integrated Nitpicking 1 foo.rkt #lang racket/base (require "util.rkt" racket/match (for-syntax "macro-util.rkt") "macros.rkt" racket/vector (for-syntax "macro-util-more.rkt") (for-template

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

DevOps Technologies. for Deployment

DevOps Technologies. for Deployment DevOps Technologies for Deployment DevOps is the blending of tasks performed by a company's application development and systems operations teams. The term DevOps is being used in several ways. In its most

More information

Lecture 1. Basic Ruby 1 / 61

Lecture 1. Basic Ruby 1 / 61 Lecture 1 Basic Ruby 1 / 61 What does this do? 3.times do print 'Hello, world!' end 2 / 61 Why Ruby? Optimized for programmer happiness Used for Ruby on Rails Very popular web framework 3 / 61 Course Policies

More information

Configuration Management - Using Puppet. lctseng / Liang-Chi Tseng

Configuration 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 information

RSpec Core Project: RSpec Core 2.11 Publisher: RSpec. Issues. Open Feedback Dialog. rspec-core provides the structure for RSpec code examples:

RSpec Core Project: RSpec Core 2.11 Publisher: RSpec. Issues. Open Feedback Dialog. rspec-core provides the structure for RSpec code examples: Open Feedback Dialog Project: RSpec Core 2.11 Publisher: RSpec RSpec Core 2.11 rspec-core provides the structure for RSpec code examples: describe Account do it "has a balance of zero when first opened"

More information

Introduction to Ruby on Rails

Introduction to Ruby on Rails Introduction to Ruby on Rails Keven Richly keven.richly@hpi.de Software Engineering II WS 2017/18 Prof. Plattner, Dr. Uflacker Enterprise Platform and Integration Concepts group Introduction to Ruby on

More information

Introduction to Ruby on Rails

Introduction to Ruby on Rails Introduction to Ruby on Rails Ralf Teusner ralf.teusner@hpi.de Software Engineering II WS 2018/19 Prof. Plattner, Dr. Uflacker Enterprise Platform and Integration Concepts group Introduction to Ruby on

More information

RedGate - Enterprise Integration Server. MSE Project - Phase I

RedGate - Enterprise Integration Server. MSE Project - Phase I RedGate - Enterprise Integration Server MSE Project - Phase I Motivation 2 Motivation 2 Motivation Asynchronous integration is hard on Rails. 2 RedGate 3 RedGate Enterprise Integration Server 3 RedGate

More information

Introduction to Ruby on Rails

Introduction to Ruby on Rails Introduction to Ruby on Rails Software Engineering II WS 2016/17 Arian Treffer arian.treffer@hpi.de Prof. Plattner, Dr. Uflacker Enterprise Platform and Integration Concepts group Introduction to Ruby

More information

Scala, Your Next Programming Language

Scala, Your Next Programming Language Scala, Your Next Programming Language (or if it is good enough for Twitter, it is good enough for me) WORLDCOMP 2011 By Dr. Mark C. Lewis Trinity University Disclaimer I am writing a Scala textbook that

More information

Advanced Puppet Topics. Ken Barber Professional Services Engineer

Advanced Puppet Topics. Ken Barber Professional Services Engineer Advanced Puppet Topics Ken Barber Professional Services Engineer aka My favourite puppet features Topics Standalone Puppet Ruby DSL extlookup dotty output External Node Classification Puppetdocs Standalone

More information

Red Hat Satellite 6.3

Red Hat Satellite 6.3 Red Hat Satellite 6.3 Puppet Guide A guide to building your own Puppet module and importing it into Satellite 6 Last Updated: 2018-06-15 Red Hat Satellite 6.3 Puppet Guide A guide to building your own

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

Pulp Puppet Support Documentation

Pulp Puppet Support Documentation Pulp Puppet Support Documentation Release 2.6.4 Pulp Team September 24, 2015 Contents 1 User Guide 1 1.1 Introduction............................................... 1 1.2 Release Notes..............................................

More information

Jenkins User Conference Israel. #jenkinsconf. CI / Liveperson. Gidi Samuels. July 16, #jenkinsconf

Jenkins User Conference Israel. #jenkinsconf. CI / Liveperson. Gidi Samuels.  July 16, #jenkinsconf Jenkins User Conference Israel #jenkinsconf CI / CD @ Liveperson Gidi Samuels www.liveperson.com July 16, 2014 #jenkinsconf About Myself Lead the CI Team at Liveperson 3 years in Liveperson About Myself

More information

Collaborative Communication. Martin Alfke

Collaborative Communication. Martin Alfke Collaborative Communication Martin Alfke about me started as SysAdmin Slackware on 15 floppy disks Puppet since 2007 Puppet Certified Professional, Instructor and Consultant Infrastructure

More information

Git. Charles J. Geyer School of Statistics University of Minnesota. Stat 8054 Lecture Notes

Git. Charles J. Geyer School of Statistics University of Minnesota. Stat 8054 Lecture Notes Git Charles J. Geyer School of Statistics University of Minnesota Stat 8054 Lecture Notes 1 Before Anything Else Tell git who you are. git config --global user.name "Charles J. Geyer" git config --global

More information

fpm-cookery Documentation

fpm-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 information

Package remotes. December 21, 2017

Package remotes. December 21, 2017 Package remotes December 21, 2017 Title R Package Installation from Remote Repositories, Including 'GitHub' Version 1.1.1 Download and install R packages stored in 'GitHub', 'BitBucket', or plain 'subversion'

More information

Satellite 6 and Puppet. Michael Heldebrant Senior Cloud Infrastructure Solutions Architect Red Hat April 2015

Satellite 6 and Puppet. Michael Heldebrant Senior Cloud Infrastructure Solutions Architect Red Hat April 2015 Satellite 6 and Puppet Michael Heldebrant Senior Cloud Infrastructure Solutions Architect Red Hat April 2015 AGENDA How does Satellite 6 manage puppet Steps to get modules available to hosts Parameters

More information

Infrastructure-as-Code and CI Infrastructure at Open Stack A look at one of the largest CI systems and system administration

Infrastructure-as-Code and CI Infrastructure at Open Stack A look at one of the largest CI systems and system administration Infrastructure-as-Code and CI Infrastructure at Open Stack A look at one of the largest CI systems and system administration Andreas Jaeger Product Manager SUSE aj@suse.com OpenStack Open source software

More information

Lecture 3. Miscellaneous Ruby and Testing

Lecture 3. Miscellaneous Ruby and Testing Lecture 3 Miscellaneous Ruby and Testing 1 Sublime Text Guide I wrote a quick Sublime Text Guide that will help with Rubocop offenses It ll walk you through: Using spaces instead of tabs by default Using

More information

Continuous Integration Ensemble / HealthShare Health Connect

Continuous Integration Ensemble / HealthShare Health Connect Continuous Integration Ensemble / HealthShare Health Connect The scope of IT within an organisation is largely related to automating Business processes. So why not automate IT processes for once? Version

More information

This tutorial will show you, how to use RSpec to test your code when building applications with Ruby.

This tutorial will show you, how to use RSpec to test your code when building applications with Ruby. About the Tutorial RSpec is a unit test framework for the Ruby programming language. RSpec is different than traditional xunit frameworks like JUnit because RSpec is a Behavior driven development tool.

More information

JetBrains TeamCity Comparison

JetBrains TeamCity Comparison JetBrains TeamCity Comparison TeamCity is a continuous integration and continuous delivery server developed by JetBrains. It provides out-of-the-box continuous unit testing, code quality analysis, and

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

An Introduction to Puppet Enterprise

An Introduction to Puppet Enterprise An Introduction to Puppet Enterprise Exercise & Lab Guide Puppet Education www.puppetlabs.com/education 2013 Puppet Labs 2013 Puppet Labs Lab 3.1: Pre-installation Objective: Assign a hostname to your

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

Cucumber 3.0 and Beyond

Cucumber 3.0 and Beyond Cucumber 3.0 and Beyond Thomas Haver tjhaver@gmail.com Abstract Cucumber is a tool that supports Behavior Driven Development (BDD), a software development practice that promotes collaboration. Cucumber

More information

Preparing for Jenkins Certification

Preparing for Jenkins Certification Preparing for Jenkins Certification Agenda Jenkins Certification Prerequisites What exam do you plan to take? How to schedule and register for the test? Structure of the exams Plugins Organization of the

More information

Red Hat Satellite 6.2

Red Hat Satellite 6.2 Red Hat Satellite 6.2 Puppet Guide A guide to building your own Puppet module and importing it into Satellite 6 Last Updated: 2018-03-08 Red Hat Satellite 6.2 Puppet Guide A guide to building your own

More information

DevOps Online Training

DevOps 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 information

A WEB-BASED SOLUTION TO VISUALIZE OPERATIONAL MONITORING LINUX CLUSTER FOR THE PROTODUNE DATA QUALITY MONITORING CLUSTER

A WEB-BASED SOLUTION TO VISUALIZE OPERATIONAL MONITORING LINUX CLUSTER FOR THE PROTODUNE DATA QUALITY MONITORING CLUSTER A WEB-BASED SOLUTION TO VISUALIZE OPERATIONAL MONITORING LINUX CLUSTER FOR THE PROTODUNE DATA QUALITY MONITORING CLUSTER BADISA MOSESANE EP-NU Supervisor: Nektarios Benekos Department: EP-NU Table of Contents

More information

openresty / array-var-nginx-module

openresty / array-var-nginx-module 1 of 6 2/17/2015 11:20 AM Explore Gist Blog Help itpp16 + openresty / array-var-nginx-module 4 22 4 Add support for array variables to nginx config files 47 commits 1 branch 4 releases 2 contributors array-var-nginx-module

More information

We 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 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 information

Network Automation: Ansible 101

Network Automation: Ansible 101 Network Automation: Ansible 101 APRICOT - Feb 28th, 2017 Bronwyn Lewis and Matt Peterson Our assumptions New to the world of DevOps No prior Ansible knowledge Want to stop hand-crafting your network configs

More information

SublimeLinter Documentation

SublimeLinter Documentation SublimeLinter Documentation Release 4.0.0 The SublimeLinter Community Dec 18, 2018 User Documentation 1 Installation 3 2 Settings 5 2.1 Settings stack............................................... 5

More information

DevOps examples on NonStop Tools Overview. Cor Geboers, ATC Consultant

DevOps examples on NonStop Tools Overview. Cor Geboers, ATC Consultant DevOps examples on NonStop Tools Overview Cor Geboers, ATC Consultant About me Cor Geboers Senior Consultant in NonStop ATC, based in Belgium 35+ years in IT development and support 25+ years NonStop experience

More information

DEVOPS COURSE CONTENT

DEVOPS 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 information

Lindsay

Lindsay Islands Who is this guy? Lindsay Holmwood @auxesis Engineering manager @ Bulletproof Networks Visage Flapjack Puppet user since 2006 BULLETPROOF IaaS & Managed Services Movember Australian Museum Rebel

More information

We re all developers now

We re all developers now We re all developers now Adventures in Infrastructure as Code Julian Simpson, The Build Doctor Ltd Poll Poll Are you using Puppet or Chef? Poll Are you using Puppet or Chef? Do you hate Ruby on Rails Poll

More information

news Puppet Theatre Server Management for Dummies... the smarter way of information

news Puppet Theatre Server Management for Dummies... the smarter way of information Puppet Theatre Server Management for Dummies... the smarter way of information page 2/7 In the area of systems for the automatic setup and operation of large-scale landscapes, one tool in particular has

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

Ansible Cookbook 2014

Ansible 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 information

DEVOPS TRAINING COURSE CONTENT

DEVOPS 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 information

Software Engineering 2 (SWT2) Chapter 2: Introduction into Ruby on Rails

Software Engineering 2 (SWT2) Chapter 2: Introduction into Ruby on Rails Software Engineering 2 (SWT2) Chapter 2: Introduction into Ruby on Rails Agenda 2 Ruby & Ruby on Rails What is Ruby on Rails? A few words about Ruby Core components RESTful architecture Active Record Your

More information

Bitte decken Sie die schraffierte Fläche mit einem Bild ab. Please cover the shaded area with a picture. (24,4 x 7,6 cm)

Bitte decken Sie die schraffierte Fläche mit einem Bild ab. Please cover the shaded area with a picture. (24,4 x 7,6 cm) Bitte decken Sie die schraffierte Fläche mit einem Bild ab. Please cover the shaded area with a picture. (24,4 x 7,6 cm) Continuous Integration / Continuous Testing Seminary IIC Requirements Java SE Runtime

More information

Download, Installation, and Support

Download, Installation, and Support SCIRun (BioPSE/PowerApps) Download, Installation, and Support J. Davison de St. Germain dav@sci.utah.edu 801-581-4078 Aug. 21, 2006 Two Places to Get SCIRun Latest Release - SCI Website (Version 1.24.2)

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

Nick Senger & Jesse van den Kieboom

Nick Senger & Jesse van den Kieboom Using TypeScript with the ArcGIS API for JavaScript Nick Senger & Jesse van den Kieboom Live version of this presentation is available on: https://jkieboom.github.io/devsummit-palm-springs-2018/presentations/typescript-arcgis-js-api

More information

MANAGING MESOS, DOCKER, AND CHRONOS WITH PUPPET

MANAGING MESOS, DOCKER, AND CHRONOS WITH PUPPET Roger Ignazio PuppetConf 2015 MANAGING MESOS, DOCKER, AND CHRONOS WITH PUPPET 2015 Mesosphere, Inc. All Rights Reserved. 1 $(whoami) ABOUT ME Roger Ignazio Infrastructure Automation Engineer @ Mesosphere

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

SUSE Manager and Salt

SUSE Manager and Salt SUSE Manager and Salt The Three Cs of the IT Transformation Challenge Transform your approach to infrastructure to enable the business to capitalize on new innovations of data Cost Complexity Compliance

More information

Advanced JavaScript. Konstantin Käfer. Konstantin Käfer

Advanced JavaScript. Konstantin Käfer. Konstantin Käfer Advanced JavaScript Contents 1. Why JavaScript? 2. Advanced Language Features 3. Patterns and Techniques 4. Debugging and Analyzing 1. Why JavaScript? Why JavaScript? Lightweight language No static type

More information

Components of a Puppet architecture

Components of a Puppet architecture Components of a Puppet architecture This tutorial has been taken from the second edition of Extending Puppet. Until January 9th you can pick it up for just $5. In fact - you can pick up any ebook or video

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

Optimizing LAMP Development with PHP5

Optimizing LAMP Development with PHP5 Optimizing LAMP Development with PHP5 Wednesday, November 9, 2005 Jamil Hassan Spain NCSSM Database Administrator March 12, 2005 Presentation Agenda Simple Upgrade Method to PHP5 Enterprise LAMP Development

More information

Chef. cd ~/scripts && find. -type f -name "*.sh" -exec rm -rf {} \; Wednesday, November 21, 12

Chef. cd ~/scripts && find. -type f -name *.sh -exec rm -rf {} \; Wednesday, November 21, 12 Chef cd ~/scripts && find. -type f -name "*.sh" -exec rm -rf {} \; You ve got a cloud. Now what? Problems What lots of people do now Manual Often error prone Slow Time Consuming Process Heavy I know, I

More information

Puppet. Configuring your systems so you don't have to... Frank Sweetser Senior Network Engineer WPI Network Operations and Security

Puppet. Configuring your systems so you don't have to... Frank Sweetser Senior Network Engineer WPI Network Operations and Security Puppet Configuring your systems so you don't have to... Frank Sweetser Senior Network Engineer WPI Network Operations and Security Installation Typical System Lifecycle Typical System Lifecycle Installation

More information

Puppet - Bug #11339 Class ordering bug?

Puppet - Bug #11339 Class ordering bug? Puppet - Bug #11339 Class ordering bug? 12/12/2011 08:56 am - Justin Honold Status: Closed Start date: 12/12/2011 Priority: Normal Due date: Assignee: % Done: 0% Category: language Estimated time: 0.00

More information

A JSON Data Processing Language. Audrey Copeland, Walter Meyer, Taimur Samee, Rizwan Syed

A JSON Data Processing Language. Audrey Copeland, Walter Meyer, Taimur Samee, Rizwan Syed A JSON Data Processing Language Audrey Copeland, Walter Meyer, Taimur Samee, Rizwan Syed Introduction Language design centered around the programmatic manipulation of JSON data and interacting with HTTP

More information

Puppet on Windows (Part 1 of?) Dimitri Ars [KPN] Maarten Bruntink [Itility]

Puppet on Windows (Part 1 of?) Dimitri Ars [KPN] Maarten Bruntink [Itility] Puppet on Windows (Part 1 of?) Dimitri Ars [KPN] Maarten Bruntink [Itility] 1 Agenda Why? Agents Available types and modules - Native types - Modules - Chocolatey DSC Development - Editors - Modules -

More information

This tutorial provides a basic understanding of the infrastructure and fundamental concepts of managing an infrastructure using Chef.

This 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 information

Look ma, no hands Jenkins Configuration-as-Code All Rights Reserved.

Look ma, no hands Jenkins Configuration-as-Code All Rights Reserved. Look ma, no hands Jenkins Configuration-as-Code 1 1 Who are we? Name: Ewelina Wilkosz Work: IT Consultant @ Praqma Previous experience: Software Developer @ Ericsson (6 years) in Krakow Tools I work with:

More information

EPHEMERAL DEVOPS: ADVENTURES IN MANAGING SHORT-LIVED SYSTEMS

EPHEMERAL DEVOPS: ADVENTURES IN MANAGING SHORT-LIVED SYSTEMS SESSION ID: CSV-W12 EPHEMERAL DEVOPS: ADVENTURES IN MANAGING SHORT-LIVED SYSTEMS Todd Carr DevOps Engineer Unity Technologies @frozenfoxx Who am I? DevOps Engineer at Unity Technologies Security Enthusiast

More information

GMusicProcurator Documentation

GMusicProcurator Documentation GMusicProcurator Documentation Release 0.5.0 Mark Lee Sep 27, 2017 Contents 1 Features 3 2 Table of Contents 5 2.1 Installation................................................ 5 2.1.1 Requirements..........................................

More information

Confire Documentation

Confire Documentation Confire Documentation Release 0.2.0 Benjamin Bengfort December 10, 2016 Contents 1 Features 3 2 Setup 5 3 Example Usage 7 4 Next Topics 9 5 About 17 Python Module Index 19 i ii Confire is a simple but

More information

Outline The three W s Overview of gits structure Using git Final stuff. Git. A fast distributed revision control system

Outline The three W s Overview of gits structure Using git Final stuff. Git. A fast distributed revision control system Git A fast distributed revision control system Nils Moschüring PhD Student (LMU) 1 The three W s What? Why? Workflow and nomenclature 2 Overview of gits structure Structure Branches 3 Using git Setting

More information

Who Moved My Module? 1

Who Moved My Module? 1 Who Moved My Module? 1 About Me Yoav Landman - JFrog s CTO and Co-Founder - Creator of the Artifactory Project - 13 years experience in commercial enterprise build and development environments 2 Agenda

More information

Continuous Integration INRIA

Continuous Integration INRIA Vincent Rouvreau - https://sed.saclay.inria.fr February 28, 2017 Contents 1 Preamble To go through this exercise, you will need to install : 1. Git (sudo apt-get install git sudo yum install git) 2. A

More information

#jenkinsconf. Managing jenkins with multiple components project. Jenkins User Conference Israel. Presenter Name Ohad Basan

#jenkinsconf. Managing jenkins with multiple components project. Jenkins User Conference Israel. Presenter Name Ohad Basan Jenkins User Conference Israel #jenkinsconf Managing jenkins with multiple components project Presenter Name Ohad Basan Presenter Company Www.redhat.com July 16, 2014 #jenkinsconf Who am I Ohad Basan CI

More information

Puppet Labs Modules - Feature #11050 firewall: RFE that ensure could support ignore.

Puppet Labs Modules - Feature #11050 firewall: RFE that ensure could support ignore. Puppet Labs Modules - Feature #11050 firewall: RFE that ensure could support ignore. 11/28/2011 05:16 am - Steve Traylen Status: Closed Start date: 11/28/2011 Priority: Normal Due date: Assignee: % Done:

More information

Scala Days 2018 You Are a Scala Contributor

Scala Days 2018 You Are a Scala Contributor Scala Days 2018 You Are a Scala Contributor Seth Tisue @SethTisue Scala team, Lightbend or you can be, if you want to. here s how. you are a Scala contributor If you open an issue If you comment on an

More information

DSL vs. Library API Shootout

DSL vs. Library API Shootout DSL vs. Library API Shootout Rich Unger Salesforce.com Jaroslav Tulach Oracle Agenda What do we mean by DSL? What do we mean by library? When is it good to use a DSL? When is it a bad idea? Evolution Versioning

More information

Git. A fast distributed revision control system. Nils Moschüring PhD Student (LMU)

Git. A fast distributed revision control system. Nils Moschüring PhD Student (LMU) Git A fast distributed revision control system Nils Moschüring PhD Student (LMU) Nils Moschüring PhD Student (LMU), Git 1 1 The three W s What? Why? Workflow and nomenclature 2 Overview of gits structure

More information

Jenkins CI for MacDevOps. Tim Sutton Concordia University, Faculty of Fine Arts Montreal

Jenkins CI for MacDevOps. Tim Sutton Concordia University, Faculty of Fine Arts Montreal Jenkins CI for MacDevOps Tim Sutton Concordia University, Faculty of Fine Arts Montreal A story svn update./configure make Hudson Jenkins git pull cd code/tools./make_munki_mpkg.sh munkibuilds.org Continuous

More information

Be smart. Think open source.

Be smart. Think open source. Foreman Basics Be smart. Think open source. Foreman - Basics Lifecycle management of physical and virtual machines made easy! Agenda Introduction to Foreman Architecture Setup Provisioning Configuration

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

ag.el Documentation Release 0.45 Wilfred Hughes

ag.el Documentation Release 0.45 Wilfred Hughes ag.el Documentation Release 0.45 Wilfred Hughes Feb 25, 2018 Contents 1 Installation 3 1.1 Operating System............................................ 3 1.2 Emacs..................................................

More information

Enterprise Manager Cloud Control 12c Release2 ( ) Installation

Enterprise Manager Cloud Control 12c Release2 ( ) Installation Enterprise Manager Cloud Control 12c Release2 (12.1.0.2) Installation 1 Agenda Facts about EM 12.1.0.2 EM12.1.0.2 Binaries New in EM 12.1.0.2 Install Installation Types and Methods Step by step demo Log

More information

Specter Documentation

Specter Documentation Specter Documentation Release 0.6.1 John Vrbanac Apr 09, 2017 Contents 1 Documentation 2 1.1 Using Specter............................................... 2 1.2 Writing Specter Tests..........................................

More information

Docker & Chef. Containers. Containers and Docker 8/4/14. Linux containers (LXC) Single operating system Multiple isolated, working configurations

Docker & Chef. Containers. Containers and Docker 8/4/14. Linux containers (LXC) Single operating system Multiple isolated, working configurations Docker & Chef Containers Linux containers (LXC) Single operating system Multiple isolated, working configurations Containers and Docker Open-source engine for container management Docker registry for sharing

More information