beaker 3.34.0 → 3.35.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (49) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +12 -1
  3. data/acceptance/tests/base/external_resources_test.rb +18 -3
  4. data/acceptance/tests/base/host/host_test.rb +1 -1
  5. data/docs/concepts/testing_beaker_itself.md +4 -4
  6. data/docs/concepts/ticket_process.md +12 -12
  7. data/docs/concepts/types_puppet_4_and_the_all_in_one_agent.md +1 -1
  8. data/docs/how_to/change_terminal_output_coloring.md +1 -1
  9. data/docs/how_to/confine.md +3 -3
  10. data/docs/how_to/debug_beaker_tests.md +19 -19
  11. data/docs/how_to/enabling_cross_sut_access.md +1 -1
  12. data/docs/how_to/hosts/README.md +1 -1
  13. data/docs/how_to/hosts/cisco.md +1 -1
  14. data/docs/how_to/hypervisors/README.md +1 -1
  15. data/docs/how_to/platform_specific_tag_confines.md +2 -2
  16. data/docs/how_to/preserve_hosts.md +2 -2
  17. data/docs/how_to/rake_tasks.md +3 -4
  18. data/docs/how_to/test_arbitrary_beaker_versions.md +3 -3
  19. data/docs/how_to/upgrade_from_2_to_3.md +4 -4
  20. data/docs/tutorials/README.md +1 -1
  21. data/docs/tutorials/test_suites.md +1 -1
  22. data/lib/beaker/cli.rb +1 -0
  23. data/lib/beaker/command.rb +2 -2
  24. data/lib/beaker/dsl/assertions.rb +1 -1
  25. data/lib/beaker/dsl/helpers/facter_helpers.rb +1 -1
  26. data/lib/beaker/dsl/install_utils/pe_defaults.rb +1 -1
  27. data/lib/beaker/dsl/roles.rb +1 -1
  28. data/lib/beaker/dsl/structure.rb +2 -2
  29. data/lib/beaker/host/cisco.rb +3 -3
  30. data/lib/beaker/host/mac/exec.rb +1 -1
  31. data/lib/beaker/host/windows/exec.rb +1 -1
  32. data/lib/beaker/host_prebuilt_steps.rb +3 -0
  33. data/lib/beaker/options/hosts_file_parser.rb +9 -2
  34. data/lib/beaker/options/parser.rb +1 -1
  35. data/lib/beaker/shared/options_resolver.rb +6 -6
  36. data/lib/beaker/subcommand.rb +13 -8
  37. data/lib/beaker/tasks/quick_start.rb +2 -2
  38. data/lib/beaker/version.rb +1 -1
  39. data/spec/beaker/host/unix/exec_spec.rb +1 -1
  40. data/spec/beaker/host_prebuilt_steps_spec.rb +1 -0
  41. data/spec/beaker/options/hosts_file_parser_spec.rb +15 -7
  42. data/spec/beaker/shared/error_handler_spec.rb +2 -2
  43. data/spec/beaker/shared/repetition_spec.rb +2 -2
  44. data/spec/beaker/subcommand_spec.rb +82 -30
  45. data/spec/helpers.rb +1 -1
  46. data/spec/mock_fission.rb +4 -4
  47. data/spec/mock_vsphere.rb +5 -5
  48. data/spec/mock_vsphere_helper.rb +1 -1
  49. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 1b562d104dc7f11a75248a241139e2fe7be4d3ca
4
- data.tar.gz: 6e5ac3722bae66a57d7d45fbe1193373192f46b1
3
+ metadata.gz: 7f5dbb3dbc5bdfbfb8b3faf9309c674fa6e07cf3
4
+ data.tar.gz: 35dcba5f1881fcb33c682151f9f06dab083fbe21
5
5
  SHA512:
