SlideShare une entreprise Scribd logo
1  sur  87
Télécharger pour lire hors ligne
(without introducing more risk)
The Future of Testing
Puppet Code
Puppet
Gareth Rushgrove
Who, What, Why, How
(without introducing more risk)
@garethr
(without introducing more risk)
Gareth Rushgrove
(without introducing more risk)
This Talk
What we’ll cover
- Why test Puppet anyway
- Existing Puppet testing tools
- Different users and usecases
- Future challenges
Gareth Rushgrove
Mainly a talk about problems,
rather than solutions
Gareth Rushgrove
Not a talk about how to test
Puppet code. Lot of existing
content on that subject
Gareth Rushgrove
(without introducing more risk)
Gareth Rushgrove
PuppetConf 2014
(without introducing more risk)
Gareth Rushgrove
Survey of 300 Puppet users
(without introducing more risk)
Gareth Rushgrove
(without introducing more risk)
Why Test Puppet
And a little history
Gareth Rushgrove
- You have lots of Puppet code
- You’re targeting a wide range of OS’s
- The Puppet language has more features
Gareth Rushgrove
(without introducing more risk)
Gareth Rushgrove
Lots of code
But how much is lots
Note that this just represents public
code on GitHub. Lots of private Puppet
code out there too
Gareth Rushgrove
(without introducing more risk)
Gareth Rushgrove
How many .pp files on GitHub?
SELECT COUNT(*)
FROM [puppet.puppet_files]
-- 489725
(without introducing more risk)
Gareth Rushgrove
How many lines of Puppet code?
SELECT
COUNT(line) total_lines
FROM (
SELECT SPLIT(content, 'n') AS line
FROM [puppet.puppet_content]
)
-- 6697099
(without introducing more risk)
Gareth Rushgrove
How big are .pp files?
SELECT QUANTILES(total_lines, 10) AS q
FROM (
SELECT
COUNT(line) total_lines
FROM (
SELECT SPLIT(content, 'n') AS line, id
FROM [puppet.puppet_content]
)
GROUP BY id
)
50% of Puppet files are 20 lines or less.
90% of Puppet files are 100 lines or less
Gareth Rushgrove
The largest Puppet file public on GitHub
has 25,238 lines
Gareth Rushgrove
(without introducing more risk)
Gareth Rushgrove
Mixed environments
So many platforms
Gareth Rushgrove
A third of respondents run more than
one OS on there development machine
Gareth Rushgrove
Gareth Rushgrove
60% of respondents run more than one
OS in production
Gareth Rushgrove
(without introducing more risk)
Gareth Rushgrove
The Puppet
language
Types, lambdas, iterators, functions
Gareth Rushgrove
(without introducing more risk)
Existing Tools
Providing some context
Gareth Rushgrove
(without introducing more risk)
Core tools
Common starting points
Gareth Rushgrove
(without introducing more risk)
Gareth Rushgrove
puppet-lint
(without introducing more risk)
Gareth Rushgrove
Style conformance
$ puppet-lint /etc/puppet/modules
foo/manifests/bar.pp - ERROR: trailing whitespace found on li
apache/manifests/server.pp - WARNING: variable not enclosed i
...
(without introducing more risk)
Gareth Rushgrove
rspec-puppet
(without introducing more risk)
Gareth Rushgrove
Unit tests for Puppet
it { is_expected.to compile }
it { is_expected.to contain_class('db') }
it do
is_expected.to contain_package('mysql-server')
.with_ensure('present')
end
it { is_expected.to have_exec_resource_count(0) }
(without introducing more risk)
Gareth Rushgrove
puppet-syntax
(without introducing more risk)
Gareth Rushgrove
Popular Puppet gems
SELECT package, COUNT(*) count
FROM (
SELECT REGEXP_EXTRACT(line, r'gem ['|"](.*)['|"]') packag
FROM (
SELECT SPLIT(content, 'n') line, id
FROM [puppet.gemfile_contents]
WHERE content CONTAINS 'gem' )
GROUP BY package, id
)
GROUP BY 1
ORDER BY count DESC
LIMIT 30;
(without introducing more risk)
Gareth Rushgrove
Popular gem results
puppetlabs_spec_helper 1157
puppet 1142
rake 1135
puppet-lint 768
beaker-rspec 610
rspec-puppet 576
metadata-json-lint 566
beaker 440
puppet-blacksmith 425
serverspec 359
(without introducing more risk)
Gareth Rushgrove
puppetlabs_spec_helper
(without introducing more risk)
Gareth Rushgrove
Advanced tools
Next steps
(without introducing more risk)
Gareth Rushgrove
beaker-rspec
(without introducing more risk)
Gareth Rushgrove
Serverspec
(without introducing more risk)
Gareth Rushgrove
rubocop
(without introducing more risk)
Gareth Rushgrove
Other tools
Alternative approaches
(without introducing more risk)
Gareth Rushgrove
puppet-catalog-test
(without introducing more risk)
Gareth Rushgrove
Test catalogue compilation
$ puppet-catalog-test -m modules -M site.pp
[INFO] Using puppet 3.0.2
[PASSED] foo (compile time: 0.168182 seconds)
[PASSED] default (compile time: 0.003451 seconds)
----------------------------------------
Compiled 2 catalogs in 0.1717 seconds (avg: 0.0858 seconds)
(without introducing more risk)
Gareth Rushgrove
Test Kitchen
(without introducing more risk)
Different Users
And different usecases
Gareth Rushgrove
Half of respondents regularly write
tests for Puppet code
Gareth Rushgrove
A quarter of respondents never write
tests for Puppet code
Gareth Rushgrove
The problem with a tool-centric
world view
Gareth Rushgrove
Understanding user needs means
starting with users
Gareth Rushgrove
Gareth Rushgrove
- The Vox Pupuli folks
- Lots of Puppet employees
- You in-house Puppet expert
- Custom functions
The module authors
The regular Puppet users
Gareth Rushgrove
- Roles and profiles
- Using Puppet weekly or more
- PuppetDB, Puppet Server
- Custom facts
The occasional Puppet user
Gareth Rushgrove
- Using Puppet as needed
- Basic Puppet code
- Hieradata
Today different types of Puppet users
have a very different experience
Gareth Rushgrove
Gareth Rushgrove
For those with no Ruby experience the
average was 2 out of 5
Gareth Rushgrove
For those with a little Ruby experience
the average was still only 2.5 out of 5
Gareth Rushgrove
Of the people who love the testing
experience 33% are self-described
power users of both Puppet and Ruby
Gareth Rushgrove
Gareth Rushgrove
But more than 50% of respondents have
little or no Ruby experience
Gareth Rushgrove
(without introducing more risk)
Challenges
What we need for the future
(without introducing more risk)
Gareth Rushgrove
Improved getting
started experience
Helping a new generation of users
- Getting started testing documentation
- Single entry point for users
- Opinionated workflow
Gareth Rushgrove
(without introducing more risk)
Gareth Rushgrove
Adopting
acceptance testing
Still too hard
27 of the 67 Serverspec users are not
using either Beaker or Test Kitchen.
Gareth Rushgrove
Only 5 of the Beaker (without rspec)
users are not also using beaker-rspec
Gareth Rushgrove
3 of the Test Kitchen users are also
using some flavour of Beaker
Gareth Rushgrove
So only 26% to 35% of respondents
are using an acceptance testing tool
with there Puppet code
Gareth Rushgrove
(without introducing more risk)
Gareth Rushgrove
Experience matters
Consistence interfaces
(without introducing more risk)
Gareth Rushgrove
Inconsistencies
$ puppet-lint vs rake lint vs rake validate
$ rake syntax vs puppet parser validate
$ rspec vs rake spec
$ BEAKER_destroy=no rake beaker vs beaker
We have a language style guide. What
about other Puppet user interfaces?
Gareth Rushgrove
(without introducing more risk)
Gareth Rushgrove
Ruby heritage
Ruby as a development environment
60% of respondents described
themselves as Puppet power users
Gareth Rushgrove
Only 12% of respondents described
themselves as Ruby power users. A
third of those work for Puppet!
Gareth Rushgrove
- More help with using Ruby for testing?
- Support for testing in other languages?
- Native Puppet support for testing?
- Containerised testing abstraction?
Gareth Rushgrove
(without introducing more risk)
Gareth Rushgrove
jordan/spec
(without introducing more risk)
Gareth Rushgrove
Test Puppet with Puppet
file { '/tmp/test':
ensure => present,
content => 'The file content',
}
assertion { 'that the file has the correct contents':
subject => File['/tmp/test'],
attribute => 'content',
expectation => 'The file content',
}
(without introducing more risk)
Conclusions
Where to go from here
Thanks to the community we have a
collection of powerful testing tools in the
Puppet ecosystem
Gareth Rushgrove
But we don’t have consistent user
interfaces or the opinionated workflows
useful for beginners
Gareth Rushgrove
Testing shouldn’t just be a
power user feature
Gareth Rushgrove
As a community we should talk
about design more often
Gareth Rushgrove
(without introducing more risk)
Gareth Rushgrove
https://goo.gl/forms/nchOp5hYdLLgmJ8z1
Gareth Rushgrove
(without introducing more risk)
Questions?
And thanks for listening

