beaker 2.27.0 → 2.28.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +8 -8
- data/HISTORY.md +378 -2
- data/README.md +1 -3
- data/acceptance/config/acceptance-options.rb +3 -0
- data/acceptance/fixtures/files/failing_shell_script.txt +3 -0
- data/acceptance/fixtures/files/retry_script.txt +14 -0
- data/acceptance/fixtures/files/shell_script_with_output.txt +3 -0
- data/acceptance/fixtures/files/simple_text_file.txt +3 -0
- data/acceptance/fixtures/files/sles-11-x86_64.repo +5 -0
- data/acceptance/lib/helpers/test_helper.rb +111 -0
- data/acceptance/tests/base/dsl/helpers/configuration_test.rb +17 -0
- data/acceptance/tests/base/dsl/helpers/host_helpers/add_system32_hosts_entry_test.rb +50 -0
- data/acceptance/tests/base/dsl/helpers/host_helpers/backup_the_file_test.rb +64 -0
- data/acceptance/tests/base/dsl/helpers/host_helpers/check_for_package_test.rb +100 -0
- data/acceptance/tests/base/dsl/helpers/host_helpers/create_remote_file_test.rb +201 -0
- data/acceptance/tests/base/dsl/helpers/host_helpers/create_tmpdir_on_test.rb +68 -0
- data/acceptance/tests/base/dsl/helpers/host_helpers/curl_on_test.rb +48 -0
- data/acceptance/tests/base/dsl/helpers/host_helpers/curl_with_retries_test.rb +28 -0
- data/acceptance/tests/base/dsl/helpers/host_helpers/deploy_package_repo_test.rb +142 -0
- data/acceptance/tests/base/dsl/helpers/host_helpers/echo_on_test.rb +13 -0
- data/acceptance/tests/base/dsl/helpers/host_helpers/install_package_test.rb +67 -0
- data/acceptance/tests/base/dsl/helpers/host_helpers/on_test.rb +109 -0
- data/acceptance/tests/base/dsl/helpers/host_helpers/retry_on_test.rb +42 -0
- data/acceptance/tests/base/dsl/helpers/host_helpers/rsync_to_test.rb +143 -0
- data/acceptance/tests/base/dsl/helpers/host_helpers/run_cron_on_test.rb +242 -0
- data/acceptance/tests/base/dsl/helpers/host_helpers/run_script_on_test.rb +69 -0
- data/acceptance/tests/base/dsl/helpers/host_helpers/run_script_test.rb +53 -0
- data/acceptance/tests/base/dsl/helpers/host_helpers/scp_from_test.rb +53 -0
- data/acceptance/tests/base/dsl/helpers/host_helpers/scp_to_test.rb +54 -0
- data/acceptance/tests/base/dsl/helpers/host_helpers/shell_test.rb +51 -0
- data/acceptance/tests/base/dsl/helpers/host_helpers/upgrade_package_test.rb +92 -0
- data/acceptance/tests/base/dsl/install_utils/clone_git_repo_on_test.rb +47 -0
- data/acceptance/tests/base/{host.rb → host_test.rb} +2 -0
- data/acceptance/tests/hypervisor/{communication.rb → communication_test.rb} +0 -0
- data/acceptance/tests/load_path_bootstrap.rb +10 -0
- data/acceptance/tests/puppet/{install_smoke.rb → install_smoke_test.rb} +0 -0
- data/beaker.gemspec +1 -1
- data/docs/Access-the-Live-Test-Console-with-Pry.md +305 -0
- data/docs/Argument-Processing-and-Precedence.md +325 -0
- data/docs/Beaker-Installation.md +59 -0
- data/docs/Beaker-Owners-and-Reviewers.md +16 -0
- data/docs/Beaker-Test-Tagging.md +76 -0
- data/docs/Beaker-with-Masterless-Puppet.md +42 -0
- data/docs/Creating-A-Test-Environment.md +91 -0
- data/docs/Docker-Support.md +129 -0
- data/docs/EC2-Support.md +77 -0
- data/docs/Example-Vagrant-Hosts-Files.md +66 -0
- data/docs/File-a-Beaker-Bug.md +3 -0
- data/docs/Google-Compute-Engine-Support.md +41 -0
- data/docs/How-To-Beaker.md +7 -0
- data/docs/How-To-Use-User-Password-Authentication-with-Beaker.md +53 -0
- data/docs/How-to-Write-a-Beaker-Test-for-a-Module.md +145 -0
- data/docs/Lets-Write-a-Test.md +73 -0
- data/docs/Openstack-Support.md +32 -0
- data/docs/Overview.md +31 -0
- data/docs/README.md +43 -0
- data/docs/Roles-What-Are-They.md +44 -0
- data/docs/Shared-Options-for-Executing-Beaker-Commands.md +43 -0
- data/docs/Solaris-Support.md +10 -0
- data/docs/The-Beaker-DSL.md +283 -0
- data/docs/The-Command-Line.md +24 -0
- data/docs/Types,-Puppet-4,-and-the-All-In-One-Agent.md +13 -0
- data/docs/VMWare-Fusion-Support.md +36 -0
- data/docs/Vagrant-Support.md +47 -0
- data/docs/beaker-vs.-beaker-rspec.md +87 -0
- data/docs/hosts/README.md +8 -0
- data/docs/hosts/eos.md +30 -0
- data/docs/hypervisors/README.md +8 -0
- data/docs/hypervisors/aws.md +143 -0
- data/docs/vSphere-Support.md +46 -0
- data/lib/beaker/dsl/helpers/host_helpers.rb +2 -4
- data/lib/beaker/dsl/helpers/puppet_helpers.rb +45 -11
- data/lib/beaker/dsl/install_utils/foss_utils.rb +20 -23
- data/lib/beaker/dsl/install_utils/module_utils.rb +4 -0
- data/lib/beaker/dsl/install_utils/pe_utils.rb +2 -6
- data/lib/beaker/dsl/patterns.rb +1 -1
- data/lib/beaker/host.rb +3 -0
- data/lib/beaker/host/eos.rb +56 -0
- data/lib/beaker/host/mac/pkg.rb +1 -1
- data/lib/beaker/host/unix/pkg.rb +36 -0
- data/lib/beaker/hypervisor/aws_sdk.rb +1 -1
- data/lib/beaker/hypervisor/vagrant.rb +3 -3
- data/lib/beaker/logger.rb +1 -0
- data/lib/beaker/options/presets.rb +5 -0
- data/lib/beaker/shared/host_manager.rb +7 -4
- data/lib/beaker/version.rb +1 -1
- data/spec/beaker/dsl/helpers/puppet_helpers_spec.rb +87 -0
- data/spec/beaker/dsl/install_utils/foss_utils_spec.rb +53 -20
- data/spec/beaker/dsl/install_utils/module_utils_spec.rb +1 -1
- data/spec/beaker/dsl/install_utils/pe_utils_spec.rb +7 -14
- data/spec/beaker/host/eos_spec.rb +65 -0
- data/spec/beaker/host/unix/pkg_spec.rb +42 -0
- data/spec/beaker/hypervisor/aws_sdk_spec.rb +17 -56
- data/spec/beaker/hypervisor/vagrant_spec.rb +1 -1
- data/spec/beaker/logger_spec.rb +1 -1
- data/spec/mocks.rb +0 -13
- metadata +76 -6
- data/acceptance/tests/dsl/install_utils/clone_git_repo_on.rb +0 -50
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
Used with `hypervisor: solaris`, the harness can connect to a Solaris host via SSH and revert zone snapshots.
|
|
2
|
+
|
|
3
|
+
### example .fog file ###
|
|
4
|
+
:default:
|
|
5
|
+
:solaris_hypervisor_server: solaris.example.com
|
|
6
|
+
:solaris_hypervisor_username: harness
|
|
7
|
+
:solaris_hypervisor_keyfile: /home/jenkins/.ssh/id_rsa-harness
|
|
8
|
+
:solaris_hypervisor_vmpath: rpool/zoneds
|
|
9
|
+
:solaris_hypervisor_snappaths:
|
|
10
|
+
- rpool/ROOT/solaris
|
|
@@ -0,0 +1,283 @@
|
|
|
1
|
+
Beaker maintains yard documentation, which covers the [Beaker DSL](http://www.rubydoc.info/github/puppetlabs/beaker/).
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
## Assertions ##
|
|
6
|
+
To be used for confirming the result of a test is as expected. Beaker include all Minitest assertions, plus some custom built assertions.
|
|
7
|
+
|
|
8
|
+
* [Minitest assertions](http://docs.seattlerb.org/minitest/Minitest/Assertions.html)
|
|
9
|
+
* [assert_output](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Assertions#assert_output-instance_method)
|
|
10
|
+
* [assert_no_match](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Assertions#assert_no_match-instance_method)
|
|
11
|
+
|
|
12
|
+
## Helpers ##
|
|
13
|
+
DSL methods designed to help you interact with installed projects (like facter and puppet), with hosts (like running arbitrary commands on hosts) or interacting with the web (checking is a given URL is alive or not).
|
|
14
|
+
|
|
15
|
+
### Facter ###
|
|
16
|
+
DSL methods for interacting with facter.
|
|
17
|
+
|
|
18
|
+
* [fact_on](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/FacterHelpers#fact_on-instance_method)
|
|
19
|
+
* [fact](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/FacterHelpers#fact-instance_method)
|
|
20
|
+
|
|
21
|
+
### Host ###
|
|
22
|
+
DSL methods for host manipulation.
|
|
23
|
+
|
|
24
|
+
* [on](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/HostHelpers#on-instance_method)
|
|
25
|
+
* [shell](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/HostHelpers#shell-instance_method)
|
|
26
|
+
* [stdout](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/HostHelpers#stdout-instance_method)
|
|
27
|
+
* [stderr](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/HostHelpers#stderr-instance_method)
|
|
28
|
+
* [exit_code](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/HostHelpers#exit_code-instance_method)
|
|
29
|
+
* [scp_from](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/HostHelpers#scp_from-instance_method)
|
|
30
|
+
* [scp_to](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/HostHelpers#scp_to-instance_method)
|
|
31
|
+
* [rsync_to](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/HostHelpers#rsync_to-instance_method)
|
|
32
|
+
* [deploy_package_repo](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/HostHelpers#deploy_package_repo-instance_method)
|
|
33
|
+
* [create_remote_file](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/HostHelpers#create_remote_file-instance_method)
|
|
34
|
+
* [run_script_on](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/HostHelpers#run_script_on-instance_method)
|
|
35
|
+
* [run_script](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/HostHelpers#run_script-instance_method)
|
|
36
|
+
* [install_package](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/HostHelpers#install_package-instance_method)
|
|
37
|
+
* [check_for_package](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/HostHelpers#check_for_package-instance_method)
|
|
38
|
+
* [upgrade_package](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/HostHelpers#upgrade_package-instance_method)
|
|
39
|
+
* [add_system32_hosts_entry](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/HostHelpers#add_system32_hosts_entry-instance_method)
|
|
40
|
+
* [backup_the_file](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/HostHelpers#backup_the_file-instance_method)
|
|
41
|
+
* [curl_on](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/HostHelpers#curl_on-instance_method)
|
|
42
|
+
* [curl_with_retries](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/HostHelpers#curl_with_retries-instance_method)
|
|
43
|
+
* [retry_on](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/HostHelpers#retry_on-instance_method)
|
|
44
|
+
* [run_cron_on](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/HostHelpers#run_cron_on-instance_method)
|
|
45
|
+
* [create_tmpdir_on](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/HostHelpers#create_tmpdir_on-instance_method)
|
|
46
|
+
* [echo_on](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/HostHelpers#echo_on-instance_method)
|
|
47
|
+
|
|
48
|
+
### Puppet ###
|
|
49
|
+
DSL methods for interacting with puppet.
|
|
50
|
+
* [puppet_user](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/PuppetHelpers#puppet_user-instance_method)
|
|
51
|
+
* [puppet_group](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/PuppetHelpers#puppet_group-instance_method)
|
|
52
|
+
* [with_puppet_running_on](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/PuppetHelpers#with_puppet_running_on-instance_method)
|
|
53
|
+
* [with_puppet_running](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/PuppetHelpers#with_puppet_running-instance_method)
|
|
54
|
+
* [restore_puppet_conf_from_backup](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/PuppetHelpers#restore_puppet_conf_from_backup-instance_method)
|
|
55
|
+
* [start_puppet_from_source_on!](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/PuppetHelpers#start_puppet_from_source_on!-instance_method)
|
|
56
|
+
* [stop_puppet_from_source_on](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/PuppetHelpers#stop_puppet_from_source_on-instance_method)
|
|
57
|
+
* [dump_puppet_log](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/PuppetHelpers#dump_puppet_log-instance_method)
|
|
58
|
+
* [lay_down_new_puppet_conf](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/PuppetHelpers#lay_down_new_puppet_conf-instance_method)
|
|
59
|
+
* [puppet_conf_for](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/PuppetHelpers#puppet_conf_for-instance_method)
|
|
60
|
+
* [bounce_service](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/PuppetHelpers#bounce_service-instance_method)
|
|
61
|
+
* [apply_manifest_on](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/PuppetHelpers#apply_manifest_on-instance_method)
|
|
62
|
+
* [apply_manifest](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/PuppetHelpers#apply_manifest-instance_method)
|
|
63
|
+
* [run_agent_on](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/PuppetHelpers#run_agent_on-instance_method)
|
|
64
|
+
* [stub_hosts_on](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/PuppetHelpers#stub_hosts_on-instance_method)
|
|
65
|
+
* [with_host_stubbed_on](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/PuppetHelpers#with_host_stubbed_on-instance_method)
|
|
66
|
+
* [stub_hosts](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/PuppetHelpers#stub_hosts-instance_method)
|
|
67
|
+
* [stub_forge_on](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/PuppetHelpers#stub_forge_on-instance_method)
|
|
68
|
+
* [with_forge_stubbed_on](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/PuppetHelpers#with_forge_stubbed_on-instance_method)
|
|
69
|
+
* [with_forge_stubbed](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/PuppetHelpers#with_forge_stubbed-instance_method)
|
|
70
|
+
* [stub_forge](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/PuppetHelpers#stub_forge-instance_method)
|
|
71
|
+
* [sleep_until_puppetdb_started](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/PuppetHelpers#sleep_until_puppetdb_started-instance_method)
|
|
72
|
+
* [sleep_until_puppetserver_started](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/PuppetHelpers#sleep_until_puppetserver_started-instance_method)
|
|
73
|
+
* [sleep_until_nc_started](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/PuppetHelpers#sleep_until_nc_started-instance_method)
|
|
74
|
+
* [stop_agent_on](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/PuppetHelpers#stop_agent_on-instance_method)
|
|
75
|
+
* [stop_agent](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/PuppetHelpers#stop_agent-instance_method)
|
|
76
|
+
* [wait_for_host_in_dashboard](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/PuppetHelpers#wait_for_host_in_dashboard-instance_method)
|
|
77
|
+
* [sign_certificate_for](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/PuppetHelpers#sign_certificate_for-instance_method)
|
|
78
|
+
* [sign_certificate](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/PuppetHelpers#sign_certificate-instance_method)
|
|
79
|
+
* [create_tmpdir_for_user](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/PuppetHelpers#create_tmpdir_for_user-instance_method)
|
|
80
|
+
|
|
81
|
+
### TK ###
|
|
82
|
+
Convenience methods for TrapperKeeper configuration.
|
|
83
|
+
|
|
84
|
+
* [modify_tk_config](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/TkHelpers#modify_tk_config-instance_method)
|
|
85
|
+
* [read_tk_config_string](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/TkHelpers#read_tk_config_string-instance_method)
|
|
86
|
+
|
|
87
|
+
### Web ###
|
|
88
|
+
Helpers for web actions.
|
|
89
|
+
|
|
90
|
+
* [port_open_within?](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/WebHelpers#port_open_within?-instance_method)
|
|
91
|
+
* [link_exists?](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/WebHelpers#link_exists?-instance_method)
|
|
92
|
+
* [fetch_http_file](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/WebHelpers#fetch_http_file-instance_method)
|
|
93
|
+
* [fetch_http_dir](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/WebHelpers#fetch_http_dir-instance_method)
|
|
94
|
+
|
|
95
|
+
### Test ###
|
|
96
|
+
DSL methods for setting information about the current test.
|
|
97
|
+
|
|
98
|
+
* [current_test_name](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/TestHelpers#current_test_name-instance_method)
|
|
99
|
+
* [current_test_filename](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/TestHelpers#current_test_filename-instance_method)
|
|
100
|
+
* [current_step_name](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/TestHelpers#current_step_name-instance_method)
|
|
101
|
+
* [set_current_test_name](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/TestHelpers#set_current_test_name-instance_method)
|
|
102
|
+
* [set_current_test_filename](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/TestHelpers#set_current_test_filename-instance_method)
|
|
103
|
+
* [set_current_step_name](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Helpers/TestHelpers#set_current_step_name-instance_method)
|
|
104
|
+
|
|
105
|
+
## Install Utilities ##
|
|
106
|
+
DSL methods for installing PuppetLabs projects.
|
|
107
|
+
|
|
108
|
+
### EZBake ###
|
|
109
|
+
EZBake convenience methods.
|
|
110
|
+
* [install_from_ezbake](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/EzbakeUtils#install_from_ezbake-instance_method)
|
|
111
|
+
* [install_termini_from_ezbake](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/EzbakeUtils#install_termini_from_ezbake-instance_method)
|
|
112
|
+
* [ezbake_dev_build](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/EzbakeUtils#ezbake_dev_build-instance_method)
|
|
113
|
+
* [ezbake_validate_support](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/EzbakeUtils#ezbake_validate_support-instance_method)
|
|
114
|
+
* [install_ezbake_tarball_on_host](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/EzbakeUtils#install_ezbake_tarball_on_host-instance_method)
|
|
115
|
+
* [ezbake_tools_available?](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/EzbakeUtils#ezbake_tools_available?-instance_method)
|
|
116
|
+
* [ezbake_config](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/EzbakeUtils#ezbake_config-instance_method)
|
|
117
|
+
* [ezbake_lein_prefix](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/EzbakeUtils#ezbake_lein_prefix-instance_method)
|
|
118
|
+
* [ezbake_stage](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/EzbakeUtils#ezbake_stage-instance_method)
|
|
119
|
+
* [ezbake_local_cmd](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/EzbakeUtils#ezbake_local_cmd-instance_method)
|
|
120
|
+
* [ezbake_install_name](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/EzbakeUtils#ezbake_install_name-instance_method)
|
|
121
|
+
* [ezbake_install_dir](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/EzbakeUtils#ezbake_install_dir-instance_method)
|
|
122
|
+
* [ezbake_installsh](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/EzbakeUtils#ezbake_installsh-instance_method)
|
|
123
|
+
* [conditionally_clone](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/EzbakeUtils#conditionally_clone-instance_method)
|
|
124
|
+
|
|
125
|
+
### AIO ###
|
|
126
|
+
Agent-only installation utilities.
|
|
127
|
+
|
|
128
|
+
* [add_platform_aio_defaults](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/AIODefaults#add_platform_aio_defaults-instance_method)
|
|
129
|
+
* [add_aio_defaults_on](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/AIODefaults#add_aio_defaults_on-instance_method)
|
|
130
|
+
* [remove_platform_aio_defaults](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/AIODefaults#remove_platform_aio_defaults-instance_method)
|
|
131
|
+
* [remove_aio_defaults_on](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/AIODefaults#remove_aio_defaults_on-instance_method)
|
|
132
|
+
|
|
133
|
+
### FOSS ###
|
|
134
|
+
DSL methods for installing FOSS PuppetLabs projects.
|
|
135
|
+
|
|
136
|
+
* [add_platform_foss_defaults](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/FOSSDefaults#add_platform_foss_defaults-instance_method)
|
|
137
|
+
* [add_foss_defaults_on](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/FOSSDefaults#add_foss_defaults_on-instance_method)
|
|
138
|
+
* [remove_platform_foss_defaults](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/FOSSDefaults#remove_platform_foss_defaults-instance_method)
|
|
139
|
+
* [remove_foss_defaults_on](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/FOSSDefaults#remove_foss_defaults_on-instance_method)
|
|
140
|
+
* [lookup_in_env](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/FOSSUtils#lookup_in_env-instance_method)
|
|
141
|
+
* [build_git_url](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/FOSSUtils#build_git_url-instance_method)
|
|
142
|
+
* [extract_repo_info_from](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/FOSSUtils#extract_repo_info_from-instance_method)
|
|
143
|
+
* [order_packages](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/FOSSUtils#order_packages-instance_method)
|
|
144
|
+
* [find_git_repo_versions](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/FOSSUtils#find_git_repo_versions-instance_method)
|
|
145
|
+
* [clone_git_repo_on](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/FOSSUtils#clone_git_repo_on-instance_method)
|
|
146
|
+
* [install_from_git_on](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/FOSSUtils#install_from_git_on-instance_method)
|
|
147
|
+
* [install_puppet](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/FOSSUtils#install_puppet-instance_method)
|
|
148
|
+
* [install_puppet_on](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/FOSSUtils#install_puppet_on-instance_method)
|
|
149
|
+
* [install_puppet_agent_on](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/FOSSUtils#install_puppet_agent_on-instance_method)
|
|
150
|
+
* [configure_puppet](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/FOSSUtils#configure_puppet-instance_method)
|
|
151
|
+
* [configure_puppet_on](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/FOSSUtils#configure_puppet_on-instance_method)
|
|
152
|
+
* [install_puppet_from_rpm_on](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/FOSSUtils#install_puppet_from_rpm_on-instance_method)
|
|
153
|
+
* [install_puppet_from_deb_on](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/FOSSUtils#install_puppet_from_deb_on-instance_method)
|
|
154
|
+
* [install_puppet_from_msi_on](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/FOSSUtils#install_puppet_from_msi_on-instance_method)
|
|
155
|
+
* [compute_puppet_msi_name](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/FOSSUtils#compute_puppet_msi_name-instance_method)
|
|
156
|
+
* [install_puppet_agent_from_msi_on](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/FOSSUtils#install_puppet_agent_from_msi_on-instance_method)
|
|
157
|
+
* [install_a_puppet_msi_on](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/FOSSUtils#install_a_puppet_msi_on-instance_method)
|
|
158
|
+
* [install_puppet_from_freebsd_ports_on](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/FOSSUtils#install_puppet_from_freebsd_ports_on-instance_method)
|
|
159
|
+
* [install_puppet_from_dmg_on](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/FOSSUtils#install_puppet_from_dmg_on-instance_method)
|
|
160
|
+
* [install_puppet_agent_from_dmg_on](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/FOSSUtils#install_puppet_agent_from_dmg_on-instance_method)
|
|
161
|
+
* [install_puppet_from_openbsd_packages_on](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/FOSSUtils#install_puppet_from_openbsd_packages_on-instance_method)
|
|
162
|
+
* [install_puppet_from_gem_on](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/FOSSUtils#install_puppet_from_gem_on-instance_method)
|
|
163
|
+
* [install_puppetlabs_release_repo_on](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/FOSSUtils#install_puppetlabs_release_repo_on-instance_method)
|
|
164
|
+
* [install_puppetlabs_dev_repo](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/FOSSUtils#install_puppetlabs_dev_repo-instance_method)
|
|
165
|
+
* [install_packages_from_local_dev_repo](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/FOSSUtils#install_packages_from_local_dev_repo-instance_method)
|
|
166
|
+
* [install_puppet_agent_dev_repo_on](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/FOSSUtils#install_puppet_agent_dev_repo_on-instance_method)
|
|
167
|
+
* [install_puppet_agent_pe_promoted_repo_on](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/FOSSUtils#install_puppet_agent_pe_promoted_repo_on-instance_method)
|
|
168
|
+
* [install_cert_on_windows](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/FOSSUtils#install_cert_on_windows-instance_method)
|
|
169
|
+
|
|
170
|
+
### PE ###
|
|
171
|
+
DSL methods for installing Puppet Enterprise.
|
|
172
|
+
|
|
173
|
+
* [add_platform_pe_defaults](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/PeDefaults#add_platform_pe_defaults-instance_method)
|
|
174
|
+
* [add_pe_defaults_on](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/PeDefaults#add_pe_defaults_on-instance_method)
|
|
175
|
+
* [remove_platform_pe_defaults](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/PeDefaults#remove_platform_pe_defaults-instance_method)
|
|
176
|
+
* [remove_pe_defaults_on](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/PeDefaults#remove_pe_defaults_on-instance_method)
|
|
177
|
+
* [sorted_hosts](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/PeUtils#sorted_hosts-instance_method)
|
|
178
|
+
* [installer_cmd](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/PeUtils#installer_cmd-instance_method)
|
|
179
|
+
* [fetch_pe_on_mac](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/PeUtils#fetch_pe_on_mac-instance_method)
|
|
180
|
+
* [fetch_pe_on_windows](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/PeUtils#fetch_pe_on_windows-instance_method)
|
|
181
|
+
* [fetch_pe_on_unix](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/PeUtils#fetch_pe_on_unix-instance_method)
|
|
182
|
+
* [fetch_pe](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/PeUtils#fetch_pe-instance_method)
|
|
183
|
+
* [deploy_frictionless_to_master](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/PeUtils#deploy_frictionless_to_master-instance_method)
|
|
184
|
+
* [do_install](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/PeUtils#do_install-instance_method)
|
|
185
|
+
* [create_agent_specified_arrays](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/PeUtils#create_agent_specified_arrays-instance_method)
|
|
186
|
+
* [setup_defaults_and_config_helper_on](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/PeUtils#setup_defaults_and_config_helper_on-instance_method)
|
|
187
|
+
* [install_pe](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/PeUtils#install_pe-instance_method)
|
|
188
|
+
* [install_pe_on](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/PeUtils#install_pe_on-instance_method)
|
|
189
|
+
* [upgrade_pe](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/PeUtils#upgrade_pe-instance_method)
|
|
190
|
+
* [upgrade_pe_on](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/PeUtils#upgrade_pe_on-instance_method)
|
|
191
|
+
* [higgs_installer_cmd](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/PeUtils#higgs_installer_cmd-instance_method)
|
|
192
|
+
* [do_higgs_install](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/PeUtils#do_higgs_install-instance_method)
|
|
193
|
+
* [install_higgs](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/PeUtils#install_higgs-instance_method)
|
|
194
|
+
* [fetch_and_push_pe](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/PeUtils#fetch_and_push_pe-instance_method)
|
|
195
|
+
|
|
196
|
+
### Puppet ###
|
|
197
|
+
DSL methods that can be used for both FOSS/PE puppet installations.
|
|
198
|
+
|
|
199
|
+
* [normalize_type](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/PuppetUtils#normalize_type-instance_method)
|
|
200
|
+
* [construct_puppet_path](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/PuppetUtils#construct_puppet_path-instance_method)
|
|
201
|
+
* [add_puppet_paths_on](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/PuppetUtils#add_puppet_paths_on-instance_method)
|
|
202
|
+
* [remove_puppet_paths_on](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/PuppetUtils#remove_puppet_paths_on-instance_method)
|
|
203
|
+
* [configure_defaults_on](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/PuppetUtils#configure_defaults_on-instance_method)
|
|
204
|
+
* [configure_type_defaults_on](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/PuppetUtils#configure_type_defaults_on-instance_method)
|
|
205
|
+
* [remove_defaults_on](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/PuppetUtils#remove_defaults_on-instance_method)
|
|
206
|
+
|
|
207
|
+
### Windows ###
|
|
208
|
+
DSL convenience methods for installing packages on Windows SUTs.
|
|
209
|
+
|
|
210
|
+
* [get_temp_path](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/WindowsUtils#get_temp_path-instance_method)
|
|
211
|
+
* [msi_install_script](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/WindowsUtils#msi_install_script-instance_method)
|
|
212
|
+
* [create_install_msi_batch_on](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/WindowsUtils#create_install_msi_batch_on-instance_method)
|
|
213
|
+
* [install_msi_on](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/WindowsUtils#install_msi_on-instance_method)
|
|
214
|
+
|
|
215
|
+
### Module ###
|
|
216
|
+
DSL methods for installing puppet modules.
|
|
217
|
+
|
|
218
|
+
* [install_dev_puppet_module_on](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/ModuleUtils#install_dev_puppet_module_on-instance_method)
|
|
219
|
+
* [install_dev_puppet_module](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/ModuleUtils#install_dev_puppet_module-instance_method)
|
|
220
|
+
* [install_puppet_module_via_pmt_on](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/ModuleUtils#install_puppet_module_via_pmt_on-instance_method)
|
|
221
|
+
* [install_puppet_module_via_pmt](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/ModuleUtils#install_puppet_module_via_pmt-instance_method)
|
|
222
|
+
* [copy_module_to](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/ModuleUtils#copy_module_to-instance_method)
|
|
223
|
+
* [parse_for_moduleroot](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/ModuleUtils#parse_for_moduleroot-instance_method)
|
|
224
|
+
* [parse_for_modulename](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/ModuleUtils#parse_for_modulename-instance_method)
|
|
225
|
+
* [get_module_name](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/ModuleUtils#get_module_name-instance_method)
|
|
226
|
+
* [split_author_modulename](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/ModuleUtils#split_author_modulename-instance_method)
|
|
227
|
+
* [build_ignore_list](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/InstallUtils/ModuleUtils#build_ignore_list-instance_method)
|
|
228
|
+
|
|
229
|
+
## Outcomes ##
|
|
230
|
+
Methods that indicate how the given test completed (fail, pass, skip or pending).
|
|
231
|
+
|
|
232
|
+
* [fail_test](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Outcomes#fail_test-instance_method)
|
|
233
|
+
* [pass_test](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Outcomes#pass_test-instance_method)
|
|
234
|
+
* [pending_test](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Outcomes#pending_test-instance_method)
|
|
235
|
+
* [skip_test](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Outcomes#skip_test-instance_method)
|
|
236
|
+
* [formatted_message](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Outcomes#formatted_message-instance_method)
|
|
237
|
+
|
|
238
|
+
## Patterns ##
|
|
239
|
+
Shared methods used as building blocks of other DSL methods.
|
|
240
|
+
|
|
241
|
+
* [block_on](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Patterns#block_on-instance_method)
|
|
242
|
+
|
|
243
|
+
## Roles ##
|
|
244
|
+
DSL methods for accessing hosts of various roles.
|
|
245
|
+
|
|
246
|
+
* [agents](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Roles#agents-instance_method)
|
|
247
|
+
* [master](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Roles#master-instance_method)
|
|
248
|
+
* [database](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Roles#database-instance_method)
|
|
249
|
+
* [dashboard](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Roles#dashboard-instance_method)
|
|
250
|
+
* [default](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Roles#default-instance_method)
|
|
251
|
+
* [not_controller](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Roles#not_controller-instance_method)
|
|
252
|
+
* [agent_only](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Roles#agent_only-instance_method)
|
|
253
|
+
* [aio_version?](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Roles#aio_version?-instance_method)
|
|
254
|
+
* [aio_agent?](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Roles#aio_agent?-instance_method)
|
|
255
|
+
* [add_role](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Roles#add_role-instance_method)
|
|
256
|
+
* [add_role_def](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Roles#add_role_def-instance_method)
|
|
257
|
+
* [any_hosts_as?](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Roles#any_hosts_as?-instance_method)
|
|
258
|
+
* [hosts_as](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Roles#hosts_as-instance_method)
|
|
259
|
+
* [find_host_with_role](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Roles#find_host_with_role-instance_method)
|
|
260
|
+
* [find_only_one](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Roles#find_only_one-instance_method)
|
|
261
|
+
* [find_at_most_one](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Roles#find_at_most_one-instance_method)
|
|
262
|
+
|
|
263
|
+
## Structure ##
|
|
264
|
+
DSL methods that describe and define how a test is executed.
|
|
265
|
+
|
|
266
|
+
* [step](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Structure#step-instance_method)
|
|
267
|
+
* [test_name](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Structure#test_name-instance_method)
|
|
268
|
+
* [teardown](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Structure#teardown-instance_method)
|
|
269
|
+
* [expect_failure](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Structure#expect_failure-instance_method)
|
|
270
|
+
* [confine](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Structure#confine-instance_method)
|
|
271
|
+
* [confine_block](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Structure#confine_block-instance_method)
|
|
272
|
+
* [tag](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Structure#tag-instance_method)
|
|
273
|
+
* [select_hosts](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Structure#select_hosts-instance_method)
|
|
274
|
+
* [inspect_host](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Structure#inspect_host-instance_method)
|
|
275
|
+
|
|
276
|
+
## Wrappers ##
|
|
277
|
+
Wrappers around commonly used commands.
|
|
278
|
+
|
|
279
|
+
* [facter](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Wrappers#facter-instance_method)
|
|
280
|
+
* [cfacter](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Wrappers#cfacter-instance_method)
|
|
281
|
+
* [hiera](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Wrappers#hiera-instance_method)
|
|
282
|
+
* [puppet](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Wrappers#puppet-instance_method)
|
|
283
|
+
* [powershell](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Wrappers#powershell-instance_method)
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
* Using the gem
|
|
2
|
+
|
|
3
|
+
$ beaker --log-level debug --hosts sample.cfg --tests test.rb
|
|
4
|
+
|
|
5
|
+
* Using latest git
|
|
6
|
+
|
|
7
|
+
$ bundle exec beaker --log-level debug --hosts sample.cfg --tests test.rb
|
|
8
|
+
|
|
9
|
+
##Useful options
|
|
10
|
+
* `-h, --hosts FILE `, the hosts that you are going to be testing with
|
|
11
|
+
* `--log-level debug`, for providing verbose logging and full stacktraces on failure
|
|
12
|
+
* `--[no-]provision`, indicates if beaker should provision new boxes upon test execution. If `no` is selected then beaker will attempt to connect to the hosts as defined in `--hosts FILE` without first creating/running them through their hypervisors
|
|
13
|
+
* `--preserve-hosts [MODE]`, indicates what should be done with the testing boxes after tests are complete. If `always` is selected then the boxes will be preserved and left running post-testing. If `onfail` is selected then the boxes will be preserved only if tests fail, otherwise they will be shut down and destroyed. If `never` is selected then the boxes will be shut down and destroyed no matter the testing results.
|
|
14
|
+
* `--parse-only`, read and parse all command line options, environment options and file options; report the parsed options and exit.
|
|
15
|
+
|
|
16
|
+
##The Rest
|
|
17
|
+
See all options with
|
|
18
|
+
* Using the gem
|
|
19
|
+
|
|
20
|
+
$ beaker --help
|
|
21
|
+
|
|
22
|
+
* Using latest git
|
|
23
|
+
|
|
24
|
+
$ bundle exec beaker --help
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
## So What Are Types Anyway?
|
|
2
|
+
|
|
3
|
+
Historically, Puppet Open Source and Enterprise have had different paths for different resources. Beaker supports these configurations through the use of its `type` parameter. The Beaker CLI exposes this parameter with the `--type` option.
|
|
4
|
+
|
|
5
|
+
The two older types are represented by the `foss` and `pe` values.
|
|
6
|
+
|
|
7
|
+
Note that if you don't provide any type, the default is [pe](https://github.com/puppetlabs/beaker/blob/master/lib/beaker/options/presets.rb#L131).
|
|
8
|
+
|
|
9
|
+
## New With Puppet 4: The AIO Type!
|
|
10
|
+
|
|
11
|
+
With the introduction of the All-In-One (AIO) Agent in Puppet 4, the paths have been unified across both versions (Open Source & Enterprise). In order to support this, Beaker has added the `aio` type.
|
|
12
|
+
|
|
13
|
+
Passing this argument will setup the machines to use the new AIO pathing. This should be all you need to be correctly setup to use the AIO Agent in Puppet 4 and beyond!
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
Pre-requisite: Fission gem installed and configured, including a `~/.fissionrc`
|
|
2
|
+
that points to the `vmrun` executable and where virtual machines can be found.
|
|
3
|
+
Example `.fissionrc` file (it's YAML):
|
|
4
|
+
|
|
5
|
+
vm_dir: "/Directory/containing/my/.vmwarevm/files/"
|
|
6
|
+
vmrun_bin: "/Applications/VMware Fusion.app/Contents/Library/vmrun"
|
|
7
|
+
|
|
8
|
+
You can then use the following arguments in the node configuration:
|
|
9
|
+
- `hypervisor: fusion` tells us to enable this feature for this host. This is required.
|
|
10
|
+
- `snapshot: <name>`, where <name> is the snapshot name to revert to. This is required.
|
|
11
|
+
|
|
12
|
+
We'll try and match up the hostname with a VM of the same name. Note that the VM is expected to be pre-configured for running acceptance tests; it should have all the right prerequisite libraries, password-less SSH access for root, etc.
|
|
13
|
+
|
|
14
|
+
There are a few additional options available in your configuration file. Each host
|
|
15
|
+
section can now use:
|
|
16
|
+
|
|
17
|
+
- `vmname`: This is useful if the hostname of the VM doesn't match the name of
|
|
18
|
+
the `.vmwarevm` file on disk. The alias should be something fission can load.
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
### Basic VMWare fusion hosts file ###
|
|
22
|
+
|
|
23
|
+
HOSTS:
|
|
24
|
+
pe-debian6:
|
|
25
|
+
roles:
|
|
26
|
+
- master
|
|
27
|
+
- agent
|
|
28
|
+
platform: debian-6-i386
|
|
29
|
+
vmname: super-awesome-vm-name
|
|
30
|
+
hypervisor: fusion
|
|
31
|
+
snapshot: acceptance-testing-5
|
|
32
|
+
|
|
33
|
+
### Diagnostics ###
|
|
34
|
+
|
|
35
|
+
When using `hypervisor fusion`, we'll log all the available VM names and for each
|
|
36
|
+
host we'll log all the available snapshot names.
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
For testing against local Vagrant boxes. As a prerequisite the **Vagrant 1.7+** package needs to installed - see <a href = "http://downloads.vagrantup.com/">downloads.vagrantup.com</a> for downloads.
|
|
2
|
+
|
|
3
|
+
Currently, we provide a suite of pre-built, publicly available vagrant boxes for use in constructing tests: <a href = "https://vagrantcloud.com/puppetlabs/">Puppet Labs Vagrant Boxes</a>. You can use these boxes easily by pulling one of our [Example Vagrant Hosts Files](Example-Vagrant-Hosts-Files.md).
|
|
4
|
+
|
|
5
|
+
The vm is identified by `box` or `box_url` in the config file. No snapshot name is required as the vm is reverted back to original state post testing using `vagrant destroy --force`.
|
|
6
|
+
|
|
7
|
+
### example Vagrant hosts file ###
|
|
8
|
+
HOSTS:
|
|
9
|
+
ubuntu-1404-x64:
|
|
10
|
+
roles:
|
|
11
|
+
- master
|
|
12
|
+
- agent
|
|
13
|
+
- dashboard
|
|
14
|
+
- cloudpro
|
|
15
|
+
platform: ubuntu-1404-x86_64
|
|
16
|
+
hypervisor: vagrant
|
|
17
|
+
box: puppetlabs/ubuntu-14.04-64-nocm
|
|
18
|
+
box_url: https://vagrantcloud.com/puppetlabs/boxes/ubuntu-14.04-64-nocm
|
|
19
|
+
CONFIG:
|
|
20
|
+
nfs_server: none
|
|
21
|
+
consoleport: 443
|
|
22
|
+
|
|
23
|
+
VagrantFiles are created per host configuration file. They can be found in the `.vagrant/beaker_vagrant_files` directory of the current working directory in a subdirectory named after the host configuration file.
|
|
24
|
+
|
|
25
|
+
> beaker --hosts sample.cfg
|
|
26
|
+
> cd .vagrant/beaker_vagrant_files; ls
|
|
27
|
+
sample.cfg
|
|
28
|
+
> cd sample.c
|
|
29
|
+
|
|
30
|
+
It is possible to have the VirtualBox VM run with a GUI (i.e. non-headless mode) by specifying ``vb_gui`` of any non-nil value in the config file, i.e.:
|
|
31
|
+
|
|
32
|
+
### example Vagrant hosts file with vb_gui ###
|
|
33
|
+
HOSTS:
|
|
34
|
+
ubuntu-1404-x64:
|
|
35
|
+
roles:
|
|
36
|
+
- master
|
|
37
|
+
- agent
|
|
38
|
+
- dashboard
|
|
39
|
+
- cloudpro
|
|
40
|
+
platform: ubuntu-1404-x86_64
|
|
41
|
+
hypervisor: vagrant
|
|
42
|
+
box: puppetlabs/ubuntu-14.04-64-nocm
|
|
43
|
+
box_url: https://vagrantcloud.com/puppetlabs/boxes/ubuntu-14.04-64-nocm
|
|
44
|
+
vb_gui: true
|
|
45
|
+
CONFIG:
|
|
46
|
+
nfs_server: none
|
|
47
|
+
consoleport: 443
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
## How they relate
|
|
2
|
+
|
|
3
|
+
beaker is an acceptance testing program that is written Ruby. beaker-rspec is a combination of the [beaker DSL](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL) (domain specific language) with [RSpec](http://rspec.info/) (a spec test format) and [Serverspec](http://serverspec.org/) (an extension to RSpec that provides many useful matchers).
|
|
4
|
+
|
|
5
|
+

|
|
6
|
+
|
|
7
|
+
## beaker
|
|
8
|
+
* can provision and configure test hosts
|
|
9
|
+
* tests are just Ruby files
|
|
10
|
+
* tests are considered to have passed if they execute all the way through without errors/exceptions
|
|
11
|
+
* tests can also use asserts to explicitly enforce a state
|
|
12
|
+
* tests written in Ruby with Beaker data specific language extensions
|
|
13
|
+
|
|
14
|
+
### An example beaker test ###
|
|
15
|
+
test_name "Be able to execute multi-line commands (#9996)"
|
|
16
|
+
confine :except, :platform => 'windows'
|
|
17
|
+
agents.each do |agent|
|
|
18
|
+
temp_file_name = agent.tmpfile('9996-multi-line-commands')
|
|
19
|
+
test_manifest = <<HERE
|
|
20
|
+
exec { "test exec":
|
|
21
|
+
command => "/bin/echo '#Test' > #{temp_file_name};
|
|
22
|
+
/bin/echo 'bob' >> #{temp_file_name};"
|
|
23
|
+
}
|
|
24
|
+
HERE
|
|
25
|
+
expected_results = <<HERE
|
|
26
|
+
#Test
|
|
27
|
+
bob
|
|
28
|
+
HERE
|
|
29
|
+
on(agent, "rm -f #{temp_file_name}")
|
|
30
|
+
apply_manifest_on agent, test_manifest
|
|
31
|
+
on(agent, "cat #{temp_file_name}") do
|
|
32
|
+
assert_equal(expected_results, stdout, "Unexpected result for host '#{agent}'")
|
|
33
|
+
end
|
|
34
|
+
on(agent, "rm -f #{temp_file_name}")
|
|
35
|
+
end
|
|
36
|
+
## beaker-rspec
|
|
37
|
+
* uses [RSpec](http://rspec.info/) and [Serverspec](http://serverspec.org/)
|
|
38
|
+
* can provision and configure test hosts
|
|
39
|
+
* tests are considered to have passed when explicit asserts succeed
|
|
40
|
+
* tests written in Rspec format, with Beaker data specific language extensions and Serverspec matchers
|
|
41
|
+
|
|
42
|
+
### An example beaker-rspec test ###
|
|
43
|
+
require 'spec_helper_acceptance'
|
|
44
|
+
case fact('osfamily')
|
|
45
|
+
when 'FreeBSD'
|
|
46
|
+
line = '0.freebsd.pool.ntp.org maxpoll 9 iburst'
|
|
47
|
+
when 'Debian'
|
|
48
|
+
line = '0.debian.pool.ntp.org iburst'
|
|
49
|
+
when 'RedHat'
|
|
50
|
+
line = '0.centos.pool.ntp.org'
|
|
51
|
+
when 'Suse'
|
|
52
|
+
line = '0.opensuse.pool.ntp.org'
|
|
53
|
+
when 'Gentoo'
|
|
54
|
+
line = '0.gentoo.pool.ntp.org'
|
|
55
|
+
when 'Linux'
|
|
56
|
+
case fact('operatingsystem')
|
|
57
|
+
when 'ArchLinux'
|
|
58
|
+
line = '0.pool.ntp.org'
|
|
59
|
+
when 'Gentoo'
|
|
60
|
+
line = '0.gentoo.pool.ntp.org'
|
|
61
|
+
end
|
|
62
|
+
when 'Solaris'
|
|
63
|
+
line = '0.pool.ntp.org'
|
|
64
|
+
when 'AIX'
|
|
65
|
+
line = '0.debian.pool.ntp.org iburst'
|
|
66
|
+
end
|
|
67
|
+
if (fact('osfamily') == 'Solaris')
|
|
68
|
+
config = '/etc/inet/ntp.conf'
|
|
69
|
+
else
|
|
70
|
+
config = '/etc/ntp.conf'
|
|
71
|
+
end
|
|
72
|
+
describe 'ntp::config class', :unless => UNSUPPORTED_PLATFORMS.include?(fact('osfamily')) do
|
|
73
|
+
it 'sets up ntp.conf' do
|
|
74
|
+
apply_manifest(%{
|
|
75
|
+
class { 'ntp': }
|
|
76
|
+
}, :catch_failures => true)
|
|
77
|
+
end
|
|
78
|
+
describe file("#{config}") do
|
|
79
|
+
it { should be_file }
|
|
80
|
+
its(:content) { should match line }
|
|
81
|
+
end
|
|
82
|
+
end
|
|
83
|
+
|
|
84
|
+
## How to choose?
|
|
85
|
+
|
|
86
|
+
* beaker-rspec is intended for use as a module testing tool.
|
|
87
|
+
* beaker is used for all other testing (puppet, puppetDB, Puppet Enterprise, etc).
|