6
- metadata.gz: 4f74e6abf79b59fafff8241e7151b6ac43701da54809a972fb267c87bedb53a1e9eb8ad7ba1dab4caac60faa598d4452511cac6595ef4ec552b9c0f9dd937235
7
- data.tar.gz: 43ef180c5e07267caa541bb48c091419df4d30ef0092c49a48fc9b25c33f2616b2a2f57e9ea5cfac5a8c612b82e2e90ffda91fa6e7dba4712ab6803511dacc18
6
+ metadata.gz: 9b64080cc40e949ca9359e27f9c3bbcd97a5d2af745f26dcb86f3807655231afd5a4e99ccebd4e33e8c4dcf308fecb25ba4ce1614859ffdff50ce1da9c8d055a
7
+ data.tar.gz: ac37b874e60d5b8aea0c8b4b63eb98ec2c612d78d7fbd86a37f41f2f4863d58db08c90b436bbae2165832801f5d9ceb337826d1b4779f730c0e0d5975026ce37
@@ -11,7 +11,18 @@ Tracking in this Changelog began for this project in version 3.25.0.
11
11
  If you're looking for changes from before this, refer to the project's
12
12
  git logs & PR history.
13
13
 
14
- # [Unreleased](https://github.com/puppetlabs/beaker/compare/3.34.0...master)
14
+ # [Unreleased](https://github.com/puppetlabs/beaker/compare/3.35.0...master)
15
+
16
+ # [3.35.0](https://github.com/puppetlabs/beaker/compare/3.34.0...3.35.0) - 2018-05-16
17
+
18
+ ### Fixed
19
+
20
+ - Report accurate location of generated smoke test
21
+ - Accept comma-separated tests for exec subcommand
22
+
23
+ ### Added
24
+
25
+ - Added optional ability to use ERB in nodeset YAML files
15
26
 
16
27
  # [3.34.0](https://github.com/puppetlabs/beaker/compare/3.33.0...3.34.0) - 2018-03-26
17
28
 
@@ -1,10 +1,25 @@
1
1
  test_name 'External Resources Test' do
2
2
  step 'Verify EPEL resources are up and available' do
3
- def epel_url_test(el_version)
3
+ def build_url(el_version)
4
4
  url_base = options[:epel_url]
5
5
  url_base = options[:epel_url_archive] if el_version == 5
6
- url = "#{url_base}/epel-release-latest-#{el_version}.noarch.rpm"
7
- curl_headers_result = default.exec(Command.new("curl -I #{url}"))
6
+ "#{url_base}/epel-release-latest-#{el_version}.noarch.rpm"
7
+ end
8
+
9
+ def epel_url_test(el_version)
10
+ url = build_url(el_version)
11
+ # -I option just asks for headers, not looking to download the package
12
+ curl_cmd = Command.new("curl -I #{url}")
13
+ host = default
14
+ curl_headers_result = Result.new(host, curl_cmd)
15
+ curl_fail_msg = "EPEL curl failed, waiting for fibonacci backoff to retry..."
16
+
17
+ repeat_fibonacci_style_for(10) do
18
+ curl_headers_result = host.exec(curl_cmd)
19
+ curl_succeeded = curl_headers_result.exit_code == 0
20
+ logger.info(curl_fail_msg) unless curl_succeeded
21
+ curl_succeeded
22
+ end
8
23
  assert_match(/200 OK/, curl_headers_result.stdout, "EPEL #{el_version} should be reachable at #{url}")
9
24
  end
10
25
 
@@ -91,7 +91,7 @@ hosts.each do |host|
91
91
  # Use env_id a key to delete
92
92
  env_param3 = "#{env_id}"
93
93
  env_value3 = "#{env_id}"
94
-
94
+
95
95
  host.add_env_var(env_param1,env_value1)
96
96
  host.add_env_var(env_param2,env_value2)
97
97
  host.add_env_var(env_param3,env_value3)
@@ -6,7 +6,7 @@ While Beaker provides the testing harness for much of the acceptance testing tha
6
6
 
7
7
  ### Product Coverage
8
8
 