Contenu connexe

Tendances

20140406 loa days-tdd-with_puppet_tutorial
20140406 loa days-tdd-with_puppet_tutorial20140406 loa days-tdd-with_puppet_tutorial
20140406 loa days-tdd-with_puppet_tutorial
garrett honeycutt
 

Tendances (20)

Packaging perl (LPW2010)
Packaging perl (LPW2010)Packaging perl (LPW2010)
Packaging perl (LPW2010)
 
Modules of the twenties
Modules of the twentiesModules of the twenties
Modules of the twenties
 
Testing your puppet code
Testing your puppet codeTesting your puppet code
Testing your puppet code
 
Puppet evolutions
Puppet evolutionsPuppet evolutions
Puppet evolutions
 
Puppet Camp Dallas 2014: How Puppet Ops Rolls
Puppet Camp Dallas 2014: How Puppet Ops RollsPuppet Camp Dallas 2014: How Puppet Ops Rolls
Puppet Camp Dallas 2014: How Puppet Ops Rolls
 
Workshop: Know Before You Push 'Go': Using the Beaker Acceptance Test Framewo...
Workshop: Know Before You Push 'Go': Using the Beaker Acceptance Test Framewo...Workshop: Know Before You Push 'Go': Using the Beaker Acceptance Test Framewo...
Workshop: Know Before You Push 'Go': Using the Beaker Acceptance Test Framewo...
 
