This gem is used to execute Puppet module acceptance tests (beaker) for Windows using WinRM instead of SSH.
TODO: rspec test for this gem
This gem has two gem dependencies:
- winrm (version requirement: >= 2.2.2)
- winrm-elevated (version requirement: >= 1.1.0)
Add this line to your spec_helper_acceptance.rb:
require 'kpn_winrm'
Make sure the gem is installed:
$ gem install kpn_winrm
This gem contains 2 functions:
- apply_manifest_on_winrm
- winrm_command
This function can be used to apply a puppet manifest on the beaker node using winrm.
The functions has 3 parameters:
The host definition on which to execute the commands, for one node tests set this to default
.
The ruby variable containting the manifest to apply, example:
pp = <<-PP
user { 'testuser':
password => 'Dummy1234qwer!',
groups => ['Administrators'],
}
PP
A hash of options, which can have one of the following:
- catch_changes
- catch_failures
- expect_failures
- expect_changes
Example
apply_manifest_on_winrm(default, pp, :catch_failures => true)
apply_manifest_on_winrm(default, pp, :catch_changes => true)
Run a command on the beaker node via winrm.
The functions has 3 parameters:
The host definition on which to execute the commands, for one node tests set this to default
.
The command which should be executed via WinRM.
- acceptable_exit_codes
- run_as_cmd
A hash of options, which can have one of the following:
Example
winrm_command(default, 'SecEdit /export /cfg c:\cfg.txt')