9
- Beaker test coverage covers the LTS PE version, currently 2016.4.0, and the latest released version of PE, currently 2016.5.0.
9
+ Beaker test coverage covers the LTS PE version, currently 2016.4.0, and the latest released version of PE, currently 2016.5.0.
10
10
  Since there is only a single major version of Puppet itself currently supported, beaker only run tests on the latest y-release of Puppet 4, currently 4.8.z. This currently resolves to puppet-agent 1.8.x.
11
11
 
12
12
  ### Platform Coverage
@@ -16,10 +16,10 @@ The platforms that beaker covers in its regression testing are largely what is s
16
16
  ## Test Suite Phases
17
17
 
18
18
  ### Beaker Spec
19
- The initial step in Beaker's pipeline is to execute spec testing with supported and future rubies; 2.2.5 and 2.3.1.
19
+ The initial step in Beaker's pipeline is to execute spec testing with supported and future rubies; 2.2.5 and 2.3.1.
20
20
 
21
- ### Beaker Acceptance
22
- All acceptance tests use actual OS's with beaker installed and use beaker itself to verify that its own methods and classes are working.
21
+ ### Beaker Acceptance
22
+ All acceptance tests use actual OS's with beaker installed and use beaker itself to verify that its own methods and classes are working.
23
23
 
24
24
  * The Base tests are tests that do not require puppet be installed on the SUT. This includes much of the DSL and host helpers.
25
25
  * The puppet tests rely on puppet being installed in the pre-suite
@@ -11,9 +11,9 @@ stages as well.
11
11
 
12
12
  ## Administrivia
13
13
 