Logstash and friends
Logstash and friendsLogstash and friends
Logstash and friends
 
Puppet modules: An Holistic Approach
Puppet modules: An Holistic ApproachPuppet modules: An Holistic Approach
Puppet modules: An Holistic Approach
 
20140406 loa days-tdd-with_puppet_tutorial
20140406 loa days-tdd-with_puppet_tutorial20140406 loa days-tdd-with_puppet_tutorial
20140406 loa days-tdd-with_puppet_tutorial
 
Towards Continuous Deployment with Django
Towards Continuous Deployment with DjangoTowards Continuous Deployment with Django
Towards Continuous Deployment with Django
 
Packaging for the Maemo Platform
Packaging for the Maemo PlatformPackaging for the Maemo Platform
Packaging for the Maemo Platform
 
Testing for Ops: Going Beyond the Manifest - PuppetConf 2013
Testing for Ops: Going Beyond the Manifest - PuppetConf 2013Testing for Ops: Going Beyond the Manifest - PuppetConf 2013
Testing for Ops: Going Beyond the Manifest - PuppetConf 2013
 
Our Puppet Story (Linuxtag 2014)
Our Puppet Story (Linuxtag 2014)Our Puppet Story (Linuxtag 2014)
Our Puppet Story (Linuxtag 2014)
 
Essential applications management with Tiny Puppet
Essential applications management with Tiny PuppetEssential applications management with Tiny Puppet
Essential applications management with Tiny Puppet
 
Bootstrapping Puppet and Application Deployment - PuppetConf 2013
Bootstrapping Puppet and Application Deployment - PuppetConf 2013Bootstrapping Puppet and Application Deployment - PuppetConf 2013
Bootstrapping Puppet and Application Deployment - PuppetConf 2013
 
Postgresql 9.0 HA at RMLL 2012
Postgresql 9.0 HA at RMLL 2012Postgresql 9.0 HA at RMLL 2012
Postgresql 9.0 HA at RMLL 2012
 
