Submit Search
Upload
Puppet testing
•
0 likes
•
62 views
Bram Vogelaar
Follow
introduction to testing puppet code
Read less
Read more
Technology
Report
Share
Report
Share
1 of 21
Download now
Download to read offline
Recommended
Software Testing
Software Testing
Lambert Lum
PHPUnit
PHPUnit
Hampton Roads PHP User Grop
PhpUnit Best Practices
PhpUnit Best Practices
Edorian
PHPUnit best practices presentation
PHPUnit best practices presentation
Thanh Robi
Test Driven Development with PHPUnit
Test Driven Development with PHPUnit
Mindfire Solutions
PHPUnit: from zero to hero
PHPUnit: from zero to hero
Jeremy Cook
Test your code like a pro - PHPUnit in practice
Test your code like a pro - PHPUnit in practice
Sebastian Marek
Puppet loves RSpec, why you should, too
Puppet loves RSpec, why you should, too
Dennis Rowe
Recommended
Software Testing
Software Testing
Lambert Lum
PHPUnit
PHPUnit
Hampton Roads PHP User Grop
PhpUnit Best Practices
PhpUnit Best Practices
Edorian
PHPUnit best practices presentation
PHPUnit best practices presentation
Thanh Robi
Test Driven Development with PHPUnit
Test Driven Development with PHPUnit
Mindfire Solutions
PHPUnit: from zero to hero
PHPUnit: from zero to hero
Jeremy Cook
Test your code like a pro - PHPUnit in practice
Test your code like a pro - PHPUnit in practice
Sebastian Marek
Puppet loves RSpec, why you should, too
Puppet loves RSpec, why you should, too
Dennis Rowe
Better detection of what modules are used by some Perl 5 code
Better detection of what modules are used by some Perl 5 code
charsbar
Unit testing PHP apps with PHPUnit
Unit testing PHP apps with PHPUnit
Michelangelo van Dam
Unit Testing Presentation
Unit Testing Presentation
nicobn
Mutation Testing: Testing your tests
Mutation Testing: Testing your tests
Stephen Leigh
Introduction to Unit Testing with PHPUnit
Introduction to Unit Testing with PHPUnit
Michelangelo van Dam
New Features PHPUnit 3.3 - Sebastian Bergmann
New Features PHPUnit 3.3 - Sebastian Bergmann
dpc
Phpunit testing
Phpunit testing
Nikunj Bhatnagar
Test-Driven Puppet Development - PuppetConf 2014
Test-Driven Puppet Development - PuppetConf 2014
Puppet
Automated code audits
Automated code audits
Damien Seguy
Unit Testing using PHPUnit
Unit Testing using PHPUnit
varuntaliyan
Advanced PHPUnit Testing
Advanced PHPUnit Testing
Mike Lively
Algoritma 5 november wiwik p.l
Algoritma 5 november wiwik p.l
Wiwik Puji Lestarii
OSDC.tw 2008 Lightening Talk
OSDC.tw 2008 Lightening Talk
Kang-min Liu
Unit testing with PHPUnit - there's life outside of TDD
Unit testing with PHPUnit - there's life outside of TDD
Paweł Michalik
Buble Sort Classe principal
Buble Sort Classe principal
Elaine Cecília Gatto
톰캣 #05-배치
톰캣 #05-배치
GyuSeok Lee
Test Driven Development with Puppet - PuppetConf 2014
Test Driven Development with Puppet - PuppetConf 2014
Puppet
The Challenges of Container Configuration
The Challenges of Container Configuration
Gareth Rushgrove
The road to continuous deployment (DomCode September 2016)
The road to continuous deployment (DomCode September 2016)
Michiel Rook
Curating Your Cukes by Eric Kessler
Curating Your Cukes by Eric Kessler
QA or the Highway
PHPUnit testing to Zend_Test
PHPUnit testing to Zend_Test
Michelangelo van Dam
Unit Testing Lots of Perl
Unit Testing Lots of Perl
Workhorse Computing
More Related Content
What's hot
Better detection of what modules are used by some Perl 5 code
Better detection of what modules are used by some Perl 5 code
charsbar
Unit testing PHP apps with PHPUnit
Unit testing PHP apps with PHPUnit
Michelangelo van Dam
Unit Testing Presentation
Unit Testing Presentation
nicobn
Mutation Testing: Testing your tests
Mutation Testing: Testing your tests
Stephen Leigh
Introduction to Unit Testing with PHPUnit
Introduction to Unit Testing with PHPUnit
Michelangelo van Dam
New Features PHPUnit 3.3 - Sebastian Bergmann
New Features PHPUnit 3.3 - Sebastian Bergmann
dpc
Phpunit testing
Phpunit testing
Nikunj Bhatnagar
Test-Driven Puppet Development - PuppetConf 2014
Test-Driven Puppet Development - PuppetConf 2014
Puppet
Automated code audits
Automated code audits
Damien Seguy
Unit Testing using PHPUnit
Unit Testing using PHPUnit
varuntaliyan
Advanced PHPUnit Testing
Advanced PHPUnit Testing
Mike Lively
Algoritma 5 november wiwik p.l
Algoritma 5 november wiwik p.l
Wiwik Puji Lestarii
OSDC.tw 2008 Lightening Talk
OSDC.tw 2008 Lightening Talk
Kang-min Liu
Unit testing with PHPUnit - there's life outside of TDD
Unit testing with PHPUnit - there's life outside of TDD
Paweł Michalik
Buble Sort Classe principal
Buble Sort Classe principal
Elaine Cecília Gatto
톰캣 #05-배치
톰캣 #05-배치
GyuSeok Lee
Test Driven Development with Puppet - PuppetConf 2014
Test Driven Development with Puppet - PuppetConf 2014
Puppet
The Challenges of Container Configuration
The Challenges of Container Configuration
Gareth Rushgrove
The road to continuous deployment (DomCode September 2016)
The road to continuous deployment (DomCode September 2016)
Michiel Rook
Curating Your Cukes by Eric Kessler
Curating Your Cukes by Eric Kessler
QA or the Highway
What's hot
(20)
Better detection of what modules are used by some Perl 5 code
Better detection of what modules are used by some Perl 5 code
Unit testing PHP apps with PHPUnit
Unit testing PHP apps with PHPUnit
Unit Testing Presentation
Unit Testing Presentation
Mutation Testing: Testing your tests
Mutation Testing: Testing your tests
Introduction to Unit Testing with PHPUnit
Introduction to Unit Testing with PHPUnit
New Features PHPUnit 3.3 - Sebastian Bergmann
New Features PHPUnit 3.3 - Sebastian Bergmann
Phpunit testing
Phpunit testing
Test-Driven Puppet Development - PuppetConf 2014
Test-Driven Puppet Development - PuppetConf 2014
Automated code audits
Automated code audits
Unit Testing using PHPUnit
Unit Testing using PHPUnit
Advanced PHPUnit Testing
Advanced PHPUnit Testing
Algoritma 5 november wiwik p.l
Algoritma 5 november wiwik p.l
OSDC.tw 2008 Lightening Talk
OSDC.tw 2008 Lightening Talk
Unit testing with PHPUnit - there's life outside of TDD
Unit testing with PHPUnit - there's life outside of TDD
Buble Sort Classe principal
Buble Sort Classe principal
톰캣 #05-배치
톰캣 #05-배치
Test Driven Development with Puppet - PuppetConf 2014
Test Driven Development with Puppet - PuppetConf 2014
The Challenges of Container Configuration
The Challenges of Container Configuration
The road to continuous deployment (DomCode September 2016)
The road to continuous deployment (DomCode September 2016)
Curating Your Cukes by Eric Kessler
Curating Your Cukes by Eric Kessler
Similar to Puppet testing
PHPUnit testing to Zend_Test
PHPUnit testing to Zend_Test
Michelangelo van Dam
Unit Testing Lots of Perl
Unit Testing Lots of Perl
Workhorse Computing
Beijing Perl Workshop 2008 Hiveminder Secret Sauce
Beijing Perl Workshop 2008 Hiveminder Secret Sauce
Jesse Vincent
YAPC::NA 2007 - Customizing And Extending Perl Critic
YAPC::NA 2007 - Customizing And Extending Perl Critic
joshua.mcadams
ES2015のカバレッジ計測
ES2015のカバレッジ計測
sinsoku listy
Puppet Camp Atlanta 2014: Continuous Deployment of Puppet Modules
Puppet Camp Atlanta 2014: Continuous Deployment of Puppet Modules
Puppet
DevOps in PHP environment
DevOps in PHP environment
Evaldo Felipe
Testing Code and Assuring Quality
Testing Code and Assuring Quality
Kent Cowgill
Advanced Perl Techniques
Advanced Perl Techniques
Dave Cross
Web Training Aula 02: Introduction to PHP
Web Training Aula 02: Introduction to PHP
MozDevz
Don't RTFM, WTFM - Open Source Documentation - German Perl Workshop 2010
Don't RTFM, WTFM - Open Source Documentation - German Perl Workshop 2010
singingfish
Hiveminder - Everything but the Secret Sauce
Hiveminder - Everything but the Secret Sauce
Jesse Vincent
Having Fun with Play
Having Fun with Play
Clinton Dreisbach
Howto Test A Patch And Make A Difference!
Howto Test A Patch And Make A Difference!
Joel Farris
Quality Assurance for PHP projects - ZendCon 2012
Quality Assurance for PHP projects - ZendCon 2012
Michelangelo van Dam
Workshop quality assurance for php projects tek12
Workshop quality assurance for php projects tek12
Michelangelo van Dam
Best Practices in Plugin Development (WordCamp Seattle)
Best Practices in Plugin Development (WordCamp Seattle)
andrewnacin
PHPSpec BDD Framework
PHPSpec BDD Framework
Marcello Duarte
WordPress Plugin Unit Tests (FR - WordCamp Paris 2015)
WordPress Plugin Unit Tests (FR - WordCamp Paris 2015)
Ozh
Building and Testing Puppet with Docker
Building and Testing Puppet with Docker
carlaasouza
Similar to Puppet testing
(20)
PHPUnit testing to Zend_Test
PHPUnit testing to Zend_Test
Unit Testing Lots of Perl
Unit Testing Lots of Perl
Beijing Perl Workshop 2008 Hiveminder Secret Sauce
Beijing Perl Workshop 2008 Hiveminder Secret Sauce
YAPC::NA 2007 - Customizing And Extending Perl Critic
YAPC::NA 2007 - Customizing And Extending Perl Critic
ES2015のカバレッジ計測
ES2015のカバレッジ計測
Puppet Camp Atlanta 2014: Continuous Deployment of Puppet Modules
Puppet Camp Atlanta 2014: Continuous Deployment of Puppet Modules
DevOps in PHP environment
DevOps in PHP environment
Testing Code and Assuring Quality
Testing Code and Assuring Quality
Advanced Perl Techniques
Advanced Perl Techniques
Web Training Aula 02: Introduction to PHP
Web Training Aula 02: Introduction to PHP
Don't RTFM, WTFM - Open Source Documentation - German Perl Workshop 2010
Don't RTFM, WTFM - Open Source Documentation - German Perl Workshop 2010
Hiveminder - Everything but the Secret Sauce
Hiveminder - Everything but the Secret Sauce
Having Fun with Play
Having Fun with Play
Howto Test A Patch And Make A Difference!
Howto Test A Patch And Make A Difference!
Quality Assurance for PHP projects - ZendCon 2012
Quality Assurance for PHP projects - ZendCon 2012
Workshop quality assurance for php projects tek12
Workshop quality assurance for php projects tek12
Best Practices in Plugin Development (WordCamp Seattle)
Best Practices in Plugin Development (WordCamp Seattle)
PHPSpec BDD Framework
PHPSpec BDD Framework
WordPress Plugin Unit Tests (FR - WordCamp Paris 2015)
WordPress Plugin Unit Tests (FR - WordCamp Paris 2015)
Building and Testing Puppet with Docker
Building and Testing Puppet with Docker
More from Bram Vogelaar
Cost reconciliation in a post CMDB world
Cost reconciliation in a post CMDB world
Bram Vogelaar
Self scaling Multi cloud nomad workloads
Self scaling Multi cloud nomad workloads
Bram Vogelaar
Scraping metrics for fun and profit
Scraping metrics for fun and profit
Bram Vogelaar
10 things i learned building nomad-packs
10 things i learned building nomad-packs
Bram Vogelaar
10 things I learned building Nomad packs
10 things I learned building Nomad packs
Bram Vogelaar
Easy Cloud Native Transformation with Nomad
Easy Cloud Native Transformation with Nomad
Bram Vogelaar
Uncomplicated Nomad
Uncomplicated Nomad
Bram Vogelaar
Observability; a gentle introduction
Observability; a gentle introduction
Bram Vogelaar
Running Trusted Payload with Nomad and Waypoint
Running Trusted Payload with Nomad and Waypoint
Bram Vogelaar
Easy Cloud Native Transformation using HashiCorp Nomad
Easy Cloud Native Transformation using HashiCorp Nomad
Bram Vogelaar
Securing Prometheus exporters using HashiCorp Vault
Securing Prometheus exporters using HashiCorp Vault
Bram Vogelaar
CICD using jenkins and Nomad
CICD using jenkins and Nomad
Bram Vogelaar
Bootstrapping multidc observability stack
Bootstrapping multidc observability stack
Bram Vogelaar
Running trusted payloads with Nomad and Waypoint
Running trusted payloads with Nomad and Waypoint
Bram Vogelaar
Gamification of Chaos Testing
Gamification of Chaos Testing
Bram Vogelaar
Puppet and the HashiStack
Puppet and the HashiStack
Bram Vogelaar
Bootstrapping multidc observability stack
Bootstrapping multidc observability stack
Bram Vogelaar
Creating Reusable Puppet Profiles
Creating Reusable Puppet Profiles
Bram Vogelaar
Gamification of Chaos Testing
Gamification of Chaos Testing
Bram Vogelaar
Autoscaling with hashi_corp_nomad
Autoscaling with hashi_corp_nomad
Bram Vogelaar
More from Bram Vogelaar
(20)
Cost reconciliation in a post CMDB world
Cost reconciliation in a post CMDB world
Self scaling Multi cloud nomad workloads
Self scaling Multi cloud nomad workloads
Scraping metrics for fun and profit
Scraping metrics for fun and profit
10 things i learned building nomad-packs
10 things i learned building nomad-packs
10 things I learned building Nomad packs
10 things I learned building Nomad packs
Easy Cloud Native Transformation with Nomad
Easy Cloud Native Transformation with Nomad
Uncomplicated Nomad
Uncomplicated Nomad
Observability; a gentle introduction
Observability; a gentle introduction
Running Trusted Payload with Nomad and Waypoint
Running Trusted Payload with Nomad and Waypoint
Easy Cloud Native Transformation using HashiCorp Nomad
Easy Cloud Native Transformation using HashiCorp Nomad
Securing Prometheus exporters using HashiCorp Vault
Securing Prometheus exporters using HashiCorp Vault
CICD using jenkins and Nomad
CICD using jenkins and Nomad
Bootstrapping multidc observability stack
Bootstrapping multidc observability stack
Running trusted payloads with Nomad and Waypoint
Running trusted payloads with Nomad and Waypoint
Gamification of Chaos Testing
Gamification of Chaos Testing
Puppet and the HashiStack
Puppet and the HashiStack
Bootstrapping multidc observability stack
Bootstrapping multidc observability stack
Creating Reusable Puppet Profiles
Creating Reusable Puppet Profiles
Gamification of Chaos Testing
Gamification of Chaos Testing
Autoscaling with hashi_corp_nomad
Autoscaling with hashi_corp_nomad
Recently uploaded
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
apidays
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Zilliz
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
Remote DBA Services
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Jeffrey Haguewood
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Edi Saputra
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
rafiqahmad00786416
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
Khem
presentation ICT roal in 21st century education
presentation ICT roal in 21st century education
jfdjdjcjdnsjd
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
Rustici Software
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
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
debabhi2
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
lior mazor
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
MadyBayot
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
The Digital Insurer
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Juan lago vázquez
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
wesley chun
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
Martijn de Jong
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
sammart93
Recently uploaded
(20)
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
presentation ICT roal in 21st century education
presentation ICT roal in 21st century education
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
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...
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Puppet testing
1.
Testing for people who hate testing Bram vogelaar TTT 12 May 2017
2.
3.
Does this $h*t even compile? $ puppet parser validate validate.pp Error: Syntax error at ')' at validate.pp:1:13
4.
Does this $h*t look good? gem install puppetlint rubocop $ puppetlint lint.pp lint.pp ERROR: trailing whitespace found on line 1 $ puppetlint fix lint.pp lint.pp FIXED: trailing whitespace found on line 1 $rubocop Inspecting 45 files .WCCCCCCCWWCWWWWCCCCCCCCCCCCCCWCCCCCCWCWCWWCW Offenses: lib/facter/is_master.rb:4:5: C: Do not prefix reader method names with
5.
Does this $h*t do what i think it does? gem install rspecpuppet context 'with service_enable set to true' do it { is_expected.to contain_service('neo4j') } it { is_expected.not_to contain_file('/etc/init.d/neo4j') } it { is_expected.not_to contain_systemd__unit_file('neo4j.service') } it { is_expected.to contain_service('neo4j').with('name' => 'neo4j') }
6.
How much of this $h*t is even tested? at_exit { RSpec::Puppet::Coverage.report! } # Watch the world burn! RSpec::Puppet::Coverage.report!(70)
7.
So this $h*t will work on $laptop gem install rspecpuppetfacts require 'spec_helper' describe 'example::params' do on_os_under_test.each do |os, facts| context "on #{os}" do let(:facts) { facts } context "It should not contain any resources" do it { should contain_class('example::params') } it { should have_resource_count(0) } end end end end
8.
require 'spec_helper' describe 'profiles::selinux' do on_os_under_test.each do |os, facts| context "on #{os}" do let(:facts) do facts.merge({ :selinux_agent_vardir => '/var/lib/puppet', }) end context 'with defaults for all parameters' do it { should contain_class('profiles::selinux') } end end end end
9.
But does this $h*t even work for real gem install testkitchen driver: name: vagrant provisioner: name: puppet_apply require_chef_for_busser: false manifest: init.pp manifests_path: examples verifier: name: inspec suite_name: default platforms: name: ubuntu14.04 provisioner: puppet_apt_collections_repo: https://apt.puppetlabs.com/puppetlabsreleasepc1trusty.deb
10.
Is your $h*t really up control 'service 01' do impact 1.0 title 'neo4j service is running' desc 'Ensures that the neo4j service is up and running' describe service('neo4j') do it { should be_enabled } it { should be_installed } it { should be_running } end end
11.
12.
Gemfile: Download all the $h*t $ gem install bundler group :test do gem 'json', '< 2.0.0', :require => false if RUBY_VERSION < '2.0.0' gem 'json_pure', '<= 2.0.1', :require => false if RUBY_VERSION < '2.0.0' gem 'metadatajsonlint', :require => false gem 'puppetstrings', :require => false gem 'puppet_facts', :require => false gem 'puppetlabs_spec_helper', :require => false $ bundle update
13.
Rakefile: Automate this $h*t $ gem install rake require 'puppetlabs_spec_helper/rake_tasks' require 'puppetlint/tasks/puppetlint' require 'puppetstrings/tasks' if Bundler.rubygems.find_name('testkitchen').any? require 'kitchen/rake_tasks' Kitchen::RakeTasks.new end $ bundle exec rake validate lint spec
14.
Lets speed this $h*t up # Tests are slow $ bundle exec rake parallel_spec # Git checkout is slow $ bundle exec rake spec_prep $ bundle exec rake spec_standalone $ bundle exec rake spec_clean
15.
Guardfile: ctrl+F5 this $h*t $ gem install guardrake guard 'rake', :task => 'validate' do watch(%r{^examples/(.+).pp$}) watch(%r{^manifests/(.+).pp$}) watch(%r{^templates/(.+).erb$}) end $ bundle exec guard
16.
guard notifications
17.
.travis.yml: Does this $h*t run on $legacy $ gem install travis sudo: false language: ruby bundler_args: without development integration script: "bundle exec rake validate lint spec SPEC_OPTS='color format documentation'" matrix: fast_finish: true include: rvm: 2.1.10 env: PUPPET_GEM_VERSION="~> 3.0" STRICT_VARIABLES="yes" FUTURE_PARSER="yes" rvm: 2.1.10 env: PUPPET_GEM_VERSION="~> 4.0" STRICT_VARIABLES="yes" $ travis show
18.
Does this $h*t scale $ gem install modulesync $ tree ├── managed_modules.yml ├── moduleroot │ ├── Gemfile │ ├── .gitignore │ ├── Guardfile │ ├── .kitchen.yml │ ├── Puppetfile │ ├── Rakefile │ ├── .rspec │ ├── .rubocop.yml │ ├── spec │ │ └── spec_helper.rb │ └── .travis.yml └── modulesync.yml $ msync update m "adding more gems"
19.
Links to this $h*t http://puppetlint.com/ https://voxpupuli.org/plugins/ http://rspecpuppet.com/ https://github.com/puppetlabs/beaker http://kitchen.ci/ https://github.com/neillturner/kitchenpuppet http://bundler.io/v1.5/gemfile.html http://rake.rubyforge.org/ http://guardgem.org/ https://travisci.org/
20.
Demo
21.
$ gem install puppetstrings $ bundle exec rake strings:generate Files: 5 Modules: 0 ( 0 undocumented) Classes: 0 ( 0 undocumented) Constants: 0 ( 0 undocumented) Attributes: 0 ( 0 undocumented) Methods: 0 ( 0 undocumented) Puppet Classes: 5 ( 0 undocumented) Puppet Defined Types: 0 ( 0 undocumented) Puppet Types: 0 ( 0 undocumented) Puppet Providers: 0 ( 0 undocumented) Puppet Functions: 0 ( 0 undocumented) 100.00% documented
Download now