14
- - Beaker tickets live in the
14
+ - Beaker tickets live in the
15
15
  [BKR project](https://tickets.puppetlabs.com/issues/?jql=project%20%3D%20BKR)
16
- - Create a [Jira account](http://tickets.puppetlabs.com) to interact with them
16
+ - Create a [Jira account](http://tickets.puppetlabs.com) to interact with them
17
17
 
18
18
  ## Pre-Development States
19
19
 
@@ -39,14 +39,14 @@ person you need info from to move the ticket forward.
39
39
 
40
40
  This is the state for when a ticket has been triaged, but hasn't yet been
41
41
  estimated for work from someone on the Beaker team, or someone ready to
42
- take on the work. Any preliminary information needed to understand the
42
+ take on the work. Any preliminary information needed to understand the
43
43
  ticket (before investigation) should be gathered before this point.
44
44
 
45
45
  ### Ready for Engineering
46
46
 
47
47
  An accepted ticket that has been estimated should be put into the Ready for
48
- Engineering state. This does not necessarily mean that a ticket has been
49
- prioritized against other Beaker work, but prioritization should occur by
48
+ Engineering state. This does not necessarily mean that a ticket has been
49
+ prioritized against other Beaker work, but prioritization should occur by
50
50
  the time the issue has been picked up in a sprint.
51
51
 
52
52
  ## Development States
@@ -62,23 +62,23 @@ they're currently working on a particular issue.
62
62
  ### Ready for Merge
63
63
 
64
64
  Once a Pull Request (PR) is generated for an issue, the contributor should set
65
- the status to Ready for Merge. We do have a github integration setup, so if
66
- you've titled your PR correctly (according to our
67
- [contributor docs](/CONTRIBUTING.md)),
65
+ the status to Ready for Merge. We do have a github integration setup, so if
66
+ you've titled your PR correctly (according to our
67
+ [contributor docs](/CONTRIBUTING.md)),
68
68
  it will be linked from the JIRA ticket.
69
69
 
70
- In the Beaker project, we leave the assignee as the person who wrote the
70
+ In the Beaker project, we leave the assignee as the person who wrote the
71
71
  proposed change, so that they know that they have to keep pushing for their
72
72
  code to be merged.
73
73
 
74
74
  ### Resolved
75
75
 
76
- Once your PR is merged, then you can Resolve your ticket.
76
+ Once your PR is merged, then you can Resolve your ticket.
77
77
 
78
78
  **NOTE** that when you do this, you should set the FixedVersion to
79
79
 
80
80
  BKR.next
81
-
82
- The reason that we do this now and not before is that we use this field to
81
+
82
+ The reason that we do this now and not before is that we use this field to
83
83
  autogenerate our release notes. We want to make sure that we capture only
84
84
  work that is _in_ the next release, not work that's _intended_ for it.
@@ -1,6 +1,6 @@
1
1
  ## So What Are Types Anyway?
2
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.
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
4
 
5
5
  The two older types are represented by the `foss` and `pe` values.
6
6
 
@@ -13,7 +13,7 @@ Changes to the default options can be made by editing the configuration file.
13
13
  Here are some examples:
14
14
 
15
15
  **Eg 1: Changing color of a particular type of message**
16
- Add the following to the hosts file to change the color of `success` messages to `GREEN` and `warning` messages to `YELLOW`.
16
+ Add the following to the hosts file to change the color of `success` messages to `GREEN` and `warning` messages to `YELLOW`.
17
17
  To get the color-code corresponding to a color, refer to: [Colors Supported by Beaker] (https://github.com/puppetlabs/beaker/blob/master/lib/beaker/logger.rb#L14-L32)
18
18
 
19
19
  HOSTS:
@@ -9,13 +9,13 @@ is that the **TestCase#hosts** array is modified to only contain the hosts that
9
9
 
10
10
  Full method documentation here:
11
11
 
12
- * [confine](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Structure#confine-instance_method)
12
+ * [confine](http://www.rubydoc.info/github/puppetlabs/beaker/Beaker/DSL/Structure#confine-instance_method)
13
13
 
14
14
  ## How does the optional Array<Host> parameter work?
15
15
 
16
16
  However, if you pass in the optional Array<Host> to the method, the criteria will be applied to this hosts array
17
17
  (not **TestCase#hosts**). Subsequently, any of the hosts contained in **TestCase#hosts** that were not included in the Array<Host>
18
- passed to the method, will remain in **TestCase#hosts**. But any hosts that were filtered out by the criteria match
18
+ passed to the method, will remain in **TestCase#hosts**. But any hosts that were filtered out by the criteria match
19
19
  will be overwritten.
20
20
 
21
21
  Take the following example:
@@ -69,7 +69,7 @@ is being applied directly to **TestCase#hosts** (which contains all hosts).
69
69
 
70
70
  `confine :except, { :platform => 'el-7-x86_64' }`
71
71
 
72
- Will return two hosts (ubuntu_master and ubuntu_agent).
72
+ Will return two hosts (ubuntu_master and ubuntu_agent).
73
73
 
74
74
  In order to limit the hosts to only the ubuntu agent, you would need to use:
75
75
 
@@ -67,48 +67,48 @@ Hypervisor for w2k8r2 is none
67
67
  Hypervisor for w2k3r2 is none
68
68
  Beaker::Hypervisor, found some none boxes to create
69
69
 
70
- pe-centos6 10:55:27$ which curl
70
+ pe-centos6 10:55:27$ which curl
71
71
  /usr/bin/curl
72
72
 
73
73
  pe-centos6 executed in 0.14 seconds
74
74
 
75
- pe-centos6 10:55:27$ which ntpdate
75
+ pe-centos6 10:55:27$ which ntpdate
76
76
  /usr/sbin/ntpdate
77
77
 
78
78
  pe-centos6 executed in 0.01 seconds
79
79
 
80
- w2k8r2 10:55:27$ which curl
80
+ w2k8r2 10:55:27$ which curl
81
81
  /bin/curl
82
82
 
83
83
  w2k8r2 executed in 0.42 seconds
84
84
 
85
- w2k3r2 10:55:27$ which curl
85
+ w2k3r2 10:55:27$ which curl
86
86
  /bin/curl
87
87
 
88
88
  w2k3r2 executed in 0.29 seconds
89
89
  No tests to run for suite 'pre_suite'
90
90
  Begin tests/trypry.rb
91
91
 
92
- pe-centos6 10:55:28$ echo hello
92
+ pe-centos6 10:55:28$ echo hello
93
93
  hello
94
94
 
95
95
  pe-centos6 executed in 0.01 seconds
96
96
 
97
- pe-centos6 10:55:28$ echo test block
97
+ pe-centos6 10:55:28$ echo test block
98
98
  test block
99
99
 
100
100
  pe-centos6 executed in 0.01 seconds
101
101
  block result.stdout: test block
102
102
  block result.raw_stdout: test block
103
103
 
104
- pe-centos6 10:55:28$ echo test block, built in functions
104
+ pe-centos6 10:55:28$ echo test block, built in functions
105
105
  test block, built in functions
106
106
 
107
107
  pe-centos6 executed in 0.00 seconds
108
108
  built in function stdout: test block, built in functions
109
109
  built in function stderr:
110
110
 
111
- pe-centos6 10:55:28$ echo no block
111
+ pe-centos6 10:55:28$ echo no block
112
112
  no block
113
113
 
114
114
  pe-centos6 executed in 0.00 seconds
@@ -137,7 +137,7 @@ Here's some sample console calls:
137
137
  => [pe-centos6, w2k8r2, w2k3r2]
138
138
  [2] pry(#<Beaker::TestCase>)> on hosts[1], 'echo hello'
139
139
 
140
- w2k8r2 10:54:11$ echo hello
140
+ w2k8r2 10:54:11$ echo hello
141
141
  hello
142
142
 
143
143
  w2k8r2 executed in 0.07 seconds
@@ -153,7 +153,7 @@ w2k8r2 executed in 0.07 seconds
153
153
  @stdout="hello\n">
154
154
  [3] pry(#<Beaker::TestCase>)> on hosts[1], 'ls /cygdrive/c/Documents\ and\ Settings/All\ Users/Application\ Data/'
155
155
 
156
- w2k8r2 10:56:15$ ls /cygdrive/c/Documents\ and\ Settings/All\ Users/Application\ Data/
156
+ w2k8r2 10:56:15$ ls /cygdrive/c/Documents\ and\ Settings/All\ Users/Application\ Data/
157
157
  Application Data
158
158
  Desktop
159
159
  Documents
@@ -184,7 +184,7 @@ w2k8r2 executed in 0.09 seconds
184
184
  "Application Data\nDesktop\nDocuments\nFavorites\nMicrosoft\nPackage Cache\nStart Menu\nTemplates\nVMware\nbeaker.gemspec\nntuser.pol\n">
185
185
  [4] pry(#<Beaker::TestCase>)> result = on hosts[1], 'ls /cygdrive/c/Documents\ and\ Settings/All\ Users/Application\ Data/'
186
186
 
187
- w2k8r2 10:56:34$ ls /cygdrive/c/Documents\ and\ Settings/All\ Users/Application\ Data/
187
+ w2k8r2 10:56:34$ ls /cygdrive/c/Documents\ and\ Settings/All\ Users/Application\ Data/
188
188
  Application Data
189
189
  Desktop
190
190
  Documents
@@ -239,10 +239,10 @@ Consider this example test case _test.rb_, which is going to fail:
239
239
  assert_equal(important_expected_value, actual_value, 'This product is faulty')
240
240
  end
241
241
 
242
- You can run this test using `beaker -t test.rb` or (to use the `run` subcommand and just run the test and bypass host provisioning etc) `beaker run -t test.rb`
242
+ You can run this test using `beaker -t test.rb` or (to use the `run` subcommand and just run the test and bypass host provisioning etc) `beaker run -t test.rb`
243
243
  It fails.
244
244
 
245
- Now try `beaker run -t test.rb --debug-errors`
245
+ Now try `beaker run -t test.rb --debug-errors`
246
246
  This will enter a pry console when the failure occurs.
247
247
 
248
248
  * Assert expected matches actual
@@ -250,9 +250,9 @@ This will enter a pry console when the failure occurs.
250
250
  Expected: 3
251
251
  Actual: 2>
252
252
  HINT: Use the pry 'backtrace' and 'up' commands to navigate to the test code
253
-
253
+
254
254
  From: /home/puppet/code/beaker/lib/beaker/dsl/structure.rb @ line 51 Beaker::DSL::Structure#step:
255
-
255
+
256
256
  38: def step step_name, &block
257
257
  39: logger.notify "\n* #{step_name}\n"
258
258
  40: set_current_step_name(step_name)
@@ -271,7 +271,7 @@ This will enter a pry console when the failure occurs.
271
271
  53: logger.step_out()
272
272
  54: end
273
273
  55: end
274
-
274
+
275
275
  [1] pry(#<Beaker::TestCase>)>
276
276
 
277
277
  Because beaker is catching the exception, pry is showing you beaker code. But you can navigate to your own test code using the `backtrace` and `up` commands.
@@ -288,7 +288,7 @@ Because beaker is catching the exception, pry is showing you beaker code. But yo
288
288
  The arrow indicates pry is showing code at the top of the stack trace. At position #2 in the stack you can see line 5 of test.rb - this is the actual test code that failed. You can navigate there by entering the `up` command twice.
289
289
 
290
290
  From: /home/puppet/code/beaker/test.rb @ line 5 self.run_test:
291
-
291
+
292
292
  1: test_name 'An important aspect of my product'
293
293
  2:
294
294
  3: important_expected_value = 3
@@ -297,7 +297,7 @@ The arrow indicates pry is showing code at the top of the stack trace. At positi
297
297
  6: actual_value = 2
298
298
  7: assert_equal(important_expected_value, actual_value, 'This product is faulty')
299
299
  8: end
300
-
300
+
301
301
  [2] pry(#<Beaker::TestCase>)>
302
302
 
303
303
  > **NOTE:** Bear in mind that though you are navigating through your code here; pry is not rewinding code execution. When you exit pry, beaker will continue its execution from the top of the backtrace, failing the test due to the error that occurred.
@@ -307,7 +307,7 @@ From here, you can examine variables in your test. If you have hosts provisioned
307
307
  ## Defining external breakpoints with byebug
308
308
  This method is perhaps the least intuitive to use; but combines the advantages of letting you pick the line(s) of code to set breakpoints on; and being able to debug without needing to edit your test code directly. It is sometimes desirable to debug a test without changing the test's code at all; for example, if you want to compare a test at two or more different git commits, your test source needs to remain unmodified from its committed form.
309
309
 
310
- byebug allows you to externally define breakpoints to keep them separate from your source code.
310
+ byebug allows you to externally define breakpoints to keep them separate from your source code.
311
311
 
312
312
  ### Example
313
313
  Consider the following test file test.rb:
@@ -13,7 +13,7 @@ To load the SSH agent and add your SSH key, run the following:
13
13
  eval `ssh-agent`
14
14
  ssh-add <SSH key file path>
15
15
  ~~~
16
-
16
+
17
17
  A common example of where this functionality would be required for beaker developers, is in testing subcommands. There, we setup multiple SUTs that need to communicate between themselves. To run our subcommand testing to verify that you have agent forwarding setup correctly, run the following:
18
18
 
19
19
  ~~~bash
@@ -4,5 +4,5 @@ This directory contains docs explaining any peculiarities or details of a partic
4
4
  OS's host implementation.
5
5
 
6
6
  If you don't see a file here for an OS, then it's either not yet documented
7
- (feel free to help us out here!), or it should conform to our normal host
7
+ (feel free to help us out here!), or it should conform to our normal host
8
8
  abstraction assumptions.
@@ -25,7 +25,7 @@ file line that looks like this in our configuration:
25
25
  <hostname>:
26
26
  ...
27
27
  vrf: management
28
-
28
+
29
29
  B. All Cisco hosts will also require a user to be set on the
30
30
  hosts. This is because they don't allow ssh'ing as the root user,
31
31
  which is one of the main assumptions that Beaker operates under in
@@ -36,7 +36,7 @@ Puppet and its community have made several gems that support different
36
36
  hypervisors with beaker, the reason for this is that we're looking to decrease Beaker's
37
37
  dependency footprint, and hypervisors are one of the places where we can often
38
38
  increase the load across all Beaker uses to benefit a small group that uses a
39
- particular hypervisor.
39
+ particular hypervisor.
40
40
 
41
41
  In order to offset this, we've made a listing of gems and community-supported forks
42
42
  that support other external hypervisors. Please check them out if you'd like to use
@@ -18,7 +18,7 @@ hashes, where each hash specifies a platform to confine, based on the
18
18
  tags included in the test. The local options file key is
19
19
  `:platform_tag_confines`.
20
20
 
21
- An example local options file is included
21
+ An example local options file is included
22
22
  below (remember that local options files have to be readable into
23
23
  beaker as a ruby hash):
24
24
 
@@ -58,7 +58,7 @@ UI confine example like this:
58
58
 
59
59
  "ui" tests will be confined away from ubuntu-1404 hosts, because
60
60
  "TODO: We have not applied the UI tests to Ubuntu yet"
61
-
61
+
62
62
 
63
63
  ## But Why Do We Need These?
64
64
 
@@ -70,13 +70,13 @@ the directory that holds all of the log files for a particular beaker run. The
70
70
  short way to access that directory is to look into the `log/latest` path, which
71
71
  is a symlink to the actual log directory for the run.
72
72
 
73
- The `hosts_preserved.yml` file generated by a run differs from the original
73
+ The `hosts_preserved.yml` file generated by a run differs from the original
74
74
  hosts file passed into Beaker in a number of ways:
75
75
 
76
76
  - all suites are emptied
77
77
  - the host names are updated to point to the IPs (or hostnames) of the VMs since
78
78
  they exist and no longer need provisioning
79
- - the `provision` option is set to `false` (check
79
+ - the `provision` option is set to `false` (check
80
80
  [Beaker Test Run's](../tutorials/test_run.md) provisioning section for details).
81
81
 
82
82
  Beaker will also output the lines included below at the end of the run:
@@ -13,7 +13,7 @@ You will also need to have Beaker installed as part of your bundle.
13
13
  When you run:
14
14
 
15
15
  rake --tasks
16
-
16
+
17
17
  from your project dir, you should see (as well as any rake tasks you have defined locally)
18
18
 
19
19
  rake beaker:test[hosts,type] # Run Beaker Acceptance
@@ -41,9 +41,8 @@ Your options file would look something like:
41
41
  To use the more generic test task, you will need to pass in the type as the 2nd argument to the rake task:
42
42
 
43
43
  rake beaker:test[,smoke]
44
-
44
+
45
45
  This will assume that you have created the file:
46
46
 
47
47
  acceptance/beaker-smoke.cfg
48
-
49
-
48
+
@@ -1,7 +1,7 @@
1
1
  # Test arbitrary beaker versions without modifying test code
2
2
 
3
3
  In order to adjust the beaker version used without commiting a change to a Gemfile,
4
- we at Puppet often use a method in our code that changes the dependency based on the
4
+ we at Puppet often use a method in our code that changes the dependency based on the
5
5
  existence of ENV variables in the shell that beaker is executing from. The code
6
6
  itself looks like this:
7
7
 
@@ -19,7 +19,7 @@ end
19
19
 
20
20
  ```
21
21
 
22
- Once this method definition is in place in the Gemfile, we can call it in a gem command, like
22
+ Once this method definition is in place in the Gemfile, we can call it in a gem command, like
23
23
  this:
24
24
 
25
25
  ```ruby
@@ -40,7 +40,7 @@ git://github.com/puppetlabs/beaker.git#master
40
40
  ```
41
41
  file://../relative/path/to/beaker
42
42
  ```
43
- By adjusting the shell environment that beaker is running in, we can modify what version of
43
+ By adjusting the shell environment that beaker is running in, we can modify what version of
44
44
  beaker is installed by bundler on your test coordinator without modifying any of the test
45
45
  code. This strategy can be used for any gem dependency, and is often used when testing
46
46
  [beaker libraries](../concepts/beaker_libraries.md) at Puppet.