Introduction to Griffon
Introduction to GriffonIntroduction to Griffon
Introduction to Griffon
 
Coscup 2013 : Continuous Integration on top of hadoop
Coscup 2013 : Continuous Integration on top of hadoopCoscup 2013 : Continuous Integration on top of hadoop
Coscup 2013 : Continuous Integration on top of hadoop
 
Python arch wiki
Python   arch wikiPython   arch wiki
Python arch wiki
 
Module net cdf4
Module net cdf4 Module net cdf4
Module net cdf4
 

En vedette

To the Future! - Goals for Puppet 4 - PuppetConf 2014
To the Future! - Goals for Puppet 4 - PuppetConf 2014To the Future! - Goals for Puppet 4 - PuppetConf 2014
To the Future! - Goals for Puppet 4 - PuppetConf 2014
Puppet
 
Simple_Movement_Class
Simple_Movement_ClassSimple_Movement_Class
Simple_Movement_Class
David Harris
 

En vedette (20)

To the Future! - Goals for Puppet 4 - PuppetConf 2014
To the Future! - Goals for Puppet 4 - PuppetConf 2014To the Future! - Goals for Puppet 4 - PuppetConf 2014
To the Future! - Goals for Puppet 4 - PuppetConf 2014
 
PuppetConf 2016: Puppet on Windows – Nicolas Corrarello, Puppet
PuppetConf 2016: Puppet on Windows – Nicolas Corrarello, PuppetPuppetConf 2016: Puppet on Windows – Nicolas Corrarello, Puppet
PuppetConf 2016: Puppet on Windows – Nicolas Corrarello, Puppet
 
Simple_Movement_Class
Simple_Movement_ClassSimple_Movement_Class
Simple_Movement_Class
 
PuppetConf track overview: Inside Puppet
PuppetConf track overview: Inside PuppetPuppetConf track overview: Inside Puppet
PuppetConf track overview: Inside Puppet
 
Getting Started with Puppet - PuppetConf 2014
Getting Started with Puppet - PuppetConf 2014Getting Started with Puppet - PuppetConf 2014
Getting Started with Puppet - PuppetConf 2014
 
PuppetConf 2016: A Tale of Two Hierarchies: Group Policy & Puppet – Matt Ston...
PuppetConf 2016: A Tale of Two Hierarchies: Group Policy & Puppet – Matt Ston...PuppetConf 2016: A Tale of Two Hierarchies: Group Policy & Puppet – Matt Ston...
PuppetConf 2016: A Tale of Two Hierarchies: Group Policy & Puppet – Matt Ston...
 
November 11, 2014: Parent Meeting
November 11, 2014: Parent MeetingNovember 11, 2014: Parent Meeting
November 11, 2014: Parent Meeting
 
PuppetConf 2016: How Not to Freak Out When You Start Writing Puppet Modules f...
PuppetConf 2016: How Not to Freak Out When You Start Writing Puppet Modules f...PuppetConf 2016: How Not to Freak Out When You Start Writing Puppet Modules f...
PuppetConf 2016: How Not to Freak Out When You Start Writing Puppet Modules f...
 
PuppetConf 2016: Nice and Secure: Good OpSec Hygiene With Puppet! – Peter Sou...
PuppetConf 2016: Nice and Secure: Good OpSec Hygiene With Puppet! – Peter Sou...PuppetConf 2016: Nice and Secure: Good OpSec Hygiene With Puppet! – Peter Sou...
PuppetConf 2016: Nice and Secure: Good OpSec Hygiene With Puppet! – Peter Sou...
 
Building self-service on demand infrastructure with Puppet and VMware
Building self-service on demand infrastructure with Puppet and VMwareBuilding self-service on demand infrastructure with Puppet and VMware
Building self-service on demand infrastructure with Puppet and VMware
 
PuppetConf 2016: Implementing Puppet within a Complex Enterprise – Jerry Caup...
PuppetConf 2016: Implementing Puppet within a Complex Enterprise – Jerry Caup...PuppetConf 2016: Implementing Puppet within a Complex Enterprise – Jerry Caup...
PuppetConf 2016: Implementing Puppet within a Complex Enterprise – Jerry Caup...
 
PuppetConf 2016: The Long, Twisty Road to Automation: Implementing Puppet at ...
PuppetConf 2016: The Long, Twisty Road to Automation: Implementing Puppet at ...PuppetConf 2016: The Long, Twisty Road to Automation: Implementing Puppet at ...
PuppetConf 2016: The Long, Twisty Road to Automation: Implementing Puppet at ...
 
PuppetConf 2016: Puppet Troubleshooting – Thomas Uphill, Wells Fargo
PuppetConf 2016: Puppet Troubleshooting – Thomas Uphill, Wells FargoPuppetConf 2016: Puppet Troubleshooting – Thomas Uphill, Wells Fargo
PuppetConf 2016: Puppet Troubleshooting – Thomas Uphill, Wells Fargo
 
Patch Management on Windows with Puppet
Patch Management on Windows with PuppetPatch Management on Windows with Puppet
Patch Management on Windows with Puppet
 
PuppetConf 2016: High Availability for Puppet – Russ Mull & Zack Smith, Puppet
PuppetConf 2016: High Availability for Puppet – Russ Mull & Zack Smith, PuppetPuppetConf 2016: High Availability for Puppet – Russ Mull & Zack Smith, Puppet
PuppetConf 2016: High Availability for Puppet – Russ Mull & Zack Smith, Puppet
 
PuppetConf 2016: Successful Puppet Implementation in Large Organizations – Ja...
PuppetConf 2016: Successful Puppet Implementation in Large Organizations – Ja...PuppetConf 2016: Successful Puppet Implementation in Large Organizations – Ja...
PuppetConf 2016: Successful Puppet Implementation in Large Organizations – Ja...
 
Managing a R&D Lab with Foreman
Managing a R&D Lab with ForemanManaging a R&D Lab with Foreman
Managing a R&D Lab with Foreman
 
Knee deep in the undef - Tales from refactoring old Puppet codebases
Knee deep in the undef  - Tales from refactoring old Puppet codebasesKnee deep in the undef  - Tales from refactoring old Puppet codebases
Knee deep in the undef - Tales from refactoring old Puppet codebases
 
Compliance and auditing with Puppet
Compliance and auditing with PuppetCompliance and auditing with Puppet
Compliance and auditing with Puppet
 
PuppetConf 2016: Puppet and vRealize Automation: The Next Generation – Ganesh...
PuppetConf 2016: Puppet and vRealize Automation: The Next Generation – Ganesh...PuppetConf 2016: Puppet and vRealize Automation: The Next Generation – Ganesh...
PuppetConf 2016: Puppet and vRealize Automation: The Next Generation – Ganesh...
 

Similaire à PuppetConf 2016: The Future of Testing Puppet Code – Gareth Rushgrove, Puppet

Puppet Module Reusability - What I Learned from Shipping to the Forge
Puppet Module Reusability - What I Learned from Shipping to the ForgePuppet Module Reusability - What I Learned from Shipping to the Forge
Puppet Module Reusability - What I Learned from Shipping to the Forge
Puppet
 
DOES16 London - Gareth Rushgrove - Communication Between Tribes: A Story of S...
DOES16 London - Gareth Rushgrove - Communication Between Tribes: A Story of S...DOES16 London - Gareth Rushgrove - Communication Between Tribes: A Story of S...
DOES16 London - Gareth Rushgrove - Communication Between Tribes: A Story of S...
Gene Kim
 
Open source secret_sauce_apache_con_2010
Open source secret_sauce_apache_con_2010Open source secret_sauce_apache_con_2010
Open source secret_sauce_apache_con_2010
Ted Husted
 
Passing The Joel Test In The PHP World
Passing The Joel Test In The PHP WorldPassing The Joel Test In The PHP World
Passing The Joel Test In The PHP World
Lorna Mitchell
 

Similaire à PuppetConf 2016: The Future of Testing Puppet Code – Gareth Rushgrove, Puppet (20)

Continuously Testing Infrastructure - Beyond Module Testing - PuppetConf 2014
Continuously Testing Infrastructure - Beyond Module Testing - PuppetConf 2014Continuously Testing Infrastructure - Beyond Module Testing - PuppetConf 2014
Continuously Testing Infrastructure - Beyond Module Testing - PuppetConf 2014
 
Test Driven Development with Puppet - PuppetConf 2014
Test Driven Development with Puppet - PuppetConf 2014Test Driven Development with Puppet - PuppetConf 2014
Test Driven Development with Puppet - PuppetConf 2014
 
Gareth Rushgrove (Puppet) - Ubiquity at #DOXLON
Gareth Rushgrove (Puppet) - Ubiquity at #DOXLONGareth Rushgrove (Puppet) - Ubiquity at #DOXLON
Gareth Rushgrove (Puppet) - Ubiquity at #DOXLON
 
Puppet Module Reusability - What I Learned from Shipping to the Forge
Puppet Module Reusability - What I Learned from Shipping to the ForgePuppet Module Reusability - What I Learned from Shipping to the Forge
Puppet Module Reusability - What I Learned from Shipping to the Forge
 
R Programming Overview
R Programming Overview R Programming Overview
R Programming Overview
 
Configuration Management with Puppet
Configuration Management with Puppet Configuration Management with Puppet
Configuration Management with Puppet
 
Getting started with Go - Florin Patan - Codemotion Rome 2017
Getting started with Go - Florin Patan - Codemotion Rome 2017Getting started with Go - Florin Patan - Codemotion Rome 2017
Getting started with Go - Florin Patan - Codemotion Rome 2017
 
DOES16 London - Gareth Rushgrove - Communication Between Tribes: A Story of S...
DOES16 London - Gareth Rushgrove - Communication Between Tribes: A Story of S...DOES16 London - Gareth Rushgrove - Communication Between Tribes: A Story of S...
DOES16 London - Gareth Rushgrove - Communication Between Tribes: A Story of S...
 
Communications Between Tribes
Communications Between TribesCommunications Between Tribes
Communications Between Tribes
 
Enjoying the Journey from Puppet 3.x to Puppet 4.x (PuppetConf 2016)
Enjoying the Journey from Puppet 3.x to Puppet 4.x (PuppetConf 2016)Enjoying the Journey from Puppet 3.x to Puppet 4.x (PuppetConf 2016)
Enjoying the Journey from Puppet 3.x to Puppet 4.x (PuppetConf 2016)
 
Thinking Evil Thoughts
Thinking Evil ThoughtsThinking Evil Thoughts
Thinking Evil Thoughts
 
Open source secret_sauce_apache_con_2010
Open source secret_sauce_apache_con_2010Open source secret_sauce_apache_con_2010
Open source secret_sauce_apache_con_2010
 
Ruby on Rails 3 Day BC
Ruby on Rails 3 Day BCRuby on Rails 3 Day BC
Ruby on Rails 3 Day BC
 
The Challenges of Container Configuration
The Challenges of Container ConfigurationThe Challenges of Container Configuration
The Challenges of Container Configuration
 
Two Sides of Google Infrastructure for Everyone Else
Two Sides of Google Infrastructure for Everyone ElseTwo Sides of Google Infrastructure for Everyone Else
Two Sides of Google Infrastructure for Everyone Else
 
Barcamp Bangalore 2 - On User Experience and Usability Testing
Barcamp Bangalore 2 - On User Experience and Usability TestingBarcamp Bangalore 2 - On User Experience and Usability Testing
Barcamp Bangalore 2 - On User Experience and Usability Testing
 
Passing The Joel Test In The PHP World
Passing The Joel Test In The PHP WorldPassing The Joel Test In The PHP World
Passing The Joel Test In The PHP World
 
Was können wir von Rebol lernen?
Was können wir von Rebol lernen?Was können wir von Rebol lernen?
Was können wir von Rebol lernen?
 
openQA Hoverboard - Open-source Question Answering Framework
openQA Hoverboard - Open-source Question Answering FrameworkopenQA Hoverboard - Open-source Question Answering Framework
openQA Hoverboard - Open-source Question Answering Framework
 
PuppetConf 2016: Running Puppet Software in Docker Containers – Gareth Rushgr...
PuppetConf 2016: Running Puppet Software in Docker Containers – Gareth Rushgr...PuppetConf 2016: Running Puppet Software in Docker Containers – Gareth Rushgr...
PuppetConf 2016: Running Puppet Software in Docker Containers – Gareth Rushgr...
 

Plus de Puppet

2021 04-15 operational verification (with notes)
2021 04-15 operational verification (with notes)2021 04-15 operational verification (with notes)
2021 04-15 operational verification (with notes)
Puppet
 
Enforce compliance policy with model-driven automation
Enforce compliance policy with model-driven automationEnforce compliance policy with model-driven automation
Enforce compliance policy with model-driven automation
Puppet
 

Plus de Puppet (20)

Puppetcamp r10kyaml
Puppetcamp r10kyamlPuppetcamp r10kyaml
Puppetcamp r10kyaml
 
2021 04-15 operational verification (with notes)
2021 04-15 operational verification (with notes)2021 04-15 operational verification (with notes)
2021 04-15 operational verification (with notes)
 
Puppet camp vscode
Puppet camp vscodePuppet camp vscode
Puppet camp vscode
 
Applying Roles and Profiles method to compliance code
Applying Roles and Profiles method to compliance codeApplying Roles and Profiles method to compliance code
Applying Roles and Profiles method to compliance code
 
KGI compliance as-code approach
KGI compliance as-code approachKGI compliance as-code approach
KGI compliance as-code approach
 
Enforce compliance policy with model-driven automation
Enforce compliance policy with model-driven automationEnforce compliance policy with model-driven automation
Enforce compliance policy with model-driven automation
 
Keynote: Puppet camp compliance
Keynote: Puppet camp complianceKeynote: Puppet camp compliance
Keynote: Puppet camp compliance
 
Automating it management with Puppet + ServiceNow
Automating it management with Puppet + ServiceNowAutomating it management with Puppet + ServiceNow
Automating it management with Puppet + ServiceNow
 
Puppet: The best way to harden Windows
Puppet: The best way to harden WindowsPuppet: The best way to harden Windows
Puppet: The best way to harden Windows
 
Simplified Patch Management with Puppet - Oct. 2020
Simplified Patch Management with Puppet - Oct. 2020Simplified Patch Management with Puppet - Oct. 2020
Simplified Patch Management with Puppet - Oct. 2020
 
Accelerating azure adoption with puppet
Accelerating azure adoption with puppetAccelerating azure adoption with puppet
Accelerating azure adoption with puppet
 
Puppet catalog Diff; Raphael Pinson
Puppet catalog Diff; Raphael PinsonPuppet catalog Diff; Raphael Pinson
Puppet catalog Diff; Raphael Pinson
 
ServiceNow and Puppet- better together, Kevin Reeuwijk
ServiceNow and Puppet- better together, Kevin ReeuwijkServiceNow and Puppet- better together, Kevin Reeuwijk
ServiceNow and Puppet- better together, Kevin Reeuwijk
 
Take control of your dev ops dumping ground
Take control of your  dev ops dumping groundTake control of your  dev ops dumping ground
Take control of your dev ops dumping ground
 
100% Puppet Cloud Deployment of Legacy Software
100% Puppet Cloud Deployment of Legacy Software100% Puppet Cloud Deployment of Legacy Software
100% Puppet Cloud Deployment of Legacy Software
 
Puppet User Group
Puppet User GroupPuppet User Group
Puppet User Group
 
Continuous Compliance and DevSecOps
Continuous Compliance and DevSecOpsContinuous Compliance and DevSecOps
Continuous Compliance and DevSecOps
 
The Dynamic Duo of Puppet and Vault tame SSL Certificates, Nick Maludy
The Dynamic Duo of Puppet and Vault tame SSL Certificates, Nick MaludyThe Dynamic Duo of Puppet and Vault tame SSL Certificates, Nick Maludy
The Dynamic Duo of Puppet and Vault tame SSL Certificates, Nick Maludy
 
ServiceNow and Puppet- better together, Kevin Reeuwijk
ServiceNow and Puppet- better together, Kevin ReeuwijkServiceNow and Puppet- better together, Kevin Reeuwijk
ServiceNow and Puppet- better together, Kevin Reeuwijk
 
Puppet in k8s, Miroslav Hadzhiev
Puppet in k8s, Miroslav HadzhievPuppet in k8s, Miroslav Hadzhiev
Puppet in k8s, Miroslav Hadzhiev
 

Dernier

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Dernier (20)

Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 

PuppetConf 2016: The Future of Testing Puppet Code – Gareth Rushgrove, Puppet