# beaker - History
## Tags
* [LATEST - 12 Aug, 2014 (0cb4134e)](#LATEST)
* [beaker1.17.0 - 12 Aug, 2014 (fb482b56)](#beaker1.17.0)
* [beaker1.16.0 - 17 Jul, 2014 (c1267696)](#beaker1.16.0)
* [beaker1.15.0 - 8 Jul, 2014 (82bb4ef9)](#beaker1.15.0)
* [beaker1.14.1 - 3 Jul, 2014 (d2e750d5)](#beaker1.14.1)
* [beaker1.14.0 - 3 Jul, 2014 (cf8ea838)](#beaker1.14.0)
* [beaker1.13.1 - 23 Jun, 2014 (aa09552d)](#beaker1.13.1)
* [beaker1.13.0 - 20 Jun, 2014 (5e80c638)](#beaker1.13.0)
* [beaker1.12.2 - 12 Jun, 2014 (a31ba183)](#beaker1.12.2)
* [beaker1.12.1 - 30 May, 2014 (36b14dc7)](#beaker1.12.1)
* [beaker1.12.0 - 21 May, 2014 (591d3595)](#beaker1.12.0)
* [beaker1.11.2 - 16 May, 2014 (f28c387b)](#beaker1.11.2)
* [beaker1.11.1 - 15 May, 2014 (f684a724)](#beaker1.11.1)
* [beaker1.11.0 - 8 May, 2014 (a389e3d1)](#beaker1.11.0)
* [beaker1.10.0 - 22 Apr, 2014 (fbef5d2b)](#beaker1.10.0)
* [beaker1.9.1 - 27 Mar, 2014 (747ee73e)](#beaker1.9.1)
* [beaker1.9.0 - 26 Mar, 2014 (7feb8327)](#beaker1.9.0)
* [beaker1.8.2 - 21 Mar, 2014 (0f848be8)](#beaker1.8.2)
* [beaker1.8.1 - 19 Mar, 2014 (4de3450e)](#beaker1.8.1)
* [beaker1.8.0 - 17 Mar, 2014 (0cea9162)](#beaker1.8.0)
* [beaker1.7.0 - 19 Feb, 2014 (0ad045fe)](#beaker1.7.0)
* [beaker1.6.2 - 31 Jan, 2014 (ed048e29)](#beaker1.6.2)
* [beaker1.6.1 - 30 Jan, 2014 (468bbb6f)](#beaker1.6.1)
* [beaker1.6.0 - 30 Jan, 2014 (3787bdb8)](#beaker1.6.0)
* [beaker1.5.0 - 29 Jan, 2014 (78db5afb)](#beaker1.5.0)
* [beaker1.4.1 - 27 Jan, 2014 (bc6a7d32)](#beaker1.4.1)
* [beaker1.4.0 - 24 Jan, 2014 (c24f0194)](#beaker1.4.0)
* [beaker1.3.2 - 23 Jan, 2014 (39bbbf0c)](#beaker1.3.2)
* [beaker1.3.1 - 18 Dec, 2013 (08b59809)](#beaker1.3.1)
* [beaker1.3.0 - 13 Dec, 2013 (5815f829)](#beaker1.3.0)
* [beaker1.2.0 - 5 Dec, 2013 (59070752)](#beaker1.2.0)
* [beaker1.0.1 - 25 Nov, 2013 (70f55b11)](#beaker1.0.1)
* [beaker1.0.1pre - 20 Nov, 2013 (8cffaf28)](#beaker1.0.1pre)
* [beaker1.0.0 - 8 Nov, 2013 (c85186b7)](#beaker1.0.0)
* [beaker0.0.0 - 20 Aug, 2013 (c49dc525)](#beaker0.0.0)
* [pe3.0 - 6 Jun, 2013 (0b52d9c5)](#pe3.0)
* [pe2.8.1 - 15 Apr, 2013 (7f527ff2)](#pe2.8.1)
* [pe2.8.0 - 26 Mar, 2013 (6b79859e)](#pe2.8.0)
* [pe2.7.1 - 8 Feb, 2013 (9826e1ca)](#pe2.7.1)
* [pe2.7.0 - 16 Nov, 2012 (08c2bd19)](#pe2.7.0)
* [pe2.6.1 - 9 Oct, 2012 (58edb963)](#pe2.6.1)
* [pe2.6.0 - 17 Sep, 2012 (592ad45d)](#pe2.6.0)
* [pe2.5.3 - 23 Jul, 2012 (0eb96550)](#pe2.5.3)
* [pe2.5.2 - 9 Jul, 2012 (eaa93833)](#pe2.5.2)
* [pe2.5.0 - 27 Mar, 2012 (232e21a5)](#pe2.5.0)
* [pe2.0.3 - 21 Feb, 2012 (492ff756)](#pe2.0.3)
* [pe2.0.2 - 3 Feb, 2012 (e36f0d22)](#pe2.0.2)
* [pe2.0.1 - 31 Jan, 2012 (3a118201)](#pe2.0.1)
* [pe2.0.0 - 31 Jan, 2012 (8d064e33)](#pe2.0.0)
* [pe2.0 - 11 Nov, 2011 (4d7b65b6)](#pe2.0)
* [pe1.2 - 6 Sep, 2011 (ba3dadd2)](#pe1.2)
## Details
### LATEST - 12 Aug, 2014 (0cb4134e)
* (HISTORY) update HISTORY.md for 1.17.1 gem (0cb4134e)
* (GEM) create beaker 1.17.1 gem (07b67f32)
* Merge pull request #397 from anodelman/maint (3e86c6f8)
```
Merge pull request #397 from anodelman/maint
(MAINT) add ability to generate history for branch other than 'master'
```
* Merge pull request #398 from nicklewis/revert-jvm-master (d9c67d1e)
```
Merge pull request #398 from nicklewis/revert-jvm-master
Revert "(QENG-997) Add PE installer answer for jvm puppet."
```
* Revert "(QENG-997) Add PE installer answer for jvm puppet." (215e115f)
```
Revert "(QENG-997) Add PE installer answer for jvm puppet."
This reverts commit b06b6313de24da82a031b6b04dc95042812b4445.
The installer doesn't actually function with this answer set, so we
certainly shouldn't be making it the default.
```
* (MAINT) add ability to generate history for branch other than 'master' (76ad94d5)
```
(MAINT) add ability to generate history for branch other than 'master'
- want to be able to generate a new HISTORY.md file based upon a
provided branch name
```
### beaker1.17.0 - 12 Aug, 2014 (fb482b56)
* Merge pull request #396 from anodelman/make-gem (fb482b56)
```
Merge pull request #396 from anodelman/make-gem
(GEM) create beaker 1.17.0 gem
```
* (HISTORY) add history for 1.17.0 gem (c04acf4d)
* (GEM) create beaker 1.17.0 gem (b2528072)
* Merge pull request #336 from anodelman/higgs-installer (2d65b8d0)
```
Merge pull request #336 from anodelman/higgs-installer
(QENG-751) Request for Higgs support in installing beaker
```
* Merge pull request #391 from waynr/fix/qeng-903-jvm-puppet-debian-support (d0719d5d)
```
Merge pull request #391 from waynr/fix/qeng-903-jvm-puppet-debian-support
(QENG-903) Debian platform support for jvm-puppet.
```
* Merge pull request #395 from waynr/feature/QENG-922-puppet-user-group-methods (3ebc92c1)
```
Merge pull request #395 from waynr/feature/QENG-922-puppet-user-group-methods
(QENG-922) Add `puppet_user` and `puppet_group` DSL methods.
```
* Merge pull request #390 from jpartlow/issue/master/qeng-188-foss-service-restarts-pe-unchanged (884cb9ae)
```
Merge pull request #390 from jpartlow/issue/master/qeng-188-foss-service-restarts-pe-unchanged
(QENG-188) Allow foss runs to use service scripts (pe unchanged)
```
* Merge pull request #385 from anodelman/scp-repair (6e0fcbaa)
```
Merge pull request #385 from anodelman/scp-repair
(QENG-1012) (gh-143) beaker scp moving data one byte at a time
```
* Merge pull request #387 from colinPL/qeng_1032 (32160885)
```
Merge pull request #387 from colinPL/qeng_1032
(QENG-1032) Fix for tests without a master host
```
* Merge pull request #392 from anodelman/maint (75b61a36)
```
Merge pull request #392 from anodelman/maint
(MAINT)(gh-210) series of commits to get beaker smoketest working in ec2
```
* (gh-210) Setting PATH, ignored :environment option (ad22e590)
```
(gh-210) Setting PATH, ignored :environment option
- we do not correctly handle adding additional environment variables to
puppet commands, this patch allows you to add those env vars
```
* Merge pull request #389 from waynr/revert/qeng-188 (42f28681)
```
Merge pull request #389 from waynr/revert/qeng-188
Revert "(QENG-188) Allow foss runs to use service scripts, take 2"
```
* Revert "(QENG-188) Allow foss runs to use service scripts, take 2" (1d9300bc)
```
Revert "(QENG-188) Allow foss runs to use service scripts, take 2"
This reverts commit 577fce4dcaf4c6879157fd51777d6691eae1496d.
```
* Merge pull request #384 from jpartlow/issue/master/qeng-188-better-foss-service-restarts (4c991d24)
```
Merge pull request #384 from jpartlow/issue/master/qeng-188-better-foss-service-restarts
(QENG-188) Allow foss runs to use service scripts, take 2
```
* (QENG-1032) Fix for tests without a master host (76329613)
```
(QENG-1032) Fix for tests without a master host
If a master role is not defined in the current test's config, then
setting a default node will fail. The code is expecting "hosts" to be a
list, but it is actually a hash. This commit fixes this issue and
adds a new spec test to validate a non-master single node is set as
default.
```
* (QENG-903) Debian platform support for jvm-puppet. (e1c336db)
```
(QENG-903) Debian platform support for jvm-puppet.
A couple simple fixes for previously unvisited code paths.
Signed-off-by: Wayne
```
* Merge pull request #330 from anodelman/scp-ignore (5144958f)
```
Merge pull request #330 from anodelman/scp-ignore
(QENG-762) add support to beaker scp_to/scp_from to ignore files of ...
```
* Merge pull request #371 from anodelman/xml (7d1771f4)
```
Merge pull request #371 from anodelman/xml
(QENG-845) Beaker junit xml: XML Parsing error
```
* (MAINT) aws_sdk support repairs (8d318540)
```
(MAINT) aws_sdk support repairs
- vmhostname was being set incorrectly and breaking PE installation
- move instance metadata tag addition to after instance is running
- /etc/hosts generation fixed so that it has entries for all other hosts
on each individual host
- add agent listen port (8139)
- fix zombie killing by correctly handling volumes that may not exist
when attempted deletion occurs
```
* (QENG-1012) (gh-143) beaker scp moving data one byte at a time (8a4a72a8)
```
(QENG-1012) (gh-143) beaker scp moving data one byte at a time
- force chunk_size during transfer
- print more debug metrics so that we can monitor how quickly files are
moved
```
* Merge pull request #362 from anodelman/revert-343-revert-237-role-repair (82f759c5)
```
Merge pull request #362 from anodelman/revert-343-revert-237-role-repair
(QENG-431) expanded and improved role support in beaker
```
* Merge pull request #381 from waynr/feature/qeng-969-add-modify-tk-config-dsl-method (30971c2b)
```
Merge pull request #381 from waynr/feature/qeng-969-add-modify-tk-config-dsl-method
(QENG-969) Fix bug introduced with last patch.
```
* Merge pull request #370 from anodelman/junit (a3733322)
```
Merge pull request #370 from anodelman/junit
(QENG-819) stderr collected for each testcase is incorrect...
```
* Merge pull request #375 from waynr/feature/qeng-997-add-pe-installer-answer-for-jvm-puppet (d6f8792a)
```
Merge pull request #375 from waynr/feature/qeng-997-add-pe-installer-answer-for-jvm-puppet
(QENG-997) Add PE installer answer for jvm puppet.
```
* Merge pull request #374 from justinstoller/bug/master/QENG-989_gem_install_on_solaris (fd4e7279)
```
Merge pull request #374 from justinstoller/bug/master/QENG-989_gem_install_on_solaris
(QENG-989,990) Clean up open source install rough edges
```
* (QENG-969) Fix bug introduced with last patch. (ab510c71)
```
(QENG-969) Fix bug introduced with last patch.
Last patch addressed some PR comments regarding coding style and led to bug
which is now fixed.
Signed-off-by: Wayne
```
* Merge pull request #378 from waynr/feature/qeng-969-add-modify-tk-config-dsl-method (4449be0f)
```
Merge pull request #378 from waynr/feature/qeng-969-add-modify-tk-config-dsl-method
Feature/qeng 969 add modify tk config dsl method
```
* (MAINT) add 61613 to open port list for ec2 instances (fa34996c)
```
(MAINT) add 61613 to open port list for ec2 instances
- 61613 needs to be open for MCO to work correctly
```
* Merge pull request #355 from doug-rosser/atop_integration (3c09294c)
```
Merge pull request #355 from doug-rosser/atop_integration
(QENG-807) add --collect-perf-data option, rspec tests, and yard docs
```
* (QENG-969) Addresss PR feedback. (ed31f189)
```
(QENG-969) Addresss PR feedback.
Signed-off-by: Wayne
```
* (QENG-922) Add `puppet_user` and `puppet_group` DSL methods. (2cf5ef87)
```
(QENG-922) Add `puppet_user` and `puppet_group` DSL methods.
Signed-off-by: Wayne
```
* Remove dead line of code (a423d969)
* (QENG-969) Update `with_puppet_running_on` spec test. (db5b45f1)
```
(QENG-969) Update `with_puppet_running_on` spec test.
Test that `with_puppet_running_on` actually uses `modify_tk_conf` when the
circumstances are right.
Signed-off-by: Wayne
```
* (QENG-969) Add modify_tk_config DSL method. (1aad9e7d)
```
(QENG-969) Add modify_tk_config DSL method.
Comes with some "private" helper methods for reading tk config strings and
merging or replacing the SUT config file using Beaker::Options::OptionsHash
Signed-off-by: Wayne
```
* (QENG-997) Add PE installer answer for jvm puppet. (b06b6313)
```
(QENG-997) Add PE installer answer for jvm puppet.
Signed-off-by: Wayne
```
* (QENG-989,990) Clean up open source install rough edges (408b730a)
```
(QENG-989,990) Clean up open source install rough edges
This ensures that puppet and friends are available after gem installs on
Solaris and Debian. It also makes sure that the config directory and
hiera.yaml file are aways present. The former change fixes QENG-989 while
the latter fixes QENG-990).
[edit: to address pull request comments]
```
* Merge pull request #365 from anodelman/maint (01c7ac7a)
```
Merge pull request #365 from anodelman/maint
(QENG-941) create contributor documentation for beaker
```
* Merge pull request #369 from anodelman/options-hash (9215548a)
```
Merge pull request #369 from anodelman/options-hash
(gh-333) Typo in method name ('has' instead of 'hash') in ...
```
* Merge pull request #296 from anodelman/confine-agents (78a75ce6)
```
Merge pull request #296 from anodelman/confine-agents
(QENG-758) add ability to select a group a beaker hosts based upon...
```
* Merge pull request #248 from justinstoller/feature/master/QENG-515-debug_env_vars (4329e6b8)
```
Merge pull request #248 from justinstoller/feature/master/QENG-515-debug_env_vars
(QENG-515) Provide Important Env Vars Set in Debug Output
```
* (QENG-845) Beaker junit xml: XML Parsing error (d33c710e)
```
(QENG-845) Beaker junit xml: XML Parsing error
- need to strip out invalid characters from strings before printing to
xml, these characters are still invalid even if wrapped in a cdata
tag
```
* (QENG-819) stderr collected for each testcase is incorrect... (8a5ffb15)
```
(QENG-819) stderr collected for each testcase is incorrect...
...(as seen in beaker xml output)
- keep track of the last result generated through the ssh connection
- add the last stderr to the junit xml output
- clear the collected last result before each test case
```
* (gh-333) Typo in method name ('has' instead of 'hash') in ... (fa93b233)
```
(gh-333) Typo in method name ('has' instead of 'hash') in ...
... options_hash.rb (line 101)
- yup, fix the typo
```
* Merge pull request #368 from anodelman/ec2-killer (73fe9788)
```
Merge pull request #368 from anodelman/ec2-killer
(QENG-968) automate cleanup of zombie ec2 beaker instances generated by jenkins smoketests
```
* Merge pull request #367 from anodelman/move-to-ec2 (62ddb7dd)
```
Merge pull request #367 from anodelman/move-to-ec2
(QENG-844) move beaker smoketests over to ec2
```
* (QENG-968) automate cleanup of zombie ec2 beaker instances... (505a80fb)
```
(QENG-968) automate cleanup of zombie ec2 beaker instances...
... generated by jenkins smoketests
- add support to aws_sdk hypervisor to kill zombies that have alive
longer than a given amount of hours
- make it possible to run beaker without a hosts_file, thus making it a
script executor
```
* Merge pull request #321 from zaphod42/issue/master/race-in-stopping-master (75105eba)
```
Merge pull request #321 from zaphod42/issue/master/race-in-stopping-master
(QENG-840) Replace puppet.conf after stopping master
```
* (QENG-844) move beaker smoketests over to ec2 (1ee634e3)
```
(QENG-844) move beaker smoketests over to ec2
- add 'lsb-release' to required packages for debian boxes, it is not in
our default ami's
```
* (maint) Create default for master-start-curl-retries (2f8bf654)
```
(maint) Create default for master-start-curl-retries
The master-start-curl-retries option did not have a default before.
Without the default it was possible to end up with a comparison against
null when retrying a check with curl (for checking that services are
running). This adds a default of 0 (no retries) to the presets.
```
* (QENG-941) create contributor documentation for beaker (5b1fc8a9)
```
(QENG-941) create contributor documentation for beaker
- create CONTRIBUTING.md
- covers steps necessary before PRs will be merged into Beaker
```
* (QENG-431) (cleanup + split out filtering) expanded and improved role support in beaker (83f8aed1)
```
(QENG-431) (cleanup + split out filtering) expanded and improved role support in beaker
- split out filtering from applying the block to hosts
- block_on now determines if we have a filter or not
- run_block_on accepts both a set of hosts and an optional filter
```
* (QENG-431) (cleanup) expanded and improved role support in beaker (24ba4467)
```
(QENG-431) (cleanup) expanded and improved role support in beaker
- cleanup in response to review comments
```
* Revert "Revert "(QENG-431) expanded and improved role support in beaker"" (2e0b33b8)
* Clean up and document reproduction info methods in Beaker::CLI (fbb11f82)
* (maint) Remove unneeded modifications to File (975ff81a)
```
(maint) Remove unneeded modifications to File
These modifications to the FakeFS::File class do not appear to be
needed. When they are removed all of the tests continue to work as
before.
```
* (QENG-751) Request for Higgs support in installing beaker (ced78c55)
```
(QENG-751) Request for Higgs support in installing beaker
- adds install_higgs command
- executes against master node
- downloads pe packages based upon pe_ver/pe_dir
- goes up to the point in the install where human interaction is
required (notices indication in install log that a link has been
provided to a web server)
```
* (QENG-840) Replace puppet.conf after stopping master (ae264bed)
```
(QENG-840) Replace puppet.conf after stopping master
A webrick master watches the puppet.conf file and will try to reload and
reapply the settings catalog when it changes. The with_puppet_running_on
method gets into a race with this behavior, plus bug PUP-2834, because
it puts the backed up puppet.conf back into place *before* trying to
shut down the master process. This caused the master to periodically
read the new configuration, fail in applying it, crash, and then beaker
would try to kill the process. The process was already dead and the kill
command ends up failing. This then causes the test to fail.
This changes it so that for webrick masters, the backed up file isn't
moved back into place until *after* the master has been shut down. Since
rack masters don't ever try to reread the config file, this doesn't
affect them. Also, in the rack case, the file needs to be moved into
place *before* the master is stopped since it is actually fully
restarted.
```
* (QENG-762) add support to beaker scp_to/scp_from to ignore files of ... (53fce7cd)
```
(QENG-762) add support to beaker scp_to/scp_from to ignore files of ...
... certain name/type
- added support to scp_to for an ignore list of files/dirs. Does not
support globbing.
```
* (QENG-807) add --collect-perf-data option, rspec tests, and yard docs (8d1a891d)
* (QENG-188) Allow foss runs to use service scripts, take 2 (577fce4d)
```
(QENG-188) Allow foss runs to use service scripts, take 2
Prior to this commit, any run of beaker with a non-pe master that
attempted to stand up a master with a particular configuration in order
to test against it using the with_puppet_running_on() helper would
always stand up a webrick master by executing `puppet master ` and
then later stop it with `kill`.
The platform team needs to be able to run acceptance suites in which the
puppetmaster is started/stopped using package provided init scripts, or
by restarting apache if a passenger puppetmaster package is installed.
This PR takes the approach of enhancing Beaker::Host with a few query
methods controlled by host properties, either set in the hosts.cfg, or
directly on a master Beaker::Host instance during the execution of a
setup step. The added properties are:
* 'use-service' : if true, service scripts will be used instead of
manually starting a webrick master
* 'passenger' : if true, indicates a passenger package has been
installed, and by default graceful service restarts will be used
* 'puppetservice' : the 'puppetservice' property has been added to the
Beaker::Host::Unix.foss_defaults with the value of 'puppetmaster'. It
should be set to the appropriate service script name for passenger if a
passenger package has been installed.
* 'graceful-restarts' : can be set false if you want to stop/start with
service scripts rather than use graceful restarts when running with
passenger
The Beaker::Host#uses_passenger! call may be used to set a host
appropriately for passenger.
The graceful restarts facility of the dsl helper's bounce method assumes
apache2 was used for passenger and that apach2ctl is available.
Any existing test suite which does not 'opt-in' to any of these service
host changes by specifying any of the above properties should not be
effected by this commit. The exception to this is that PE runs will use
graceful restarts automatically with this commit.
There is also a spec related change to the FakeHost helper, which
previously was a stub pretending to provide Beaker::Host like facilities
and recording commands for review. This became unwieldy when the
various query methods for use_service_scripts? is_using_passenger? and
so forth were added, and the FakeHost has been updated to instead use
Beaker::Host.create to provide a host instance that is then extended
with the MockedExec module stubbing the exec facilities for testing.
```
* (QENG-188) Allow foss runs to use service scripts (44d18d5f)
```
(QENG-188) Allow foss runs to use service scripts
Prior to this commit, any run of beaker with a non-pe master that
attempted to stand up a master with a particular configuration in order
to test against it using the with_puppet_running_on() helper would
always stand up a webrick master by executing `puppet master ` and
then later stop it with `kill`.
The platform team needs to be able to run acceptance suites in which the
puppetmaster is started/stopped using package provided init scripts, or
by restarting apache if a passenger puppetmaster package is installed.
This PR takes the approach of enhancing Beaker::Host with a few query
methods controlled by host properties, either set in the hosts.cfg, or
directly on a master Beaker::Host instance during the execution of a
setup step. The added properties are:
* 'use-service' : if true, service scripts will be used instead of
manually starting a webrick master
* 'passenger' : if true, indicates a passenger package has been
installed, and by default graceful service restarts will be used
* 'puppetservice' : the 'puppetservice' property has been added to the
Beaker::Host::Unix.foss_defaults with the value of 'puppetmaster'. It
should be set to the appropriate service script name for passenger if a
passenger package has been installed.
* 'graceful-restarts' : can be set false if you want to stop/start with
service scripts rather than use graceful restarts when running with
passenger
The Beaker::Host#uses_passenger! call may be used to set a host
appropriately for passenger.
The graceful restarts facility of the dsl helper's bounce method assumes
apache2 was used for passenger and that apach2ctl is available.
Any existing test suite which does not 'opt-in' to any of these service
host changes by specifying any of the above properties should not be
effected by this commit.
There is also a spec related change to the FakeHost helper, which
previously was a stub pretending to provide Beaker::Host like facilities
and recording commands for review. This became unwieldy when the
various query methods for use_service_scripts? is_using_passenger? and
so forth were added, and the FakeHost has been updated to instead use
Beaker::Host.create to provide a host instance that is then extended
with the MockedExec module stubbing the exec facilities for testing.
```
* Ensure IS_PE only respects different values (36abc3d8)
```
Ensure IS_PE only respects different values
Previously if we set the IS_PE or BEAKER_IS_PE environment variable at
all we would automatically make the run a PE run. This caused
non-obvious behavior for users that set IS_PE=false.
This changes the searching of the environment to only set the :type
option if [BEAKER_]IS_PE=yes|true.
Signed-off-by: Justin Stoller
```
* Improve documentation and readability of environment parsing improvements (b27ac271)
* (QENG-758) add ability to select a group a beaker hosts based upon... (6acb6147)
```
(QENG-758) add ability to select a group a beaker hosts based upon...
...a set of properties
- a shortcut means of selecting a sub group of hosts to run commands on
```
* (QENG-5156) Provide Important Env Vars Set in Debug Output (88c18537)
```
(QENG-5156) Provide Important Env Vars Set in Debug Output
This provides the Environment Variables that are pertinent to running
Beaker as an error message after a failed run or as a debug message
on a successful run in the debug log level.
```
### beaker1.16.0 - 17 Jul, 2014 (c1267696)
* Merge pull request #366 from anodelman/make-gem (c1267696)
```
Merge pull request #366 from anodelman/make-gem
(HISTORY) update history for release of beaker 1.16.0 gem
```
* (HISTORY) update history for release of beaker 1.16.0 gem (385f65c6)
* Merge pull request #364 from anodelman/make-gem (b0558827)
```
Merge pull request #364 from anodelman/make-gem
(GEM) version bump for beaker 1.16.0
```
* (GEM) version bump for beaker 1.16.0 (6664c6ab)
* Merge pull request #363 from puppetlabs/revert-359-issue/master/qeng-188-foss-service-restarts (56cfac77)
```
Merge pull request #363 from puppetlabs/revert-359-issue/master/qeng-188-foss-service-restarts
Revert "(QENG-188) Allow foss runs to use service scripts"
```
* Revert "(QENG-188) Allow foss runs to use service scripts" (dbfa7b23)
* Merge pull request #359 from jpartlow/issue/master/qeng-188-foss-service-restarts (d2464451)
```
Merge pull request #359 from jpartlow/issue/master/qeng-188-foss-service-restarts
(QENG-188) Allow foss runs to use service scripts
```
* Merge pull request #360 from anodelman/fail-slow (0d0c9239)
```
Merge pull request #360 from anodelman/fail-slow
(QENG-927) Beaker does not honor --fail-mode always fails fast
```
* (QENG-927) Beaker does not honor --fail-mode always fails fast (755f13eb)
```
(QENG-927) Beaker does not honor --fail-mode always fails fast
- bug comes from regex comparison with a symbol not being coerced to a
string in ruby 1.8, simple adding a 'to_s' resolves this
```
* Merge pull request #358 from waynr/bugfix/ezbake-utils (b83f5299)
```
Merge pull request #358 from waynr/bugfix/ezbake-utils
(QENG-924) Fix Beaker::DSL::EZBakeUtils.conditionally_clone
```
* Merge pull request #357 from jpartlow/issue/master/qeng-923-ensure-platform-codename (06aa5b81)
```
Merge pull request #357 from jpartlow/issue/master/qeng-923-ensure-platform-codename
(QENG-923) Ensure @codename is set if platform string has codename
```
* (QENG-924) Fix Beaker::DSL::EZBakeUtils.conditionally_clone (b6cd1ac6)
```
(QENG-924) Fix Beaker::DSL::EZBakeUtils.conditionally_clone
Fetch from origin then checkout the origin HEAD.
Signed-off-by: Wayne
```
* (QENG-923) Ensure @codename is set if platform string has codename (26724829)
```
(QENG-923) Ensure @codename is set if platform string has codename
Beaker 1.14.0 and up has a change to Beaker::Platform which ensures that
@version and @codename is set if the platform string contains the
version number, and that @version is set if platform string contains the
codename, but it fails to set the @codename in this later case.
Puppet currently has debian/ubuntu configs checked (used in ci) which
use platform strings of the form debian-wheezy-x86_64. We could change
these, but it looks like the intention of the Beaker::Platform object is
to provide @version and @codename (where codenames are used).
This patch ensures that @codename is set along with @version in these
cases.
```
* Merge pull request #356 from anodelman/utf-8-encoding (842a0d99)
```
Merge pull request #356 from anodelman/utf-8-encoding
(QENG-912) Beaker 1.14 breaks PE Puppet Acceptance
```
* Merge pull request #354 from anodelman/scp-repair (6e0261f2)
```
Merge pull request #354 from anodelman/scp-repair
(QENG-6) Beaker DSL `scp_*` commands print the options hash as if...
```
* (QENG-912) Beaker 1.14 breaks PE Puppet Acceptance (928fad7f)
```
(QENG-912) Beaker 1.14 breaks PE Puppet Acceptance
- was too conservative in removing non utf-8 compliant characters -
ended up removing compliant characters along with undef/invalid
character codes
- tested locally and it preserved messages like:
/etc/puppet/modules
├── jimmy-appleseed (v1.1.0)
├── jimmy-crakorn (v0.4.0)
└── jimmy-thelock (v1.0.0)
- correctly removed actual undef/invalid characters so that string
methods can be run (ie, split, gsub)
```
* Merge pull request #338 from anodelman/add-history (9e6acd2e)
```
Merge pull request #338 from anodelman/add-history
(QENG-849) beaker should maintain a history file that provides...
```
* (QENG-6) Beaker DSL `scp_*` commands print the options hash as if... (9aca3a1d)
```
(QENG-6) Beaker DSL `scp_*` commands print the options hash as if...
... it were executed on the command line
- simply remove the option hash from the debug line, it isn't
appropriate there.
```
* (QENG-849) beaker should maintain a history file that provides... (04bf6d4f)
```
(QENG-849) beaker should maintain a history file that provides...
...information per gem release
- generate a markdown history file from beaker git log
```
* (QENG-188) Allow foss runs to use service scripts (881311ab)
```
(QENG-188) Allow foss runs to use service scripts
Prior to this commit, any run of beaker with a non-pe master that
attempted to stand up a master with a particular configuration in order
to test against it using the with_puppet_running_on() helper would
always stand up a webrick master by executing `puppet master ` and
then later stop it with `kill`.
The platform team needs to be able to run acceptance suites in which the
puppetmaster is started/stopped using package provided init scripts, or
by restarting apache if a passenger puppetmaster package is installed.
This PR makes a few additions to OptionsHash, Host and the DSL::Helpers
to allow us to distinguish foss hosts which were spun up from source
from those which were installed from packages. And if we are working
with packages, whether we will be attempting to restart a running
service or stop/start using service scripts.
```
### beaker1.15.0 - 8 Jul, 2014 (82bb4ef9)
* Merge pull request #353 from anodelman/make-gem (82bb4ef9)
```
Merge pull request #353 from anodelman/make-gem
(HISTORY) generate history file for beaker 1.15.0
```
* (HISTORY) generate history file for beaker 1.15.0 (bd77ab99)
* Merge pull request #351 from anodelman/make-gem (cc636ca0)
```
Merge pull request #351 from anodelman/make-gem
(GEM) create beaker 1.15.0 gem
```
* Merge pull request #349 from justinstoller/maint/master/do-the-right-thing (e2c1be08)
```
Merge pull request #349 from justinstoller/maint/master/do-the-right-thing
(maint) Use `#check_for_command` instead of `#check_for_package`
```
* (GEM) create beaker 1.15.0 gem (e8e2e315)
* Merge pull request #348 from pcarlisle/qeng-894-systemd-with-puppet-running (2d1cfcb9)
```
Merge pull request #348 from pcarlisle/qeng-894-systemd-with-puppet-running
(QENG-894) Fix with_puppet_running_on for systemd
```
* Merge pull request #350 from anodelman/utf-8-encoding (ce612a91)
```
Merge pull request #350 from anodelman/utf-8-encoding
(QENG-912) Beaker 1.14 breaks PE Puppet Acceptance
```
* (QENG-912) Beaker 1.14 breaks PE Puppet Acceptance (1f83c04e)
```
(QENG-912) Beaker 1.14 breaks PE Puppet Acceptance
- seems to be an issue with string encoding
- ensure that we convert from current encoding to utf-8, doesn't mangle
utf-8 strings and correctly converts binary strings
```
* Merge pull request #339 from pcarlisle/lucid-version-code (f2ad8dec)
```
Merge pull request #339 from pcarlisle/lucid-version-code
Add lucid support to platform version codes
```
* (maint) Improve `InstallUtils#install_puppet()` (1154f9bb)
```
(maint) Improve `InstallUtils#install_puppet()`
Use `#check_for_command` instead of `#check_for_package` where appropriate
in `#install_puppet`
Previously there was no `Host#check_for_command` method, but
`Host#check_for_package` did a `which` (it effectively was checking for
the command). Now that we've separated out that behavior we need to use
the ones we mean in `InstallUtils#install_puppet()`. This is important
because when we fall back to a gem install of Puppet we ensure there is
a command `gem` available from (often) the package `rubygems`.
```
* (QENG-894) Use puppet to restart puppet (94534f4d)
```
(QENG-894) Use puppet to restart puppet
This way we don't have to detect which init system is being used. Since this
is currently only used for with_puppet_running_on it should always have puppet
available.
```
* (MAINT) Whitespace for readability (4ee2980c)
* (MAINT) Add lucid support to platform version codes (387e00fd)
### beaker1.14.1 - 3 Jul, 2014 (d2e750d5)
* Merge pull request #342 from anodelman/make-gem (d2e750d5)
```
Merge pull request #342 from anodelman/make-gem
(GEM) create beaker 1.14.1 gem
```
* Merge pull request #344 from waynr/maint/fix-multi-dev-repo-case (a1a05782)
```
Merge pull request #344 from waynr/maint/fix-multi-dev-repo-case
(MAINT) Fixes `Beaker::DSL::InstallUtils` broken spec.
```
* (MAINT) Fixes `Beaker::DSL::InstallUtils` broken spec. (4ae74102)
```
(MAINT) Fixes `Beaker::DSL::InstallUtils` broken spec.
Signed-off-by: Wayne
```
* Merge pull request #343 from puppetlabs/revert-237-role-repair (97dfa7f2)
```
Merge pull request #343 from puppetlabs/revert-237-role-repair
Revert "(QENG-431) expanded and improved role support in beaker"
```
* Revert "(QENG-431) expanded and improved role support in beaker" (e72fb990)
* Merge pull request #237 from anodelman/role-repair (ee2ce01f)
```
Merge pull request #237 from anodelman/role-repair
(QENG-431) expanded and improved role support in beaker
```
* Merge pull request #341 from waynr/maint/fix-multi-dev-repo-case (7793e89f)
```
Merge pull request #341 from waynr/maint/fix-multi-dev-repo-case
(MAINT) Fix multiple dev repo installation case.
```
* (MAINT) Fix multiple dev repo installation case. (c5f8dac8)
```
(MAINT) Fix multiple dev repo installation case.
Signed-off-by: Wayne
```
* (GEM) create beaker 1.14.1 gem (180e712d)
* (QENG-431) expanded and improved role support in beaker (part 2) (ea90a311)
```
(QENG-431) expanded and improved role support in beaker (part 2)
- add support for running commands against hosts by name
- add support for arbitrary role methods, like those for built in roles
eg, on master, "echo hello"
on myrole, "echo hello"
```
* (QENG-431) expanded and improved role support in beaker (4797313e)
```
(QENG-431) expanded and improved role support in beaker
- make is possible to use arbitrary role names for most beaker DSL APIs
```
### beaker1.14.0 - 3 Jul, 2014 (cf8ea838)
* Merge pull request #340 from anodelman/make-gem (cf8ea838)
```
Merge pull request #340 from anodelman/make-gem
(GEM) create beaker 1.14.0 gem
```
* (GEM) create beaker 1.14.0 gem (d6e4282a)
* Merge pull request #322 from waynr/feature/install-dev-release-repos (67d0bca2)
```
Merge pull request #322 from waynr/feature/install-dev-release-repos
(QENG-715) Add `install_dev_repo` to Beaker DSL
```
* (QENG-715) Remove old `install_dev_repo` (448bcfb6)
```
(QENG-715) Remove old `install_dev_repo`
This method, rather than pushing repos to the SUT, has it pull from puppet labs
internal repository. This is deprecated by the newer
`Beaker::DSL::InstallUtils.install_dev_repo` which uses a push method.
Signed-off-by: Wayne
```
* Merge pull request #295 from waynr/feature/ezbake-utils (6243d6ac)
```
Merge pull request #295 from waynr/feature/ezbake-utils
(QE-725) Feature/ezbake utils
```
* (QENG-715) Add yard docs. (27922d8b)
```
(QENG-715) Add yard docs.
(QENG-715) Add new rspec tests.
(QENG-715) Give methods less generic names.
As pointed out in PR review, the use cases for these methods are pretty specific
and their names ought to reflect that specificity.
Signed-off-by: Wayne
```
* Merge pull request #335 from cyberious/FossWindows (d41e527e)
```
Merge pull request #335 from cyberious/FossWindows
Foss windows
```
* Merge pull request #316 from maestrodev/docker-ip (47a21a3b)
```
Merge pull request #316 from maestrodev/docker-ip
Use the correct docker server ip address for ssh
```
* Merge pull request #297 from cyberious/CopyModuleTo (b6707c6f)
```
Merge pull request #297 from cyberious/CopyModuleTo
refactor copy_root_module_to to copy_module_to and add support for ignore
```
* Merge pull request #327 from cyberious/master (7f5b05e6)
```
Merge pull request #327 from cyberious/master
Fix issue with run_task and invalid or undefined methods
```
* (QENG-715) Copy methods over from puppet acceptance lib. (49b70484)
```
(QENG-715) Copy methods over from puppet acceptance lib.
Copy `fetch`, `fetch_remote_dir`, and `install_repos_on` from puppet accentance
testing library since this functionality is actually useful on pretty much all
projects using Beaker. Still needs to be cleaned up and tuned to work in this
context.
(QENG-715) Minor code cleanup.
Matches when/case indentation levels.
(QENG-715) Use new `Beaker::Platform.to_array` method.
This method simplifies the logic by highlighting through semantics the
difference between `version` and `codename`.
(QENG-715) Remove hard-coded URIs.
Grab URIs from options presets instead of hard-coding. Do this for development
builds repositories, apt repositories, and yum repositories.
(QENG-715) Add `:dev_builds_url` to Beaker presets.
Use this in `Beaker::DSL::InstallUtils.install_repos_on`.
Also renames soem variables and standardize on how to populate a string pattern
with variables since the last couple commits were injecting variables directly
into the string.
(QENG-715) Separate release repo installation step.
Some pre_suites may only want to install the release repository.
(QENG-715) Clean up `install_release_repo`
Since we are installing a public repository we don't need to go through the
intermediate fetch step.
(QENG-715) Minor bug fix and code cleanup.
Don't scp files to a directory then move them to another directory in a later
step, instead copy them directly to their intended target directory.
Also fix some typos, bugs, and other miscellany.
(QENG-715) Break find-and-sed into smaller exprs.
(QENG-715) Raise RuntimeError instead of log message.
(QENG-715) Remove extraneous SUT commands.
Signed-off-by: Wayne
```
* Merge pull request #323 from branan/qeng_842 (1f875bbd)
```
Merge pull request #323 from branan/qeng_842
(QENG-842) Always wait for puppetmaster to be ready when bouncing
```
* (maint) Remove default value of service-wait since it is now unused. (187bfa57)
* (QENG-725) `install_from_ezbake` check for unsupported platforms (bd0b9c58)
```
(QENG-725) `install_from_ezbake` check for unsupported platforms
Signed-off-by: Wayne
```
* (QENG-725) Add `ezbake_tools_available?` (f5468a97)
```
(QENG-725) Add `ezbake_tools_available?`
Add `Beaker::DSL::EZBakeUtils.ezbake_tools_available?` to ensure that both the development system and the
SUT have the required software necessary for this stuff to work correctly.
Also add spec tests for this new method and update existing method rspec tests to
verify that they actually use the new method where appropriate.
Signed-off-by: Wayne
```
* Fix issue with relver not defined in msi installer (c0d3baac)
* (QENG-725) Add attributes to `Beaker::Platform` (10633f79)
```
(QENG-725) Add attributes to `Beaker::Platform`
* Add attributes to `Beaker::Platform` and use those in
`Beaker::Platform.with_numeric_version` and
`Beaker::Platform.with_codename_version`.
* Add spec tests to confirm that `Beaker::Platform.codename` is nil when a given
platform does not have version codenames and to verify behavior of
`Beaker::Platform.to_array`
* Update `Beaker::DSL::EZBakeUtils` to make use of new
`Beaker::Platform.to_array` method.
* Update `spec/beaker/dsl/ezbake_utils.rb` to use `Beaker::Platform` object.
Signed-off-by: Wayne
```
* Merge pull request #331 from justinstoller/fix_install_puppet (b77db165)
```
Merge pull request #331 from justinstoller/fix_install_puppet
Fix broken debian installs of FOSS puppet
```
* Merge pull request #329 from waynr/feature/curl-retries (ee4d52d7)
```
Merge pull request #329 from waynr/feature/curl-retries
(MAINT) Feature/curl retries
```
* Merge pull request #324 from anodelman/pe-in-debug (75acc306)
```
Merge pull request #324 from anodelman/pe-in-debug
(QENG-251) Beaker should be able to run the PE installer in debug mode
```
* Merge pull request #325 from anodelman/mac-support (2f36b29c)
```
Merge pull request #325 from anodelman/mac-support
(QENG-841) don't run beaker package configuration on osx hosts
```
* Revert the stderr out instead of stdout for not success (61243ce5)
* Merge pull request #332 from waynr/feature/QENG-846-add-timestamp-to-options-hash (016ca73a)
```
Merge pull request #332 from waynr/feature/QENG-846-add-timestamp-to-options-hash
(QENG-846) Add timestamp to options hash.
```
* Merge pull request #319 from waynr/feature/pe-34-answers (93e157e7)
```
Merge pull request #319 from waynr/feature/pe-34-answers
(MAINT) Add PE 3.4 installer answers module.
```
* (QENG-846) Add timestamp to options hash. (d3083c27)
```
(QENG-846) Add timestamp to options hash.
This makes the timestamp available globally during Beaker runs so it can be used
to add files to the specific run's log directory without being confused by other
simultaneous runs of Beaker due to the use of log/latest symlink.
Signed-off-by: Wayne
```
* Fix broken debian installs of FOSS puppet (3f8d2efc)
```
Fix broken debian installs of FOSS puppet
Previously some versions of apt would not resolve the puppet-common package
dependency for versions other than the latest release. This pins the
puppet-common package to the same version as puppet to prevent these issues.
```
* Fix issue with run_task and invalid or undefined methods (ad7837ba)
* (QENG-841) don't run beaker package configuration on osx hosts (bd564de3)
```
(QENG-841) don't run beaker package configuration on osx hosts
- beaker does not know how to install packages on osx, so we shouldn't
try to
```
* (QENG-251) Beaker should be able to run the PE installer in debug mode (c94dc9b5)
```
(QENG-251) Beaker should be able to run the PE installer in debug mode
- add verbose mode for linux/mac and win installs.
- add '-x' for bash frictionless installer
- fix issue with non-UTF-8 encoded characters generated in windows logs
```
* (QENG-842) Always wait for puppetmaster to be ready when bouncing (46ef5703)
```
(QENG-842) Always wait for puppetmaster to be ready when bouncing
Previously, we would only wait for the puppetmaster to be started if a
host config file explicitly requested it. Our init scripts actually
require this waiting pretty much across the board now, so trying to
only do this when it's needed is silly. And even when it's not needed
we only curl once - it's not a ton of overhead.
```
* (QENG-715) Add `install_dev_repo` to Beaker DSL (9b337a21)
```
(QENG-715) Add `install_dev_repo` to Beaker DSL
This is a "push" style method of installing a dev repo from
builds.puppetlabs.lan by first downloading to a directory on the local machine
then pushing to the appropriate configuration directory on the remote machine.
Signed-off-by: Wayne
```
* Merge pull request #314 from anodelman/maint (ee2ad375)
```
Merge pull request #314 from anodelman/maint
(QENG-124) get rid of add_master_entry
```
* (MAINT) Add PE 3.4 installer answers module. (dde96af8)
```
(MAINT) Add PE 3.4 installer answers module.
Also adds spec tests.
Signed-off-by: Wayne
```
* (QENG-725) Improve install_from_ezbake (5deb8e4c)
```
(QENG-725) Improve install_from_ezbake
Need to be able to pass in arbitrary key-value pairs to add to environment in
which `make` is called on the given host in install_from_ezbake. If the hash is
empty, then don't prepend the `env` call to make.
Signed-off-by: Wayne
```
* Use the DOCKER_HOST environment when present for ssh to docker server (4793e5b7)
```
Use the DOCKER_HOST environment when present for ssh to docker server
Honor DOCKER_HOST envvar, used with boot2docker
```
* (QENG-124) get rid of add_master_entry (eb3be3e9)
```
(QENG-124) get rid of add_master_entry
- execution of add_master_entry has been off by default for a while, so
we know that this code is no longer necessary, this is just clean up
```
* add alias to keep current functionality (f18c71da)
* Fixed test cases and bug with copy_module_to (3ec6077a)
* (QENG-725) Minor code cleanup and EZBakeUtils fix. (2f9ee267)
```
(QENG-725) Minor code cleanup and EZBakeUtils fix.
* Fixes defaultsdir argument passed to make in `install_from_ezbake` for debian
systems.
* Adds `--force-yes` to apt-get calls when installing packages on debian.
* Minor code cleanup when interpreting package and version information from
`ezbake_config`
Signed-off-by: Wayne
```
* (QENG-716) Add package_version option to install_package. (9acb4f20)
```
(QENG-716) Add package_version option to install_package.
Makes more sense to make this optional behavior in `install_package` than to
implement new method.
Signed-off-by: Wayne
```
* refactor copy_root_module_to copy_module_to, also changed the behavior of puppet_module_install_on to use the PMT tool instead of copying the whole file to it (1718342c)
* (QENG-725) Minor bugfix and documentation addition. (26d518d1)
```
(QENG-725) Minor bugfix and documentation addition.
* Document `ezbake_stage` method.
* Fix directory creation bug in `conditionally_clone` method.
Signed-off-by: Wayne
```
* (QENG-725) Adds spec tests for EZBakeUtils. (d5665ffb)
```
(QENG-725) Adds spec tests for EZBakeUtils.
Signed-off-by: Wayne
```
* (QENG-725) Implements install_from_ezbake. (b764cf51)
```
(QENG-725) Implements install_from_ezbake.
Adds a new module, Beaker::DSL::EZbake to extend the Beaker DSL with
functionality that should be useful across multiple JVM based projects,
particularly those that use TrapperKeeper and are packaged using ezbake.
Don't want to add user to system from install_from_ezbake, that should be done
at a higher level or from within a preinst step if absolutely necessary. Also
shouldn't be making any puppet calls using Beaker before the Puppet master is
run for the first time using init scripts since this will lead to
/var/lib/puppet directories being owned by root. Bad.
Signed-off-by: Wayne
```
* (QENG-716) install_package_version (720854c2)
```
(QENG-716) install_package_version
This commit adds 'install_package_version' method to the DSL helper utils and an
associated method that given package name as well as optional version string
that will be used to construct a package name that includes a specific version
string for installation on the SUT.
This currently only supports apt and yum based package managers, as I am no
familiar enough with other platforms. For non apt or yum based platforms, an
exception will be raised.
Signed-off-by: Wayne
```
* (QENG-645) Add `master-start-curl-retries` to host options. (2d499afe)
```
(QENG-645) Add `master-start-curl-retries` to host options.
Allows per-host modification of the number of curl retries to perform when
restarting puppet master.
```
### beaker1.13.1 - 23 Jun, 2014 (aa09552d)
* Merge pull request #318 from anodelman/make-gem (aa09552d)
```
Merge pull request #318 from anodelman/make-gem
(GEM) create 1.13.1 beaker gem
```
* (GEM) create 1.13.1 beaker gem (c268b1c9)
* Merge pull request #317 from waynr/bugfix/retry-command-should-use-logger-method (a993fc91)
```
Merge pull request #317 from waynr/bugfix/retry-command-should-use-logger-method
(MODULES-1168) Fixes use of Beaker logger in retry_command.
```
* (QENG-833) Fixes use of Beaker logger in retry_command. (ec906978)
```
(QENG-833) Fixes use of Beaker logger in retry_command.
Looks like the Beaker DSL always assumes a method, `logger`, that returns a
Logger object--assuming that the namespace loading the DSL modules has a logger
object available as `@logger` breaks beaker-rspec.
Signed-off-by: Wayne
```
### beaker1.13.0 - 20 Jun, 2014 (5e80c638)
* Merge pull request #315 from anodelman/make-gem (5e80c638)
```
Merge pull request #315 from anodelman/make-gem
(Gem) create 1.13.0 beaker gem
```
* (Gem) create 1.13.0 beaker gem (e863091e)
* Merge pull request #302 from waynr/feature/create-tmpdir-for-user-on (4381a238)
```
Merge pull request #302 from waynr/feature/create-tmpdir-for-user-on
Feature/create tmpdir for user on
```
* Merge pull request #313 from petems/fix_noop_to_nil (e0b93239)
```
Merge pull request #313 from petems/fix_noop_to_nil
Fix noop to nil
```
* Merge pull request #229 from anodelman/pkg-vs-cmd (7b0efa1b)
```
Merge pull request #229 from anodelman/pkg-vs-cmd
(QENG-608) Check_for_package method should not use which command
```
* Merge pull request #293 from anodelman/junit (3d16318c)
```
Merge pull request #293 from anodelman/junit
(QENG-714) use all junit tags available for beaker xml output
```
* GH-312 - Change test to check command line (229e24b0)
* GH-312 Fix spec to reflect that value is nil (397df127)
* GH-312 - Value needs to be nil if it has no value (eb984967)
* Merge pull request #311 from treydock/docker_privileged_fix (12e74e51)
```
Merge pull request #311 from treydock/docker_privileged_fix
(gh-305) Start docker containers using privileged mode
```
* Merge pull request #300 from waynr/feature/logging-improvements (145e26b7)
```
Merge pull request #300 from waynr/feature/logging-improvements
Feature/logging improvements
```
* Merge pull request #309 from petems/add_noops_option (e2e97899)
```
Merge pull request #309 from petems/add_noops_option
Add noops option
```
* Merge pull request #298 from branan/qeng_64 (75ea39cd)
```
Merge pull request #298 from branan/qeng_64
(QENG-64) Fix ordering issue when deploying the frictionless agent
```
* Fixing spec (2f4e011c)
* Merge pull request #299 from justinstoller/update-to-install_puppet (82a34ef4)
```
Merge pull request #299 from justinstoller/update-to-install_puppet
(QENG-{768,769,771}) Update to `install puppet`
```
* Merge pull request #262 from justinstoller/feature/master/QENG-438-feature_flags (b10a8c0f)
```
Merge pull request #262 from justinstoller/feature/master/QENG-438-feature_flags
(QENG-438) Pass feature flags to all instances of `apply_manifest_on`
```
* Merge pull request #310 from anodelman/maint (6d7f36e3)
```
Merge pull request #310 from anodelman/maint
(MAINT) aws-sdk 1.43 breaks beaker specs
```
* (gh-305) Start docker containers using privileged mode (981e4d4b)
* Merge pull request #276 from cyberious/RakeTasks (8f5cbd56)
```
Merge pull request #276 from cyberious/RakeTasks
Rake tasks
```
* (MAINT) aws-sdk 1.43 breaks beaker specs (368575d9)
```
(MAINT) aws-sdk 1.43 breaks beaker specs
- pin to aws-sdk 1.42.0
```
* Adding yarddoc for :noop option (ac1803b5)
* Spec for the noops flag (ed2d52f3)
* Merge pull request #303 from anodelman/vagrant-maint (1a7942ca)
```
Merge pull request #303 from anodelman/vagrant-maint
(QENG-760) support for additional disk for vagrant
```
* Improve documentation for Open Source installation methods (77ea1f45)
* OptionsHash is already indifferent (d8f3f787)
* (QENG-760) support for additional disk for vagrant (d2449cab)
```
(QENG-760) support for additional disk for vagrant
- if a given vagrant box has a disk_path then either create a new vmdk
disk or use the provided disk
- defaults to 50 x 1024 bytes if the disk needs to created
```
* Refactor `puppet_install` (09a519a3)
```
Refactor `puppet_install`
This changes the `puppet_install` function to be more readable and reduce
code duplication. It does not change any behavior.
```
* add tests for new install_puppet functionality (cc9da3ad)
* fixup test (be4c3016)
* Fixed issue with default behavior not picking up type and hosts from rake task (3bcbfe6d)
* (MAINT) Make retry_command output easier on the eyes. (7776fc93)
```
(MAINT) Make retry_command output easier on the eyes.
Silent all the "on" commands by passing silent => true to the underlying
host.exec in the options map. Instead, handle console/logfile output for
retry_command manually. Should significantly reduce logfile size for
applications that make extensive use of retry_command, not to mention making
stdout more readable.
Signed-off-by: Wayne
```
* (MAINT) Bugfixes in host.exec and logger. (26b25332)
```
(MAINT) Bugfixes in host.exec and logger.
* Honor the :silent option in host.exec
* Many logging functions seem to try to pass positional parameters in to
optionally_color but mistakenly flattened the list into a single argument.
This made it impossible to choose whether or not to add a newline.
* Remove call to logger.notify with bogus arity. Seems like "args" probably
becomes an empty array which made this method call okay previously. However,
if there are no arguments in "*args" then no args get passed down to
optionally_color, thus the arity of the original "*args" is preserved.
Signed-off-by: Wayne
```
* Fixup windows support for FOSS (2ebb73f8)
```
Fixup windows support for FOSS
Previously the PATH for windows was only being set to include executables
from git repos, not executables installed from native packages. This
includes the default installation path for native windows packages in the
FOSS command creation.
```
* This fixes small bugs within the install_puppet method (8c1d3338)
* (QENG-64) Fix ordering issue when deploying the frictionless agent (6f1db0b6)
```
(QENG-64) Fix ordering issue when deploying the frictionless agent
Previously, the puppet agent was not stopped on the master until all
nodes were deployed. This could cause a situation where the background
agent would be running when we attempt to deploy the frictionless
repo. In this situation, the agent run we kick off to deploy the repo
would fail. This causes the entire beaker process to bail.
We now stop the background agent immediately, preventing this
condition from occuring.
```
* update documentation (63297276)
* Use specified versions if possible (0e0fd1e7)
```
Use specified versions if possible
Previously we allowed passing :version, :facter_version, and/or
:hiera_version to `install_puppet` but only respected `:version` with
windows and osx, and the others only on osx. This will attempt to
install the versions specified for any package specified. The version
information is still optional on linux machines, and there is no way for
us to respect the dependency versions on windows (since our windows
package is an omnibus package).
```
* Provide default gem installation (a4ac5847)
```
Provide default gem installation
This allows the `install_puppet` command to accept an additional parameter
`:default_action` which, if set to 'gem_install' will attempt to install
puppet from gem if it cannot otherwise install puppet. The default for
:default_action is still to fail hard.
```
* Get OSX installation working for realz (5d604a4f)
```
Get OSX installation working for realz
Previously we were using the passed in version for the versions of puppet
and its dependencies. This adds :facter_version and a :hiera_version keys
so that we can install those dependencies explicitly on platforms that we
must. It also adds the `-pkg` opt to the installer command to work on
newer OSXs.
Signed-off-by: Justin Stoller
```
* fixup merge conflicts (70491772)
* fix yard docs (1e947592)
* Remove the host tasks until we can fully bake what the use case is (fea24261)
* Remove assumption of delivery.puppetlabs.net (1aec8b3f)
* Add noop argument (4bfb3848)
* (QENG-713) Update to create_tmpdir_for_user, add spectests (afa13318)
```
(QENG-713) Update to create_tmpdir_for_user, add spectests
Use `on` instead of `host.exec`.
Also removes test for Unix::Host.puppet_tmpdir.
Signed-off-by: Wayne
```
* (QENG-713) Adds create_tmpdir_on DSL method. (2e899fe2)
```
(QENG-713) Adds create_tmpdir_on DSL method.
Signed-off-by: Wayne
```
* (QENG-713) use DSL to access --configprint value (3c9c17c7)
* Refactor to have a single maintainable file for test tasks and require the rake task object (d4ca624d)
* (QENG-713) add test case and docs for 'puppet_tmpdir' method (76e0a923)
* (QENG-713) add 'puppet_tmpdir' method (92ad65cb)
```
(QENG-713) add 'puppet_tmpdir' method
Add a 'puppet_tmpdir' method in Unix::File that creates temporary
directories which are owned by the puppet user.
```
* Add the commands to install OSX. (b6d24c90)
* (QENG-714/QENG-686) use all junit tags available for beaker xml output... (5aff9fc2)
```
(QENG-714/QENG-686) use all junit tags available for beaker xml output...
... provide local xslt for viewing beaker xml output
- switch over to nokogiri (cleaner, easier)
- add logs to system-out tag
- add tag for time that each test suite takes to execute
- add property tags for each beaker option
- add junit.xsl stylesheet to interpret test results
```
* (QENG-608) Check_for_package method should not use which command (23d471a2)
```
(QENG-608) Check_for_package method should not use which command
- properly differentiate between packages and commands
- check_for_package updated to check for the given package name using
the correct package manager per OS
- added check_for_command, which uses 'which' to determine if a command
is currently available
- added spec test coverage for check_for_package
```
* Add extendable rake task to have define on projects utilizing beaker (a7756853)
* (QENG-438) Pass feature flags to all instances of `apply_manifest_on` (8383b54a)
```
(QENG-438) Pass feature flags to all instances of `apply_manifest_on`
Prior to this there was a number of configurable options that would
tweak Puppet's behavior when using apply_manifest_on. However there
was no good way of setting all instances of apply_manifest_on to use
a certain set of flags. e.g. set "future" parser to be true for a specific
run of suite without changing all of the tests to explicitly set the
future parser option on apply_manifest_on. This allows users to set default
flags to be passed to puppet when apply_manifest_on is called in the host
file, or in a pre-test step.
Example Host file:
HOSTS:
master:
roles: [ 'master', 'agent' ]
default_apply_opts:
parser: future
Example BeakerRSpec spec_helper.rb
hosts.each do |host|
host[:default_apply_opts] ||= {}
host[:default_apply_opts].merge!( :parser => 'future' ) if ENV['FUTURE_PARSER'] == 'true'
end
```
### beaker1.12.2 - 12 Jun, 2014 (a31ba183)
* Merge pull request #308 from anodelman/make-gem (a31ba183)
```
Merge pull request #308 from anodelman/make-gem
create 1.12.2 gem
```
* create 1.12.2 gem (9d534154)
* Merge pull request #306 from branan/qeng_775 (4f601ce7)
```
Merge pull request #306 from branan/qeng_775
(QENG-775) Do not use puppet to stop puppet on older PE on SLES
```
* Merge pull request #307 from anodelman/maint (c0e1e821)
```
Merge pull request #307 from anodelman/maint
(MAINT) update nokogiri dependency
```
* (MAINT) update nokogiri dependency (7f4428ff)
```
(MAINT) update nokogiri dependency
- Fixes: Unable to resolve dependencies: aws-sdk requires nokogiri (>= 1.4.4);
rbvmomi requires nokogiri (>= 1.4.1); beaker requires nokogiri (=
1.5.10); fog requires nokogiri (>= 1.5.11, ~> 1.5)
```
* (QENG-775) Do not use puppet to stop puppet on older PE on SLES (d6edc27b)
```
(QENG-775) Do not use puppet to stop puppet on older PE on SLES
A bug in the init script on older versions of SLES causes the init
script to kill our `puppet resource` invocation as well as the daemon
agent.
```
* Merge pull request #224 from anodelman/fix-default (7fb3468a)
```
Merge pull request #224 from anodelman/fix-default
(QENG-597) 'master' DSL helper can return a non-master node...
```
* Merge pull request #273 from electrical/feature/proxy (1565da4a)
```
Merge pull request #273 from electrical/feature/proxy
Add option to enable and set package manager proxy url
```
* Merge pull request #294 from smcclellan/remove-unneeded-razor-method (79105ca6)
```
Merge pull request #294 from smcclellan/remove-unneeded-razor-method
Removing unnecessary `razor` wrapper function
```
* Removing unnecessary `razor` wrapper function (2694de34)
```
Removing unnecessary `razor` wrapper function
The `razor` function was unnecessarily defined in the
wrapper, which was overriding a helper definition.
```
* Merge pull request #247 from JHaals/hypervisor (a4d3fd92)
```
Merge pull request #247 from JHaals/hypervisor
Support custom hypervisors
```
* Merge pull request #285 from anodelman/pry-support (57830472)
```
Merge pull request #285 from anodelman/pry-support
(QENG-695) beaker workflow with pry
```
* Merge pull request #290 from anodelman/remove-expand-path (a6e1c722)
```
Merge pull request #290 from anodelman/remove-expand-path
(QENG-40) remove expandpath from file loading in beaker require blocks
```
* (QENG-40) remove expandpath from file loading in beaker require blocks (0ec356f8)
```
(QENG-40) remove expandpath from file loading in beaker require blocks
- just use an expected path in requires
```
* (QENG-695) beaker workflow with pry (87807287)
```
(QENG-695) beaker workflow with pry
- add pry gem to development environment
```
* Add option to enable and set package manager proxy url (224480d6)
```
Add option to enable and set package manager proxy url
With this feature you can set the proxy url for the package manager.
Currently supports Yum and Apt package managers.
```
* Support custom hypervisors (230a47b3)
* (QENG-597) 'master' DSL helper can return a non-master node... (0121835a)
```
(QENG-597) 'master' DSL helper can return a non-master node...
...when actual master is confined away
- change around the logic so that the default node is defined at options
parsing, not during test runtime
- determine the default node by it either being
1. the node with the role defined as 'default'
2. the master node
3. the only node
Then add the role 'default' to that node, if necessary
- differentiate between master and default, no longer allow the default
to be used as a master if the master is undefined (keep roles clear,
the master should only be the node defined as master)
```
### beaker1.12.1 - 30 May, 2014 (36b14dc7)
* Merge pull request #291 from anodelman/make-gem (36b14dc7)
```
Merge pull request #291 from anodelman/make-gem
create beaker 1.12.1 gem
```
* create beaker 1.12.1 gem (dfa26942)
* Merge pull request #288 from anodelman/options-hash-merge (aa5ab50f)
```
Merge pull request #288 from anodelman/options-hash-merge
(QENG-743) Beaker options hash 'merge' should not modify the...
```
* Merge pull request #287 from branan/qeng-740 (0375b148)
```
Merge pull request #287 from branan/qeng-740
(QENG-740) Insert a flag into the options hash when doing a PE upgrade
```
* (QENG-743) Beaker options hash 'merge' should not modify the... (25fa3529)
```
(QENG-743) Beaker options hash 'merge' should not modify the...
...global settings
- merge was behaving like merge!
- merging two OptionsHash objects should result in a new OptionsHash
and not affect the original hashes at all.
```
* (QENG-740) Insert a flag into the options hash when doing a PE upgrade (13d4ffa8)
* Merge pull request #279 from electrical/docker_input_validation (30b79043)
```
Merge pull request #279 from electrical/docker_input_validation
Log an error when docker image is not set, empty or nil
```
* Merge pull request #283 from mhaskel/osx-mktemp-fix (1c54beae)
```
Merge pull request #283 from mhaskel/osx-mktemp-fix
For OSX the order of parameters for mktemp matters.
```
* For OSX the order of parameters for mktemp matters. (bec7d2c5)
* (MAINT) Log an error when docker image is not set, empty or nil (9adb1987)
* Merge pull request #268 from hunner/add_pm_install (f71cb779)
```
Merge pull request #268 from hunner/add_pm_install
Move puppet_module_install out of beaker-rspec
```
* Move puppet_module_install out of beaker-rspec (cb1615d5)
### beaker1.12.0 - 21 May, 2014 (591d3595)
* Merge pull request #272 from anodelman/make-gem (591d3595)
```
Merge pull request #272 from anodelman/make-gem
update beaker version to 1.12.0
```
* update beaker version to 1.12.0 (77ae9c7d)
* Merge pull request #270 from anodelman/mac-support (e7b4fa98)
```
Merge pull request #270 from anodelman/mac-support
add support for pe installation on mac
```
* Merge pull request #267 from branan/el4_is_lame_comma_yo (14b195a7)
```
Merge pull request #267 from branan/el4_is_lame_comma_yo
(maint) Do not use puppet to stop agent service on el4
```
* (QENG-337) additional platform support in beaker (mac osx) (part 2) (a0e6388c)
```
(QENG-337) additional platform support in beaker (mac osx) (part 2)
- add spec coverage for mac pe dmg install
```
* (maint) Do not use puppet to stop agent service on el4 (e0181123)
* (QENG-337) additional platform support in beaker (mac osx) (56c9540f)
```
(QENG-337) additional platform support in beaker (mac osx)
- adding dmg installation support for max osx
```
### beaker1.11.2 - 16 May, 2014 (f28c387b)
* Merge pull request #266 from branan/release_1.11.2 (f28c387b)
```
Merge pull request #266 from branan/release_1.11.2
Bump release version to 1.11.2
```
* Merge pull request #265 from branan/stop_agent_with_puppet (dd925b7b)
```
Merge pull request #265 from branan/stop_agent_with_puppet
(maint) Always use puppet to stop the agent service
```
* Bump release version to 1.11.2 (39cea895)
* Merge pull request #254 from nicklewis/root-keys-redirect (65c22a01)
```
Merge pull request #254 from nicklewis/root-keys-redirect
Follow redirects to get root keys script
```
* (maint) Always use puppet to stop the agent service (7df657fc)
```
(maint) Always use puppet to stop the agent service
Previously, the agent stop used platform-specific init management
tools. This is kind of silly, since we know that puppet exists. This
simplifies the agent stop to simply use puppet to stop the agent.
```
* Merge pull request #264 from branan/qeng-672 (5e79ed31)
```
Merge pull request #264 from branan/qeng-672
(QENG-672) Ensure beaker checks pe_dir from host as well as pe_ver
```
* (QENG-672) Ensure beaker checks pe_dir from host as well as pe_ver (4ec1a8df)
```
(QENG-672) Ensure beaker checks pe_dir from host as well as pe_ver
The previous code for QENG-672 only fixed the version lookup, not the
source path lookup.
```
* Merge pull request #263 from daniel-pittman/add-razor-command (d8cab43b)
```
Merge pull request #263 from daniel-pittman/add-razor-command
Add `razor` command helper to beaker
```
* Add `razor` command helper to beaker (79bdaf8a)
```
Add `razor` command helper to beaker
This adds a helper for testing Razor
Signed-off-by: Daniel Pittman
```
* Follow redirects to get root keys script (d2097f53)
```
Follow redirects to get root keys script
This URL has changed from raw.github.com to raw.githubusercontent.com,
but the curl command wasn't following redirects. This updates the URL
and also adds the appropriate flag for redirects to protect against any
such future redirects.
```
### beaker1.11.1 - 15 May, 2014 (f684a724)
* Merge pull request #261 from anodelman/make-gem (f684a724)
```
Merge pull request #261 from anodelman/make-gem
create beaker 1.11.1 gem
```
* Merge pull request #256 from anodelman/google-cloud (3eb465ea)
```
Merge pull request #256 from anodelman/google-cloud
(gh-255) GCE metadata value not specified
```
* create beaker 1.11.1 gem (99d2388c)
* Merge pull request #252 from anodelman/maint (552692f0)
```
Merge pull request #252 from anodelman/maint
(MAINT) remove spaces before EOL
```
* Merge pull request #257 from anodelman/upgrade-ver (b0588a28)
```
Merge pull request #257 from anodelman/upgrade-ver
(QENG-672) Beaker will ignore host-specific pe_dir if a global pe_dir...
```
* Merge pull request #253 from electrical/docker_image_removal (1bd03328)
```
Merge pull request #253 from electrical/docker_image_removal
Add option to preserve the built docker image
```
* Merge pull request #246 from justinstoller/feature/master/QENG-514-print_original_command (e42c17c0)
```
Merge pull request #246 from justinstoller/feature/master/QENG-514-print_original_command
(QENG-514) Provide the Command Beaker was Ran with in Debug Output
```
* (QENG-672) Beaker will ignore host-specific pe_dir if a global pe_dir... (6338dc34)
```
(QENG-672) Beaker will ignore host-specific pe_dir if a global pe_dir...
... is set
- check the individual host version setting first then default to the
global options hash
```
* (gh-255) GCE metadata value not specified (85a20877)
```
(gh-255) GCE metadata value not specified
- do not set nil/'' values as metaData
- do not set metaData at all if there are no values
```
* Add option to preserve the built docker image (85380b03)
```
Add option to preserve the built docker image
With the nodeset config option 'docker_preserve_image' we can disable the image deletion.
This is useful when running in CI environments and multiple containers are built using the same dockerfile content and re-used allot of times.
```
* (MAINT) remove spaces before EOL (9593ed5d)
```
(MAINT) remove spaces before EOL
- cleanup!
```
* Do not destructively consume ARGV (d8796847)
```
Do not destructively consume ARGV
Previously we were calling parse! which has the side effect of deleting
options from ARGV as it recognizes them. To work around this behavior
in previous commits, the desired options needed to be saved before hand.
Simply not mutating ARGV is much easier. Also adds a test.
```
* Merge pull request #250 from anodelman/mac-support (63a9c205)
```
Merge pull request #250 from anodelman/mac-support
(MAINT) add support for osx
```
* (MAINT) add support for osx (b07fed2c)
```
(MAINT) add support for osx
- so far, just add it to the supported platforms list
```
* Merge pull request #244 from justinstoller/maint/master/refactor_parser_tests (448d7d4c)
```
Merge pull request #244 from justinstoller/maint/master/refactor_parser_tests
Refactor parser specs to be more robust
```
* Merge pull request #236 from liamjbennett/windows_instalpuppet (aae95824)
```
Merge pull request #236 from liamjbennett/windows_instalpuppet
adding support for windows to install_puppet
```
* (QENG-514) Provide the Command Beaker was Ran with in Debug Output (312c7797)
```
(QENG-514) Provide the Command Beaker was Ran with in Debug Output
This prints at the end of the run the application & arguments to stdout
if log level is debug *or* if the run failed.
```
* Refactor parser specs to be more robust (0bee5099)
```
Refactor parser specs to be more robust
This removes unnecessary tests and changes the expected output
to only test for the parsed inputs (not testing the default values)
```
* updating install_puppet to support 32-bit windows (005a49c6)
* adding support for windows to install_puppet (b9dde43f)
### beaker1.11.0 - 8 May, 2014 (a389e3d1)
* Merge pull request #245 from anodelman/make-gem (a389e3d1)
```
Merge pull request #245 from anodelman/make-gem
create beaker 1.11.0 gem
```
* create beaker 1.11.0 gem (12553059)
* Merge pull request #242 from anodelman/jwt-break (0ae54018)
```
Merge pull request #242 from anodelman/jwt-break
(QENG-655) beaker dying on ruby 1.8 with jwt gem version mismatch...
```
* (QENG-655) beaker dying on ruby 1.8 with jwt gem version mismatch... (468f1ff6)
```
(QENG-655) beaker dying on ruby 1.8 with jwt gem version mismatch...
... error from google-api-client
- jwt was updated today and caused this break
```
* Merge pull request #239 from mhaskel/allow-el-7 (96bf2669)
```
Merge pull request #239 from mhaskel/allow-el-7
Add ability to run install_puppet with el7.
```
* Add ability to run install_puppet with el7. (bcc1b863)
* Merge pull request #234 from liamjbennett/windows_add_module_path (ac676e17)
```
Merge pull request #234 from liamjbennett/windows_add_module_path
adding modulepath to apply_manifest_on
```
* Merge pull request #235 from liamjbennett/fix_sshtoroot (3a65fb86)
```
Merge pull request #235 from liamjbennett/fix_sshtoroot
fixing ssh_to_root when run on windows
```
* adding yardoc for new option (94d2586a)
* fixing ssh_to_root when run on windows (a8180fcf)
* adding modulepath to apply_manifest_on (4e2b1f05)
* Merge pull request #221 from anodelman/env-fix (dc11aa26)
```
Merge pull request #221 from anodelman/env-fix
(QENG-275) redesign beaker's env var support
```
* Merge pull request #233 from anodelman/fix-travis (2c863726)
```
Merge pull request #233 from anodelman/fix-travis
(MAINT) travis failing on ruby 1.8
```
* (MAINT) travis failing on ruby 1.8 (4ccd0efb)
```
(MAINT) travis failing on ruby 1.8
- https://github.com/travis-ci/travis-ci/issues/2217
Ruby 1.8.7 installs ree-1.8.7-2012.02 instead of MRI
```
* Merge pull request #225 from johnduarte/QENG-600 (2ec3aaa7)
```
Merge pull request #225 from johnduarte/QENG-600
(QENG-600) Install lsb-release package if needed
```
* (QENG-600) Change package install call to host.package_install (eb2370fa)
* Merge pull request #206 from justinstoller/maint/master/QENG-430-addtl_win_defaults (b658b9ab)
```
Merge pull request #206 from justinstoller/maint/master/QENG-430-addtl_win_defaults
(QENG-430) Add moduledir defaults to windows hosts
```
* Merge pull request #223 from cyberious/InstallRootModule (4a140f8a)
```
Merge pull request #223 from cyberious/InstallRootModule
Add ability to copy root module out to a host server
```
* Merge pull request #231 from anodelman/1.8-travis-failures (465d62bb)
```
Merge pull request #231 from anodelman/1.8-travis-failures
(MAINT) add redcarpet gem for travis errors
```
* (MAINT) add redcarpet gem for travis errors (379a59ff)
```
(MAINT) add redcarpet gem for travis errors
- add redcarpet gem (pinned to 1.17.2) required by
yard
- do not run yard on ruby 1.8 because of this:
[error]: Missing 'redcarpet' gem for Markdown formatting. Install it
with `gem install redcarpet`
```
* Convert to using options instead of params for copy_root_module_to (a0d73bc9)
* Merge pull request #228 from anodelman/yard-travis (85687615)
```
Merge pull request #228 from anodelman/yard-travis
(MAINT) add travis coverage for yard docs
```
* Merge pull request #226 from anodelman/yard-fix (5257d02b)
```
Merge pull request #226 from anodelman/yard-fix
(MAINT) yard doc errors/warnings
```
* (MAINT) add travis coverage for yard docs (42805fb4)
```
(MAINT) add travis coverage for yard docs
- will stop us from checking in yard doc warnings/errors
```
* (MAINT) yard doc errors/warnings (6e734ddd)
```
(MAINT) yard doc errors/warnings
- cleaned up any existing yard doc errors and warnings
```
* (QENG-600) Install lsb-release package if needed (ede28dea)
```
(QENG-600) Install lsb-release package if needed
For Debian and Ubuntu systems, check if lsb-release package is
installed. Install if needed. This package is needed to correctly
determine the release packages of puppet to install on the SUT.
This package is not present on a minimal Debian 7 installation.
```
* Merge pull request #171 from richardc/docker (a790c0bf)
```
Merge pull request #171 from richardc/docker
Add a docker hypervisor
```
* rename extra_commands to docker_image_commands (dfa40d7b)
```
rename extra_commands to docker_image_commands
Before all the docker handles were prefixed with docker_ *apart* from the one
for extra_commands. For consistency rename it.
```
* Add ability to copy root module out to a host server (b9bd845d)
* don't allow docker on ruby 1.8 (063a8183)
```
don't allow docker on ruby 1.8
- don't add the gem 'docker' if using < ruby 1.9
- don't 'require docker' until we are sure that we are loading that
class
- raise an error if attempting to use the docker hypervisor with ruby <
1.9
```
* Add moduledir defaults to windows hosts (f2cc22de)
* Add spec testing to the docker hypervisor (2c159e77)
* Make the mkdir always succeed (76ad591d)
```
Make the mkdir always succeed
In some docker images the /var/run/sshd directory already exists, so mkdir will
exit non-zero and fail. Change to mkdir -p instead.
```
* Add RHEL variant platforms to docker hypervisor (584c2c81)
```
Add RHEL variant platforms to docker hypervisor
When doing PE testing the platform name is used to determine which
PE tarball is required. For RedHat Enterprise Linux derivatives
the platform identifier is /^el-/
```
* Handle errors at cleanup of docker resources (a9728382)
```
Handle errors at cleanup of docker resources
* catches images and container exceptions
* show proper error message from docker
```
* Cleanup intermediate images during image.build (e32f8ee5)
```
Cleanup intermediate images during image.build
We always build images to throw them away, so specify { :rm => true } to the
build options so we discard the intermediate images too.
```
* Expose logging from docker-api (e2d24b8f)
```
Expose logging from docker-api
This commit exposes the logging from docker-api into the normal
beaker logging.
```
* Refactor the flow of platform specific actions (a197d7d7)
```
Refactor the flow of platform specific actions
The previous flow (using the return value from the case statement) was
needlessly complex and caused some confusion. Refactor to add more explicit
appends to the dockerfile variable in each when block.
```
* Install ssh clients in the docker hypervisor (0f6f097d)
```
Install ssh clients in the docker hypervisor
Some docker base images are seriously stripped down and will not
include the ssh client packages. These are normally where the scp
and sftp binaries live which are needed in later provisioning steps.
```
* Increase read/write timeouts in the docker hypervisor (e5585675)
```
Increase read/write timeouts in the docker hypervisor
This change increases the read and write timeouts to the docker api.
By default this is 60 seconds
Additionally we use the version assertion from docker-api so we
don't try and talk to an incompatible api version.
```
* (QENG-275) redesign beaker's env var support (aa7bb857)
```
(QENG-275) redesign beaker's env var support
- move all env vars reading to options parsing
- rename beaker env vars to match format BEAKER_*name*, still support
old name format for now
```
* Add a `docker_cmd` option to the docker hypervisor (09200f34)
```
Add a `docker_cmd` option to the docker hypervisor
This opens up the ability to have the docker container run something
closer to an init rather than a simple sshd. This allows the
container to behave more like a system under test with fully working
service supervision.
```
* Add openSUSE and SLES support to docker hypervisor. (8bae0903)
```
Add openSUSE and SLES support to docker hypervisor.
On SUSE variants the package installer is called zypper, so add the
RUN statements to install the sshd in terms of zypper.
Additionally we need to explictly configure the sshd to allow root
login via passwords, bypassing pam.
```
* Add a docker hypervisor (f1634157)
```
Add a docker hypervisor
This is a quite simple hypervisor, and only supports linux flavours
currently. Many things around inter-node communications will
probably not work.
The basic approach is we spin up a new image based on an upstream
one, add a sshd to it, tag the image with the name of the host and
then create a container from it. This container should then be
usable as a system under test.
The implementation is largely based on both the existing Beaker::Vagrant
hypervisor, and docker-kitchen.
https://github.com/portertech/kitchen-docker All bugs are mine.
Still a few things to do around finding existing nodes, but for now
it makes basic enough images that you can run no tests in 11 seconds.
$ cat docker-test.yml
HOSTS:
ubuntu-12-10:
platform: ubuntu-12.10-x64
image: ubuntu:12.10
hypervisor: docker
CONFIG:
type: foss
$ time ruby -Ilib ./bin/beaker --hosts docker-test.yml --no-debug
{
"log_level": "info",
"trace_limit": 10,
"hosts_file": "docker-test.yml",
"options_file": null,
"type": "foss",
"provision": true,
"preserve_hosts": "never",
"root_keys": false,
"quiet": false,
"xml": false,
"color": true,
"dry_run": false,
"timeout": 300,
"fail_mode": "slow",
"timesync": false,
"repo_proxy": false,
"add_el_extras": false,
"consoleport": 443,
"pe_dir": "/opt/enterprise/dists",
"pe_version_file": "LATEST",
"pe_version_file_win": "LATEST-win",
"dot_fog": "/Users/richardc/.fog",
"ec2_yaml": "config/image_templates/ec2.yaml",
"help": false,
"ssh": {
"config": false,
"paranoid": false,
"timeout": 300,
"auth_methods": [
"publickey"
],
"port": 22,
"forward_agent": true,
"keys": [
"/Users/richardc/.ssh/id_rsa"
],
"user_known_hosts_file": "/Users/richardc/.ssh/known_hosts"
},
"HOSTS": {
"ubuntu-12-10": {
"roles": [
"master"
],
"platform": "ubuntu-12.10-x64",
"image": "ubuntu:12.10",
"hypervisor": "docker",
"extra_commands": [
"touch /tmp/foo"
]
}
},
"helper": [],
"load_path": [],
"tests": [],
"pre_suite": [],
"post_suite": [],
"install": [],
"modules": [],
"logger": "#"
}
Beaker::Hypervisor, found some docker boxes to create
Provisioning docker
provisioning ubuntu-12-10
Setup: Update /etc/hosts on master with master's ip
Add Master entry to /etc/hosts
No tests to run for suite 'pre_suite'
No tests to run for suite 'tests'
No tests to run for suite 'post_suite'
Cleanup: cleaning up after successful run
Cleaning up docker
systest completed successfully, thanks.
real 0m11.892s
user 0m0.825s
sys 0m0.115s
```
### beaker1.10.0 - 22 Apr, 2014 (fbef5d2b)
* Merge pull request #220 from anodelman/make-gem (fbef5d2b)
```
Merge pull request #220 from anodelman/make-gem
create beaker 1.10.0 gem
```
* create beaker 1.10.0 gem (07b37988)
* Merge pull request #219 from kylog/maint/remove-unneeded-apt-get-install-options (bb199d3e)
```
Merge pull request #219 from kylog/maint/remove-unneeded-apt-get-install-options
(maint) Remove unneeded options for 'apt-get update'
```
* (maint) Remove unneeded options for 'apt-get update' (46abba11)
```
(maint) Remove unneeded options for 'apt-get update'
Previously apt-get update was invoked with the -y -f -m
options. None of these options actually make sense for *update*
(though -y makes total sense for *install*). Starting with
trusty's apt-get, apt-get actually rejects (at least) -f for
apt-get install.
So this patch simply removes those unneeded options.
```
* Merge pull request #217 from anodelman/fix-filesort (461dc5ff)
```
Merge pull request #217 from anodelman/fix-filesort
(MAINT) correctly sort test files
```
* (MAINT) correctly sort test files (43f58f85)
```
(MAINT) correctly sort test files
- turns out that we aren't actually correctly sorting files and this
affects how tests are run on hosts.
```
* Merge pull request #216 from anodelman/wrap-ip (935bf5b4)
```
Merge pull request #216 from anodelman/wrap-ip
(QENG-486) add easy access to ip address per beaker host
```
* (QENG-486) add easy access to ip address per beaker host (5ab04522)
```
(QENG-486) add easy access to ip address per beaker host
- either use the already determined ip address or figure it out through
ifconfig/ipconfig
```
* Merge pull request #214 from cyberious/windows_vagrant (e19b0f1d)
```
Merge pull request #214 from cyberious/windows_vagrant
Add beaker windows support to auto identify port and guest
```
* Merge pull request #211 from waynr/features/arbitary-puppetservice-name_curl-with-retries (9287c068)
```
Merge pull request #211 from waynr/features/arbitary-puppetservice-name_curl-with-retries
Features/arbitary puppetservice name curl with retries
```
* Merge pull request #207 from electrical/future_parser (1022e573)
```
Merge pull request #207 from electrical/future_parser
Add future parser as option when applying a manifest
```
* Add beaker windows support to auto identify port and guest (103b00eb)
* Merge pull request #203 from kbarber/ticket/master/pdb-554 (e055e6c9)
```
Merge pull request #203 from kbarber/ticket/master/pdb-554
Ticket/master/pdb 554 Fix zombied instances and volumes for EC2
```
* Merge pull request #209 from anodelman/optional-validation (1fb25d3a)
```
Merge pull request #209 from anodelman/optional-validation
(QENG-433) make validation steps in beaker optional
```
* Merge pull request #202 from anodelman/exit-with-xml (43e2f8b0)
```
Merge pull request #202 from anodelman/exit-with-xml
(QENG-409) Beaker does not write out JUnit XML when...
```
* Add test and yardoc (d1d7f05e)
* PDB-554 Remove wait_for_ssh now the underlying layers handles it (cc9bd071)
```
PDB-554 Remove wait_for_ssh now the underlying layers handles it
Signed-off-by: Ken Barber
```
* (QENG-425) Alter with_puppet_running_on logic. (ec2dba43)
```
(QENG-425) Alter with_puppet_running_on logic.
Only use initscript to restart if puppetservice is defined.
Signed-off-by: Wayne
```
* Merge pull request #205 from anodelman/vmname-confusion (71e3db8e)
```
Merge pull request #205 from anodelman/vmname-confusion
(maint) create host.hostname procedure
```
* Merge pull request #197 from anodelman/google-cloud (3666309c)
```
Merge pull request #197 from anodelman/google-cloud
(QENG-407) update google compute to differentiate between template and platform
```
* PDB-554 Execute configure_hosts() after wait_for_ssh() (b8a47ead)
```
PDB-554 Execute configure_hosts() after wait_for_ssh()
Signed-off-by: Ken Barber
```
* PDB-554 Provide a bare minimum /etc/hosts for Ubuntu 10.04 compatibility (cf1f6760)
```
PDB-554 Provide a bare minimum /etc/hosts for Ubuntu 10.04 compatibility
Signed-off-by: Ken Barber
```
* PDB-554 Use ec2's dynamic names (db5f514e)
```
PDB-554 Use ec2's dynamic names
This obviates the need for /etc/hosts modification by using the EC2 public
names only.
Signed-off-by: Ken Barber
```
* PDB-554 Correct handling of /etc/hosts creation and ensure hostnames are set (8d0e76c8)
```
PDB-554 Correct handling of /etc/hosts creation and ensure hostnames are set
Signed-off-by: Ken Barber
```
* PDB-554 Use hack_etc_hosts instead and make a wait_for_ssh method (1b7fb16d)
```
PDB-554 Use hack_etc_hosts instead and make a wait_for_ssh method
The wait_for_ssh method works around a race during provisioning whereby a
machine can come up and be ready for SSH connections, but you will get an
authenthentication error if you try to quickly.
Signed-off-by: Ken Barber
```
* (QENG-425) Support optional curl_with_retries behavior. (f8410ada)
```
(QENG-425) Support optional curl_with_retries behavior.
Specifically, when restarting the puppet master using the initscript/service,
allow per-host configuration to specify whether or not to actually wait for the
puppet master to listen on port 8140 by attemping to grok with. Try up to 120
times at 1-second intervals.
Signed-off-by: Wayne
```
* (QENG-425) Generalize with_puppet_running_on method. (2b56e90a)
```
(QENG-425) Generalize with_puppet_running_on method.
Instead of always using pe-httpd as the service name for PE Puppet master, set
that as the default and allow customization on a per-host basis (probably
through Beaker config).
Signed-off-by: Wayne
```
* PDB-554 Decompose #provision and break out amiports into its own class (e8be9cf8)
```
PDB-554 Decompose #provision and break out amiports into its own class
Signed-off-by: Ken Barber
```
* Merge pull request #201 from maestrodev/provision-anyway (628d712c)
```
Merge pull request #201 from maestrodev/provision-anyway
If provision option is set to false but Vagrantfile not found, then provision anyway
```
* Error early if provision option is set to false but Vagrantfile not found (20ae80b4)
```
Error early if provision option is set to false but Vagrantfile not found
User needs to enable provision
```
* (QENG-433) make validation steps in beaker optional (e2fa5239)
```
(QENG-433) make validation steps in beaker optional
- turn on/off with -(-no)-validate
- defaults to 'true'
```
* Add future parser as option when applying a manifest (6eb69b1e)
```
Add future parser as option when applying a manifest
This option can enable the use of the future parser when applying a manifest.
I'm not 100% sure though what it will do on older puppet versions that don't support that option.
```
* (maint) create host.hostname procedure (27581ea9)
```
(maint) create host.hostname procedure
- convenience method for accessing the hostname of the given host
```
* PDB-554 Set ENV variable jenkins_build_url to ensure test matches (5fffee41)
```
PDB-554 Set ENV variable jenkins_build_url to ensure test matches
Signed-off-by: Ken Barber
```
* firewall + ssh fixes for google compute (e45b4694)
```
firewall + ssh fixes for google compute
- firewall allows ports 8080/8081
- retry on failure to authenticate errors (happens when google compute
boxes haven't successfully spun up yet)
```
* PDB-554 Add image checking and root device setup (5b9b7da1)
```
PDB-554 Add image checking and root device setup
Signed-off-by: Ken Barber
```
* (QENG-409) Beaker does not write out JUnit XML when... (5a8b5297)
```
(QENG-409) Beaker does not write out JUnit XML when...
...certain internal exceptions occur
- on ruby 1.8 Timeouts are raised as Interrupt (parented by SignalException)
instead of out of RuntimeError (which is parented by StandardError) and are
thus not being caught appropraitely.
- added spec test coverage for correct error reporting
```
* PDB-554 Implement a new EC2 backend and add jenkins_build_url to tags (44e8258a)
```
PDB-554 Implement a new EC2 backend and add jenkins_build_url to tags
This patch implements a replacement for the blimpy backend. It replaces the
use of blimpy to launch EC2 nodes with the Amazon AWS::EC2 library.
This was introduced to provide more control over handling error states, without
the granular control of a lower level library we are relying on blimpy to have
error handling (which it largely does not).
My theory was that we could either improve blimpy to do more, or just replace
it with a better driver that allows us to maintain our provisioning code on
its own without worrying about an upstream project. Since we don't use blimpy
for anything else, and we don't want the delay of having an upstream project
release our changes replacement seemed like a better option.
The driver is initiated with the hypervisor: ec2 setting in the users template
files and is built to match the blimpy behaviour in the way it configures
security groups and key pairs. To a reasonable extent users using blimpy right
now should be able to switch over with very little change.
As an aside, I've also added the ability to pass through the BUILD_URL from
a jenkins job as a tag in EC2 (and I've added this code to GCE as well). This
allows a better traceback from VM's to a particular job so we can identify
zombied jobs better.
Signed-off-by: Ken Barber
```
* (QENG-407) update google compute to differentiate between template and platform (b29dcfcd)
```
(QENG-407) update google compute to differentiate between template and platform
- assume that the google compute image name will be in host[:image],
otherwise default to host[:platform]
- fixes up the differentiations between google naming rules and our
internal platform naming rules
```
### beaker1.9.1 - 27 Mar, 2014 (747ee73e)
* Merge pull request #196 from anodelman/make-gem (747ee73e)
```
Merge pull request #196 from anodelman/make-gem
create beaker 1.9.1 gem
```
* create beaker 1.9.1 gem (edc0a229)
```
create beaker 1.9.1 gem
- fix vagrant support
```
* Merge pull request #195 from anodelman/vagrant-etc-hosts (c28beef8)
```
Merge pull request #195 from anodelman/vagrant-etc-hosts
(maint) vagrant hypervisor support broken by bad call to hack_etc_hosts
```
* (maint) vagrant hypervisor support broken by bad call to hack_etc_hosts (843135a3)
```
(maint) vagrant hypervisor support broken by bad call to hack_etc_hosts
- nertz
```
### beaker1.9.0 - 26 Mar, 2014 (7feb8327)
* Merge pull request #194 from anodelman/make-gem (7feb8327)
```
Merge pull request #194 from anodelman/make-gem
create beaker 1.9.0 gem
```
* create beaker 1.9.0 gem (e4e2d9eb)
* Merge pull request #151 from anodelman/refactor-fetch (e5fd940d)
```
Merge pull request #151 from anodelman/refactor-fetch
(QA-769) Beaker fetch_puppet for PE needs to be refactored
```
* Merge pull request #187 from colinPL/fusion_spec_spanshots (adbc085a)
```
Merge pull request #187 from colinPL/fusion_spec_spanshots
(maint) Add spec Tests for Empty Fusion Snapshots
```
* Merge pull request #193 from anodelman/curl-wrapper (c5cce8fd)
```
Merge pull request #193 from anodelman/curl-wrapper
(QENG-382) Acceptance tests use curl's default ssl settings
```
* Merge pull request #181 from anodelman/ec2-tags (e6f760d7)
```
Merge pull request #181 from anodelman/ec2-tags
(OPS-2548) Cloud Asset Tagging for QA
```
* Merge pull request #167 from anodelman/google-cloud (aed481f0)
```
Merge pull request #167 from anodelman/google-cloud
Google cloud support in beaker
```
* (QENG-382) Acceptance tests use curl's default ssl settings (b851da4f)
```
(QENG-382) Acceptance tests use curl's default ssl settings
- create curl_on dsl extension, runs curl command with --sslv3 when
executing PE tests
```
* Merge pull request #192 from kylog/maint/pin-rake-to-support-ruby-1.8.7 (0ff1f9c2)
```
Merge pull request #192 from kylog/maint/pin-rake-to-support-ruby-1.8.7
(maint) Pin rake to the last version that supported ruby 1.8.7
```
* (maint) Pin rake to the last version that supported ruby 1.8.7 (5e498b1a)
* (maint) Add spec Tests for Empty Fusion Snapshots (2253d688)
```
(maint) Add spec Tests for Empty Fusion Snapshots
Add three spec tests to exercise that invalid Fusion snapshots raise the
proper errors.
```
* (OPS-2548) Cloud Asset Tagging for QA (919ad9ac)
```
(OPS-2548) Cloud Asset Tagging for QA
- add tags for department/project to ec2
- add annotation for department/project to vcloud
- add metadata to google compute instances
```
* added yard documentation to google compute code + new platform class (d7b6cebf)
```
added yard documentation to google compute code + new platform class
- we like docs!
- i should do this more often!
- please don't check for grammar
```
* (QA-769) Beaker fetch_puppet for PE needs to be refactored (98490ba0)
```
(QA-769) Beaker fetch_puppet for PE needs to be refactored
- just some code clean up, split out windows and unix host PE fetching
into two different functions
- tested locally on unix-style hosts
```
* split out google compute related code to its own class (0ed3d54c)
```
split out google compute related code to its own class
- tidy!
```
* added retry for network failure errors (118b4a15)
* add firewall to google default network for given project (6a4cbcbe)
```
add firewall to google default network for given project
- to ensure that pe ports are open
```
* google cloud integration (95108d39)
### beaker1.8.2 - 21 Mar, 2014 (0f848be8)
* Merge pull request #189 from anodelman/make-gem (0f848be8)
```
Merge pull request #189 from anodelman/make-gem
create beaker 1.8.2 gem
```
* create beaker 1.8.2 gem (d97e62db)
```
create beaker 1.8.2 gem
- to include alteration of beaker configure/validate post-provisioning
steps
```
* Merge pull request #178 from anodelman/configuration-cleanup (7b6b5a84)
```
Merge pull request #178 from anodelman/configuration-cleanup
(QENG-310) move various host configuration steps together
```
* (QENG-310) move various host configuration steps together (7d1a7e38)
```
(QENG-310) move various host configuration steps together
- remove utils directory, place contents in host_prebuild_steps.rb
- update specs to reflect where code was moved
- update hypervisor.rb to use default, pre-built steps
- addon: remove last reference to systest
```
### beaker1.8.1 - 19 Mar, 2014 (4de3450e)
* Merge pull request #186 from anodelman/make-gem (4de3450e)
```
Merge pull request #186 from anodelman/make-gem
create beaker 1.8.1 gem
```
* create beaker 1.8.1 gem (1b674eec)
* Merge pull request #185 from branan/use_cmd_for_msiexec (65a0386e)
```
Merge pull request #185 from branan/use_cmd_for_msiexec
(maint) Wrap windows PE installation in `cmd /C`
```
* (maint) Install PE on windows synchronously (5bcd04ca)
```
(maint) Install PE on windows synchronously
Previously, beaker would call msiexec in a way that would cause it to
run asynchronously. This worked pretty much by chance, because beaker
did enough other stuff before trying to run puppet on the Windows
machine.
This wraps the msiexec call in `start /w`, which waits for the
installation to finish before continuing. This ensures that puppet is
fully installed before beaker continues.
```
* (maint) Wrap windows PE installation in `cmd /C` (08de0d72)
```
(maint) Wrap windows PE installation in `cmd /C`
When cygwin converts the posix-style commandline that bash provides to
a windows-style one for calling msiexec, it adds quotes around some
arguments. These quotes cause msiexec to fail. By wrapping the msiexec
invocation in `cmd /C`, we use the windows command interpreter to
handle the command line instead of bash/cygwin. This avoids the
translation issues introduced by cygwin.
```
### beaker1.8.0 - 17 Mar, 2014 (0cea9162)
* Merge pull request #183 from anodelman/make-gem (0cea9162)
```
Merge pull request #183 from anodelman/make-gem
create beaker 1.8.0 gem
```
* create beaker 1.8.0 gem (3d1ca003)
* Merge pull request #179 from anodelman/result-object-fix (7fae4e96)
```
Merge pull request #179 from anodelman/result-object-fix
(QENG-319) The "result" Object Doesn't Have Promised Attributes
```
* Merge pull request #170 from anodelman/fusion-fixes (b27b57a1)
```
Merge pull request #170 from anodelman/fusion-fixes
(QENG-280) beaker throws sort error when it can't locate fusion snapshots
```
* Merge pull request #177 from zaphod42/issue/master/qeng-326-dump-logs-for-shutdown-errors (3fa2f380)
```
Merge pull request #177 from zaphod42/issue/master/qeng-326-dump-logs-for-shutdown-errors
(QENG-326) Dump puppet logs on failed shutdown
```
* Merge pull request #180 from hunner/fix_default_agents (cb2306f3)
```
Merge pull request #180 from hunner/fix_default_agents
(QENG-328) Only disallow agent-only nodes from using master/database/dashboard roles
```
* Merge pull request #175 from electrical/opensuse (aca94567)
```
Merge pull request #175 from electrical/opensuse
Add opensuse to the list ( Its the same as SLES stuff )
```
* make ntp command configurable per and allow for retries (bbd2d623)
* Add regex check here as well (9b54db38)
* CLeanup if/elsif to case/when statements (ba0a2486)
* Merge pull request #182 from nicklewis/generate_3.3_answers (1e31d730)
```
Merge pull request #182 from nicklewis/generate_3.3_answers
Support generating answers for PE 3.3
```
* Support generating answers for PE 3.3 (e3d933c7)
```
Support generating answers for PE 3.3
For now, these are the same answers as for PE 3.2.
```
* Remove all opensuse references, we only use sles. (e7da7d9b)
* (QENG-328) Only disallow agent-only nodes from using master/database/dashboard roles (28e15cdb)
* SLES and OpenSuSE are the same. (e74e12f0)
```
SLES and OpenSuSE are the same.
Make sure we check and install the right package and call sntp for setting the time
```
* (QENG-326) Ignore errors when dumping logs (9435273d)
```
(QENG-326) Ignore errors when dumping logs
If the log dump encounters an error, that error would mask any errors
with the teardown of the puppet system. This changes that to log the
error from the log dump and continue on as normal. The logs won't be
dumped (maybe. depends on where the error was encountered), but the
problem will be reported and so will the original teardown problem.
```
* Merge pull request #173 from anodelman/answer-access (7a76fbfa)
```
Merge pull request #173 from anodelman/answer-access
(QENG-318) Add interface for introspecting answers
```
* Merge pull request #169 from jpartlow/dont_destroy_callers_opts (a52fbac5)
```
Merge pull request #169 from jpartlow/dont_destroy_callers_opts
(maint) Preserve :__commandline_args__ if provided in conf_opts
```
* Merge pull request #158 from electrical/pe_ver_env (100916bd)
```
Merge pull request #158 from electrical/pe_ver_env
Add pe_ver ENV variable so we can control it outside the config files.
```
* (QENG-319) The "result" Object Doesn't Have Promised Attributes (789d5004)
```
(QENG-319) The "result" Object Doesn't Have Promised Attributes
- to support old tests, yield self on a block with arity of 0
- to support new tests, yield result on a block with arity of 1
```
* Merge pull request #172 from anodelman/scrub-README (2e60adbe)
```
Merge pull request #172 from anodelman/scrub-README
(QENG-309) remove documentation from Beaker README
```
* (QENG-326) Dump puppet logs on failed shutdown (bbd45199)
```
(QENG-326) Dump puppet logs on failed shutdown
Right now the puppet logs are only dumped if there was a failure to
start the service. That means that when there is a failure on shutdown
we are left in the dark. This adds dumping of the logs when a error is
raised in the shutdown process.
This also improves the FakeHost so that it can support the [] method
instead of having a catch-all stub. By implementing the method is makes
the fake more resilient to changes and reduces the need for stubs of
what is mostly a value object.
```
* Merge pull request #174 from anodelman/file-reading (7ec9d31d)
```
Merge pull request #174 from anodelman/file-reading
(QENG-120) Beaker will raise "empty directory used as an option"...
```
* Fix NTP part. (136e97d3)
```
Fix NTP part.
Should have looked better at which part installs the ntpdate package.
```
* Add OpenSuse ntp stuff + tests (71780e3c)
* Add opensuse to the list ( Its the same as SLES stuff ) (c18b4b37)
* (QENG-120) Beaker will raise "empty directory used as an option"... (85d21e12)
```
(QENG-120) Beaker will raise "empty directory used as an option"...
...when a directory does not exist
- better error messaging
```
* (QENG-318) Add interface for introspecting answers (4dfdcb04)
```
(QENG-318) Add interface for introspecting answers
- when answers are generated add answers to each host object
- answers will be accessible at host[:answers][:q_install]
```
* (QENG-309) remove documentation from Beaker README (84895a99)
```
(QENG-309) remove documentation from Beaker README
- documentation has all been moved to the github beaker wiki
```
* (QENG-280) beaker throws sort error when it can't locate fusion snapshots (490ee15d)
```
(QENG-280) beaker throws sort error when it can't locate fusion snapshots
- add check for snapshot definition per fusion host
- add check that snapshot exist per-existing fusion vm
```
* (maint) Preserve :__commandline_args__ if provided in conf_opts (fd6ae04c)
```
(maint) Preserve :__commandline_args__ if provided in conf_opts
Oops, made the mistake of rudely ripping :__commandline_args__ from
with_puppet_running_on's conf_opts when I first added this bit. This
should preserve the :__commandline_args__ for future callers while still
keeping it out of the puppet.conf creation step.
```
* Merge pull request #168 from hunner/fix_pooled (08fa63b8)
```
Merge pull request #168 from hunner/fix_pooled
(QENG-289) Raise error when template is nil
```
* (QENG-289) Raise error when template is nil (ce839a6b)
* Merge pull request #165 from anodelman/convert-platform-version (3d77dbb5)
```
Merge pull request #165 from anodelman/convert-platform-version
(QENG-279) add ability to convert from platform version number to
```
* Merge pull request #166 from branan/mutable_maps_suck_2_electric_boogaloo (7bf27a15)
```
Merge pull request #166 from branan/mutable_maps_suck_2_electric_boogaloo
(maint) Don't munge the user's opts hash in `on`
```
* Merge pull request #164 from anodelman/ntp-control (63625e22)
```
Merge pull request #164 from anodelman/ntp-control
(QENG-278) beaker's ntp_control doesn't really work
```
* Merge pull request #163 from anodelman/set-stacktrace-limit (74f275a4)
```
Merge pull request #163 from anodelman/set-stacktrace-limit
(QENG-274) makes number of lines reported in stack trace configurable
```
* (maint) Don't munge the user's opts hash in `on` (ae8f02f4)
```
(maint) Don't munge the user's opts hash in `on`
Previously, if the user specified `:environment` in the opts to `on`
(or to a higher-level method that passes on opts to `on`), `on` would
delete that key when it was called. This not only makes it impossible
to call `on` sanely in a loop, but is generally a pretty shitty thing
to do to our users' data.
This changes the code to not modify the hash.
```
* (QENG-279) add ability to convert from platform version number to (3217a82d)
```
(QENG-279) add ability to convert from platform version number to
version codename and back
- for debian and ubuntu boxes where this comes up a lot in our
automation
```
* (QENG-278) beaker's ntp_control doesn't really work (5a53bf15)
```
(QENG-278) beaker's ntp_control doesn't really work
- correctly re-run ntpdate command on failure
```
* (QENG-274) makes number of lines reported in stack trace configurable (86f17764)
* Merge pull request #162 from anodelman/pe-install-configuration (d34339aa)
```
Merge pull request #162 from anodelman/pe-install-configuration
(QENG-271) ability to set pe_ver/pe_dir as a default
```
* (QENG-271) ability to set pe_ver/pe_dir as a default (ca6a8301)
```
(QENG-271) ability to set pe_ver/pe_dir as a default
- just add the check to see if pe_ver is set in options before
attempting the version scraper
```
* Add pe_ver ENV variable so we can control it outside the config files. (668be93e)
```
Add pe_ver ENV variable so we can control it outside the config files.
This can be handy when you want to test against different PE versions in jenkins for example.
```
### beaker1.7.0 - 19 Feb, 2014 (0ad045fe)
* Merge pull request #160 from anodelman/make-gem (0ad045fe)
```
Merge pull request #160 from anodelman/make-gem
create 1.7.0 beaker gem
```
* create 1.7.0 beaker gem (85e47076)
* Merge pull request #141 from anodelman/vagrant-mem-size (9ac309b2)
```
Merge pull request #141 from anodelman/vagrant-mem-size
(QA-794) make vagrant vm size configurable through beaker
```
* Merge pull request #148 from anodelman/conf-only (54ba4861)
```
Merge pull request #148 from anodelman/conf-only
(QA-806) have a means to dump env without running beaker test
```
* Merge pull request #133 from hunner/verbose_default (4b1653ea)
```
Merge pull request #133 from hunner/verbose_default
(QA-787) Change default output to verbose
```
* Merge pull request #154 from branan/programmable_upgrades (83a3d4dd)
```
Merge pull request #154 from branan/programmable_upgrades
(QA-845) Allow PE upgrade version to be specified in the config
```
* Merge pull request #142 from anodelman/vagrant-1.8 (dbac20fe)
```
Merge pull request #142 from anodelman/vagrant-1.8
(QA-816) beaker vagrant support requires ruby 1.9+
```
* Merge pull request #153 from colinPL/invalid_dir_name (7bf655f4)
```
Merge pull request #153 from colinPL/invalid_dir_name
(QA-841) Windows complains about colons in dir names
```
* (QA-845) Allow PE upgrade version to be specified in the config (e6e05b6e)
```
(QA-845) Allow PE upgrade version to be specified in the config
Previously, when doing an upgrade beaker could only get a version by
reading the LATEST file. This makes it difficult to track exactly
which version is going to be tested in a given test run. By allowing
the version to be specified in the config file, we can make sure
beaker installs precisely the PE version that we care about for
testing.
```
* (QA-841) Windows complains about colons in sir names (6215fe4a)
```
(QA-841) Windows complains about colons in sir names
Creating a directory with colons (':') in the name will fail on Windows
and prevent beaker from executing tests. This change moves from calling
%T to using %H_%M_%S for time-based directory names.
```
* Merge pull request #147 from branan/we_wouldnt_have_this_problem_in_clojure (854adeac)
```
Merge pull request #147 from branan/we_wouldnt_have_this_problem_in_clojure
[maint] Do not modify the options hash in apply_manifest_on
```
* (QA-806) have a means to dump env without running beaker test (88f50a08)
```
(QA-806) have a means to dump env without running beaker test
- add --parse-only option to dump options and exit, useful for testing
```
* [maint] Do not modify the options hash in apply_manifest_on (391344d6)
```
[maint] Do not modify the options hash in apply_manifest_on
1) This is just poor behavior
2) When an array of hosts is passed, apply_manifest_on is run more
than once. In this situation, the first one modifies the options hash
and ruins it for all its friends
```
* Merge pull request #139 from branan/command_timestamp (c7a388a4)
```
Merge pull request #139 from branan/command_timestamp
(QA-805) Add timestamp to on(host) calls
```
* Merge pull request #144 from kbarber/maint/master/support-fedora-when-determining-ip (de2e015a)
```
Merge pull request #144 from kbarber/maint/master/support-fedora-when-determining-ip
Fix regexp for finding ip address for Fedora
```
* Merge pull request #140 from branan/boy_do_i_suck (f76e2a2f)
```
Merge pull request #140 from branan/boy_do_i_suck
(maint) apply_manifest_on should still return a value when operating on ...
```
* Fix regexp for finding ip address for Fedora (bd20870f)
```
Fix regexp for finding ip address for Fedora
The previous command for finding the IP address of a host:
ip a | awk '/g/{print$2}'
Picks up all kinds of stray entries, on Amazon Linux for example:
# ip a | awk '/g/{print$2}'
109.74.196.121/24
2a01:7e00::f03c:91ff:fe96:e1e4/64
gre0:
0.0.0.0
gretap0:
ip6gre0:
On a Fedora 20 box hosted in EC2:
# ip a|awk '/g/{print$2}'
lo:
eth0:
10.232.140.48/26
This is because its just looking for the letter 'g' which is not accurate
enough. Some interface lines have the word 'group' for example.
Changing this to the actual word 'global' seems to solve it:
# ip a | awk '/global/{print$2}'
109.74.196.121/24
This has been tested to work on:
* Debian 6/7
* Fedora 18, 20
* Amazon Linux
* Redhat 5/6
So I believe the behaviour should still be consistent after this change.
Signed-off-by: Ken Barber
```
* (QA-816) beaker vagrant support requires ruby 1.9+ (04105fc4)
```
(QA-816) beaker vagrant support requires ruby 1.9+
- remove references to popen3 and use backticks
- can we please deprecate ruby 1.8 support? please?
```
* (QA-794) make vagrant vm size configurable through beaker (cee83d07)
```
(QA-794) make vagrant vm size configurable through beaker
- add support for a vagrant_memsize in the config file
- default to 1024
```
* (maint) apply_manifest_on should still return a value when operating on an array (ed729178)
* (QA-805) Add timestamp to on(host) calls (b741840c)
```
(QA-805) Add timestamp to on(host) calls
Previously there was no timestamp, which makes it hard to correlate
beaker commands with logs on the SUT.
lw5bhs6m2zu4ysb (centos5-64-1) 14:21:44$ which curl
/usr/bin/curl
lw5bhs6m2zu4ysb (centos5-64-1) executed in 5.99 seconds
```
* Merge pull request #138 from colinPL/gitignore_add_patterns (6d281a45)
```
Merge pull request #138 from colinPL/gitignore_add_patterns
(maint) Add new patterns to gitignore
```
* (maint) Add new patterns to gitignore (5bc4ec43)
```
(maint) Add new patterns to gitignore
Added new patterns to gitignore for IDEA, rbenv, and vagrant files and
folders. The tmp directory patterns were reduced from two to one.
```
* (QA-787) Change default output to verbose (c064ae45)
### beaker1.6.2 - 31 Jan, 2014 (ed048e29)
* Merge pull request #137 from anodelman/make-gem (ed048e29)
```
Merge pull request #137 from anodelman/make-gem
create beaker 1.6.2 gem
```
* create beaker 1.6.2 gem (665103a3)
* Merge pull request #136 from branan/apply_manifest_on_array (23c85a0e)
```
Merge pull request #136 from branan/apply_manifest_on_array
(maint) Re-Allow an array of hosts in apply_manifest_on
```
* (maint) Re-Allow an array of hosts in apply_manifest_on (6271538b)
```
(maint) Re-Allow an array of hosts in apply_manifest_on
Before it was refactored, apply_manifest_on allowed an array of
hosts. The Puppet acceptance tests rely on this behavior, so we need
to re-introduce it.
```
### beaker1.6.1 - 30 Jan, 2014 (468bbb6f)
* Merge pull request #135 from anodelman/make-gem (468bbb6f)
```
Merge pull request #135 from anodelman/make-gem
create beaker 1.6.1 gem
```
* create beaker 1.6.1 gem (015d2a8a)
* Merge pull request #132 from branan/pe_rake_explicit_path (04279591)
```
Merge pull request #132 from branan/pe_rake_explicit_path
(maint) Use explicit path to rake when running PE console rake tasks
```
* Merge pull request #134 from branan/fix_32_answers_gen (ce9b1f81)
```
Merge pull request #134 from branan/fix_32_answers_gen
(maint) Make the 'database' host available in 3.2 answers gen
```
* (maint) Add test for the 3.2 upgrade answers generation (8c33486c)
* (maint) Make the 'database' host available in 3.2 answers gen (da936395)
```
(maint) Make the 'database' host available in 3.2 answers gen
Because answers gen does not have access to normal beaker context, the
special hosts need to be made available explicitly.
```
* (maint) Use explicit path to rake when running PE console rake tasks (da88c2b4)
```
(maint) Use explicit path to rake when running PE console rake tasks
Bundler and/or rake gets confused when we aren't explicit.
```
### beaker1.6.0 - 30 Jan, 2014 (3787bdb8)
* Merge pull request #131 from branan/qa_777 (3787bdb8)
```
Merge pull request #131 from branan/qa_777
(QA-777) Allow beaker to deploy a split PE on version 3.2
```
* (QA-777) Allow beaker to deploy a split PE on version 3.2 (846f814c)
```
(QA-777) Allow beaker to deploy a split PE on version 3.2
3.2 includes a large database schema change. Part of the schema
migration is to validate availability of free space. On split
configurations, the dashboard upgrader will ask the user to make sure
there is sufficient space on the database node. We need to answer
"yes" to this from Beaker.
```
* Merge pull request #130 from anodelman/make-gem (6aa7bb1e)
```
Merge pull request #130 from anodelman/make-gem
cut beaker 1.6.0 gem
```
* cut beaker 1.6.0 gem (ff7350fd)
* Merge pull request #117 from johnduarte/maint-add-forgeapi-stub (38b014e9)
```
Merge pull request #117 from johnduarte/maint-add-forgeapi-stub
Add forgeapi stub to support forge api v3
```
* Merge pull request #129 from branan/tmpfile_not_tmp (557a4d15)
```
Merge pull request #129 from branan/tmpfile_not_tmp
(maint) Use host.tmpfile instead of manually generating file names
```
* Merge pull request #1 from anodelman/maint-add-forgeapi-stub (b8385e1b)
```
Merge pull request #1 from anodelman/maint-add-forgeapi-stub
Maint add forgeapi stub
```
* fix for spec test bustage (dcfdea27)
* (maint) Use host.tmpfile instead of manually generating file names (42dee62d)
```
(maint) Use host.tmpfile instead of manually generating file names
Generating a file name in /tmp/ breaks on windows, where /tmp/ can
actually point to a different path depending on if a command is
executing in a cygwin or cmd context.
```
* Add forgeapi stub to support forge api v3 (c029dcaf)
```
Add forgeapi stub to support forge api v3
Version 3 of the forge api will have a canonical source at
forgeapi.puppetlabs.com.
This patch adds this source as a source for the forge stub so
that beaker can set the environemnt to respond correctly for both
version 1 and version 3 of the api.
```
* Add forgeapi stub to support forge api v3 (60b7bb9b)
```
Add forgeapi stub to support forge api v3
Version 3 of the forge api will have a canonical source at
forgeapi.puppetlabs.com.
This patch adds this source as a source for the forge stub so
that beaker can set the environemnt to respond correctly for both
version 1 and version 3 of the api.
```
### beaker1.5.0 - 29 Jan, 2014 (78db5afb)
* Merge pull request #128 from anodelman/make-gem (78db5afb)
```
Merge pull request #128 from anodelman/make-gem
create beaker 1.5.0 gem
```
* create beaker 1.5.0 gem (509cae6c)
* Merge pull request #124 from anodelman/preserve-on-failue (32114959)
```
Merge pull request #124 from anodelman/preserve-on-failue
(QA-723) add preserve hosts on failure option to beaker
```
* Merge pull request #126 from anodelman/no-master (cecb9a58)
```
Merge pull request #126 from anodelman/no-master
(QA-775) allows beaker to run with no master defined
```
* (QA-775) allows beaker to run with no master defined (06ad5f18)
```
(QA-775) allows beaker to run with no master defined
- what is says on the tin
```
* Merge pull request #125 from branan/heterogenous_frictionless_support (b5471753)
```
Merge pull request #125 from branan/heterogenous_frictionless_support
(QA-773) Support installing any frictionless agent on any master
```
* (QA-773) Support installing any frictionless agent on any master (e4afb02f)
```
(QA-773) Support installing any frictionless agent on any master
Previously, beaker only supported installing a frictionless agent if
it had the same platform as the master. This code allows heterogenous
deployments by properly classifying the master for the platform of
each frictionless node in the configuration.
This is (once again) kind of a quick-and-dirty solution. It'll get
cleaned up as part of QA-769, wherein we refactor the mess known as
the PE installation code.
```
* (QA-723) add preserve hosts on failure option to beaker (6cf27d80)
```
(QA-723) add preserve hosts on failure option to beaker
- still support fast/slow fail modes, in slow mode will continue to
attempt to run tests + test suits
- create preserve_hosts modes:
always = keep 'em around no matter what
onfail = only preserve if there was a failure during testing
never = kill 'em no matter what
- added spec test coverage for these modes
```
### beaker1.4.1 - 27 Jan, 2014 (bc6a7d32)
* Merge pull request #123 from anodelman/make-gem (bc6a7d32)
```
Merge pull request #123 from anodelman/make-gem
cut beaker1.4.0 gem
```
* cut beaker1.4.1 gem (7fa876f6)
* Merge pull request #122 from branan/fix_windows_pe_installation (1c9bd227)
```
Merge pull request #122 from branan/fix_windows_pe_installation
(QA-753) Make sure to still support saving MSIs locally
```
* (QA-753) Make sure to still support saving MSIs locally (064f074f)
```
(QA-753) Make sure to still support saving MSIs locally
The initial commit for QA-753 didn't account for the MSI case, which
still requires saving the .msi file locally. This adds a save_locally
option to the cURL command line, based on whether we're fetch an msi.
```
### beaker1.4.0 - 24 Jan, 2014 (c24f0194)
* Merge pull request #119 from hunner/expect_changes (c24f0194)
```
Merge pull request #119 from hunner/expect_changes
Add :expect_changes to apply_manifest_on()
```
* Merge pull request #120 from anodelman/make-gem (543ae22a)
```
Merge pull request #120 from anodelman/make-gem
cut a beaker 1.4.0 beaker gem
```
* Merge pull request #121 from nicklewis/PE-2627-use-agent-install.bash (08aed82b)
```
Merge pull request #121 from nicklewis/PE-2627-use-agent-install.bash
(PE-2627) Use generic install.bash to install frictionless agents
```
* (PE-2627) Use generic install.bash to install frictionless agents (d8817e4a)
```
(PE-2627) Use generic install.bash to install frictionless agents
Rather than use a platform-specific script, we now have a generic
install.bash script which can be used to install agents of any platform.
Because install.bash downloads the platform-specific script, using it
effectively tests the correctness of both scripts.
```
* cut a beaker 1.4.0 beaker gem (f274c927)
* Merge pull request #112 from nicklewis/upgrade-frictionless-agents (696d7583)
```
Merge pull request #112 from nicklewis/upgrade-frictionless-agents
(PE-2586) Support using frictionless install for upgrades
```
* Add :expect_changes to apply_manifest_on() (80ac33a9)
* Merge pull request #108 from hunner/install_puppet (d59e7316)
```
Merge pull request #108 from hunner/install_puppet
(QA-720) Provide way to install from public repos
```
* Merge pull request #114 from joshcooper/issue/master/QA747-Add-timing-info (990f685d)
```
Merge pull request #114 from joshcooper/issue/master/QA747-Add-timing-info
(QA-747) Log the amount of time each command takes to execute
```
* (QA-747) Log the amount of time each command takes to execute (e814c5c7)
```
(QA-747) Log the amount of time each command takes to execute
Previously, there was no way to tell how long each beaker command took
to execute on a remote VM. I would like to know this information to
track down a timing issue in acceptance testing on Windows.
This commit modifies the host object to log timing information when
beaker is run in debug mode. It uses the same logging prefix as is used
when displaying the executed command, e.g.
a4e5hyo2m0ooom1 (master) $ cp /etc/puppet/puppet.conf ...
a4e5hyo2m0ooom1 (master) executed in 0.01 seconds
```
* (PE-2586) Support using frictionless install for upgrades (0a30c9b0)
```
(PE-2586) Support using frictionless install for upgrades
We now only use frictionless install for versions that support it. This
way we can test frictionless upgrade (which is identical to install)
from non-frictionless installs of older versions, while also testing it
from frictionless installs for versions that support it.
```
* Provide way to install from public repos (aa5048e4)
```
Provide way to install from public repos
This commit adds an `install_puppet` DSL method that may be used to
simply add the public Puppet Labs repositories and install puppet.
```
### beaker1.3.2 - 23 Jan, 2014 (39bbbf0c)
* Merge pull request #118 from anodelman/make-gem (39bbbf0c)
```
Merge pull request #118 from anodelman/make-gem
create beaker 1.3.2 gem
```
* create beaker 1.3.2 gem (ed76fe91)
* Merge pull request #97 from anodelman/fix-fatal-errors (9d53714b)
```
Merge pull request #97 from anodelman/fix-fatal-errors
(QE-602) Beaker Throws Fatal Error when Displaying Current Version
```
* Merge pull request #116 from hunner/fix_tarball_dl (f96a1ac6)
```
Merge pull request #116 from hunner/fix_tarball_dl
Correct specs for QA-753
```
* Correct specs for QA-753 (e2e8fc25)
* Merge pull request #104 from anodelman/pin-rubygems (eeb972c5)
```
Merge pull request #104 from anodelman/pin-rubygems
unpin rubygems for travis CI
```
* Merge pull request #103 from anodelman/pin-rbvmomi (a786f358)
```
Merge pull request #103 from anodelman/pin-rbvmomi
unpin rbvmomi from 1.6.0
```
* Merge pull request #115 from branan/pe_tgz_unpack (116a1e9f)
```
Merge pull request #115 from branan/pe_tgz_unpack
(QA-753) Don't write or read the PE tarball more than we have to
```
* (QA-753) Don't write or read the PE tarball more than we have to (809e5f37)
```
(QA-753) Don't write or read the PE tarball more than we have to
The PE tarball is big and our storage isn't always happy about
that. By streaming the tarball unpack, we can avoid a write and then a
read of the 800MB tar. On a matrix of 200 nodes, that comes up to 20
million 4K blocks written then read, for no real gain.
```
* Merge pull request #105 from anodelman/vagrant-ip (6a16958b)
```
Merge pull request #105 from anodelman/vagrant-ip
(QA-644) Beaker vagrant backend corrupts /etc/hosts when --no-provision is passed
```
* Merge pull request #111 from alexharv074/add_https_install_support (92a6ee4a)
```
Merge pull request #111 from alexharv074/add_https_install_support
Add HTTPS support to the link_exists? method
```
* Add HTTPS support to the link_exists? method in Beaker::DSL::InstallUtils. (19144424)
* Merge pull request #110 from kurtwall/master (d80eca24)
```
Merge pull request #110 from kurtwall/master
Update regex to support internal github mirror
```
* Update regex to support internal github mirror (b3c8c55c)
* Merge pull request #107 from hunner/manifest_files (d17b78c6)
```
Merge pull request #107 from hunner/manifest_files
(QA-705) Create manifest files to apply
```
* adding spec tests for pulling ip addresses from existing Vagrantfile (78de9675)
```
adding spec tests for pulling ip addresses from existing Vagrantfile
- spec tests are good!
```
* (QA-705) Create manifest files to apply (f04bae10)
```
(QA-705) Create manifest files to apply
When applying puppet manifests with `puppet apply` beaker will generate
the manifest code and send it to `stdin`. This is troublesome for
debugging as the actual code is never shown and hard to replicate.
This commit causes the manifest code to be stored in a `.pp` file in
`/tmp` and apply that file so that it may be viewed and reused when
debugging. This is similar to how rspec-system does it.
```
* (QA-644) Beaker vagrant backend corrupts /etc/hosts when --no-provision is passed (b047b9f0)
```
(QA-644) Beaker vagrant backend corrupts /etc/hosts when --no-provision is passed
- add support to beaker for determining ip addresses of currently up
vagrant hosts through reading the Vagrantfile
- if the Vagrantfile doesn't exist or ip addresses can't be determined
then quit
```
* pin rubygems to 2.2.1 for travis CI (66dbb126)
```
pin rubygems to 2.2.1 for travis CI
- issue with 1.8.7 bustage fixed in rubygems 2.2.1
http://blog.rubygems.org/2014/01/06/2.2.1-released.html
```
* Merge pull request #100 from aperiodic/vagrant-netmask (b4832f3e)
```
Merge pull request #100 from aperiodic/vagrant-netmask
Beaker uses netmask from config for vagrant boxes if present
```
* unpin rbvmomi from 1.6.0 (daca9ea6)
```
unpin rbvmomi from 1.6.0
- rbvmomi issue fixed for ruby 1.8.7, should be good to go now
```
* Merge pull request #102 from anodelman/pin-rubygems (2a4bab0a)
```
Merge pull request #102 from anodelman/pin-rubygems
Rubygems broke spec for rvm 1.8.7
```
* Rubygems broke spec for rvm 1.8.7 (93b53b13)
```
Rubygems broke spec for rvm 1.8.7
- Temporary workound until https://github.com/rubygems/rubygems/pull/763 is merged
```
* Beaker uses netmask from config for vagrant boxes if present (4d3ad95a)
* (QE-602) Beaker Throws Fatal Error when Displaying Current Version (9840390a)
```
(QE-602) Beaker Throws Fatal Error when Displaying Current Version
- just don't do a gemspec load when looking for the version number, thus
it doesn't end up calling git-ls, thus no fatal errors
```
### beaker1.3.1 - 18 Dec, 2013 (08b59809)
* Merge pull request #99 from anodelman/make-gem (08b59809)
```
Merge pull request #99 from anodelman/make-gem
create 1.3.1 beaker gem
```
* create 1.3.1 beaker gem (8dc431b1)
```
create 1.3.1 beaker gem
- pin rbvmomi to 1.6 to avoid bustage
```
* Merge pull request #98 from anodelman/pin-rbvmomi (739658cd)
```
Merge pull request #98 from anodelman/pin-rbvmomi
(QA-659) Pin beaker to rbvmomi 1.6.0
```
* (QA-659) Pin beaker to rbvmomi 1.6.0 (e680d603)
```
(QA-659) Pin beaker to rbvmomi 1.6.0
- pin to rbvmomi 1.6.0 until we can figure out what's broken with
latest rbvmomi
```
### beaker1.3.0 - 13 Dec, 2013 (5815f829)
* Merge pull request #96 from anodelman/make-gem (5815f829)
```
Merge pull request #96 from anodelman/make-gem
creating beaker 1.3.0 gem
```
* creating beaker 1.3.0 gem (22b63cdc)
```
creating beaker 1.3.0 gem
- adding support for --log-level
- bug fixes
```
* Merge pull request #86 from anodelman/log-level (f0ff1e76)
```
Merge pull request #86 from anodelman/log-level
expanded log level support
```
* Merge pull request #93 from nicklewis/frictionless-agent-install (89dfcbd2)
```
Merge pull request #93 from nicklewis/frictionless-agent-install
Install agents using the frictionless agent install
```
* Merge pull request #94 from hunner/catch_changes (6b45fa34)
```
Merge pull request #94 from hunner/catch_changes
(QE-613) Add `:catch_changes` to check for manifest resource changes
```
* Merge pull request #85 from anodelman/fix-uri (67dfb36a)
```
Merge pull request #85 from anodelman/fix-uri
(QE-588) vcloud_pooled: undefined method `request_uri'
```
* Merge pull request #95 from anodelman/test-order (85a56a6e)
```
Merge pull request #95 from anodelman/test-order
(QE-622) Beaker Does not Run Pre-suites in the Order Specified
```
* (QE-622) Beaker Does not Run Pre-suites in the Order Specified (59c4de32)
```
(QE-622) Beaker Does not Run Pre-suites in the Order Specified
- move sorting of test files into the option parser
- sort directores, keep ordering of items on command line
- added additional spec tests to confirm change
```
* Validate that we don't allow frictionless master, etc (30e89d4e)
```
Validate that we don't allow frictionless master, etc
Frictionless install is only supported for agent-only installs, so we
check that any frictionless node doesn't have any non-agent roles
specified.
```
* (QE-613) Add `:catch_changes` to check for manifest resource changes (9edaa60d)
```
(QE-613) Add `:catch_changes` to check for manifest resource changes
Many times when testing modules we apply puppet code twice in a row and
verify that the second run does not produce any resource changes to
verify that the resources are idempotent. The `:catch_changes` option
can be used to monitor for this result.
```
* Install agents using the frictionless agent install (1e954247)
```
Install agents using the frictionless agent install
This change adds logic for installing using the new curlbash style of
agent install. In order to support testing both the old and new styles
of install, we add a new agent role of "frictionless", which indicates
that the node should be installed in the new style. This simply causes
it not to download the PE tarball or generate answer files, and to curl
and run a script from the master (based on the platform tag).
```
* Merge pull request #92 from anodelman/make-gem (a41045a4)
```
Merge pull request #92 from anodelman/make-gem
release beaker 1.2.0
```
* (QE-588) vcloud_pooled: undefined method `request_uri' (2640f935)
```
(QE-588) vcloud_pooled: undefined method `request_uri'
- ensure that a scheme is defined for the vcloud pooling api uri
- if no scheme is defined the uri returned is a simple uri object that
does not support the 'request_uri' method
```
* expanded log level support (0259a764)
```
expanded log level support
- support the following levels:
5 debug
4 verbose
3 info
2 notify
1 warn
- each level reports itself plus the levels under it
- added 'info' level that reports in BLUE
- 'debug' level adds full stack traces
- todo: would like to review our current logging messages and see
what needs to be assigned a new level
```
### beaker1.2.0 - 5 Dec, 2013 (59070752)
* release beaker 1.2.0 (59070752)
```
release beaker 1.2.0
- support :expect_failures in apply_manifest_on
- various bug fixes
```
* Merge pull request #91 from hunner/apply-manifest-fix (7fcf42b3)
```
Merge pull request #91 from hunner/apply-manifest-fix
(QE-598) apply_manifest_on fails if acceptable_exit_codes is not set
```
* Add specs for this bug (a11b7163)
* (QE-598) apply_manifest_on fails if acceptable_exit_codes is not set (5a9b0227)
```
(QE-598) apply_manifest_on fails if acceptable_exit_codes is not set
- was using 0 instead of [0] as the default acceptable exit code
```
* Merge pull request #89 from hunner/expect_failures (41a82683)
```
Merge pull request #89 from hunner/expect_failures
Add `:expect_failures` option
```
* Add `:expect_failures` option (f6b38e5e)
```
Add `:expect_failures` option
When performing positive tests of applying manifests, the
`#apply_manifest` method may be called with `:catch_failures => true`.
This commit also adds an argument of `:expect_failures` to allow
`#apply_manifest` to perform negative tests.
```
* Merge pull request #88 from hunner/fix_catch_failures (8aa70bf4)
```
Merge pull request #88 from hunner/fix_catch_failures
Fix catch_failures option
```
* Fix catch_failures option (314072e4)
```
Fix catch_failures option
If `:catch_failures => true` is supplied and no extra
`:acceptable_exit_codes` are supplied, a bug hindered the
`#apply_manifest_on` method from performing correctly.
```
* Merge pull request #87 from anodelman/make-gem (c516ed07)
```
Merge pull request #87 from anodelman/make-gem
make 1.1.0 gem
```
* make 1.1.0 gem (a631327c)
```
make 1.1.0 gem
- includes implementation for everything needed to deploy test packages on top
of an installed PE.
```
* Merge pull request #39 from branan/master (b4e583fb)
```
Merge pull request #39 from branan/master
RFC: QE-147 and QE-148
```
* Merge pull request #84 from kbarber/maint/master/retry-blimpy-on-systemcall-errors (eb07eb6f)
```
Merge pull request #84 from kbarber/maint/master/retry-blimpy-on-systemcall-errors
Catch SystemCallError during blimpy provision for retry
```
* Catch SystemCallError during blimpy provision for retry (9f09862d)
```
Catch SystemCallError during blimpy provision for retry
Previously we were only catching Fog::Errors::Error exceptions, this patch
makes sure that system call failures are also caught, so things like connection
refused and no route to host which are generally transient, are caught and
retried properly.
Signed-off-by: Ken Barber
```
* Merge pull request #72 from anodelman/check-platform-set (7dc0dc22)
```
Merge pull request #72 from anodelman/check-platform-set
(QE-519) beaker should raise error if host does not have a platform set
```
* Merge pull request #80 from anodelman/hunner (a97c5e18)
```
Merge pull request #80 from anodelman/hunner
move VagrantFiles into .vagrant_files directory of working directory
```
* Merge pull request #83 from anodelman/make-gem (9f13ae00)
```
Merge pull request #83 from anodelman/make-gem
make 1.0.1 gem
```
* enforcing platform format of OS-VERSION-ARCH (1f4320da)
```
enforcing platform format of OS-VERSION-ARCH
- added spec tests to ensure that we correctly sort out bad platform
names
- will need to write an associated patch to update our node
configuration files to meet the new standard
```
* move VagrantFiles into .vagrant_files directory of working directory (745798c3)
* documentation for supported HOST settings (590aa14f)
* Only update apt repo if needed (3d882250)
```
Only update apt repo if needed
Previously, the code would run apt-get update at every package
install. This memoizes when apt-get update has been run so we don't
need to run it as frequently
```
* (QE-519) beaker should raise error if host does not have a platform set (a4b6e89a)
```
(QE-519) beaker should raise error if host does not have a platform set
- beaker tries to do crazy things when hosts aren't on supported
platforms, let's check that option right at the start
```
* (QE-147) Add support to deploy package repositories (1acb64e5)
* (QE-148) support upgrading packages (e5c27201)
### beaker1.0.1 - 25 Nov, 2013 (70f55b11)
* make 1.0.1 gem (70f55b11)
* Merge pull request #82 from branan/support_pe_32 (cea4c4f4)
```
Merge pull request #82 from branan/support_pe_32
Add support for PE 3.2 with its new answers requirements
```
* Merge pull request #79 from anodelman/make-gem (344aa275)
```
Merge pull request #79 from anodelman/make-gem
pre-release of 1.0.1 beaker
```
* Add support for PE 3.2 with its new answers requirements (90b7afe1)
* Merge pull request #76 from justinstoller/merge/handle-missing-puppet.conf (9cc9434b)
```
Merge pull request #76 from justinstoller/merge/handle-missing-puppet.conf
handle missing puppet.conf
```
* Merge pull request #71 from justinstoller/pessimistically_version_deps (8730cf06)
```
Merge pull request #71 from justinstoller/pessimistically_version_deps
[fixes QE-504] allow Beaker gem to be installed on 1.8
```
* Merge pull request #73 from jpartlow/maint/master/dump_master_log_only_if_fail_startup (a816006e)
```
Merge pull request #73 from jpartlow/maint/master/dump_master_log_only_if_fail_startup
(maint) Dump master puppet log if failed to start puppet.
```
* Merge pull request #77 from hunner/destroy_nothing (9bc67be5)
```
Merge pull request #77 from hunner/destroy_nothing
Destroy vagrant hosts only if Vagrantfile exists
```
* Destroy vagrant hosts only if Vagrantfile exists (f0c298f3)
```
Destroy vagrant hosts only if Vagrantfile exists
The new `vagrant destroy --force` run during the vagrant hypervisors
`provision` method added in #48 seems to fail if no `Vagrantfile` has
ever been created for a nodeset. This fixes that.
```
* Use Beaker::Command when working within hosts (6551ca6d)
* (maint) Dump master puppet log if failed to start puppet. (64254fc4)
```
(maint) Dump master puppet log if failed to start puppet.
Centralize logging after puppet master fails to start.
```
* Define host method to check for file existence (84bf88c0)
* Pessimistically lock down runtime and transitive dependencies (8c76afcc)
* Gracefully handle lack of puppet.conf (faff7721)
```
Gracefully handle lack of puppet.conf
When `#with_puppet_running_on` is executed, it attempts to back up
puppet.conf and replace it for the duration for the test. The old
behavior of the code would always try to back up the file regardless of
the existence of the file, and would fail when the copy failed. This
commit ensures that the puppet.conf file is only backed up when present,
and the temporary puppet.conf is returned to the original state
when the method returns.
```
### beaker1.0.1pre - 20 Nov, 2013 (8cffaf28)
* pre-release of 1.0.1 beaker (8cffaf28)
* Merge pull request #78 from hunner/fact_on (8d3fcbb5)
```
Merge pull request #78 from hunner/fact_on
Rename `fact` to `fact_on` for uniformity
```
* Rename `fact` to `fact_on` for uniformity (54194ede)
```
Rename `fact` to `fact_on` for uniformity
The DSL method `fact` was recently added, but most dsl methods take the
form of `_on` for multi-node functions and `` for
running on a default node. This makes `fact_on()` run on designated
nodes, and `fact()` run on the default node.
```
* Merge pull request #57 from anodelman/vcloud-cleanup (ec5a38e3)
```
Merge pull request #57 from anodelman/vcloud-cleanup
(QE-439) beaker is not catching rbvmomi exceptions when cleaning up vCloud VMs
```
* Merge pull request #70 from anodelman/silence-test-unit (0f40839e)
```
Merge pull request #70 from anodelman/silence-test-unit
(QE-46) Beaker includes Test::Unit specific code
```
* Merge pull request #67 from anodelman/add-version (5efd2da5)
```
Merge pull request #67 from anodelman/add-version
(QE-502) beaker should support --version
```
* Merge pull request #56 from anodelman/facter-shortcut (7df75012)
```
Merge pull request #56 from anodelman/facter-shortcut
(QE-364) have beaker 'chomp' stdout from execution result
```
* Merge pull request #51 from anodelman/vagrant-error-out (c2d6185c)
```
Merge pull request #51 from anodelman/vagrant-error-out
(QE-451) stop run when vagrant commands fail
```
* Merge pull request #48 from anodelman/fix-vagrant (1959b6f1)
```
Merge pull request #48 from anodelman/fix-vagrant
(QE-204) allow for use of local vagrant file when using --no-provision
```
* (QE-46) Beaker includes Test::Unit specific code (d88e1928)
```
(QE-46) Beaker includes Test::Unit specific code
- this was an issue with test::unit having autorun on by default,
resulting in log spew when shutting down beaker
```
* Merge pull request #69 from branan/socket_timeout_fixup (15b6a774)
```
Merge pull request #69 from branan/socket_timeout_fixup
[QE-498] Fix port_open? on linux
```
* [QE-498] Fix port_open? on linux (bcfb82cb)
```
[QE-498] Fix port_open? on linux
The previous fix for QE-498 apparently relied on some
platform-specific behavior around async sockets. This goes back to the
old blocking socket method, but keeps the new behavior around socket
timeouts.
```
* Merge pull request #68 from anodelman/missing-gem (9e73cc52)
```
Merge pull request #68 from anodelman/missing-gem
(QE-501) beaker raises warning about missing gem (unf)
```
* (QE-501) beaker raises warning about missing gem (unf) (d7d0e731)
```
(QE-501) beaker raises warning about missing gem (unf)
- adding missing gem broke platform testing
- commenting out offending line in beaker.gemspec, it can easily be
flipped back on if desired
```
* (QE-502) beaker should support --version (dbb13faf)
* Merge pull request #64 from anodelman/make-gem (dd89f4d1)
```
Merge pull request #64 from anodelman/make-gem
create beaker 1.0.0 gem
```
* Merge pull request #65 from anodelman/port-open (1f537b19)
```
Merge pull request #65 from anodelman/port-open
(QE-498) with_puppet_running_on can fail if TCP handshake takes > 1s
```
* Merge pull request #66 from anodelman/missing-gem (607f2baf)
```
Merge pull request #66 from anodelman/missing-gem
(QE-501) add missing gem 'unf'
```
* (QE-501) add missing gem 'unf' (d4cf39ba)
* (QE-498) with_puppet_running_on can fail if TCP handshake takes > 1s (3d561b84)
```
(QE-498) with_puppet_running_on can fail if TCP handshake takes > 1s
- found solution online using non-blocking sockets, work locally
```
* Merge pull request #60 from adrienthebo/quote-bash-conditional-arguments (22d04f1a)
```
Merge pull request #60 from adrienthebo/quote-bash-conditional-arguments
Quote ruby interpolated data in bash commands
```
* Merge pull request #62 from justinstoller/pooling-again (e7c01681)
```
Merge pull request #62 from justinstoller/pooling-again
Pooling again
```
* Merge pull request #59 from justinstoller/18test (032f6fee)
```
Merge pull request #59 from justinstoller/18test
Test on 1.8.7
```
* test, refactor, and improve option hash printing (25fd8ae3)
* Quote ruby interpolated data in bash commands (fa0af43b)
```
Quote ruby interpolated data in bash commands
Bash conditionals demonstrate strange behaviors when not given an arg.
Given the following:
if [ -f ]; then
echo "how did I get here?"
fi
#=> how did I get here?
Wrapping ruby interpolated variables in quotes act as expected:
if [ -f '' ]; then echo
"how did I get here?"
else
echo "the empty string is not a file"
fi
#=> the empty string is not a file
The moral of the story is that bash exists to make everybody sad.
```
* PR comment improvements (3f1df347)
* Fix vcloud work to be 1.8 compat (3d73698a)
* fix deprecation warnings with RSpec 2.14 (8dbcee1a)
* Bump RSpec version (017ff432)
* actually test Solaris "hypervisor" (ddb61db3)
* fixup Beaker::Options::OptionsHash specs on 1.8.7 (3d81b32d)
* fixup Beaker::DSL::Roles specs on 1.8.7 (03fffe88)
* fixup Beaker::PuppetCommand specs on 1.8.7 (9bcfa6a6)
* fixup Beaker::Host specs on 1.8.7 (08197424)
* capture the correct Exception for bad YAML files on 1.8.7 (31c24a24)
* fixup Beaker::DSL::InstallUtils specs on 1.8.7 (cd79851d)
* fixup Beaker::DSL::Helpers specs on 1.8.7 (998448f9)
* (QE-439) beaker is not catching rbvmomi exceptions when cleaning up vCloud VMs (7857d143)
```
(QE-439) beaker is not catching rbvmomi exceptions when cleaning up vCloud VMs
- catch RbVmomi::VIM::ManagedObjectNotFound and handle appropriately
```
* remove deprecated beaker.rb (c7ededce)
* add 1.8.7 to the travis matrix (65b62f0b)
* pass tasks instead of objectSet to wait_for_tasks (30f2288d)
* repair spec test (9f7d2863)
* cleaner re-use of vagrant boxes, review comment fixes (f130c2d6)
* add retry for failure to find host in pool (4f9c928a)
```
add retry for failure to find host in pool
- will retry until timeout to grab pooled box for a given host
- raises readable error upon failure to allocated pooled host
```
* remove race condition upon vm cloning, general cleanup (4e45e456)
* make vcloud hypervisor code better (5c8b1da9)
```
make vcloud hypervisor code better
- break out pooled vs. non-pooled code
- break up long proceduces
- avoid code duplication
```
* (QE-364) have beaker 'chomp' stdout from execution result (f9d0f84a)
```
(QE-364) have beaker 'chomp' stdout from execution result
- create dsl helper to access facter facts
```
* (QE-451) stop run when vagrant commands fail (5e1b08d1)
```
(QE-451) stop run when vagrant commands fail
- check exit codes of vagrant commands
- raise an error if vagrant commands fail
```
* (QE-204) allow for use of local vagrant file when using --no-provision (0da2d66f)
```
(QE-204) allow for use of local vagrant file when using --no-provision
- use already set up vagrant boxes when running with --no-provision
```
* fixes in response to review comments (29df8b50)
* vCloud host-pooling (2b974cfb)
```
vCloud host-pooling
- This PR enabled the use of the "pooling_api" configuration parameter:
- spec tests for vsphere/vcloud hypervisors
```
### beaker1.0.0 - 8 Nov, 2013 (c85186b7)
* create beaker 1.0.0 gem (c85186b7)
```
create beaker 1.0.0 gem
- include vpooling work
```
* Merge pull request #55 from justinstoller/maint/master/revert-vpooling (bed4ff69)
```
Merge pull request #55 from justinstoller/maint/master/revert-vpooling
Revert "Merge pull request #38 from anodelman/vcloud-pooling"
```
* Revert "Merge pull request #38 from anodelman/vcloud-pooling" (b4b7143a)
```
Revert "Merge pull request #38 from anodelman/vcloud-pooling"
This reverts commit 0f2ffc5e15fe9503518b01d2b92be40fdf6dc74c, reversing
changes made to 6ccbe4c80100715c934b0df475a0739e7cbf038b.
```
* Merge pull request #38 from anodelman/vcloud-pooling (0f2ffc5e)
```
Merge pull request #38 from anodelman/vcloud-pooling
vCloud host-pooling
```
* pass tasks instead of objectSet to wait_for_tasks (e9c2733d)
* add retry for failure to find host in pool (ccb0ae68)
```
add retry for failure to find host in pool
- will retry until timeout to grab pooled box for a given host
- raises readable error upon failure to allocated pooled host
```
* Merge pull request #53 from jpartlow/issue/master/fix_windows_group_list_allowed_characters (6ccbe4c8)
```
Merge pull request #53 from jpartlow/issue/master/fix_windows_group_list_allowed_characters
Relax regex for windows group names
```
* remove race condition upon vm cloning, general cleanup (d4011c9e)
* Relax regex for windows group names (f008ca55)
```
Relax regex for windows group names
Windows::Group.group_list was only recording group names matching
/[\w ]/, but windows groups have a much larger set of valid characters
(http://technet.microsoft.com/en-us/library/bb726984.aspx). This was
causing a failure on a Windows 2012 template which had a group with a
'-' in it.
Instead of trying to specify what is valid, accept whatever the wmic
group indicates is a group, since it should know.
```
* Merge pull request #52 from jpartlow/issue/master/determine_windows_arch_for_2003_through_2012 (0534ce72)
```
Merge pull request #52 from jpartlow/issue/master/determine_windows_arch_for_2003_through_2012
Identify os architecture on windows 2003, 2008, 2012
```
* make vcloud hypervisor code better (b6424e2a)
```
make vcloud hypervisor code better
- break out pooled vs. non-pooled code
- break up long proceduces
- avoid code duplication
```
* Merge pull request #50 from anodelman/hunner (86d2ed47)
```
Merge pull request #50 from anodelman/hunner
potential fix for failing travis tests
```
* Merge pull request #49 from anodelman/missing-msg (3ade22a6)
```
Merge pull request #49 from anodelman/missing-msg
remove use of undefined variable 'msg'
```
* Merge pull request #46 from anodelman/fix-hypervisor-cleanup (0576fb1d)
```
Merge pull request #46 from anodelman/fix-hypervisor-cleanup
(QE-440) beaker hypervisor creator not returning hypervisor object
```
* Identify os architecture on windows 2003, 2008, 2012 (b844f41d)
```
Identify os architecture on windows 2003, 2008, 2012
Previous tests relied on wmi os osarchitecture property, which is not
present on Windows 2003. Now we check osarchitecture first, and use
its result if successful. If that attempt fails we fall back to
grepping the wmi os name property for an x64 string.
```
* Merge pull request #44 from justinstoller/maint/master/one_more_time_with_feeling (5e14a7f7)
```
Merge pull request #44 from justinstoller/maint/master/one_more_time_with_feeling
add back signing of dns-alt-name certs
```
* potential fix for failing travis tests (81d7eee0)
* remove use of undefined variable 'msg' (509abbf5)
* Merge pull request #47 from jpartlow/issue/master/windows_package_install_fails_testing_result (030f6ebb)
```
Merge pull request #47 from jpartlow/issue/master/windows_package_install_fails_testing_result
Correctly determine win arch for installing packages.
```
* Correctly determine win arch for installing packages. (6892acbb)
```
Correctly determine win arch for installing packages.
My previous implementation had a bug in that it expected execute to
return a result object. Instead, execute exposes the result object to a
passed block. So now we check the result within a block and set rootdir
and cygwin executable there.
```
* Merge pull request #41 from hunner/single_exit_codes (d124332f)
```
Merge pull request #41 from hunner/single_exit_codes
Allow single exit codes
```
* (QE-440) beaker hypervisor creator not returning hypervisor object (a4407e2d)
* Merge pull request #45 from anodelman/187-mimetypes (2f12fdd0)
```
Merge pull request #45 from anodelman/187-mimetypes
(QE-428) bundle install fails on Ruby 1.8.7 because of new mime-types 2.0 dependency requiring 1.9.2
```
* (QE-428) bundle install fails on Ruby 1.8.7 because of new mime-types 2.0 dependency requiring 1.9.2 (fd70a79c)
```
(QE-428) bundle install fails on Ruby 1.8.7 because of new mime-types 2.0 dependency requiring 1.9.2
- add entry to gemspec to use mime-types 1.25 with ruby 1.8.7
```
* fixes in response to review comments (adf10c49)
* add back signing of dns-alt-name certs (b57f3a6c)
* Revert "QE-364 Clean up line endings" (a1c40a10)
```
Revert "QE-364 Clean up line endings"
This reverts commit 38d7810ee26b74656344eba429e1826031a4b1df.
Signed-off-by: Ken Barber
```
* Merge pull request #43 from kylog/feature/add-hostname-to-dns-exception (8cd4649d)
```
Merge pull request #43 from kylog/feature/add-hostname-to-dns-exception
Add hostname to dns exception
```
* Merge pull request #40 from hunner/chomp_lineendings (4607f820)
```
Merge pull request #40 from hunner/chomp_lineendings
QE-364 Clean up line endings
```
* Merge pull request #42 from kbarber/maint/master/yarddocs-answers (93336666)
```
Merge pull request #42 from kbarber/maint/master/yarddocs-answers
Add yarddocs to beaker/answers* modules
```
* Merge pull request #33 from anodelman/default-host-support (da359c35)
```
Merge pull request #33 from anodelman/default-host-support
QE-361 support using a default host in tests
```
* Add hostname to dns exception (97dd071a)
```
Add hostname to dns exception
Without this patch the exception message on dns failures looks like:
DNS resolution failed after 300 seconds (RuntimeError)
This patch adds the hostname, possibly helpful for troubleshooting infrastructure failures.
```
* Add yarddocs to beaker/answers* modules (0cc49ef8)
```
Add yarddocs to beaker/answers* modules
This just documents those 4 files with yard-docs. Also fixed some minor
style issues.
Signed-off-by: Ken Barber
```
* Allow single exit codes (00bc74c3)
```
Allow single exit codes
When using `:allowed_exit_codes` it is cumbersome to always have an
array of specified values. This change allows `:allowed_exit_codes => 1`
to be used.
```
* QE-364 Clean up line endings (38d7810e)
```
QE-364 Clean up line endings
When using `Beaker::Command` helpers such as `facter()` or even `on()`
the resulting output is often a single line and of interest for its
value. The newline returned at the end of the line is not relevant to
interests and ends up getting `.chomp` called on it in almost every
case.
This change chomps the final newline off of stdout and stderr output so
that tests can be more simply written without having to `.chomp`
```
* Merge pull request #37 from hunner/ip_space (e50fb002)
```
Merge pull request #37 from hunner/ip_space
Avoid using 192.168.0.0/16
```
* vCloud host-pooling (d4351a3c)
```
vCloud host-pooling
- This PR enabled the use of the "pooling_api" configuration parameter:
- spec tests for vsphere/vcloud hypervisors
```
* Avoid using 192.168.0.0/16 (de49ec64)
```
Avoid using 192.168.0.0/16
When using 192.168.0.0/16 address space on a 192.168.x.0/24 NAT'd
network (such as most home routers) VirtualBox will complain that the
virtual private network overlaps with an existing network and refuses to
start the VMs. 10.255.0.0/16 is a less-likely to conflict range, though
not perfect.
```
* Merge pull request #35 from anodelman/utils-shared-spec (7a6eb411)
```
Merge pull request #35 from anodelman/utils-shared-spec
spec test coverage for utils/ and shared/
```
* Merge pull request #36 from hunner/avoid_ip_1 (a8bb71e3)
```
Merge pull request #36 from hunner/avoid_ip_1
Avoid IPs ending in .0, .1, or .255
```
* Avoid IPs ending in .0, .1, or .255 (d5aca5be)
```
Avoid IPs ending in .0, .1, or .255
Vagrant 1.2.5 and later do not allow IPs ending in `.1`, in addition to
the usual limitations of `.0` or `.255`.
```
* Merge pull request #28 from anodelman/hyper-spec (c4a52401)
```
Merge pull request #28 from anodelman/hyper-spec
spec test coverage for hypervisors
```
* modified to use make_host/make_hosts methods in helpers.rb (a08c3a74)
```
modified to use make_host/make_hosts methods in helpers.rb
- more general cleanup
```
* review fixes and changes (6dfc7f50)
* review comments + shifting other spec tests to centralized host creation (4f1c79cf)
```
review comments + shifting other spec tests to centralized host creation
- now that we have make_hosts the rest of the specs should use it
- cleanup!
```
* Merge pull request #30 from anodelman/win64 (536f8c8f)
```
Merge pull request #30 from anodelman/win64
QE-348 - beaker can't run puppet on 64 bit windows hosts
```
* fixes for hyperviser spec tests (14613ce6)
```
fixes for hyperviser spec tests
- move shared code to helpers.rb
- general cleanup
```
* QE-361 support using a default host in tests (fc890412)
```
QE-361 support using a default host in tests
- create a default host
- support using the role as a valid host in calls to #on
eg, on 'loadbalancer', "echo hello"
- create shell command to run on default host
- provide matchin commands to *_on
- spec tests for new commands, some backfill
```
* Merge pull request #32 from justinstoller/bug/master/allow_2 (260e204a)
```
Merge pull request #32 from justinstoller/bug/master/allow_2
Allow 2 as exit code when non-agent cert submit
```
* Allow 2 as exit code when non-agent cert submit (d7bdf632)
```
Allow 2 as exit code when non-agent cert submit
We have nodes with more-than-just-an-agent ensure they've
checked in prior to signing certs (in case they do not follow default
naming schemes). Unfortunately in some cases the agent will also change
the system, returning 2. This is valid behavior.
```
* Merge pull request #31 from branan/3x_answers (a7028cd1)
```
Merge pull request #31 from branan/3x_answers
Use PE 3.0 answer gen for all 3.X
```
* Merge pull request #27 from justinstoller/maint/master/breaking_my_world (1fe1e18d)
```
Merge pull request #27 from justinstoller/maint/master/breaking_my_world
work with separate master/agent certs on master
```
* Use PE 3.0 answer gen for all 3.X (c633f897)
* Merge pull request #29 from anodelman/sles-pkg-install (8ad0a222)
```
Merge pull request #29 from anodelman/sles-pkg-install
support for package installation on sles SUTs
```
* fixup spec test (ef5596b3)
* fix per branans comments (3986c29e)
* QE-348 - beaker can't run puppet on 64 bit windows hosts (0f3a2a42)
```
QE-348 - beaker can't run puppet on 64 bit windows hosts
- use "Program Files" on win32 windows host
- use "Program Files (x86)" on win64 windows host
```
* support for package installation on sles SUTs (d3d76b31)
```
support for package installation on sles SUTs
- using 'zypper in' for installation
- using 'zypper rm' for removal
```
* ensure weve requested a cert.... (bb544522)
* fix for fusion specs run on non-mac (39dc7d27)
* creation of /shared spec tests (59771de8)
* creation of utils/ spec tests (27c6289f)
* work with separate master/agent certs on master (5f22d48b)
```
work with separate master/agent certs on master
This makes sure the agent's server is the same as the master's certname
and will sign the console/master/database cert in case an agent on those
boxes has a unique cert
```
* Merge pull request #26 from anodelman/do-cleanup (fffe7b39)
```
Merge pull request #26 from anodelman/do-cleanup
move validation to main testing loop - ensures cleanup on failure
```
* Merge pull request #25 from anodelman/keyfile (bde5539c)
```
Merge pull request #25 from anodelman/keyfile
fix for not using --keyfile specified in an options file
```
* move validation to main testing loop - ensures cleanup on failure (619e5a7a)
* fix for not using --keyfile specified in an options file (8e164809)
* Merge pull request #22 from anodelman/yield-result (f3519eb6)
```
Merge pull request #22 from anodelman/yield-result
(QE-245) Execution results should be available inside a block
```
* creation of solaris spec tests (65bfd96d)
* creation of aixer spec tests (41e4091a)
* creation of blimper spec tests (d7615cee)
* Merge pull request #14 from jpartlow/issue/master/with_puppet_running_on (0652d413)
```
Merge pull request #14 from jpartlow/issue/master/with_puppet_running_on
Issue/master/with puppet running on
```
* creation of vagrant spec tests (61a5c2a2)
* Allow solaris as master for non-pe tests. (651c6aad)
```
Allow solaris as master for non-pe tests.
Foss acceptance tests historically check solaris as a master. This
changes the options parser normalization to allow solaris hosts the
master role if the run type is not pe.
```
* spec test fixes for testing yielding in #on (7b92102e)
* (maint) Break up mocks_and_helpers (e43d84f8)
```
(maint) Break up mocks_and_helpers
There is a spec/mocks, helpers and matchers file now included by
spec_helper. Additional mock class and matcher from dsl/helpers_spec
have been moved into them as well.
```
* (maint) Confine execute_commands_matching matcher to FakeHost (fd2969e0)
```
(maint) Confine execute_commands_matching matcher to FakeHost
The matcher only works with the FakeHost mock. This just tests that
condition before attempting the test.
```
* spec tests for stdout/stderr/exit_code values after calling on (793057b2)
* creation of fusion spec tests (dfe81660)
* Merge pull request #24 from justinstoller/bug/master/QE311-undefined_wait (74610f21)
```
Merge pull request #24 from justinstoller/bug/master/QE311-undefined_wait
(QE-311) Bring just Scott's fix in (closes #20)
```
* Merge pull request #23 from anodelman/vagrant-file (19cd2931)
```
Merge pull request #23 from anodelman/vagrant-file
fix for changed option name (:config to :hosts_file)
```
* Merge pull request #21 from anodelman/beaker-rspec (e20ea5a8)
```
Merge pull request #21 from anodelman/beaker-rspec
Revert "Merge pull request #17 from anodelman/beaker-rspec"
```
* fix for changed option name (:config to :hosts_file) (9765c75a)
```
fix for changed option name (:config to :hosts_file)
Was causing error when using vagrant SUTs
```
* (QE-245) Execution results should be available inside a block (3a5f9ec2)
```
(QE-245) Execution results should be available inside a block
Moving accessors out of test_case and into the dsl so that beaker-rspec
will be able to access them
```
* Merge pull request #15 from anodelman/multi-version (b3df7aac)
```
Merge pull request #15 from anodelman/multi-version
Multi-version PE installation
```
* Revert "Merge pull request #17 from anodelman/beaker-rspec" (2b9edf69)
```
Revert "Merge pull request #17 from anodelman/beaker-rspec"
This reverts commit 90c2642b4ad2323cb6c9fe642d7befdf5af7168a, reversing
changes made to 18cef9f78a3d3be4963bbde32cb394c70a83641f.
This change was ineffective and did not actually allow for the use of
the host-file env var.
```
* spacing fixes in new spec tests (37f01eda)
* spec tests for install_utils and answers.rb (742b82c1)
```
spec tests for install_utils and answers.rb
- increasing spec test coverage of new functionality
```
* (maint) Correct solaris 11/10 package install/uninstall (8751772a)
```
(maint) Correct solaris 11/10 package install/uninstall
Solaris has different package handling between 11 and 10. We were
correct on install for Solaris 11, but uninstall was Solaris 10.
Now differentiate between the two with the correct package handlers for
11 and 10 respectively.
This also corrects a bug checking for existing packages in Solaris 10.
The which command returns an exit code of 0, even if the command is not
found. So we're testing stdout explicitly to see if a path to command
was returned.
```
* (maint) Remove reference to nonexistent puppetpath. (a99173bb)
```
(maint) Remove reference to nonexistent puppetpath.
This would have failed if no backup_file was provided. Now backup_file
is required without default.
```
* Use @options[:timeout] instead of wait (747bde15)
* Merge pull request #12 from hunner/hide_vagrantfile (c5e3840c)
```
Merge pull request #12 from hunner/hide_vagrantfile
I had a closer look at the code and this looks good. Merging.
```
* spec test fix (d673c27f)
```
spec test fix
- needed to add new command line argument
```
* further review comment fixes (aacf9170)
```
further review comment fixes
- make do_install @api private
- fix spec tests
```
* Merge pull request #17 from anodelman/beaker-rspec (90c2642b)
```
Merge pull request #17 from anodelman/beaker-rspec
allow for setting the hosts file from an ENV var
```
* (maint) Check that puppet's master process has finished (2b1bb515)
```
(maint) Check that puppet's master process has finished
This avoids occasional errors where the next test's
with_puppet_running_on tries to start a new master before the previous
test's has shutdown completely.
```
* use 3.0 answer files for 3.1 builds (facef385)
* fix for bug found by branan when generating answer file for an upgrade (e87db4b2)
```
fix for bug found by branan when generating answer file for an upgrade
- need to correctly make the answers file for the upgrade version, not
the current version
- also update the host pe_ver post-upgrade to reflect the new state
```
* Merge pull request #18 from puppetlabs/timeout_option (18cef9f7)
```
Merge pull request #18 from puppetlabs/timeout_option
Allow a --timeout option for vCloud provisioning
```
* Merge pull request #16 from kbarber/travis-ci-support (5f453bd9)
```
Merge pull request #16 from kbarber/travis-ci-support
Add .travis.yml for initial travis CI support
```
* Add a 'vCloud only' note (58ae01bb)
* more review comment fixes (fb14b74c)
```
more review comment fixes
- repaired broken spec tests from option parsing change
- edits to yard docs
```
* (maint) Echo empty string to wmic for stdin (7db5ac15)
```
(maint) Echo empty string to wmic for stdin
wmic on 2003, at least, blocks waiting on standard in. This change
gives it something to consume so that it continues.
```
* Allow a --timeout option for vCloud provisioning (09821fcb)
* Add a method to confine hosts for a specific test block (d1e26942)
```
Add a method to confine hosts for a specific test block
The Beaker::DSL::Helpers#confine method would change the test's array of
hosts at the point it was called, and any subsequent tests or tear down
blocks would only operate on that restricted subset of hosts.
This patch adds a confine_block method which allows you to confine hosts
for a specific block of code, ensuring that the hosts array is reset to
its original value after the block is done. This allows you to confine
a subset of a test, but still have a teardown clean up all hosts, for
example.
```
* code review improvements (806a5d46)
```
code review improvements
- yard documentation for install and upgrade
- moved pe_ver and pe_dir discovery to install_pe and out of option
parsing (only do it if you need it)
- changed answer file generation to be generically 2.0 instead of 2.0.3
```
* allow for setting the hosts file from an ENV var (cb632f56)
```
allow for setting the hosts file from an ENV var
- set the --hosts file ENV (using hosts_file or config_file)
```
* add support for 2.0.3 installs (4ac0cf2b)
```
add support for 2.0.3 installs
- can now have both pe_dir and pe_ver/pe_ver_win in hosts file per-node
- 2.0.3 answer file generation
```
* fix for upgrades to less than 3.0 pe (18aa42a6)
```
fix for upgrades to less than 3.0 pe
- have to apply the pre 3.0 rules for upgrades to a pre 3.0 version
- added a check for ensuring that solaris/aix/windows are agent only
```
* Add .travis.yml for initial travis CI support (db43bc40)
```
Add .travis.yml for initial travis CI support
Signed-off-by: Ken Barber
```
* Incorrect number of arguments for load_legacy_config in vspher_helper (0975ea14)
* no longer have to pass version to upgrade_pe command (b98a10ef)
```
no longer have to pass version to upgrade_pe command
- fixed so that it determines the upgrade version from the upgrade path
LATEST file
```
* multi-vesion pe installation (ecfa1c1f)
```
multi-vesion pe installation
- can now have each host identify a pe_dir to pull from
- host file supports a 'pe_dir' per node
- still uses the LATEST file (sorry, Branan)
- fixed upgrade code alongside install code
```
* Uninstall packages on unix (62990dcc)
* Merge pull request #11 from anodelman/option-parsing (17be7c85)
```
Merge pull request #11 from anodelman/option-parsing
(QE-117) overhaul of option parsing in beaker
```
* (maint) Dump master puppet log if fail to start (1837c8ad)
* raise/rescue ArgumentError on failure to find single host for a role (acad550e)
* Merge pull request #9 from anodelman/vagrant-netmask (49789312)
```
Merge pull request #9 from anodelman/vagrant-netmask
(QE-203) vagrant uses different ip submasks by default
```
* (maint) Allow options to be passed for package installation (e2800288)
```
(maint) Allow options to be passed for package installation
Host::Unix::Pkg#install_package previously took only the package name.
An additional string of commandline options may now be passed and will
be included in the yum, apt-get or solaris pkg install line.
```
* documenting the new option parsing code (52539070)
* adding spec tests for new options parsing code (7d1f30b0)
* (maint) Fix with_puppet_running_on for testing with packages (f6b57e42)
```
(maint) Fix with_puppet_running_on for testing with packages
PuppetAcceptance::DSL::Helpers#with_puppet_running_on had incomplete
changes brought in from the pe Puppet::Acceptance::ConfigUtils, which I
think were being shadowed by the direct inclusion of ConfigUtils in
tests using with_puppet_running_on.
This patch finishes up the with_puppet_running_on implementation and
adds two things. One a :__commandline_args__ option to allow passing of
commandline flags to puppet in addition to configuration settings. And
two, an attempt to ensure that errors raised during setup or execution
of the block are not masked by a failure in teardown.
Conflicts:
lib/beaker/dsl/helpers.rb
spec/beaker/dsl/helpers_spec.rb
```
* Create the vagrant file in a sub directory (1472ee94)
```
Create the vagrant file in a sub directory
The vagrant file was previously dropped in the current working
directory. This commit causes the vagrant file to be created in
`vagrant_files//Vagrantfile` so that it does not conflict with
tests running against multiple cfg files.
```
* not passing @options[:dot_fog] through correctly (580c224c)
* Add package installation for solaris. (4821e344)
```
Add package installation for solaris.
Also fixes a bug referencing 'host' instead of self in the message
raised when platform cannot install package.
```
* first pass of fixes for review comments (b3be4b46)
```
first pass of fixes for review comments
- don't 'exit' from option parsing, just raise appropriate errors
- moved option dump into a logging command in cli
- moved exiting on --help into the cli
- made it possible to send different array than ARGV to
command_line_parsing
- reworked recursive print out of options
- reordered merge of options in host.rb (ensure that defaults is lowest
priority)
- renamed 'defaults' to 'presets' as these are options that can come
from env vars exported before a test run
- fixed broken spec tests
```
* (maint) Remove incorrect parameter from Command.new call (7738d743)
```
(maint) Remove incorrect parameter from Command.new call
Command.new does not take a host. This line was treating host as the
command line, and then attempting to flatten the actual command line
string which it expected to be an Array of args.
```
* cleaner handling of running the different test suites (904ea552)
```
cleaner handling of running the different test suites
- no reason to override the :tests in @options
```
* Dump syslog on either rhel or debian if fail to kill puppet master (65c7983a)
```
Dump syslog on either rhel or debian if fail to kill puppet master
It's very difficult to debug why we were unable to kill the puppet
master (presumably it died or was killed by an earlier action). And
usually our vms are spun down after execution. If it's a transient
issue, then trying to track it down in a controlled environment is
difficult as well. So this takes a stab at dumping the default logdest
target (syslog) on either a rhel or debian based system.
```
* Merge pull request #10 from apchamberlain/master (abfed9ba)
```
Merge pull request #10 from apchamberlain/master
Fusion/fission configuration cleanup in README
```
* fixing default values for arguments that can be lists of items (84441b3f)
```
fixing default values for arguments that can be lists of items
- ensures that lists of items options (tests, pre-suite, etc) default to
[]
- fixes how file options are merged into the rest of the arguments
- fix up getting pe version number from LATEST file
```
* moving hypervisor config files to @options variable (33eea5da)
```
moving hypervisor config files to @options variable
- makes it clear where these magic files are located
- added error checking to ensure that they are present for appropriate
hypervisors
- check in advance that there is one and only one 'master' in the given
host config
```
* fixes for hypervisors using new option formatting (11cf1100)
* fixing spec tests to handle new option format (ff7c38b2)
```
fixing spec tests to handle new option format
- also broken tests from previous work (should run spec more often...)
```
* Cleaned up explanation of .fissionrc file; changed references to .VMX files to .vmwarevm (35d1bed3)
* missing file options.rb added (8a30c07d)
```
missing file options.rb added
- moved pe version discovery into pe_version_scraper
```
* move options parsing into own directory (3b81c094)
```
move options parsing into own directory
- deprecate @config
- switch hypervisor classes to no longer use @config
- use special OptionHash that doesn't differentiate between string +
symbols
- add first pass validation of command line options
- roll out command line parsing into its own class
```
* (QE-203) vagrant uses different ip submasks by default (b60c0fa5)
```
(QE-203) vagrant uses different ip submasks by default
Vagrant was assigning each VM to a different submask, hence them not
being able to connect to each other. In effect, they were all on
different networks.
Force a shared submask.
```
* initial commit of moving all argument parsing into options_parsing (7841eed6)
### beaker0.0.0 - 20 Aug, 2013 (c49dc525)
* Merge pull request #8 from anodelman/gemify (c49dc525)
```
Merge pull request #8 from anodelman/gemify
set version number to 0.0.0, set description/summary for gem
```
* setting version number to 0.0.0 (606e1770)
* Merge pull request #7 from anodelman/gemify (43fcc786)
```
Merge pull request #7 from anodelman/gemify
pulling out last references to PuppetAcceptance module
```
* pulling out last references to PuppetAcceptance module (2575b020)
* pulling out last references to PuppetAcceptance module (4775190e)
* Merge pull request #5 from anodelman/gemify (e2ed1a0e)
```
Merge pull request #5 from anodelman/gemify
rename puppet-acceptance to beaker, PuppetAcceptance to Beaker
```
* Merge pull request #6 from anodelman/installer (343ddbb6)
```
Merge pull request #6 from anodelman/installer
installation/upgrade code in harness
```
* adding 'wait for puppetdb to start on 3.0.0, PE-1105' (85868c2d)
```
adding 'wait for puppetdb to start on 3.0.0, PE-1105'
https://github.com/puppetlabs/pe_acceptance_tests/commit/c479972d4202f04d5c03baf8e0b2ef0b25e16dbf
```
* adding 'fix negative grep command' from pe_acceptance_tests (53ec9a82)
```
adding 'fix negative grep command' from pe_acceptance_tests
https://github.com/puppetlabs/pe_acceptance_tests/commit/7599ff9e0a428effa8a9c5137e5d2f10f071abc8
```
* adding branan's answer file changes to the built in installer (3b6e9397)
* installation/upgrade code in harness (9041aee5)
```
installation/upgrade code in harness
add pe_install and pe_upgrade commands to the dsl
```
* rename puppet-acceptance to beaker, PuppetAcceptance to Beaker (30c2dfd1)
* Merge pull request #1 from anodelman/rhel4 (83349ef1)
```
Merge pull request #1 from anodelman/rhel4
(QE-189) Puppet Acceptance needs to be able to handle rhel4
```
* Merge pull request #2 from anodelman/installer (c77728e9)
```
Merge pull request #2 from anodelman/installer
QE-97) move installation into the test harness
```
* nit - missing comma (aede8c4e)
* remove references to 'redhat', our naming is standardized on el-* (fce1f6be)
* Merge pull request #3 from anodelman/cruft (647f7992)
```
Merge pull request #3 from anodelman/cruft
(QE-51) Remove cruft from the harness
```
* Merge pull request #4 from anodelman/validator (277daf4e)
```
Merge pull request #4 from anodelman/validator
(QE-150) update harness to use correct 32/64 bit version of cygwin setup.exe
```
* (QE-150) update harness to use correct 32/64 bit version of cygwin setup.exe (11628606)
```
(QE-150) update harness to use correct 32/64 bit version of cygwin setup.exe
Can't be landed till https://jira.puppetlabs.com/browse/QE-145 is fixed.
This patch depends on the windows static vms being updated
```
* (QE-51) Remove cruft from the harness (ec506e76)
```
(QE-51) Remove cruft from the harness
Removes:
* old node configuration files
* the entire setup/git directory
* remove pe_versions file
* remove pe dependency versions variable from test_case/test_config
* removes templates
* removes old xml files
```
* QE-97) move installation into the test harness (c6058ccc)
```
QE-97) move installation into the test harness
* move pe installation into the test harness dsl
* does not change logic as to env vars/options
* fixup validation module structure
* add support for basic upgrading
```
* (QE-189) Puppet Acceptance needs to be able to handle rhel4 (ad24d8e5)
```
(QE-189) Puppet Acceptance needs to be able to handle rhel4
- skips epel installation on rhel4
- skips package installation on rhel4
- increased timeout for vcloud dns resolution
```
* Merge pull request #507 from anodelman/revert-cruft-removal (68272162)
```
Merge pull request #507 from anodelman/revert-cruft-removal
Revert "Merge pull request #490 from justinstoller/maint/master/remove_cruft"
```
* Revert "Merge pull request #490 from justinstoller/maint/master/remove_cruft" (307b8b78)
```
Revert "Merge pull request #490 from justinstoller/maint/master/remove_cruft"
This reverts commit 715b335f7f7623f00a28312072b0ec1123965eb3, reversing
changes made to 3b4891b6acaa6932be950ff51995c7191410acdb.
```
* Merge pull request #489 from justinstoller/bug/master/QE55-upstream_with_puppet_running_on (c348a792)
```
Merge pull request #489 from justinstoller/bug/master/QE55-upstream_with_puppet_running_on
Add an alternative to with_master_running_on that can be used with PE
```
* Merge pull request #500 from puppetlabs/vcloud_windows_customization (463f8f08)
```
Merge pull request #500 from puppetlabs/vcloud_windows_customization
vCloud Windows customization
```
* Merge pull request #490 from justinstoller/maint/master/remove_cruft (715b335f)
```
Merge pull request #490 from justinstoller/maint/master/remove_cruft
Remove a lot of the cruft left in the source tree.
```
* Merge pull request #505 from branan/scp_from_signature (3b4891b6)
```
Merge pull request #505 from branan/scp_from_signature
Fix scp_from signature to match the way it is invoked.
```
* Fix scp_from signature to match the way it is invoked. (a5e84200)
```
Fix scp_from signature to match the way it is invoked.
The signature had an extra options hash which was not passed by the
host.rb code which calls the method.
```
* Merge pull request #499 from anodelman/validator (30f6ce23)
```
Merge pull request #499 from anodelman/validator
(QE-90) validate test systems have required packages/services before testing
```
* move install_package and check_for_package into appropriate host (391c6250)
```
move install_package and check_for_package into appropriate host
platform code
supports windows and unix - not solaris + aix
windows installs cygwin packages, cannot install 3rd party cygwin
packages (like ntpdate)
```
* Merge pull request #501 from puppetlabs/QE-80-use_absolute_template_path (0a5ac969)
```
Merge pull request #501 from puppetlabs/QE-80-use_absolute_template_path
(QE-80) Support absolute paths in 'template' host variable
```
* Merge pull request #503 from puppetlabs/QE-136-vcloud_first_char_alpha (4f72dbe3)
```
Merge pull request #503 from puppetlabs/QE-136-vcloud_first_char_alpha
(QE-136) Ensure first character of vCloud hostname is alphabetical
```
* Ensure first character of hostname is alphabetical (24c99d64)
* Merge pull request #502 from anodelman/vagrant-warnings (d1a90dba)
```
Merge pull request #502 from anodelman/vagrant-warnings
(QE-129) test harness reports vagrant warnings on box set up
```
* (QE-129) test harness reports vagrant warnings on box set up (a9a52db6)
```
(QE-129) test harness reports vagrant warnings on box set up
Was using Vagrantfile format 1.0 instead of 2.0, with 2.0 the warning
goes away
```
* Restoring error message (d69c54b5)
* Merge pull request #498 from anodelman/set-vagrant-memory-size (136c2129)
```
Merge pull request #498 from anodelman/set-vagrant-memory-size
(QE-96) vagrant boxes' default memory allocation is too small
```
* Typo in hypervisor/vsphere (e946b824)
* Support absolute paths in 'template' host variable (b3a2ae3e)
* s/vagrant/vCloud/ (da8939bd)
* Better organization for customization-spec code (d97383f7)
* (QE-90) validate test systems have required packages/services before (55b2a48a)
```
(QE-90) validate test systems have required packages/services before
testing. First pass - checks for curl and ntpdate, installs if missing
```
* Additional waiting for vCloud customization (4953981a)
* Merge pull request #497 from puppetlabs/vcloud_windows_customization (36489149)
```
Merge pull request #497 from puppetlabs/vcloud_windows_customization
vCloud customization
```
* (QE-96) vagrant boxes' default memory allocation is too small to run (06366322)
```
(QE-96) vagrant boxes' default memory allocation is too small to run
puppet on, make default size 1G of RAM
```
* Allow extra time for the super-slow guest customization (510a38ba)
* Include a logger msg if using a customization spec (57dad7b6)
* Use customization spec if one exists (0d684be5)
* Adding 'find_customization' method (99ad761c)
* Merge branch 'master' of github.com:puppetlabs/puppet-acceptance (c9e7cea2)
* Merge pull request #491 from justinstoller/bug/master/QE71-alwasy_remove_harness_stack (66e0dcdf)
```
Merge pull request #491 from justinstoller/bug/master/QE71-alwasy_remove_harness_stack
Remove references to the harness's call stack in back traces
```
* Merge pull request #494 from puppetlabs/remove_blimpy_git_setup (778bf1de)
```
Merge pull request #494 from puppetlabs/remove_blimpy_git_setup
Removing Git/Ruby setup routines in the Blimpy hypervisor
```
* Merge pull request #496 from justinstoller/maint/master/QE72-Log_is_intialized_already___geez____ (68b9f14e)
```
Merge pull request #496 from justinstoller/maint/master/QE72-Log_is_intialized_already___geez____
Only define the constant Log if it isn't already defined
```
* Only define the constant Log if it isn't already defined (e7090f58)
* Merge pull request #492 from anodelman/print-config (027fbc89)
```
Merge pull request #492 from anodelman/print-config
(maint) report error when using an empty directory, print options with --debug
```
* Syntax (spacing) (1a60c5f0)
* Removing Git/Ruby setup routines in the Blimpie hypervisor (e8406ada)
* Merge pull request #488 from anodelman/better-vagrant (c3304e07)
```
Merge pull request #488 from anodelman/better-vagrant
(QE-62) log into vagrant boxes as root/administrator
```
* (maint) report error when using an empty directory for (2c5b3028)
```
(maint) report error when using an empty directory for
pre-suite/post-suite/tests, print options when running with --debug
```
* Remove references to the harness's call stack in back traces (12778549)
```
Remove references to the harness's call stack in back traces
Prior to this when NOT running in `--debug` mode the harness's call
stack would be removed from any stack trace to clarify the calling
methods within a test. This extends that functionality to `--debug`
mode.
```
* code cleanup/reorganization (4c202601)
* remove a bunch of cruft (48767873)
* Add an alternative to with_master_running_on that can be used with PE (df7b0bdf)
```
Add an alternative to with_master_running_on that can be used with PE
Previously we added methods called `with_puppet_running_on` to several
individual projects so that we could get them to have similar behavior
to `with_master_running_on` but work on our enterprise products as well.
This combines and refactors the downstream `with_puppet_running_on`
implementation, bringing them into the harness proper.
```
* Merge pull request #487 from anodelman/overwritten-options (2b38984c)
```
Merge pull request #487 from anodelman/overwritten-options
(21596) pre-suite when set in options.rb is overwritten by default
```
* (21596) pre-suite when set in options.rb is overwritten by default, (c2866d16)
```
(21596) pre-suite when set in options.rb is overwritten by default,
merge defaults after merging file options
```
* Merge pull request #486 from briancain/maint/master/many_helper_functionality_redo (2b69dd95)
```
Merge pull request #486 from briancain/maint/master/many_helper_functionality_redo
(maint) Add Multiple Helper Options
```
* (maint) Add Multiple Helper Options (d30280f4)
```
(maint) Add Multiple Helper Options
Prior to this commit, puppet-acceptance could only handle one helper
while testing. This commit fixes that by allowing for multiple helpers
to be passed in as many times as you want.
```
* Merge pull request #484 from anodelman/QE-56 (after rebasing) (294f2813)
* Merge pull request #482 from anodelman/QE-43 (f54f699a)
```
Merge pull request #482 from anodelman/QE-43
(QE-43) handle empty pre-suite/tests/post-suite options
```
* fix inconsistant spacing in README (8017bb57)
* fixup some README typos (fe44695f)
* (QE-62) log into vagrant boxes as root/administrator (5fb970de)
* (QE-56) remove deprecated command line options, alter confusing options (10f70e26)
* Merge pull request #483 from djm68/add_apache_license (43ee1370)
```
Merge pull request #483 from djm68/add_apache_license
(maint) Add Apache License v2.0
```
* (maint) Add Apache License v2.0 (cd696b31)
* (QE-43) handle empty pre-suite/tests/post-suite options (91e19276)
* Merge pull request #481 from anodelman/QE-40 (bd123179)
```
Merge pull request #481 from anodelman/QE-40
(QE-40) inter-vagrant box communication not working
```
* fix how ips are handled for vagrant boxes (93f8c809)
* Merge pull request #474 from anodelman/install_vs_type_vs_setupdirs (84fae932)
```
Merge pull request #474 from anodelman/install_vs_type_vs_setupdirs
(20583/21110) normalize --install, --type, --setup-dirs, --helpers
```
* (QE-40) inter-vagrant box communication not working (dfaab70f)
* Merge pull request #480 from anodelman/QE-39 (0fb1686c)
```
Merge pull request #480 from anodelman/QE-39
(QE-39) test harness fails to set up multiple vagrant hosts
```
* (QE-39) test harness fails to set up multiple vagrant hosts (6885aed9)
* Merge pull request #479 from anodelman/vagrant (6818a6ff)
```
Merge pull request #479 from anodelman/vagrant
(19852) Vagrant support in the test harness
```
* Merge pull request #478 from anodelman/fix_environment_construction (012fd64a)
```
Merge pull request #478 from anodelman/fix_environment_construction
(QE-25) fix :environment options being used as puppet argument
```
* Merge pull request #476 from zaphod42/remove-linux-agent-from-windows (1b480336)
```
Merge pull request #476 from zaphod42/remove-linux-agent-from-windows
Remove unneeded roles from linux node in windows tests
```
* Merge pull request #477 from anodelman/QE-12 (89241783)
```
Merge pull request #477 from anodelman/QE-12
(QE-12) Harness should only require rbvmomi if vsphere/vcloud hypervisor is in use
```
* adding documentation for Vagrant support (de0b6924)
* moved aix+solaris provisioning to network_manager (d7bee05b)
* remove vm_control.rb, finish vcloud work (ad106701)
* moved vcloud provisioning to network_manager (0802f23a)
* moved vsphere provisioning to network_manager (104a59dc)
* moved blimpy provisioning to network_manager (0fd9d9d9)
* moved fusion provisioning to network_manager (d0e8553b)
* improved env merging, added spec tests for PuppetCommands (82f841a4)
* (QE-25) fix :environment options being used as puppet argument (fae27a2d)
* initial commit of vagrant provisioning (a65b6234)
* (QE-12) Harness should only require rbvmomi if vsphere/vcloud hypervisor is in use (430d372f)
* Remove unneeded roles from linux node in windows tests (a61bb8be)
```
Remove unneeded roles from linux node in windows tests
The linux node have extra roles (specifically agent) caused it to
execute a large number of tests that it doesn't need to. The linux
agents are tested in a different setup already. Removing the agent from
the linux node should also drastically reduce the runtime of the tests.
```
* (21110) add the --load-path option (8c218eeb)
* (20583) `--install', `--type', and `--setup-dirs' are confusing (c3324940)
### pe3.0 - 6 Jun, 2013 (0b52d9c5)
* Merge pull request #475 from anodelman/fix-empty-tests (0b52d9c5)
```
Merge pull request #475 from anodelman/fix-empty-tests
(QE-5) remove implicit array creation
```
* (QE-5) remove implicit array creation (2981a205)
* Merge pull request #473 from anodelman/fix-empty-tests (db40387b)
```
Merge pull request #473 from anodelman/fix-empty-tests
move to standardized error handling
```
* Merge pull request #472 from branan/http_latest_for_win (59bf076b)
```
Merge pull request #472 from branan/http_latest_for_win
Use 'open' instead of 'File.open' for getting the latest windows ver
```
* Use 'open' instead of 'File.open' for getting the latest windows ver (96d53fff)
```
Use 'open' instead of 'File.open' for getting the latest windows ver
The top-level 'open' method can open HTTP URIs which the File.open
method cannot. This is already used for unix hosts.
```
* Merge pull request #471 from justinstoller/maint/20969/path_vs_env_vars_on_win (bcbe0a5d)
```
Merge pull request #471 from justinstoller/maint/20969/path_vs_env_vars_on_win
(20969) Use colon for path separator on all platforms
```
* Merge pull request #468 from branan/node_name_win (ddc0412c)
```
Merge pull request #468 from branan/node_name_win
Fix host::node_name for windows
```
* Merge pull request #470 from anodelman/proxy-config (3a7b617f)
```
Merge pull request #470 from anodelman/proxy-config
(21063) Regression: proxy configuration doesn't work because missing method
```
* (20969) Use colon for path separator on all platforms (baea908d)
```
(20969) Use colon for path separator on all platforms
I had this backwards in 3d510e4b6f and inadvertly pushed for the two
to be normalized in 5966907. This is needed because Cygwin systems
interpret the PATH env var (and require a colon as a separator) prior
to passing it on to Windows while other env vars are passed directly
to the OS.
Signed-off-by: Justin Stoller
```
* (21063) Regression: proxy configuration doesn't work because of method missing (489875ca)
* move to standardized error handling (b2ff6025)
* Merge pull request #469 from anodelman/fix-empty-tests (dd34b33f)
```
Merge pull request #469 from anodelman/fix-empty-tests
(21086) Runtime error when setup steps contain no tests
```
* (21086) Runtime error when setup steps contain no tests (e5946414)
* Merge pull request #467 from anodelman/ec2-config-to-lib (f4f5e8e1)
```
Merge pull request #467 from anodelman/ec2-config-to-lib
move ec2 install git+ruby from setup/early to lib
```
* Fix host::node_name for windows (2e743ace)
* Merge pull request #466 from anodelman/cleanup-snaps (1b9a6d0e)
```
Merge pull request #466 from anodelman/cleanup-snaps
(20979) fix how snapshots are determined, remove hardcoded snapshot names
```
* Merge pull request #455 from anodelman/ntpdate-lib (44524850)
```
Merge pull request #455 from anodelman/ntpdate-lib
move more of /setup/early to lib
```
* (20979) normalize how snapshots are determined, remove hardcoded snapshot name assumptions (35e34bbc)
* better error reporting of failures to setup (72658c49)
```
better error reporting of failures to setup
Conflicts:
lib/puppet_acceptance/cli.rb
```
* reorganizing based on review comments, replace HostCommand with Command (a01e7505)
* Merge pull request #464 from puppetlabs/vcloud_linked_clones (3ac95d84)
```
Merge pull request #464 from puppetlabs/vcloud_linked_clones
Use linked clones (copy-on-write)
```
* Removing set-delta-disk code (e6500944)
* Merge pull request #463 from anodelman/fix-win-command (4759de81)
```
Merge pull request #463 from anodelman/fix-win-command
(#20969) use the correct path separator for windows
```
* Merge pull request #462 from anodelman/remove-vmrun (e8e0532c)
```
Merge pull request #462 from anodelman/remove-vmrun
(#20776) replace --vmrun with --hypervisor and deprecate --vmrun
```
* Use linked clones (copy-on-write) (8c50d167)
* (#20969) use the correct path separator for windows (5966907e)
* (#20776) replace --vmrun with --hypervisor and deprecate --vmrun (e2668b5f)
* adding keywords to hook into the log parser module for jenkins (94dc3863)
* Merge pull request #460 from puppetlabs/annotation_and_syntax (a1853500)
```
Merge pull request #460 from puppetlabs/annotation_and_syntax
Annotation and syntax
```
* Syntax/verbiage changes (8d7fd627)
* Annotate vcloud VMs (36cf17b0)
```
Annotate vcloud VMs
Base template, creation time, and link to CI build
```
* Merge pull request #458 from anodelman/remove-preserve-hosts-file (f6d61a19)
```
Merge pull request #458 from anodelman/remove-preserve-hosts-file
(#20863) removes host file generation from --preserve-hosts option
```
* Merge branch 'master' of github.com:puppetlabs/puppet-acceptance (2c6631fa)
* (maint) add new cfg for PuppetDB perf testing (9a2b9049)
* (#20863) removes host file generation from --preserve-hosts option (369707cf)
* moving error handling to helpers.rb (f65457d7)
* Merge pull request #457 from anodelman/red-on-fail (bcf4a523)
```
Merge pull request #457 from anodelman/red-on-fail
(#20930) fix jenkins green on failure bug
```
* push exit code from system call up through systest.rb (746221a6)
* push the raised exception up the chain (20bb90ea)
* push error handling into utils/vm_control (7de66e88)
* move ec2 install git+ruby from setup/early to lib (6a021637)
* Merge pull request #456 from anodelman/better-error-logging (953ef900)
```
Merge pull request #456 from anodelman/better-error-logging
(maint) improved error logging on vm_control.rb failure
```
* (maint) improved error logging on vm_control.rb failure (91bf2e25)
* Merge pull request #454 from puppetlabs/vcloud_fixup (a0eb3b4e)
```
Merge pull request #454 from puppetlabs/vcloud_fixup
Remove line-break
```
* Remove line-break (d14e3297)
* Merge pull request #453 from anodelman/vm-control-lib (6211cf0f)
```
Merge pull request #453 from anodelman/vm-control-lib
(maint) add error messaging for missing vCloud templates
```
* (maint) add error messaging for missing vCloud templates (a4eaa041)
* (maint) add error messaging for missing vCloud templates (4737fcd7)
* Merge pull request #452 from branan/dont_delete_template_please (c1f27937)
```
Merge pull request #452 from branan/dont_delete_template_please
Fix deploying from vcloud templates
```
* (20880) Complete the conversion of vcloud spinup to a library (ee4c6e63)
```
(20880) Complete the conversion of vcloud spinup to a library
An old variable name from the monolithic reverter was left in the
vcloud code. This changes it to its proper modern name.
```
* (maint) Rescue any cleanup exception (8d5b0497)
```
(maint) Rescue any cleanup exception
Previously, a failure in the cleanup step would cause any exception
from the earlier step(s) to be discarded. This manually handles
cleanup exceptions so the original failure is not masked.
```
* (20880) Use the correct config hash in the vm setup library (86dc3b05)
```
(20880) Use the correct config hash in the vm setup library
There is (unfortunately) a difference between the puppet acceptance
config object and the configuration hash. The config hash is accessed
via the `'CONFIG'` entry in the object. This simply changes the
`@config` member of the vm controller to use the correct hash.
```
* (maint) Do not fall back to the user-specified VM name when doing vcloud cleanup (a91c2c68)
```
(maint) Do not fall back to the user-specified VM name when doing vcloud cleanup
The vcloud provisioning will never create a VM with the user-specified
name, so falling back to it was pointless, and could cause the harness
to delete VMs not associated with the current test run, or worse,
templates.
As a special bonus, if any hosts don't have vmhostname set, we will
warn that they were likely not provisioned correctly in the first
place.
```
* better error checking for failed setup steps, code cleanup (54a43a38)
* Merge pull request #451 from anodelman/maint-vm-control (d47420f4)
```
Merge pull request #451 from anodelman/maint-vm-control
(maint) references to @config breaking, add @config to initialization of
```
* (maint) references to @config breaking, add @config to initialization of (48a1db3d)
```
(maint) references to @config breaking, add @config to initialization of
vm_control object
```
* move --repo-proxy, --extra-repos to lib (a2c9c4ca)
* Merge pull request #448 from anodelman/vm-control-lib (a563b6db)
```
Merge pull request #448 from anodelman/vm-control-lib
(20750) move vm setup/teardown from test steps to lib
```
* fix whitespace (ccb0a159)
* Merge branch 'master' into vm-control-lib (20820188)
```
Merge branch 'master' into vm-control-lib
Conflicts:
setup/cleanup/00-vmrun.rb
setup/early/00-vmrun.rb
```
* move syncing root keys from early/ to lib (22fef77a)
* move ruby version control to lib (e1f33c55)
* move etc/host editing from early/ to lib (3d1b28ed)
* Merge pull request #450 from branan/consoleport_as_integer (62411974)
```
Merge pull request #450 from branan/consoleport_as_integer
Force consoleport to always be an integer
```
* Force consoleport to always be an integer (0fb5ed8d)
* Revert "Ensure the consoleport is always a string." (d4e76ad4)
```
Revert "Ensure the consoleport is always a string."
This was stupid. YAML creates integers automatically by default, so
unless the consoleport was set via ENV it would be an integer
previously. Making the default a string didn't do anything to unify
the values.
This reverts commit ec28d512cc068c54d3918d160b599e9917e431f1.
```
* (20750) move ntp commands from test steps to lib (fa193b6d)
* Merge pull request #449 from branan/consoleport_as_string (8e258ead)
```
Merge pull request #449 from branan/consoleport_as_string
Ensure the consoleport is always a string.
```
* Ensure the consoleport is always a string. (ec28d512)
```
Ensure the consoleport is always a string.
Previously, the consoleport would be a string if set by the
environment or a config file, but an integer if left at its
default. This changes the default to a string.
I'm changing the default to a string rather than converting the
env/cfg value to an integer because we have historically set the
consoleport in our config files, so this way it is less likely to
break things.
```
* Merge pull request #446 from puppetlabs/dont_redefine_i (d9267458)
```
Merge pull request #446 from puppetlabs/dont_redefine_i
The index (i) was being redefined in Ruby 1.8, but is needed for parallelization
```
* The index (i) was being redefined, but is needed for parallelization (fac32e3a)
* Merge pull request #445 from puppetlabs/template_deploy (21665a93)
```
Merge pull request #445 from puppetlabs/template_deploy
Deploy dynamic VMs from templates
```
* Re-wording (5072163a)
* Notes on new 'vcloud' --vmrun option (69cd7d6a)
* Fail unless datastore, resource pool, and folder destinations are specified (71d533f5)
* Clean-up (delete) dynamicly-provisioned VMs (5948a32b)
* Provision VMs from templates with --vmrun vcloud (073f1abd)
* Use/connect to 'vmhostname' if set (e239f659)
* Merge pull request #444 from anodelman/install-keywords (8281a776)
```
Merge pull request #444 from anodelman/install-keywords
(#20749) add keyword support to --install
```
* adding spec tests for parse_install_options (92e4a196)
* (20750) move vm setup/teardown from test steps to lib (fc08794a)
* making parse_install_options not change in place (d95a5432)
* (cleanup) tidied up the case statement structure (59f8bbcd)
* (#20749) add keyword support to --install (ceb9b19e)
* Merge pull request #436 from anodelman/fix-vmrun-option (63dcf3f6)
```
Merge pull request #436 from anodelman/fix-vmrun-option
(#20651) Fix vmrun command line option
```
* Merge pull request #442 from puppetlabs/template_deploy-vsphere_methods (d650070a)
```
Merge pull request #442 from puppetlabs/template_deploy-vsphere_methods
Methods to facilitate deploying VMs from templates
```
* Merge pull request #441 from anodelman/fail-stop (593fb9e4)
```
Merge pull request #441 from anodelman/fail-stop
(new feature) replace --fail-fast with --fail-mode
```
* (maint) add documentation for --fail-mode (6f42971e)
* Merge pull request #443 from puppetlabs/verbose_host_unavailable_error (4fc24ae9)
```
Merge pull request #443 from puppetlabs/verbose_host_unavailable_error
Tell me which hostname is unreachable
```
* Tell me which hostname is unreachable (b7cf4d3b)
* Methods to facilitate deploying VMs from templates (83954955)
```
Methods to facilitate deploying VMs from templates
- find_datastore
Returns a VIM::Datastore object; used in relocateSpec to deploy a VM
onto a different datastore as the origin template
- find_folder
Returns a VIM::Folder object; used in CloneVM_Task to specify the
destination folder for a deployed VM, specified by name ("Delivery")
or path ("Delivery/Quality Assurance/FOSS/Dynamic")
- find_pool
Returns a VIM::ResourcePool object; used in relocateSpec to deploy
a VM into a specified resource pool, specified by name ("Delivery")
or path ("Delivery/Quality Assurance/FOSS/Dynamic")
```
* Merge pull request #440 from justinstoller/host_defaults (11d32818)
```
Merge pull request #440 from justinstoller/host_defaults
Improve host defaults for PE vs FOSS porting
```
* (new feature) replace --fail-fast with --fail-mode (51f5d476)
* updating README.md to add new configuration options (d63ce4bc)
* add --no-revert option to skip all reverting, also adding revert option in config files per-host (a8887ca2)
* Improve host defaults for better interop between FOSS and PE (d3d64e5f)
* Remove un-used and un-useful setup steps (ee9cb424)
```
Remove un-used and un-useful setup steps
This patch removes the post install Ruby check, several other unused
setup steps and the CLI references to PE specific setup steps that
should no longer be in the harness.
```
* Specify if we are doing a PE run via env var (42479b63)
```
Specify if we are doing a PE run via env var
Previously we determined if we were running a PE suite based on what
setup option was chosen. As we move the setup of test suite out of the
harness the flags that would have told us whether or not we were running
a PE suite are no longer of use. Ideally we would allow the project
being tested to override the host defaults for values, but this that
would be a larger change than is currently scoped. In the mean time this
patch allows setting an environment variable to determine wether or not
this is a PE or FOSS suite run.
```
* Merge pull request #435 from justinstoller/rooted_setup_dirs (d45acade)
```
Merge pull request #435 from justinstoller/rooted_setup_dirs
[#20586] Ensure the assumed "setup" dir is relative to the harness, not CWD
```
* actually include the setup dir in the introduced variable (2073da64)
* (#20651) first pass supporting config file only vm specifications (bb3c19b0)
* Remove setup steps that are PE specific (5359207f)
```
Remove setup steps that are PE specific
Previously we put all of the setup steps for all of Puppetlabs projects
in its test harness. As projects change the maintenance cost should be
shifted to the developers/projects that are changing. They are the best
to understand their particular projects setup/dependencies. We have
moved all of the PE setup tests into a separate repository but the
harness will still try to load these outdated setup steps. This cleans
up the duplicate and/or conflicting setup steps that are better specified in
the PE projects test suite.
```
* [#20586] Ensure the assumed "setup" dir is relative to the harness, not CWD (4ba69848)
```
[#20586] Ensure the assumed "setup" dir is relative to the harness, not CWD
Prior to this the harness assumed that a number of tasks were in it's
setup folder but it loaded them relative to the CWD. This causes issues
when trying to run the harness as a gem executable outside of the
traditional directory structure. This commit fixes that so that all
assumptions around the location of the 'setup' dir is relative to the
harness's root not the CWD.
```
* Merge pull request #377 from justinstoller/maint/master/documentation_test_refactor_hacking (3d510e4b)
```
Merge pull request #377 from justinstoller/maint/master/documentation_test_refactor_hacking
[maint] documentation test refactor hacking
```
* Merge pull request #430 from zaphod42/allow_execute_from_gem (4f33677d)
```
Merge pull request #430 from zaphod42/allow_execute_from_gem
Move systest.rb to bin directory
```
* Merge pull request #433 from anodelman/retry-execute (65b8f5cf)
```
Merge pull request #433 from anodelman/retry-execute
retry command execution after re-connecting to hosts
```
* (fix) retry once and only once (ff398082)
* (maint) removing dead code (3f739330)
* Merge pull request #431 from branan/remove_dhcp_renew (14051d89)
```
Merge pull request #431 from branan/remove_dhcp_renew
Remove --dhcp-renew
```
* Merge pull request #423 from justinstoller/maint/master/net_not_lan (fc8cee08)
```
Merge pull request #423 from justinstoller/maint/master/net_not_lan
Use proxy.puppetlabs.net, not proxy.puppetlabs.lan
```
* (issue #20483) retry command execution after re-connecting to hosts (bf295990)
* Use new windows 2003r2 box with Ruby 193 (b93805f3)
* typo in fedora config (42f0b09b)
* Add fedora 18 config (c247a03a)
* Remove --dhcp-renew (86f30ad4)
```
Remove --dhcp-renew
This has not been useful/necessary for months, and it has caused at
least a few test failures when the DHCP renew causes open SSH sessions
to be terminated.
```
* Remove domain name component (9d50d09b)
```
Remove domain name component
Remove domain component so that name matches what's in vsphere.
```
* Add Windows Acceptance VM for testing ruby 193 (1d5f77d7)
```
Add Windows Acceptance VM for testing ruby 193
See above
```
* Move systest.rb to bin directory (d4fc92e5)
```
Move systest.rb to bin directory
Without this change you could install the puppet-acceptance code from
the git repo as a gem (via bundler), but could not run the systest.rb
program. This moves systest.rb to the bin directory, leaves a stub
behind, and drops the .rb extension (just 'cuz).
```
* Merge pull request #429 from anodelman/bug_20094 (a2f23306)
```
Merge pull request #429 from anodelman/bug_20094
removed default value for confine -> criteria (bug 20094)
```
* removed default value for confine -> criteria (bug 20094) (02263a3a)
* Finalize Documentation for this pass (8b339ae8)
* Add documentation tasks (dc991c32)
* Improve .gitignore with documentation and bundler artifacts (86b76dd1)
* Use proxy.puppetlabs.net, not proxy.puppetlabs.lan (774f47a8)
* Do not install markdown by default on 1.8 (Regression) (54f0311d)
* Improve `require`s for use as a library (c311c0f9)
* Add Documenting guide (68f888dd)
* Split PuppetCommands into Helpers and Wrappers (28b2510f)
```
Split PuppetCommands into Helpers and Wrappers
Move much of TestCase into Helpers
Refactor Command
Document and test Helpers,Wrappers,TestCase,Command
```
* Document and test DSL/Roles (dbf9a63b)
* Document and test DSL/Outcomes (7f5ff69c)
* Document and test DSL/InstallUtils (85900021)
* Test DSL/Assertions (1c66257e)
* Use SimpleCov if not on Ruby 1.8 & update Rakefile (b04e1a42)
* outline how we should be requiring subsystems (d02b8a0e)
* Move helpers for the dsl into a DSL namespace (161767ce)
* Use YARD better (04d982f4)
* Specify the behavior we want in tests and documentation (db742875)
```
Specify the behavior we want in tests and documentation
whitespace fixup
```
### pe2.8.1 - 15 Apr, 2013 (7f527ff2)
* Merge pull request #427 from joshcooper/minitar (7f527ff2)
```
Merge pull request #427 from joshcooper/minitar
Minitar
```
* (#11276) Install GeoTrust Global CA on Windows (ae5814db)
```
(#11276) Install GeoTrust Global CA on Windows
In my local Windows VM, it was not able to connect to the production or
pmtacceptance forge due to the GeoTrust Global CA cert not being present
in my Root certificate store.
This commit adds a `git` setup step that installs the certificate on
Windows. When executed, the step installs the following cert:
CN=GeoTrust Global CA, O=GeoTrust Inc., C=US
If the cert is already present, the `certutil` command still returns 0,
so no special `acceptable_exit_code` logic is required.
```
* (#11276) Add minitar for Windows (090284c9)
```
(#11276) Add minitar for Windows
This commit adds minitar so that the module tool will work on Windows.
```
* Merge pull request #426 from branan/space_race (3b7cebe5)
```
Merge pull request #426 from branan/space_race
Only use space in dashboard password on versions of PE that support it
```
* Revert "Only use space in dashboard password on versions of PE that support it" (a058a341)
```
Revert "Only use space in dashboard password on versions of PE that support it"
This reverts commit b88e28a7a951c0d16b25fdc058fb90169abc70cf.
```
* Merge pull request #425 from branan/space_race (24e4d78f)
```
Merge pull request #425 from branan/space_race
Only use space in dashboard password on versions of PE that support it
```
* Only use space in dashboard password on versions of PE that support it (b88e28a7)
* Only use space in dashboard password on versions of PE that support it (f95b0f22)
* Merge pull request #424 from branan/passwords_in_spaaaaaaace (3e5b9e6d)
```
Merge pull request #424 from branan/passwords_in_spaaaaaaace
Add a space to the console password
```
* Add a space to the console password (1c3a5fa9)
```
Add a space to the console password
Spaces are hard in bash. This makes sure we handle them correctly
```
* Merge pull request #422 from branan/aix_upgrades (398f8672)
```
Merge pull request #422 from branan/aix_upgrades
Fix upgrade job on AIX
```
* Fix upgrade job on AIX (1d1d11ee)
```
Fix upgrade job on AIX
This adds an AIX case when disabling the puppet agent service
post-upgrade.
```
* Create pe_version-2.8.0 (c4bf1d6f)
### pe2.8.0 - 26 Mar, 2013 (6b79859e)
* Bump console_auth patch version (6b79859e)
* Merge pull request #421 from branan/white_space_is_lame_guys (f0ee2d23)
```
Merge pull request #421 from branan/white_space_is_lame_guys
Fix 32-bit host of EC2 debian6 64mda 32a configuration
```
* Fix 32-bit host of EC2 debian6 64mda 32a configuration (445ef218)
```
Fix 32-bit host of EC2 debian6 64mda 32a configuration
This configuration had a malformed yaml file which caused the puppet
agent to be deployed incorrectly in some cases.
```
* Merge pull request #420 from branan/"cleaner"-cert-regex (d6553666)
```
Merge pull request #420 from branan/"cleaner"-cert-regex
Make quotes optional when verifying agent cert has been signed
```
* Make quotes optional when verifying agent cert has been signed (882cc594)
```
Make quotes optional when verifying agent cert has been signed
The version of puppet included with PE 2.0 does not print quotes
around the certnames in `puppet cert --list`. This prevented the
harness from detecting signed certs on that version. The updated regex
can now handle both PE 2.0 and newer versions.
```
* Merge pull request #419 from branan/verify_cert_is_signed (b11a11ce)
```
Merge pull request #419 from branan/verify_cert_is_signed
Only continue from cert sign step if the cert is actually signed
```
* Only continue from cert sign step if the cert is actually signed (7fa5027c)
```
Only continue from cert sign step if the cert is actually signed
Without this, it was possible for an agent to check in between the
"sign all" step and the "check for the cert" step. In such a case, we
would continue without signing the cert because we could see it is
there. With this change, we now verify that the cert is signed, not
just that it exists.
```
* Merge pull request #418 from djm68/fix_aix_user_list (910fbf69)
```
Merge pull request #418 from djm68/fix_aix_user_list
(maint) fix AIX user_list method
```
* (maint) fix AIX user_list method (e218be9b)
```
(maint) fix AIX user_list method
AUX user_list method listed ALL information about users, when
we only want a list of the users names.
```
* Merge pull request #417 from branan/query_puppet_config_array_syntax (e233b6e8)
```
Merge pull request #417 from branan/query_puppet_config_array_syntax
Add array syntax to Host class for printing puppet config options
```
* Add array syntax to Host class for printing puppet config options (fcfa43d4)
```
Add array syntax to Host class for printing puppet config options
Without this, tests either had to guess at the default values (which
can vary across platforms) or run `puppet --configprint`
manually. This code allows test suites to use the nifty
`host.puppet['option']` syntax.
```
* Merge pull request #416 from kbarber/ticket/master/handle_blimpy_errors_with_retries (d9315443)
```
Merge pull request #416 from kbarber/ticket/master/handle_blimpy_errors_with_retries
Catch generic Fog exceptions for retry when using fleet.start
```
* During fleet.start retry call fleet.destroy and report on sleep (dd866ba7)
```
During fleet.start retry call fleet.destroy and report on sleep
This addition to the fleet.start retry block will add a fleet.destroy call
before fleet.start is retried in case we need to do some cleanup for it
to work again. It is caught inside its own begin/rescue block and has a
timeout to stop it blocking forever.
I've also added reporting on the number of seconds we are sleeping before
retry.
Signed-off-by: Ken Barber
```
* Catch generic Fog exceptions for retry when using fleet.start (a5189e4b)
```
Catch generic Fog exceptions for retry when using fleet.start
Previously we had been seeing multiple exceptions to do with AWS transient
failures:
#
# Request limit exceeded.>
This patch wraps the call to fleet.start in a retry wrapper, returning retry
count status each time, a random sleep (to work around API request limits)
and finally the ability to throw the original error if the exception
continues.
I see this as an initial start to adding resiliency to this problematic area,
to at least cater for the majority of our errors for now.
Signed-off-by: Ken Barber
```
* Merge pull request #415 from branan/strip_gid_on_aix (4c3ac9fb)
```
Merge pull request #415 from branan/strip_gid_on_aix
Strip the GID string in the AIX host backend
```
* Strip the GID string in the AIX host backend (ec325961)
```
Strip the GID string in the AIX host backend
on AIX, the GID string will have a newline. It doesn't on other
platforms. This change makes the AIX output match the rest of our
platforms.
```
* Merge pull request #414 from branan/stop_agent_on_aix (9e6ea1b0)
```
Merge pull request #414 from branan/stop_agent_on_aix
Add support for AIX when stopping the pe puppet agent service
```
* Add support for AIX when stopping the pe puppet agent service (82225c85)
* Merge pull request #413 from branan/bump_stomp_version (99335a2f)
```
Merge pull request #413 from branan/bump_stomp_version
Bump STOMP version for next PE release
```
* Bump stomp version for next PE release (8a83085a)
* Merge pull request #412 from branan/query_aix_stomp_ver (90618272)
```
Merge pull request #412 from branan/query_aix_stomp_ver
Use `rpm -q` to check stomp version on AIX
```
* Use `rpm -q` to check stomp version on AIX (5cc6faa8)
```
Use `rpm -q` to check stomp version on AIX
Previously, we used nothing and got a nilptr exception
```
* Merge pull request #411 from branan/retry_connreset (38e6e493)
```
Merge pull request #411 from branan/retry_connreset
Add ECONNRESET to list of retryable exceptions for SSH connections
```
* Add ECONNRESET to list of retryable exceptions for SSH connections (fd16a173)
* Merge pull request #410 from branan/no_more_awful_paths (85f7d5ba)
```
Merge pull request #410 from branan/no_more_awful_paths
Get rid of cfg-specified bindir/libdir on AIX configs
```
* Get rid of cfg-specified bindir/libdir on AIX configs (39f8a9c9)
```
Get rid of cfg-specified bindir/libdir on AIX configs
These were added during attemptes to get AIX acceptance running
continuously. Since that's been shelved for now and these are causing
problems, I'm removing them until continuous acceptance testing is
revisited.
```
* Merge pull request #409 from branan/facter_++ (a51dafdb)
```
Merge pull request #409 from branan/facter_++
Bump Facter version for next PE release
```
* Bump Facter version for next PE release (bb6492fd)
* Merge pull request #408 from branan/split_aix (b4f93f09)
```
Merge pull request #408 from branan/split_aix
Add split configurations for AIX testing
```
* Remove obsolete AIX 7 config file (663e50e7)
```
Remove obsolete AIX 7 config file
This was created during the initial AIX work, but is obsoleted by
recently added cfgs.
```
* Add split configurations for AIX testing (d9596c91)
```
Add split configurations for AIX testing
This allows the very slow AIX revert process to happen in parallel
```
* Merge pull request #407 from branan/update_deps (cab88b9e)
```
Merge pull request #407 from branan/update_deps
Bump dependencies in pe-latest version file to match recent security releases
```
* Bump dependencies in pe-latest version file to match recent security releases (f441c542)
* Merge pull request #406 from branan/puppet_++ (1644cc48)
```
Merge pull request #406 from branan/puppet_++
Bump base puppet version for next PE release
```
* Bump base puppet version for next PE release (4f992d1f)
* Merge pull request #403 from joshcooper/maint/master/kill-cat-hang (20c150f1)
```
Merge pull request #403 from joshcooper/maint/master/kill-cat-hang
Only try to stop the master if we have a pidfile
```
* new solaris config (a0858a92)
* Add Errno::ENETUNREACH to the list of retryable exceptions on ssh connect (2372fff3)
```
Add Errno::ENETUNREACH to the list of retryable exceptions on ssh connect
ENETUNREACH can occur on our infrastructure when resetting a host in
the vsphere.
```
* Merge pull request #405 from branan/aix_on_debian_master (6e906f8c)
```
Merge pull request #405 from branan/aix_on_debian_master
Switch AIX testing to a debian master
```
* Switch AIX testing to a debian master (2681f215)
* add configs for new windows vms (ec320deb)
* Merge pull request #398 from adrienthebo/rescue-ssh-exceptions (6ae8b144)
```
Merge pull request #398 from adrienthebo/rescue-ssh-exceptions
Retry SSH on network exceptions, fail on auth fail
```
* Merge pull request #404 from kbarber/ticket/master/new-el5-x86_64-instance (a99b6404)
```
Merge pull request #404 from kbarber/ticket/master/new-el5-x86_64-instance
Improved Centos 5 x86_64 image
```
* Improved Centos 5 x86_64 image (79bda2d3)
```
Improved Centos 5 x86_64 image
I've taken the old ami (ami-4433bf74) and made 2 improvements:
* /etc/yum.repos.d/Centos-Base.repo now uses a mirror list
* I've installed the yum-fastestmirror package
This is primarily so we aren't just relying on the rightscale mirror. With
this setup we should reduce the transient failures due to that mirror being
unavailable for whatever reason.
Signed-off-by: Ken Barber
```
* Only try to stop the master if we have a pidfile (0ca0e29c)
```
Only try to stop the master if we have a pidfile
Previously, on rhel6-32-1 I was noticing the test harness hang trying to
execute `bash -c kill $(cat )`, which blocked reading from stdin. The
issue occurred because I reverted the VM and did --no-install. As a
result, the `puppet master --configprint pidfile` command raised an
execption, which flowed through the top-level ensure block.
This commit moves the ensure block so that we only try to stop the
master if we're able to get its pidfile.
```
* add rhel 6.4 config for new foss job (e05b5db8)
* add precise VMs for public foss (eb5fd576)
* Merge pull request #402 from branan/ec2_west_pe_cfgs (75a13759)
```
Merge pull request #402 from branan/ec2_west_pe_cfgs
Ec2 west pe cfgs
```
* version bumps (d561e302)
* (maint) Update Cent6 64 AMI (487df891)
```
(maint) Update Cent6 64 AMI
Cent6 64 AMI has ssh key issues. Fixed.
```
* Add pe_version file for 2.0.x (e2d84c3c)
* Add old auth_user answer (a342ed40)
* Merge pull request #401 from djm68/fix_sles32_ami (ff4e37be)
```
Merge pull request #401 from djm68/fix_sles32_ami
(maint) Update sles 32 ami
```
* (maint) Update sles 32 ami (eb623ed9)
```
(maint) Update sles 32 ami
SLES11 32 ami was incorrect.
```
* less old badness, more new goodness (1728c766)
* Merge pull request #400 from djm68/fix_more_amis (735db8b0)
```
Merge pull request #400 from djm68/fix_more_amis
(maint) AMI clean-up
```
* (maint) AMI clean-up (f214aa45)
```
(maint) AMI clean-up
(hopefully) last whach and cleaup of ec2 AMIs for Code Orange
and PE2.8.
```
* Merge pull request #399 from branan/more_complete_http_pulls (f8edcb0c)
```
Merge pull request #399 from branan/more_complete_http_pulls
Fetch PE tarballs over http in a wider range of cases
```
* Fetch PE tarballs over http in a wider range of cases (58f7656a)
```
Fetch PE tarballs over http in a wider range of cases
* Fetch 1.x tarballs during install
* Fetch tarballs during upgrade
```
* Always `apt-get update` on debian/ubuntu machines (e781fa07)
```
Always `apt-get update` on debian/ubuntu machines
This was only doing an update when using repos before, but since we
later try to install packages, we need to update beforehand.
```
* Retry SSH on network exceptions, fail on auth fail (54eca7f1)
```
Retry SSH on network exceptions, fail on auth fail
The current behavior of the SshConnection currently swallows all
exceptions when trying to connect and will retry on any failure. This
means that errors like SSH failures will be masked as network failures.
This commit adds a list of retryable exceptions for timeouts, network
connectivity and so forth, and explicitly rescues these for retry. It
also reraises the Net::SSH::AuthenticationFailed to clearly indicate
auth failures.
```
* Merge pull request #397 from djm68/new_rhel6_amis (f58547a4)
```
Merge pull request #397 from djm68/new_rhel6_amis
(maint) add new RHEL6 AMIs
```
* (maint) add new RHEL6 AMIs (0485f7f2)
```
(maint) add new RHEL6 AMIs
Both RHEL6 AMIs had broken repos. Rebuilt AMIs, validated
functioning repos.
```
* Merge pull request #396 from djm68/update_west_amis (731f3cc6)
```
Merge pull request #396 from djm68/update_west_amis
(maint) Update EC2 West AMIs
```
* (maint) Update EC2 West AMIs (b6a421af)
```
(maint) Update EC2 West AMIs
AMIs needed to be modified and re-created.
```
* Add ec2-west configs for PE testing in the cloud (02c06ed9)
* Merge pull request #395 from branan/http_dist_dir (3abfc5c5)
```
Merge pull request #395 from branan/http_dist_dir
Add support for pe_dist_dir to be an HTTP server.
```
* Add support for pe_dist_dir to be an HTTP server. (57063385)
```
Add support for pe_dist_dir to be an HTTP server.
Prior to this change, pe_dist_dir is required to be a local filesystem
path. With this code in place, pe_dist_dir can now be pointed to an
HTTP or HTTPS server, and the LATEST file and PE tarballs will be
properly sourced from that server.
```
* Test GUI editing in GH interface (b38365ab)
* Merge pull request #394 from branan/yaml_loves_whitespace (ec77f0ca)
```
Merge pull request #394 from branan/yaml_loves_whitespace
YAML <3s whitespace
```
* YAML <3s whitespace (8ae287be)
* Merge pull request #393 from djm68/add_pe_ami (cffc2079)
```
Merge pull request #393 from djm68/add_pe_ami
(maint) Add major platforms for PE testing
```
* (maint) Add major platforms for PE testing (06c644d7)
```
(maint) Add major platforms for PE testing
As an stop-gap measure we need to scale our testing into EC2; this
commits adds Cent 5 adn 6, Rhel 5 and 6, ubunt 10.04 and 12.04,
Debian 6 and SLES 11.
```
* Merge pull request #392 from branan/add_ip_as_altname (d11052c3)
```
Merge pull request #392 from branan/add_ip_as_altname
(maint) Add host ip field as a DNS altname to the answers file
```
* (maint) Add host ip field as a DNS altname to the answers file (f41f4a54)
```
(maint) Add host ip field as a DNS altname to the answers file
Without this, accessing the puppetmaster via the listed IP will return
an SSL certificate that does not match.
```
* Merge pull request #389 from branan/ec2_west_pe_compat (dc34cd49)
```
Merge pull request #389 from branan/ec2_west_pe_compat
(maint) Make ec2-west ci configs compatible with PE
```
* (maint) Make ec2-west ci configs compatible with PE (9a22f4b2)
* Merge pull request #387 from branan/gen_config_for_preserved_hosts (409cb075)
```
Merge pull request #387 from branan/gen_config_for_preserved_hosts
(maint) Generate configuration files when --preserve-hosts is passed
```
* Update solaris internal mirrors to use delivery subnet (5bb6e86f)
* Merge pull request #388 from adrienthebo/update_forge_acceptance_host (8086e6d8)
```
Merge pull request #388 from adrienthebo/update_forge_acceptance_host
(maint) Update default hostname for forge
```
* (maint) Update default hostname for forge (3b4e75e5)
```
(maint) Update default hostname for forge
The forge acceptance test host was renamed last night to
'vulcan.delivery.puppetlabs.net', but the test harness is still
defaulting to the deprecated hostname. This commit updates the test
harness to use the new name of the forge acceptance host.
```
* (maint) Generate configuration files when --preserve-hosts is passed (0ebc3dd6)
```
(maint) Generate configuration files when --preserve-hosts is passed
Previously, passing --preserve-hosts would keep cloud instances alive,
but would not provide any easy way to access those hosts after systest
ended.
With this change, an updated systest-compatible config file with the
information needed to contact the cloud hosts is created. This file is
stored in tmp/, the same place where generated PE answers files are
stored.
```
* Merge pull request #386 from haus/ticket/19236_verify_homedir_removal (dc9f7954)
```
Merge pull request #386 from haus/ticket/19236_verify_homedir_removal
(#19236) PE-Uninstaller: Verify homedirs are removed when is_purge is true
```
* (#19236) Uninstaller: Verify homedirs are removed when is_purge is true (adc3bfc0)
```
(#19236) Uninstaller: Verify homedirs are removed when is_purge is true
This commit adds /var/lib/peadmin, the peadmin user homedir, to the list of
directories to verify are gone after the uninstaller completes.
```
* deal with vms with vmname (83b913af)
* CI does not run this as a bundled gem like I do locally; require "blah" wont just work (b6118c03)
* Merge pull request #340 from justinstoller/maint/master/improve_vsphere_performance (6ea47793)
```
Merge pull request #340 from justinstoller/maint/master/improve_vsphere_performance
(maint) improve vsphere performance
```
* Documentation update (bf642a4e)
* use Class methods for Class method dependencies (f74dbc70)
* Do not retry failed vSphere connections (8ca5816c)
* resume blimpy working correctly since multi hypervisor support (30eafb89)
```
resume blimpy working correctly since multi hypervisor support
make vsphere cleanup work with multi-hypervisors
disable vsphere until Enterprise jobs are cleaned up
```
* cleanup vsphere_helper (b92729bf)
* retry vsphere connection if failure 5 times (bbad92ae)
* shutdown vms after acceptance test run unless --preserve-hosts is passed (b71c7f44)
* close the vsphere connection when we're done with it (51c46313)
* move loading of config files to vsphere_helper (ba2056ee)
### pe2.7.1 - 8 Feb, 2013 (9826e1ca)
* Merge pull request #385 from branan/i_can_haz_aix (9826e1ca)
```
Merge pull request #385 from branan/i_can_haz_aix
New config file and a small bugfix for AIX acceptance testing
```
* Add config file for testing all AIX targets simultaneously (a36e48f9)
* Fix timing on AIX host revert (f0b7e300)
* Merge pull request #384 from domcleal/test-unit-assertions (53de3ed9)
```
Merge pull request #384 from domcleal/test-unit-assertions
Add missing require for Test::Unit::Assertions
```
* Add missing require for Test::Unit::Assertions (b059ad12)
* Merge pull request #383 from domcleal/file-urls (fd10ff4f)
```
Merge pull request #383 from domcleal/file-urls
Accept file:// URLs to git repos
```
* Accept file:// URLs to git repos (ccfe6563)
* Merge pull request #382 from cprice-puppet/bug/master/check-for-config-cli-arg-before-using-it (53a5dbbd)
```
Merge pull request #382 from cprice-puppet/bug/master/check-for-config-cli-arg-before-using-it
Check for the --config CLI arg before attempting to use it
```
* Check for the --config CLI arg before attempting to use it (7757ca53)
```
Check for the --config CLI arg before attempting to use it
Prior to this commit we tried to use the value of --config for
something, and then a few lines later we had the code that
would validate the presence of the parameter and fail with
a descriptive error message. This was giving NPEs; this
commit just re-orders those steps.
```
* Merge pull request #381 from nicklewis/group-gid-method (bbce3679)
```
Merge pull request #381 from nicklewis/group-gid-method
Add a helper method for retrieving a group's gid
```
* Add a helper method for retrieving a group's gid (35d0ba18)
```
Add a helper method for retrieving a group's gid
This uses `getent group` on "unix" systems `lsgroup -a id` on aix
systems. Windows hosts explicitly don't support this method.
```
* Merge pull request #380 from branan/dashboard_debug_log (ef2564b5)
```
Merge pull request #380 from branan/dashboard_debug_log
(maint) Enable verbose logging on dashbaord as well as master.
```
* (maint) Enable verbose logging on dashbaord as well as master. (6da96d75)
```
(maint) Enable verbose logging on dashbaord as well as master.
Prior to this, only the puppetmaster would have debug logging enabled.
In the case of a split master/dashboard, errors with facts storage are
actually logged on the dashboard host. Enabling debug logging on the
dashboard host will help in tracking down errors in that part of
puppet.
```
* (maint) Bump ActiveSplat versions (d8dee354)
* Merge pull request #379 from branan/master_debug_log (b10abc8e)
```
Merge pull request #379 from branan/master_debug_log
(maint) Enable puppet master debug logging if --debug flag is passed
```
* (maint) Enable puppet master debug logging if --debug flag is passed (8cb25a1e)
```
(maint) Enable puppet master debug logging if --debug flag is passed
Normally, the puppet master has minimal logging enabled by
default. However, it is beneficial to have additional logging
information to help track down issues during testing. This patch
enables full puppet master logging when the user requests verbose
output at the harness level.
```
* (maint) Bump console_auth version for 2.7.x (f7741e25)
* Merge pull request #378 from branan/testing_is_hard_lets_go_shopping (22736f4a)
```
Merge pull request #378 from branan/testing_is_hard_lets_go_shopping
(maint) Add old versions of 1.2.x and 2.7.x for upgrade testing
```
* (maint) Add old versions of 1.2.x and 2.7.x for upgrade testing (7487c093)
* Merge pull request #376 from branan/cfg_vsphere (f7c2f0ef)
```
Merge pull request #376 from branan/cfg_vsphere
(maint) Add vmname/snapshot support to vsphere runner
```
* (maint) Add vmname/snapshot support to vsphere runner (2933e290)
* Merge pull request #375 from branan/activerecord_ver_bump (2346ddd9)
```
Merge pull request #375 from branan/activerecord_ver_bump
(maint) Bump activerecord version
```
* (maint) Bump activerecord version (d2ab2ca8)
* Merge pull request #374 from branan/god_dammit_ruby (63a6f45e)
```
Merge pull request #374 from branan/god_dammit_ruby
why. Why Why Why Why Why.
```
* And then the great RUBY appeared. And he said unto the world: Behold, for my syntax is as unknowable as PERL's, and your variables shall from this day forth contain values which you will never again explain. On that day all the developers of the world let out a great cry of agony, for they knew RUBY would keep his terrible promise. (2391b9aa)
* Merge pull request #373 from branan/split_pkg_repo (e6062da1)
```
Merge pull request #373 from branan/split_pkg_repo
(maint) Split configuration of additional package repos and repository proxies
```
* (maint) Split configuration of additional package repos and repository proxies (6fc9f82c)
* Merge pull request #372 from justinstoller/maint/master/quit_spamming_me (4b240a83)
```
Merge pull request #372 from justinstoller/maint/master/quit_spamming_me
[maint] remove the debugging statement and improve the hypervisor notice
```
* remove the debugging statement and improve the hypervisor notice (fcddd8f6)
* Merge pull request #371 from djm68/add_aix_vm_revert (39e67015)
```
Merge pull request #371 from djm68/add_aix_vm_revert
(maint) Add support for AIX reverts
```
* (maint) Add support for AIX reverts (7fb532c0)
```
(maint) Add support for AIX reverts
Adds support for AIX restores via aix 'hypervisor'.
This requies the use our update fog file in:
git@github.com:puppetlabs/puppetlabs-modules.git
An example config here: config/nodes/aix-7.cfg
```
* Merge pull request #370 from branan/bump_epel_release (07bee1f5)
```
Merge pull request #370 from branan/bump_epel_release
(maint) Bump epel-release package version for config_pkg_repo step
```
* (maint) Bump epel-release package version for config_pkg_repo step (4c56221e)
* Merge pull request #369 from djm68/add_aix_platform_support (83914c2e)
```
Merge pull request #369 from djm68/add_aix_platform_support
(maint) Adding support for AIX
```
* (maint) Adding support for AIX (e67e214f)
```
(maint) Adding support for AIX
AIX is coming; quite some changes to integrate into systest
```
* Merge pull request #331 from justinstoller/feature/master/12743-support-ruby-19 (a5387cf8)
```
Merge pull request #331 from justinstoller/feature/master/12743-support-ruby-19
[#12743] support ruby 19
```
* Merge pull request #368 from branan/skip_vmrun_unless_requested (a39228ea)
```
Merge pull request #368 from branan/skip_vmrun_unless_requested
(maint) Skip vm revert step if vmrun option is not specified
```
* (maint) Skip vm revert step if vmrun option is not specified (d997c338)
* handle blocks with an arity of 0 better in test case (4b2d4267)
* confine test/unit usage to versions of ruby that are 1.8 not x.8 (72db3aa8)
* Merge pull request #345 from justinstoller/bug/master/17032-confine_should_take_arrays (41fe2ad8)
```
Merge pull request #345 from justinstoller/bug/master/17032-confine_should_take_arrays
[#17032] allow arrays of properties to be passed to confine
```
* Merge pull request #347 from justinstoller/feature/master/17209-fail_faster_better (1c1e2cd3)
```
Merge pull request #347 from justinstoller/feature/master/17209-fail_faster_better
[#17209] allow failure strategy to be specified at command line
```
* Merge pull request #367 from branan/multi_hypervisor (4a85552b)
```
Merge pull request #367 from branan/multi_hypervisor
(maint) Support running VMs across multiple hypervisors simultaneously
```
* Merge pull request #1 from justinstoller/multi_hypervisor (d13acdc2)
```
Merge pull request #1 from justinstoller/multi_hypervisor
Multi hypervisor
```
* update readme (8cf8709a)
* if we do not connect to a host, say which host it was (dd37d2e5)
* dont use the local variable name vms, its used by the vsphere section (6c6e0da3)
* specs for TestCase#confine (eee3ef07)
* allow blocks to be passed to TestCase#confine (ff0f1451)
* require test/unit in test_case (it needs it) (aa10e2ef)
* return strings from conversion method when < ruby 1.8 (27387b3f)
* (maint) Support running VMs across multiple hypervisors simultaneously (8b58a782)
* Do not purge harness files when running in DEBUG mode (4667ad29)
```
Do not purge harness files when running in DEBUG mode
Previously Logger#pretty_backtrace was purging harness files from debug
stacktraces but not normal stacktraces. The logic was backwards.
```
* Merge pull request #366 from branan/wait_wait_dont_tell_me (7e6adaea)
```
Merge pull request #366 from branan/wait_wait_dont_tell_me
(maint) Wait just a bit longer before giving up talking to a host
```
* (maint) Wait just a bit longer before giving up talking to a host (2d72b45b)
```
(maint) Wait just a bit longer before giving up talking to a host
When using VM targets which are initially in the shutdown state it can
take them a bit longer to be accessible. This extra wait should help
prevent false positives.
The total wait time is now just under 4 minutes
```
* Merge pull request #365 from branan/continue_retrieve_properties (26139d66)
```
Merge pull request #365 from branan/continue_retrieve_properties
(maint) Search ALL THE HOSTS when trying to restore a VMware snapshot
```
* (maint) Search ALL THE HOSTS when trying to restore a VMware snapshot (57fe4dcc)
```
(maint) Search ALL THE HOSTS when trying to restore a VMware snapshot
VMWare servers can limit the number of results returned by a
RetrievePropertiesEx call. This commit adds code that uses
ContinueRetrievePropertiesEx to ensure we search the entire vcenter
for our hosts.
```
* Merge pull request #364 from branan/exterminate (71d85d69)
```
Merge pull request #364 from branan/exterminate
(maint) remove config files for obsolete OSen
```
* (maint) remove config files for obsolete OSen (b22697ed)
* Merge pull request #363 from djm68/update_forge_hostname (067a47ab)
```
Merge pull request #363 from djm68/update_forge_hostname
(maint) Update harness with new forge hostname
```
* (maint) Update harness with new forge hostname (b294df6d)
```
(maint) Update harness with new forge hostname
Post move: the old forge forge-acceptance.puppetlabs.lan is now
deprecated, the new host is
vulcan-acceptance.acctest.dc1.puppetlabs.net
```
* Merge pull request #362 from branan/outside_ntp_server (65ac3c2a)
```
Merge pull request #362 from branan/outside_ntp_server
(maint) ntp.puppetlabs.lan no longer exists
```
* (maint) ntp.puppetlabs.lan no longer exists (574f78ba)
* Merge pull request #361 from cprice-puppet/maint/master/debug-logging-for-master-start (d3a76b35)
```
Merge pull request #361 from cprice-puppet/maint/master/debug-logging-for-master-start
Extra debug logging for master startup
```
* Only do '-v' on curl if we're running with --debug (c9b92f62)
* Extra debug logging for master startup (a21be463)
```
Extra debug logging for master startup
This just adds a bit more verbosity / logging to the output when
the harness is checking to see whether the master is running. In
cases such as when you have a bad IP address in your hosts file,
this can be tremendously useful in helping to figure out what's
going on.
```
* Merge pull request #360 from sschneid/master (6b996781)
```
Merge pull request #360 from sschneid/master
Adding configs for x86 Solaris testing
```
* Adding links for both sparc and x86 Solaris tests (3bc154b3)
* Renaming to solaris11-sparc.cfg (db8e46a3)
* Adding Solaris 11 i386 config (fe22d9dd)
* Merge pull request #359 from sschneid/master (ddfc0bb4)
```
Merge pull request #359 from sschneid/master
Changing zfs rollback options from '-r' to '-Rf'
```
* Use more forceful, destructive rollbacks for fun and profit (76ed7250)
* Merge pull request #358 from sschneid/master (eea5c96d)
```
Merge pull request #358 from sschneid/master
Repoint ci-solaris11.cfg at new node config
```
* Repoint ci-solaris11.cfg at new node config (102f9ce1)
* Merge pull request #357 from puppetlabs/solaris_hypervisor (aa149363)
```
Merge pull request #357 from puppetlabs/solaris_hypervisor
Solaris hypervisor
```
* Docs for Solaris support, adding Solaris 11 node config file (9f4f1af4)
* Adding support for Solaris hypervisor with '--vmrun solaris' (134e8880)
* Allow config to be read from a hash or file (c4c360b0)
* Merge pull request #356 from cprice-puppet/maint/master/update-el6-ami (709d57c2)
```
Merge pull request #356 from cprice-puppet/maint/master/update-el6-ami
Update AMI for cent6-west
```
* Update AMI for cent6-west (789a7664)
```
Update AMI for cent6-west
The previous AMI had a bad ssh key setup and was hanging. I
believe this one should fix that particular issue.
```
* Merge pull request #354 from branan/config_file_ordering (d0be2363)
```
Merge pull request #354 from branan/config_file_ordering
(maint) check for .fog file before /etc/plharness/vsphere
```
* (maint) check for .fog file before /etc/plharness/vsphere (f838ffe7)
* Updated AMI for debian6-64-west (26668b6e)
* Updated AMI for ubuntu10.04-64-west (570a3ef6)
* Merge pull request #352 from cprice-puppet/feature/master/uswest2-amis (c885354a)
```
Merge pull request #352 from cprice-puppet/feature/master/uswest2-amis
Add configs for US-West2 AMIs
```
* Fix platform names (91cf98ac)
* Add configs for US-West2 AMIs (f8ff9635)
* allow failure strategy to be specified at command line (7d8d905e)
* allow arrays of properties to be passed to confine (6913eb4e)
* Force Net::SSH output to be normalized on Encoding.default_external (0a4f3aca)
```
Force Net::SSH output to be normalized on Encoding.default_external
if necessary
```
* Use a class level constants instead of instance variables (c0dead99)
* Remove 1.9 incompatible relative require (50b20cf3)
* Remove final instances of "and break" when trying to skip test (e3551fc6)
* Remove old instance of Test::Unit.run within systest (5f0f88c3)
* Force Logger exception parsing segments to strings before combining (65a1c081)
* Set Test::Unit.run when we learn whether or not were using Test::Unit (7f74e85f)
* whitespace fixup (6a8e32e3)
* First pass at 1.9 compatibility (6a3c1cd0)
### pe2.7.0 - 16 Nov, 2012 (08c2bd19)
* Merge pull request #350 from branan/rename_pkg_verify_answer (08c2bd19)
```
Merge pull request #350 from branan/rename_pkg_verify_answer
(maint) rename q_rpm_verify_gpg answer to q_verify_packages
```
* (maint) rename q_rpm_verify_gpg answer to q_verify_packages (35b4d19c)
* Merge pull request #349 from branan/no_default_rpm_gpg (d7e371ee)
```
Merge pull request #349 from branan/no_default_rpm_gpg
(maint) only set q_rpm_verify_gpg if the env var for it is set
```
* (maint) only set q_rpm_verify_gpg if the env var for it is set (98341409)
* Merge pull request #348 from djm68/fix_no_install_options_parsing (427b44b5)
```
Merge pull request #348 from djm68/fix_no_install_options_parsing
(maint) fix --no-install failing
```
* (maint) fix --no-install failing (10bab3f7)
```
(maint) fix --no-install failing
--no-install fails due to boolean eval of '--no' resulting in false
instead of setting the option to true, as intended.
```
* Merge branch 'amazon_support' of git://github.com/branan/puppet-acceptance (e9bc050a)
* (maint) Add support for running PE builds against amazon linux (82f8e484)
* handle SLES when checking stomp gem version (555d466b)
```
handle SLES when checking stomp gem version
Signed-off-by: Justin Stoller
```
* Merge pull request #346 from justinstoller/maint/master/check_stomp_version (3fac1573)
```
Merge pull request #346 from justinstoller/maint/master/check_stomp_version
(maint) ensure stomp is at 1.1.9
```
* ensure stomp is at 1.1.9 (681a6250)
* Merge pull request #343 from branan/find_pe_for_uninstall (bbbfdb49)
```
Merge pull request #343 from branan/find_pe_for_uninstall
(maint) Use modern method of finding PE installers for uninstall tests
```
* (maint) Use modern method of finding PE installers for uninstall tests (d463f531)
* Merge pull request #342 from branan/blimpy_ports_by_role (665ef223)
```
Merge pull request #342 from branan/blimpy_ports_by_role
(maint) Determine open Blimpy instance ports based on role
```
* (maint) Determine open Blimpy instance ports based on role (071fb7ec)
* Merge pull request #341 from branan/allow_ami_selection (fa0ec8ea)
```
Merge pull request #341 from branan/allow_ami_selection
(maint) Allow specifying VM template name for Blimpy AMIs
```
* (maint) Allow specifying VM template name for Blimpy AMIs (2520740c)
* bump console auth version (b0467b3d)
* Merge pull request #339 from branan/gen_gpg_answer_on_upgrade (b26e10bf)
```
Merge pull request #339 from branan/gen_gpg_answer_on_upgrade
(maint) Answer the GPG verfication on upgrades
```
* (maint) Answer the GPG verfication on upgrades (682847bc)
* Package version bump (c0bf46c0)
* Merge pull request #338 from branan/verify_rpms (9b8fb528)
```
Merge pull request #338 from branan/verify_rpms
(maint) Verify RPMs by default on PE installs
```
* (maint) Verify RPMs by default on PE installs (9ee91305)
* Merge pull request #337 from branan/fix_pe_installer_usage (64bb1dd7)
```
Merge pull request #337 from branan/fix_pe_installer_usage
(maint) Play nice with the installer's working directory handling
```
* (maint) Play nice with the installer's working directory handling (86415f77)
* (maint) Bump console_auth version (8dc192a4)
* (maint) Bump console auth version (4c1ae161)
* Merge pull request #336 from djm68/clean_up_old_setups (2d5c8534)
```
Merge pull request #336 from djm68/clean_up_old_setups
(maint) Cleanup old install types
```
* (maint) Cleanup old install types (376af8b5)
```
(maint) Cleanup old install types
Old install code hanging around -- not needed any longer.
```
* Merge pull request #335 from branan/install_pe_test_packages (5baa5207)
```
Merge pull request #335 from branan/install_pe_test_packages
(maint) Add step to install PE *-test packages
```
* (maint) Add step to install PE *-test packages (4e789c98)
```
(maint) Add step to install PE *-test packages
This adds a setup type to install the PE *-test packages. This
leverages the power of the existing PE installer in order to install
the packages correctly on all platforms.
In order to use this you will need a `config/test_packages.yml` file
listing the packages to install as part of this step.
```
* Merge pull request #334 from branan/use_pe_dir_for_windows (4802b7d7)
```
Merge pull request #334 from branan/use_pe_dir_for_windows
Use the configured PE files directory on windows
```
* Use the configured PE files directory on windows (df0a6f78)
* Merge pull request #333 from justinstoller/maint/master/config_pkg_to_sol_11 (96721533)
```
Merge pull request #333 from justinstoller/maint/master/config_pkg_to_sol_11
confine pkg_repo action for pkg publishers to solaris 11
```
* confine pkg_repo action for pkg publishers to solaris 11 (210cb198)
* Merge pull request #332 from djm68/add_pe27_version_file (f8b71e72)
```
Merge pull request #332 from djm68/add_pe27_version_file
(maint) add PE 2.7 version file
```
* (maint) add PE 2.7 version file (1cd05854)
```
(maint) add PE 2.7 version file
Add new files to track pe2.7 specifc versions
```
* Bump console_auth version to 1.1.9 (d28a91bc)
* the password is a syntax error (6619d328)
* Merge pull request #329 from djm68/add_env_override_console_auth_pass (98cfd3aa)
```
Merge pull request #329 from djm68/add_env_override_console_auth_pass
(maint) Add ENV override for console auth pass
```
* (maint) Add ENV override for console auth pass (614d890e)
```
(maint) Add ENV override for console auth pass
Allow teams to deploy PE build with sensible passwords for easy
logins.
```
* Merge pull request #328 from djm68/add_q_rpm_verify_gpg_answer (6d12ff50)
```
Merge pull request #328 from djm68/add_q_rpm_verify_gpg_answer
(maint) Add answer for gpg pkg verification
```
* (maint) Add answer for gpg pkg verification (2fd25601)
```
(maint) Add answer for gpg pkg verification
q_rpm_verify_gpg is used on PE2.7 to determine if the installer
will attempt to verify packages. Defeaults to 'n' but can be over-
ridden by setting q_rpm_verify_gpg='y' in the shell.
```
* Merge pull request #327 from justinstoller/maint/master/use_echo_hack_for_win (6cb268bd)
```
Merge pull request #327 from justinstoller/maint/master/use_echo_hack_for_win
force wmic to not use a pty
```
* hack to force wmic to not use a pty (950452dc)
```
hack to force wmic to not use a pty
Signed-off-by: Justin Stoller
```
* Merge pull request #326 from justinstoller/w/t/f/solaris (ca897ee1)
```
Merge pull request #326 from justinstoller/w/t/f/solaris
(maint) solaris 11 uses gnu style ntpdate
```
* I have no idea why this just started failing, but gnu ntpdate is first in path on sol 11 (a29f6029)
* Merge pull request #325 from justinstoller/bug/master/fix_scp (67db720a)
```
Merge pull request #325 from justinstoller/bug/master/fix_scp
(bug) be explicit with results from scp methods
```
* be explicit with results (c003ac7c)
* Merge pull request #322 from justinstoller/bug/master/16985-more-scp-options (0965e984)
```
Merge pull request #322 from justinstoller/bug/master/16985-more-scp-options
(16985) allows passing :recursive => true to scp methods
```
* Merge pull request #324 from joshcooper/maint/master/new-windows-gem (305b938b)
```
Merge pull request #324 from joshcooper/maint/master/new-windows-gem
Maint: Bump win32-security gem version
```
* Merge pull request #310 from justinstoller/feature/master/15455-install-native-packages (a8cd9410)
```
Merge pull request #310 from justinstoller/feature/master/15455-install-native-packages
(maint) unify installing repositories
```
* Maint: Bump win32-security gem version (8040449e)
```
Maint: Bump win32-security gem version
Previously, we were using win32-security version 0.1.2, but we need to
bump this to 0.1.4 for puppet 2.7.x and up. The gem was being installed
as a dependency to one of the others.
This commit bumps the gem version. In the future, we will be able to do
`bundle install` (for 3.0.x and up), but am I don't want to break the
acceptance tests right now, as it would require reording this step (to
do the git clone, to get the Gemfile, and then do bundle install).
```
* add a test (8b169c0c)
* Merge pull request #312 from justinstoller/maint/master/test_the_harness (28c13211)
```
Merge pull request #312 from justinstoller/maint/master/test_the_harness
(maint) add some tests
```
* combine options hashes (5c8854ca)
```
combine options hashes
Signed-off-by: Justin Stoller
```
* Merge pull request #316 from justinstoller/feature/master/12528-break-execution-on-skip (4a405381)
```
Merge pull request #316 from justinstoller/feature/master/12528-break-execution-on-skip
(12528) skip test should break execution when called
```
* Merge pull request #320 from justinstoller/maint/master/restrict_help_output_line_length (cb7be337)
```
Merge pull request #320 from justinstoller/maint/master/restrict_help_output_line_length
(maint) restrict help output line length
```
* Merge pull request #323 from justinstoller/maint/master/ensure_epel (0c65d888)
```
Merge pull request #323 from justinstoller/maint/master/ensure_epel
(maint) ensure epel
```
* simplify and improve --pkg-repo (19029bc6)
* add epel to our hosts when the --pkg-repo option is used (d58bf98d)
* allows passing :recursive => true to scp methods (06b839e6)
```
allows passing :recursive => true to scp methods
Signed-off-by: Justin Stoller
```
* Merge pull request #321 from branan/ancient_pe_upgrade (af681931)
```
Merge pull request #321 from branan/ancient_pe_upgrade
(maint) use the configured pe directory to find tarballs for ugprades
```
* (maint) use the configured pe directory to find tarballs for ugprades (b38bb5c6)
* update booleans to have [no] option (allows overriding option files) (f25bcd63)
* update command line flags for consistency (b1d93c36)
* clean up option parsing (2fcf28e6)
* Merge pull request #319 from branan/pe_12_version_checks (ea621da8)
```
Merge pull request #319 from branan/pe_12_version_checks
(maint) Support version checking on PE 1.2
```
* (maint) Support version checking on PE 1.2 (cf26c89f)
* Merge pull request #318 from djm68/add_pe12_versions_files (70027c63)
```
Merge pull request #318 from djm68/add_pe12_versions_files
(Maint) add version specific PE version files
```
* (Maint) add version specific PE version files (a17e374f)
```
(Maint) add version specific PE version files
To allow multi version PE tests, version specific files
need to be added; only required for major PE versions.
```
* Merge pull request #317 from branan/better_pe_dist_dir (c6b7a3b0)
```
Merge pull request #317 from branan/better_pe_dist_dir
(maint) Improve support for the pe_dist_dir env variable
```
* (maint) Improve support for the pe_dist_dir env variable (affe96ef)
* Merge pull request #314 from justinstoller/maint/master/update-gitignore (51134623)
```
Merge pull request #314 from justinstoller/maint/master/update-gitignore
(maint) update gitignore to allow local testing options and cfg files
```
* Merge pull request #313 from justinstoller/maint/master/install_rb_in_ec2 (af2e7c34)
```
Merge pull request #313 from justinstoller/maint/master/install_rb_in_ec2
install libruby-extras on deb based systems
```
* skip test should break execution when called (cb74c514)
```
skip test should break execution when called
Signed-off-by: Justin Stoller
```
* Merge pull request #315 from branan/old_pe_fixups (b9a94bd1)
```
Merge pull request #315 from branan/old_pe_fixups
Old pe fixups
```
* (maint) gunzip PE 1.2.5 tars (940e28ca)
* (maint) Check config pe_version instead of command-line option to determine answers version generation (06b48dcb)
* normalize parens usage per comment by @branan (ae4f03df)
* Merge pull request #311 from djm68/modify_answerfilegen_pe124 (df765f6d)
```
Merge pull request #311 from djm68/modify_answerfilegen_pe124
(maint) add support for pe1.2.x
```
* (maint) add support for pe1.2.x (32ff8734)
```
(maint) add support for pe1.2.x
We need the current harness to handle PE1.2.x installs; too much
has been added to the harness to revert back to our pe1.2 tag. This
code allows correct answer file generation for P2.x and PE1.2.x
varients.
```
* I always want to use |result| as if we were (27db98dc)
```
I always want to use |result| as if we were
intentionally yielding something meaningful
```
* install libruby-extras on deb based systems (cdd206d0)
```
install libruby-extras on deb based systems
to be able to install via install.rb
```
* change option from :package to :install (501e755f)
```
change option from :package to :install
handle option files and multiple -i flags better
```
* add --install flag and allow lists passed to it (0f5a0825)
* pull out bug workarounds into separate file (da4e1c16)
* add tests for added methods in InstallUtils (4d95d90d)
* move more of setup code into install_utils (9455fa6e)
* move to transforming options after parsing option file (d5d43809)
* update gitignore to allow local testing options and cfg files (b1625a49)
* unifying command line install flags -- code spike (4a37cd39)
* basic ssh_connection testing (be4a6a68)
* Basic tests for Hosts (45b4fdf0)
```
Basic tests for Hosts
This provides tests for most of the host's behaviors, save for `exec`
and `do_scp` which are very similar, but `exec` has a lot of knowledge
in it that should probably be elsewhere. So I've decided to hold off on
spec-ing it until I can refactor its friends at the same time.
Signed-off-by: Justin Stoller
```
* begin host testing (7ec3d6ae)
* Test and Refactor Logger class (be80c6e8)
```
Test and Refactor Logger class
This adds rough behavioral specs to puppet_acceptance/logger.rb as well
as refactors the code. Refactors include adding a hierarchy of
log_levels, simple accessors to find log level, pulling out common
color printing code, breaking up `pretty_backtrace` and making
`pretty_backtrace` only print the lines from test files unless in debug
mode.
Signed-off-by: Justin Stoller
```
* bump to rspec 2.11 (16b848a7)
### pe2.6.1 - 9 Oct, 2012 (58edb963)
* Merge pull request #309 from cprice-puppet/maint/master/add-suite-name-to-summary-output (58edb963)
```
Merge pull request #309 from cprice-puppet/maint/master/add-suite-name-to-summary-output
Add suite name to test case summary
```
* Add suite name to test case summary (25e3e92d)
```
Add suite name to test case summary
When scrolling through log output for a test run with a lot of
test suites, it can be a bit difficult to differentiate them.
This commit simply adds the suite name to the summary log for
a test suite.
```
* Merge pull request #308 from cprice-puppet/feature/master/add-scp-from (b77b85f8)
```
Merge pull request #308 from cprice-puppet/feature/master/add-scp-from
Add an scp_from method, like the existing scp_to
```
* Add an scp_from method, like the existing scp_to (d3eaf99a)
```
Add an scp_from method, like the existing scp_to
This commit adds support for SCP'ing files *from*
hosts, to supplement the existing functionality
for scp'ing files *to* hosts. This is useful for
collecting log files to archive with the Jenkins
jobs, etc.
```
* Merge pull request #306 from branan/16723_fibonacci_backoff (29fa26ae)
```
Merge pull request #306 from branan/16723_fibonacci_backoff
(#16723) Use a fibonacci backoff sequence for SSH retries
```
* Merge pull request #307 from branan/bump_console_auth_version (f72c34d8)
```
Merge pull request #307 from branan/bump_console_auth_version
Bump console auth version to 1.1.7
```
* Bump console auth version to 1.1.7 (d8c1f95f)
* (#16723) Use a fibonacci backoff sequence for SSH retries (f05c4dc4)
```
(#16723) Use a fibonacci backoff sequence for SSH retries
Previously, all retries would use a 20-second delay. This patch uses a
fibonacci sequence which allows for more immediate results when the
connection issue is resolved quickly.
```
* Merge pull request #305 from branan/remove_dummy_config (0d58b08c)
```
Merge pull request #305 from branan/remove_dummy_config
Remove dummy CONFIG section from Razor cfg file
```
* Remove dummy CONFIG section from Razor cfg file (462e3c11)
```
Remove dummy CONFIG section from Razor cfg file
This section was necessary due to a bug that has since been
resolved. It can now safely be removed.
```
* Merge pull request #304 from branan/16721_roleless_hosts (0f2474a3)
```
Merge pull request #304 from branan/16721_roleless_hosts
(#16721) Allow hosts with no roles set
```
* (#16721) Allow hosts with no roles set (bc1698b7)
```
(#16721) Allow hosts with no roles set
Previously, hosts without any roles set in the config file would cause
nil to be treated as an array. This results in a crash. This change
ensures that the roles configuration is not nil, preventing the crash.
```
* Merge pull request #303 from cprice-puppet/feature/master/update-cent55-openssl (fa6ea396)
```
Merge pull request #303 from cprice-puppet/feature/master/update-cent55-openssl
Update openssl package on cent5 AMI
```
* Update openssl package on cent5 AMI (2eec20d5)
```
Update openssl package on cent5 AMI
Prior to this commit, some of the SSL operations needed for
puppetdb acceptance testing weren't working with our CentOS5
image. I opened up the old AMI, ran 'yum install openssl' to
get the latest version, and then snapped a new AMI. This
commit updates the AMI ID in the acceptance config.
```
* Merge pull request #302 from cprice-puppet/feature/master/update-ubuntu-ami-id (d508f80a)
```
Merge pull request #302 from cprice-puppet/feature/master/update-ubuntu-ami-id
Update AMI id for ubuntu
The new AMI now includes the 'unzip' command.
```
* Update AMI id for ubuntu (783c6707)
* Merge pull request #301 from daniel-pittman/master (512b9af9)
```
Merge pull request #301 from daniel-pittman/master
Add Razor test VM configuration to the CI suite.
```
* Add razor CI acceptance test configuration (5479e889)
```
Add razor CI acceptance test configuration
This adds the existing Razor test VM to the CI suite.
```
* Merge pull request #299 from daniel-pittman/better-vsphere-error-handling (9e287753)
```
Merge pull request #299 from daniel-pittman/better-vsphere-error-handling
Better vsphere error handling
```
* Merge pull request #298 from justinstoller/maint/master/doc-update (9f75f7aa)
```
Merge pull request #298 from justinstoller/maint/master/doc-update
update docs for vsphere .fog file
```
* write better (d2f15f68)
* Power on any stopped VM during setup (512ba814)
```
Power on any stopped VM during setup
This detects a powered off VM on the vSphere host, and boots it back up after
the snapshot is restored. It will also wake up a suspended VM.
This change makes the system more robust against sleeping or stopped VMs
or snapshots.
Signed-off-by: Daniel Pittman
```
* Detect missing VMs and fail the setup process (29356ab6)
```
Detect missing VMs and fail the setup process
Previously the vSphere integration made a "best effort" pass at the VMs: it
would look for them all, and then act only on the machines that it found.
This means that if a VM name was incorrectly specified or otherwise
unavailable the entire process would just silently skip over it, omitting real
and important test targets.
Now this is detected and a failure results: you can't skip over a VM any longer.
Signed-off-by: Daniel Pittman
```
* Fix more floating point precision vs printf typos (7acb9aac)
```
Fix more floating point precision vs printf typos
More places where precision came after the format, rather than before, leading
to extremely precise numbers - to two decimal sets!
Signed-off-by: Daniel Pittman
```
* Use a normal failure in the vsphere helper (984ee68d)
```
Use a normal failure in the vsphere helper
The test suite helpers are not available in this Ruby helper object, so this
failed - but without actually having the helpful error. Just raising at least
improves this some.
Signed-off-by: Daniel Pittman
```
* update docs for vsphere .fog file (9cc9e774)
* Fix printf formatting of floating point... (b3c3b4c4)
```
Fix printf formatting of floating point...
A type meant that instead of setting the output precision we appended
a `.2` to the end of every time output in this file.
```
* Merge pull request #297 from branan/16720_allow_no_ruby (401c971e)
```
Merge pull request #297 from branan/16720_allow_no_ruby
(#16720) Allow systest to run on systems without ruby
```
* (#16720) Allow systest to run on systems without ruby (5e12a7ad)
```
(#16720) Allow systest to run on systems without ruby
Prior to this commit, a ruby version check would cause systest to fail
if run on any system without ruby. This changes it to return the
special value "none" when ruby is not found or is not functional.
```
* Merge pull request #296 from branan/16724_support_empty_config (7b192cf6)
```
Merge pull request #296 from branan/16724_support_empty_config
(#16724) Accept config files without a CONFIG hash
```
* (#16724) Accept config files without a CONFIG hash (b91118f3)
```
(#16724) Accept config files without a CONFIG hash
Previously the code assumed all config files included a CONFIG
section. This would cause a crash when that section was missing.
This commit changes the code to create an empty hash if the CONFIG
section is missing.
```
* Merge pull request #295 from cprice-puppet/feature/master/add-ec2-el6-config (1049fb47)
```
Merge pull request #295 from cprice-puppet/feature/master/add-ec2-el6-config
Add EC2 config file for EL6
```
* Add EC2 config file for EL6 (a31b418a)
* Merge pull request #294 from cprice-puppet/feature/master/blimpy-ports (d4f4b156)
```
Merge pull request #294 from cprice-puppet/feature/master/blimpy-ports
Add missing ports to the security group
```
* Add missing ports to the security group (bca2e36b)
```
Add missing ports to the security group
The puppet and puppetdb ports were not open in the security policy
that blimpy was using prior to this commit.
```
* Merge pull request #293 from cprice-puppet/feature/master/puppetdb-ec2 (6da41370)
```
Merge pull request #293 from cprice-puppet/feature/master/puppetdb-ec2
Feature/master/puppetdb ec2
```
* Update AMI for Ubuntu 10.04 (ca37f997)
```
Update AMI for Ubuntu 10.04
The existing Ubuntu AMI did not contain the Puppet
ssh public keys. I added them to /etc/rc.local
and made a new AMI. This commit updates the ec2
config to use the new AMI ID.
```
* Add fqdn to /etc/hosts during startup (f2ca0707)
```
Add fqdn to /etc/hosts during startup
In addition to the short hostname, some tests will definitely
need for the /etc/hosts file to contain the FQDN. (PuppetDB
does for sure.) This commit blatantly rips off some code
from Facter to guess the domain name, and then adds it to
the /etc/hosts file during VM runs.
```
* Merge pull request #292 from branan/console_auth_116 (e1f6f783)
```
Merge pull request #292 from branan/console_auth_116
Bump console_auth version to 1.1.6
```
* Bump console_auth version to 1.1.6 (af105d85)
* Merge pull request #291 from branan/add_pe_noop (53903782)
```
Merge pull request #291 from branan/add_pe_noop
Add pe_noop type.
```
* Add pe_noop type. (6743ac5d)
```
Add pe_noop type.
In order to have a 'manual'-stype setup type that is still detected as PE,
a type with the substring 'pe' must be used. This adds that type.
```
* Merge pull request #290 from branan/fix_snapshot_selection (5e37e5f3)
```
Merge pull request #290 from branan/fix_snapshot_selection
Make it possible to override the snapshot for 'gem' and 'manual' types
```
* Make it possible to override the snapshot for 'gem' and 'manual' types (d6a0a9b0)
```
Make it possible to override the snapshot for 'gem' and 'manual' types
Previously, the snapshot-consolidation logic would check the run type
whether or not the user specified a custom snapshot. This would cause
user-specified snapshots to be ignored when using the 'gem' or
'manual' run types.
```
* Merge pull request #289 from MosesMendoza/bump_console_auth_version (857e4704)
```
Merge pull request #289 from MosesMendoza/bump_console_auth_version
bump console-auth check to 1.1.5
```
* bump console-auth check to 1.1.5 (e70905f2)
* Merge pull request #288 from vrthra/ticket/master/16307_fix_solaris (31c261e4)
```
Merge pull request #288 from vrthra/ticket/master/16307_fix_solaris
(#16307) solaris uses the gnu specific mv under /usr/gnu/bin
```
* (#16307) solaris uses the gnu specific mv under /usr/gnu/bin (5878b46a)
```
(#16307) solaris uses the gnu specific mv under /usr/gnu/bin
The manage ssh keys script uses a gnu-ism for mv. This patch adds
the path for gnu binaries in solaris.
```
* Merge pull request #285 from vrthra/ticket/master/16307_fix_solaris (67b8685c)
```
Merge pull request #285 from vrthra/ticket/master/16307_fix_solaris
(#16307) fix ip command for solaris.
```
* Merge pull request #284 from justinstoller/maint/master/multiple_datacenter_support (37ceae20)
```
Merge pull request #284 from justinstoller/maint/master/multiple_datacenter_support
(maint) multiple datacenter support
```
* (#16307) get solaris to use the internal ips repository (2e028c69)
```
(#16307) get solaris to use the internal ips repository
Previously we used the default repository at http://pkg.oracle.com/solaris/release/
which caused zone creation to be very slow. By using internal mirror we hope to reduce
the time, and network load.
```
* (#16307) fix ip command for solaris. (49d71520)
```
(#16307) fix ip command for solaris.
Previously we were usign `ip a` in solaris which is not present. Instead use ifconfig to
get the ip address. We also use /etc/inet/hosts instead of /etc/hosts in solaris.
```
* minor fixups (608479d0)
* rough draft of multiple datacenter support (2fb96091)
### pe2.6.0 - 17 Sep, 2012 (592ad45d)
* Merge pull request #287 from branan/bump_console_auth_ver (592ad45d)
```
Merge pull request #287 from branan/bump_console_auth_ver
(maint) Bump console_auth_ver to 1.1.4
```
* (maint) Bump console_auth_ver to 1.1.4 (474adcaf)
* Merge pull request #286 from branan/pe_ver_bump (186c9c59)
```
Merge pull request #286 from branan/pe_ver_bump
(maint) Bump console_auth_ver for new PE build
```
* (maint) Bump console_auth_ver for new PE build (f98c8e69)
* (maint) update symlink to config file (d3eb7dd1)
* (maint) fix config file typo (a339cb74)
* Bump console-auth version to match the future reality. (fd3836b8)
* Merge pull request #283 from haus/console_version_bump (cd1d2c01)
```
Merge pull request #283 from haus/console_version_bump
Bump console-auth version to match the future reality.
```
* fix solaris cfg (fbcde046)
* Merge pull request #282 from justinstoller/maint/master/use-short-names (dd085453)
```
Merge pull request #282 from justinstoller/maint/master/use-short-names
use the shortname for the host in cfg files
```
* use the shortname for the host in cfg files (9edbd2dc)
* Merge pull request #281 from vrthra/ticket/master/16307_fix_solaris (423ec5d0)
```
Merge pull request #281 from vrthra/ticket/master/16307_fix_solaris
(#16307) handle solaris specially for bin and sbindir
```
* Merge pull request #280 from justinstoller/ticket/master/16307_fix_solaris (030cb0c0)
```
Merge pull request #280 from justinstoller/ticket/master/16307_fix_solaris
Ticket/master/16307 fix solaris
```
* windows doesnt like unix paths (ce895baf)
* Bumping console auth expected version to 1.1.1 (def1557d)
* Merge pull request #279 from haus/console_auth_bump (9fdd4842)
```
Merge pull request #279 from haus/console_auth_bump
Bumping console auth expected version to 1.1.1
```
* Merge pull request #278 from djm68/move_ec2_steps_to_early (821eb7ac)
```
Merge pull request #278 from djm68/move_ec2_steps_to_early
(maint) Move ec2 config to setup/early
```
* (maint) Move ec2 config to setup/early (f75515e0)
```
(maint) Move ec2 config to setup/early
Not pretty, but need a simple, low impact way to perform small
amount of pre-test setup on ec2 nodes. Only runs when calling
--vmrun blimpy and not a PE build.
```
* Merge pull request #277 from djm68/ec2_setup_steps (4879dad9)
```
Merge pull request #277 from djm68/ec2_setup_steps
(maint) adding setup steps for ec2 hosts
```
* (maint) adding setup steps for ec2 hosts (99f1b11c)
```
(maint) adding setup steps for ec2 hosts
EC2 nodes require a bit of extra setup; this allows node config
before code install/testing.
```
* Merge pull request #276 from djm68/update_ec2_configs (91e26f3d)
```
Merge pull request #276 from djm68/update_ec2_configs
(maint) update ec2 configs for EL5
```
* (maint) update ec2 configs for EL5 (20818621)
```
(maint) update ec2 configs for EL5
Use two el5 32bit amis until we build out sane 64 bit and el6 based
systems.
```
* Merge pull request #275 from djm68/add_configurable_ami_size (578a8bd1)
```
Merge pull request #275 from djm68/add_configurable_ami_size
(Maint) Add support for per host ami sizing
```
* (Maint) Add support for per host ami sizing (9970f5b1)
```
(Maint) Add support for per host ami sizing
Blimpy implementation used ami type 't1.micro' as default; not
useful for real work. Adds 'amisize' to the config:
HOSTS:
ubuntu-1004-32-1:
roles:
- master
- database
- agent
platform: ubuntu-10.04-i386
amisize: m1.small
```
* Merge pull request #274 from djm68/add_foss_ec2_amis (6f75a83e)
```
Merge pull request #274 from djm68/add_foss_ec2_amis
(Maint) Add entries for FOSS AMIs
```
* (Maint) Add entries for FOSS AMIs (8014eb82)
```
(Maint) Add entries for FOSS AMIs
Using the PE AMIs, will need to add some pre-test code to install
Ruby and git.
```
* Merge pull request #273 from branan/maint/master/bump-pe-26-versions (f536ff30)
```
Merge pull request #273 from branan/maint/master/bump-pe-26-versions
bump versions for PE 2.6
```
* (acceptance) we dont want master to be an agent. (e8ddd559)
```
(acceptance) we dont want master to be an agent.
Remove the master hostname from the agent list.
```
* Merge pull request #272 from djm68/add_ec2_configs_puppetdb (e34206a9)
```
Merge pull request #272 from djm68/add_ec2_configs_puppetdb
Add ec2 configs puppetdb
```
* (maint) Add links to configs for easy CI integration (df88a9cc)
* (maint) Add ec2 specfic acceptance test configs (242cbb2f)
* bump versions for PE 2.6 (632a3477)
* Merge pull request #270 from justinstoller/feature/master/14158-line-endings (28711819)
```
Merge pull request #270 from justinstoller/feature/master/14158-line-endings
[14158] normalize line endings to unix newline
```
* normalize line endings to unix newline and saw raw versions of stdout,stderr,output (a731b396)
* (#16307) handle solaris specially for bin and sbindir (12294c0b)
```
(#16307) handle solaris specially for bin and sbindir
This is specific to the pkg://solaris/runtime/ruby-18@1.8.7.334,5.11
package available from pkg.oracle.com and available from a full system installation of
solaris11.
The ruby available from the above has Config::CONFIG['bindir'] compiled in to /usr/ruby18/bin
unlike in other platforms and packages which has it set to the system directory /usr/bin
The same issue is present for sbin directory too.
Since puppet and facter need to be delivered to /usr/bin we can not rely on the compiled
in directory for this purpose when using the above package.
This fix updates the invocation of install.rb to pass the directories directly rather than
depend on the compiled in directories. (A better fix would be to rely on the native package
managers to deilver the puppet and facter binaries correctly to the system, so this is a
temporary fix until atleast that happens, or the upstream changes the ruby compiled in
settings in a future version).
```
* Merge pull request #268 from djm68/readme_updates (b24b0838)
```
Merge pull request #268 from djm68/readme_updates
(maint) Significant re-write of README
```
* Merge pull request #266 from zaphod42/maint/master/host-in-ssh-is-a-string (50ff96fe)
```
Merge pull request #266 from zaphod42/maint/master/host-in-ssh-is-a-string
Fix using :pty in tests
```
* (maint) Significant re-write of README (ebc73d39)
```
(maint) Significant re-write of README
README was stale and hard to follow. Added new provisioning info
and reorganized for easier flow.
```
* (Maint) Better express value of variable in its name (d62293bd)
```
(Maint) Better express value of variable in its name
The @host variable didn't contain a Host instance, it actually contained
the name of the host and so is renamed to @hostname.
```
* (Maint) @host is actually a string (bdee604d)
```
(Maint) @host is actually a string
There must have been a change at some point from @host being an instance
of Host to being just the name of the host. This removes a few calls to
@host methods that assume that it is a Host object.
```
* (acceptance) machines: add solaris hosts (85d8ae47)
```
(acceptance) machines: add solaris hosts
Adds the solaris acceptance machines
```
* (#16307) acceptance: fix up to test cases for making them run on solaris. (3777ec37)
```
(#16307) acceptance: fix up to test cases for making them run on solaris.
- dont do apt-get on solaris
- readlink is present in opensolaris.
- fix solaris specific commadns in master run.
```
* Merge pull request #265 from djm68/extend_ec2_amis (386a1122)
```
Merge pull request #265 from djm68/extend_ec2_amis
(maint) Improve ec2 support
```
* (maint) Improve ec2 support (20a0b945)
```
(maint) Improve ec2 support
Move ec2 configs to external file:
config/image_templates/ec2.yaml
Populate ec2.yaml with 'production' PE AMIs.
```
* Merge pull request #264 from praxxis/feature/apply_manifest_on_catch_failures (1bb2a2e0)
```
Merge pull request #264 from praxxis/feature/apply_manifest_on_catch_failures
Add an option to apply_manifest_on that allows raising of test failures when manifests fail to apply
```
* Add an option to apply_manifest_on that allows raising of test failures when manifests fail to apply. (31ea306c)
* Merge pull request #263 from branan/remove_virsh_vmrun (bda7bcb1)
```
Merge pull request #263 from branan/remove_virsh_vmrun
Remove obsolete virsh support from vmrun
```
* Remove obsolete virsh support from vmrun (cb12f3dc)
* Merge pull request #262 from branan/blimpy_vmrun (104532a4)
```
Merge pull request #262 from branan/blimpy_vmrun
Blimpy vmrun
```
* Merge pull request #256 from branan/scp_modules (b7c97923)
```
Merge pull request #256 from branan/scp_modules
Add support for installing a module via scp from the test controller
```
* Add an option to preserve test instances. (a80a74fe)
```
Add an option to preserve test instances.
Current test machines are snapshot based and don't require any sort
of deletion or preservation. This support is needed to allow debugging
and instance re-use for cloud-based acceptance testing
```
* Add blimpy support for creating AWS instances for acceptance (b8fad5b6)
```
Add blimpy support for creating AWS instances for acceptance
This adds a new cleanup step. Cleanup is run if *any* step fails.
This ensure that ec2 instances are cleaned up even if another
setup, pre, or post step fails.
```
* Merge pull request #260 from kbarber/ticket/master/15699-forge_role (40360cdb)
```
Merge pull request #260 from kbarber/ticket/master/15699-forge_role
(#15699) Add methods for resolving and more adequately stubbing the forge host
```
* (#15699) Add methods for resolving and more adequately stubbing the forge host (d0976992)
```
(#15699) Add methods for resolving and more adequately stubbing the forge host
This patch includes the new 'forge' method which looks up the host using the
following mechanisms:
* return the host with the 'forge' role assigned to it
* return the value of 'forge_host' in the CONFIG hash
* default to returning 'forge-acceptance.puppetlabs.lan'
This allows us multiple mechanisms to override the forge host, with a fall back
to the static 'forge-acceptance.puppetlabs.lan' host.
It also provides wrapper methodology for stubbing a host in general
`stub_hosts_on` and provides a forge specific wrapper `stub_forge_on`
so we can make our acceptance code more DRY.
To facilitate proper 'unstubbing' this patch also introduces the capability to
declare a teardown code block, that will always be called at the end of a test
case. This is a generic method, and can now be used by anyone for purposes
beyond the initial goal of this patch.
```
* Add support for installing a module via scp from the test controller (88e44c05)
### pe2.5.3 - 23 Jul, 2012 (0eb96550)
* (maint) Add a case statement for Debian (0eb96550)
```
(maint) Add a case statement for Debian
Debian OSes need only to run apt-get update; no need to modify
the repo cofiguration as with Ubuntu.
```
* Merge pull request #259 from cprice-puppet/feature/master/allow-options-file (13f72dc5)
```
Merge pull request #259 from cprice-puppet/feature/master/allow-options-file
Add support for loading harness options from a file
```
* Merge pull request #258 from cprice-puppet/refactor/master/make-git-install-more-accessible (4b2bae5a)
```
Merge pull request #258 from cprice-puppet/refactor/master/make-git-install-more-accessible
Move install_from_git to reusable location
```
* Add support for loading harness options from a file (be80e274)
```
Add support for loading harness options from a file
This commit introduces a new command-line argument,
"--options-file". If specified, this file will be
treated as a ruby file to be evaluated, and is
expected to return a hash. The hash may contain
any of the "normal" options that the framework
supports. It may also contain extra options
that are specific to the project that is being tested.
Any options passed to the harness on the command
line will be given precedence over the ones found
in the file.
```
* Move install_from_git to reusable location (2dc8d0f5)
```
Move install_from_git to reusable location
This commit introduces an InstallUtils module (which will likely
become a class, eventually) to house the "install_from_git" method
that used to live in setup/git/01_TestSetup.rb. By moving this method
to a location under 'lib' instead of 'setup', it can be used during
the custom setup lifecycle phases of individual projects. Previously
it could only be used implicitly via, e.g., --yagr option, and only
if the --type was set to 'git'.
```
### pe2.5.2 - 9 Jul, 2012 (eaa93833)
* Merge pull request #257 from justinstoller/maint/master/changing_cert_list (eaa93833)
```
Merge pull request #257 from justinstoller/maint/master/changing_cert_list
(maint) the puppet cert --list --all output has changed
```
* the puppet cert --list --all output has changed (20a6b701)
* (maint) Add clean-up /tmp to upgrade step (43d932f1)
```
(maint) Add clean-up /tmp to upgrade step
/tmp is at a premium on some nodes -- remove old tar balls before
copying up new tar file.
```
* Merge pull request #255 from justinstoller/maint/master/pin_win_dir (00eb38b3)
```
Merge pull request #255 from justinstoller/maint/master/pin_win_dir
(maint) pessimistically pin windows gem versions
```
* pessimistically pin windows gem versions (92569137)
* Merge pull request #254 from cprice-puppet/bug/master/vmrun-plus-manual-install (cabe61d0)
```
Merge pull request #254 from cprice-puppet/bug/master/vmrun-plus-manual-install
Fix a bug in support for "--type manual"
```
* Merge pull request #253 from grimradical/require-pathname (84c16870)
```
Merge pull request #253 from grimradical/require-pathname
Require pathname in git TestSetup script
```
* Require pathname in git TestSetup script (ae452af4)
```
Require pathname in git TestSetup script
Depending on load-order odditites, 'pathname' may not be loaded when that
script is loaded.
Signed-off-by: Deepak Giridharagopal
```
* Merge pull request #252 from branan/allow_manual_ip (c3439eb4)
```
Merge pull request #252 from branan/allow_manual_ip
Allow manual specification of host IP address
```
* Merge pull request #250 from grimradical/fission-loop-until-ready (98f04c95)
```
Merge pull request #250 from grimradical/fission-loop-until-ready
Wait until fission VMs are actually ready before proceeding
```
* Fix a bug in support for "--type manual" (c7437205)
```
Fix a bug in support for "--type manual"
The vmrun option looks for a vmsnapshot named "manual" if you
specify "--type manual". We want it to just use the normal
"git" snapshot. This is kind of a hack, unfortunately... but
as you can see in the line above, we weren't the first ones
to have this problem.
```
* Allow manual specification of host IP address (829d840c)
```
Allow manual specification of host IP address
This allows the acceptance module to still track real hostnames without
it being necessary to add all the hosts to the controller's /etc/hosts
file.
```
* Merge pull request #251 from cprice-puppet/feature/master/allow-manual-installation-type (191ce940)
```
Merge pull request #251 from cprice-puppet/feature/master/allow-manual-installation-type
Allow projects to specify manual installation
```
* Allow projects to specify manual installation (f8f4be90)
```
Allow projects to specify manual installation
This commit allows you to specify "--type manual",
if your project will be responsible for managing
installation of the test subject code and does
not need the framework to do anything during that
phase.
```
* Wait until fission VMs are actually ready before proceeding (c40994e2)
```
Wait until fission VMs are actually ready before proceeding
Sometimes fission will return from a call to `start` prior to it actually being
registered as `running` in VMWware.
This patch adds some basic sanity-checking; we'll wait until the VM is actually
in the state we'd like before proceeding. Better safe than sorry.
Signed-off-by: Deepak Giridharagopal
```
* Merge pull request #247 from cprice-puppet/feature/master/allow-project-setup-suites (d1fbcd7b)
```
Merge pull request #247 from cprice-puppet/feature/master/allow-project-setup-suites
Feature/master/allow project setup suites
```
* Merge pull request #248 from cprice-puppet/feature/master/node-name-method-for-hosts (9ff0c009)
```
Merge pull request #248 from cprice-puppet/feature/master/node-name-method-for-hosts
Add "node_name" method to Host class
```
* Merge pull request #249 from grimradical/typo-in-vmrun (a8130619)
```
Merge pull request #249 from grimradical/typo-in-vmrun
Fix typo in comparison statement
```
* Merge pull request #246 from cprice-puppet/feature/master/allow-extra-git-clones (d573e48f)
```
Merge pull request #246 from cprice-puppet/feature/master/allow-extra-git-clones
Add support for cloning additional git repos
```
* Fix typo in comparison statement (8b3ba517)
```
Fix typo in comparison statement
Signed-off-by: Deepak Giridharagopal
```
* Merge pull request #245 from grimradical/9989_fission_support (c9a91b51)
```
Merge pull request #245 from grimradical/9989_fission_support
Support for VMWare Fusion when using --vmrun
```
* Add "node_name" method to Host class (c1886954)
```
Add "node_name" method to Host class
In certain tests it is very important for us to use
an agent's node_name_value rather than relying
on the hostname from the test config file (or
other possible values that may successfully
resolve in DNS). For example, when testing
node activation and de-activation for puppetdb,
we *must* use the node_name_value or things
can go awry.
This commit adds a method to the host object
that allows us to retrieve the node_name_value
without having to hard-code the command for
acquiring it into all of the tests. We might
want to consider similar methods for a few other
things such as FQDN.
```
* Move vmname option from fission-level to host-level (bcabafe4)
```
Move vmname option from fission-level to host-level
vmname is a generic attribute of a host, thus the option can be useful in
contexts outside of fission. This patch moves that option out of the fission
subsection and into the parent host section.
"I've been wanting to make explicit the distinction between name used by the
harness, hostname, and vmname for awhile. This is something we're going to need
in vSphere soon and I'd like to see 'vmname' as a key in the host hash above
the fission specific section (since I'll probably be using it in vSphere as
well before Lance ships)." -- Justin Stoller
Signed-off-by: Deepak Giridharagopal
```
* Add fission dependency to gemspec (fddeedb8)
```
Add fission dependency to gemspec
Signed-off-by: Deepak Giridharagopal
```
* Allow projects to define their own setup suites (452e5e3a)
```
Allow projects to define their own setup suites
This introduces the "--setup-dir" option, which
allows a project to specify a path to a
project-specific setup directory. This directory
may contain subdirectories like "early", "pre-suite",
and "post-suite". Ruby files inside of these
directories will be run at the appropriate phase
in the testing lifecycle.
```
* Use headless mode for Fusion VM's (f325bf76)
```
Use headless mode for Fusion VM's
Signed-off-by: Deepak Giridharagopal
```
* Support for VMWare Fusion when using --vmrun (71873184)
```
Support for VMWare Fusion when using --vmrun
This provides support for reverting a VMWare Fusion machine to a particular
snapshot prior to executing tests.
Additional requirements on the Test Driver:
- Must have the 'fission' gem (including all its dependencies) installed
- Must have a ~/.fissionrc that points to the `vmrun` executable and where VMs
can be found
You can then use the following arguments to systest:
- `--vmrun fusion` tells us to enable this feature. This is required.
- `--snapshot `, where is the snapshot name to revert to. This
applies across *all* VMs, so it only makes sense if you want to use the same
snapshot name for all VMs. This is optional.
For each host, you can (optionally) have a "fission" section with the following
(also optional) settings inside:
- `vmname`: This is useful if the hostname of the VM doesn't match the name of
the .VMX file on disk. The alias should be something fission can load.
- `snapshot`: This is useful if you'd like to use different snapshots for each
host. The value should be a valid snapshot name for the VM.
Signed-off-by: Deepak Giridharagopal
```
* Add support for cloning additional git repos (174a2465)
```
Add support for cloning additional git repos
This adds a "--yagr" option to the acceptance framework: "Yet Another
Git Repo". You can pass as many occurrences of this as you like,
and the framework will clone each repo so that you'll have it available
for your project's tests.
```
* (maint) Much needed cleanup on README (df545ed4)
```
(maint) Much needed cleanup on README
Much info was out of date; removed references to private PE test
repository. Converted to markdown format.
```
* Merge pull request #244 from djm68/add_agent_test_pe_upgrade (ac15b338)
```
Merge pull request #244 from djm68/add_agent_test_pe_upgrade
(maint) Add agent --test step
```
* (maint) Add agent --test step (935f5af0)
```
(maint) Add agent --test step
Running 'puppet agent --test' after installation and upgrades
sets up the newly installed agents for testing. Thi step was
ommitted on pe upgrade testing.
```
* Merge pull request #243 from justinstoller/maint/master/instance_not_class (ab254dc7)
```
Merge pull request #243 from justinstoller/maint/master/instance_not_class
(maint) move from TestConfig.is_pe? to host.is_pe?
```
* move from TestConfig.is_pe? to host.is_pe? (4e0bcf9b)
* Merge pull request #242 from justinstoller/maint/master/hosts_clean_up (93dceaf2)
```
Merge pull request #242 from justinstoller/maint/master/hosts_clean_up
Host initialization/defaults cleanup
```
* clean up host initialization (99ccff97)
* properly load windows defaults for opensource (4187bccd)
* Merge pull request #241 from justinstoller/maint/master/move_logger_initialization (f3fe932b)
```
Merge pull request #241 from justinstoller/maint/master/move_logger_initialization
Logging Refactor
```
* variable names != method names (0ff2f20e)
* break the cli class into some sensical methods (d9c709c0)
* re-enable stdout only behavior (df08dcef)
* refactor logging configuration out of TestSuite and into CLI (855faf4b)
* TestConfig#is_pe -- changed away from !! syntax because the match returns 0 (first character in string) which ! believes is false (c67fec4a)
* Merge pull request #240 from nicklewis/database-role (e463b8ba)
```
Merge pull request #240 from nicklewis/database-role
Add "database" role to CI configs
```
* Merge pull request #237 from nicklewis/command-refactors (45a14a2b)
```
Merge pull request #237 from nicklewis/command-refactors
Command refactors
```
* Merge pull request #239 from nicklewis/preserve-ssl (d6940bf9)
```
Merge pull request #239 from nicklewis/preserve-ssl
Fix preserve_ssl to actually preserve ssl..
```
* Specify depth correctly when removing vardir children (23d4e492)
```
Specify depth correctly when removing vardir children
It turns out `-depth n` is a BSD option only, so we'll use -mindepth and
-maxdepth to get the same effect.
```
* Merge pull request #238 from justinstoller/maint/master/require_json (4582a9c0)
```
Merge pull request #238 from justinstoller/maint/master/require_json
(maint) require json gem as harness dependency
```
* Add "database" role to CI configs (88a0e03c)
```
Add "database" role to CI configs
This doesn't currently having any meaning to the test harness, but will
be used by at least PuppetDB. All the databases live on the same node as
the master.
```
* Use standard file naming convention for Logger (f7231672)
* Fix preserve_ssl to actually preserve ssl.. (28f2d175)
```
Fix preserve_ssl to actually preserve ssl..
This option prevented the explicit removal of the ssl directory, but
didn't prevent the case where the ssldir is inside the vardir and gets
removed that way.
```
* require json gem as harness dependency (73beda73)
* Respect the --no-color option (80c5fe8c)
* Merge pull request #236 from nicklewis/options-for-puppet-master (2738d4a5)
```
Merge pull request #236 from nicklewis/options-for-puppet-master
Allow options for with_master_running_on
```
* Allow options for with_master_running_on (08b69404)
```
Allow options for with_master_running_on
This method now takes an optional final argument, an options hash. The
only current use is to specify the :preserve_ssl option, which dictates
whether or not to leave the ssl directories of the hosts alone. The
default behavior is to remove them, as the master is considered to be a
new puppet instance. However, sometimes a master needs to exist in a
long-running system, so this option can be used to maintain ssl.
```
* Merge pull request #235 from kelseyhightower/feature/master/add_hiera_puppet_support (5aebc4d1)
```
Merge pull request #235 from kelseyhightower/feature/master/add_hiera_puppet_support
(maint) Add hiera-puppet support + code clean up
```
* Don't automatically install hiera and hiera-puppet (364f67f2)
* (maint) Add hiera-puppet support + code clean up (f28b35ca)
```
(maint) Add hiera-puppet support + code clean up
This patch adds support for hiera-puppet plus some code clean up.
```
* Merge pull request #234 from kelseyhightower/master (525e7081)
```
Merge pull request #234 from kelseyhightower/master
(maint) Quote sources in Hiera hierarchy
```
* (maint) Quote sources in Hiera hierarchy (1c6ea5a4)
```
(maint) Quote sources in Hiera hierarchy
Without this patch the YAML parser can fail when parsing the
`/etc/puppet/hiera.yaml` configuration file. This results in the
following error:
Error 400 on SERVER: (/etc/puppet/hiera.yaml): found character that
cannot start any token while scanning for the next token at line 5
column 5
```
* Merge pull request #233 from justinstoller/maint/master/bump_console_version (b4975548)
```
Merge pull request #233 from justinstoller/maint/master/bump_console_version
(maint) bump console version to 1.0.12
```
* bump console version to 1.0.12 (11ed5110)
* Clean-up and stream command output (983c337c)
```
Clean-up and stream command output
This merges stdout and stderr, as we've never actually cared much for
the distinction (and this way, they come out in the proper order). Also
reformatted the way output is done to look like a standard shell
session. Command exit codes are only logged if they are non-zero.
Finally, output is now printed as it's received, rather than being
delayed until the command is finished. This provides better insight into
what the test is doing and why it's held up.
```
* Merge pull request #232 from justinstoller/maint/master/only_change_old_aptconf (34ae12c7)
```
Merge pull request #232 from justinstoller/maint/master/only_change_old_aptconf
(maint) dont backup non-existent files
```
* dont backup non-existent files (fb85b8b0)
* Stop using a global logger (8e271361)
```
Stop using a global logger
Now, the test suite will create an instance of Logger and pass it around
to the other objects that need it. This makes it easier to encapsulate
and change the properties of the logger, or to use a different logger
when necessary (for instance, for summary logging).
```
* Robustify puppet master start/stop (693c380a)
```
Robustify puppet master start/stop
This was using curl to check if the master was stopped, when `kill -0`
will suffice. Also, it was overly permissive in the exit codes it
accepted, and would just wait the full duration for the master to
start/stop in the case where curl wasn't even installed.
Also reduced the timeouts to wait for start/stop, as 30 seconds was a
bit unrealistically long, and just slowed down results when something
really was broken.
```
* Reorder some options for better help output (49f5caa8)
```
Reorder some options for better help output
This moves commonly used (and required) options to the beginning of the
help output to make it easier to get started.
```
* Extract command execution and SCP to SshConnection (e0ce5589)
```
Extract command execution and SCP to SshConnection
This handles the responsibility of actually running a command on the
remote machine, whereas Host has the job of checking that it was
successful (by the given definition of success). The TestCase#on method
is now a thin DSL wrapper around Host#exec.
```
* Remove superfluous do_action method (05f0e290)
* Shift responsibility for executing commands (a6c465fc)
```
Shift responsibility for executing commands
Previously the logic had been in Command, but that only represents
something to execute, and shouldn't be executing it or checking whether
it succeeded. Now the "on" method of TestCase takes care of this.
```
* (maint) add apt-get update to --pkg-repo (4ef4a8c5)
```
(maint) add apt-get update to --pkg-repo
Some VMs have stale apt caches, this will update the caches
before attemting to install Puppet.
```
* (maint) EL package configs removal (4b1f8d5c)
```
(maint) EL package configs removal
EL platforms have very complex package configs: different names
on each platform, different repo urls, etc. Removing EL specific
steps for now.
```
* Merge pull request #231 from justinstoller/feature/master/12783-virsh_never_do_it (512e2107)
```
Merge pull request #231 from justinstoller/feature/master/12783-virsh_never_do_it
(#12783) virsh, never do it
```
* add rbvmomi to gemspec (8e431173)
```
add rbvmomi to gemspec
warn of virsh deprecation
```
* alow revert vm step to use RbVmomi if appropriate (9bbf59c7)
* Merge pull request #230 from branan/14694_log_directory (ac00544f)
```
Merge pull request #230 from branan/14694_log_directory
(#14694) use mkdir_p for log output directory
```
* (#14694) use mkdir_p for log output directory (270bdf1d)
* Merge pull request #229 from justinstoller/maint/master/lib_layout (b346b3bf)
```
Merge pull request #229 from justinstoller/maint/master/lib_layout
(maint) move and modify lib to be a true gem
```
* move and modify lib to be a true gem (71f26976)
* Merge pull request #228 from justinstoller/ruby_layout (a7467579)
```
Merge pull request #228 from justinstoller/ruby_layout
(maint) ruby layout
```
* ensure stub tests are passing (b6ae0de9)
* Merge pull request #227 from jeffmccune/maint/master/fix_ntp_for_win2008r2 (8a82c129)
```
Merge pull request #227 from jeffmccune/maint/master/fix_ntp_for_win2008r2
Fix false positive error synchronizing win2008r2 Time
```
* Merge branch 'master' of github.com:puppetlabs/puppet-acceptance (12b08e17)
* (maint) No default install of Hiera (2f5c3668)
```
(maint) No default install of Hiera
Hiera was being installed even when not specified on the command line.
Seeting options[:hiera] to nil prevents silent, unintended installs.
```
* (maint) Remove leading white space (c36728bb)
```
(maint) Remove leading white space
Leading white space is breaks repo config
```
* Merge pull request #226 from djm68/add_el6__repo_update (c96f040b)
```
Merge pull request #226 from djm68/add_el6__repo_update
(maint) Dynamic repo cofig for EL6 platforms
```
* (maint) Dynamic repo cofig for EL6 platforms (0a5d4361)
```
(maint) Dynamic repo cofig for EL6 platforms
Our packing reposities are rather dynamic...VM images not so much.
Adding EL6 pkg repo updates.
```
* Merge pull request #224 from cprice-puppet/feature/master/add-helper-file-option (afb5cb80)
```
Merge pull request #224 from cprice-puppet/feature/master/add-helper-file-option
Add a --helper option
```
* Merge pull request #225 from kelseyhightower/ticket/master/14554_add_hiera_command_support (104070a3)
```
Merge pull request #225 from kelseyhightower/ticket/master/14554_add_hiera_command_support
(maint) Fix Hiera setup step
```
* (maint) Fix Hiera setup step (5ab2a98e)
```
(maint) Fix Hiera setup step
Without this patch the `/etc/puppet/hiera.yaml` configuration file has the
wrong permissions which causes the following error:
Error 400 on SERVER: Permission denied - /etc/puppet/hiera.yaml at
/tmp/databinding.Z16mln/site.pp:2
This patch also adds the missing configuration option for the YAML
backend's datadir.
# hiera.yaml
:yaml:
:datadir: #{dest_path}/hieradata
The Hiera setup step now creates the YAML backend datadir:
/etc/puppet/hieradata
```
* Fix false positive error synchronizing win2008r2 Time (8fe23ec5)
```
Fix false positive error synchronizing win2008r2 Time
Without this patch the acceptance tests fail running against Windows
2008 hosts because the w32tm /register command always returns
"Permission Denied." Even with UAC completely disabled.
The command is not actually required in Windows 2008. The commands
following the register command are adequate to synchronize the system
clock after a revert of the VM snapshot.
This change should only affect Windows hosts and the command should
still complete on Windows 2003 hosts where Josh thinks it's required.
```
* Add a --helper option (b9fc2717)
```
Add a --helper option
This new option allows tests to pass a path to a "helper"
file, somewhat akin to a spec_helper file, which will
simply be "require"d by the framework. This allows
tests to rely on library code that lives in their own
project rather than in the framework.
```
* Merge pull request #223 from joshcooper/maint/master/fix-hiera-path (aa5b1732)
```
Merge pull request #223 from joshcooper/maint/master/fix-hiera-path
(Maint) Always use POSIX-style paths for PATH
```
* (Maint) Always use POSIX-style paths for PATH (da54bcc8)
```
(Maint) Always use POSIX-style paths for PATH
Previously, we were setting the PATH environment variable as:
env PATH="C:\foo;$PATH" cmd.exe /c
However, cygwin handles the PATH environment variable differently than
RUBYLIB. It splits the value of PATH on colons, and converts each path
component to Windows style paths. So `C:\foo` becomes `C;C:\foo`
This commit changes the test harness to generate commands of the form:
env PATH="/opt/hiera/bin:$PATH" cmd.exe /c
Which becomes `C:\cygwin\opt\hiera\bin;%PATH%`
```
* Merge pull request #222 from jeffmccune/maint/master/win2008_ci_config (e540e00b)
```
Merge pull request #222 from jeffmccune/maint/master/win2008_ci_config
Add ci-windows2008-64a config for CI Acceptance
```
* Add ci-windows2008-64a config for CI Acceptance (22f6995e)
```
Add ci-windows2008-64a config for CI Acceptance
Without this patch we don't have any configurations suitable for
acceptance testing using a Windows 2008 R2 x64 agent system.
This patch fixes the problem by providing a configuration targeting
win2008r2-64-1.puppetlabs.lan as an agent platform.
```
* Merge pull request #221 from kelseyhightower/ticket/master/14554_add_hiera_command_support (471cf80c)
```
Merge pull request #221 from kelseyhightower/ticket/master/14554_add_hiera_command_support
(#14554) Add hiera command support
```
* (#14554) Add hiera command support (18b4b951)
```
(#14554) Add hiera command support
This patch adds support for running hiera commands to the test harness. You
can execute Hiera commands like this:
on master, hiera(""), :acceptable_exit_codes => [1] do
assert_output <<-OUTPUT
STDERR> Please supply a data item to look up
OUTPUT
end
```
* try to ensure backwards compatibility while we change job formats (a0909efe)
* Merge pull request #220 from cprice-puppet/feature/master/allow-trace-for-apply (f243ae82)
```
Merge pull request #220 from cprice-puppet/feature/master/allow-trace-for-apply
Add ability to pass "--trace" when calling apply
```
* Add ability to pass "--trace" when calling apply (076e494b)
* Merge pull request #219 from djm68/add_host_based_path_separator (284b2988)
```
Merge pull request #219 from djm68/add_host_based_path_separator
(maint) Add correct path separator for Windows hosts
```
* (maint) Add correct path separator for Windows hosts (4ae58ba7)
```
(maint) Add correct path separator for Windows hosts
Windows hosts require a ';' vs a ':'. Added a new entry
'pathseparator' to host/unix.rb host/windows.rb
```
* Merge pull request #218 from justinstoller/maint/master/bump_console_auth (6f606879)
```
Merge pull request #218 from justinstoller/maint/master/bump_console_auth
(maint) bump console auth version
```
* bump console auth version (f3f0fdae)
* (maint) Add append hiera/lib to RUBYLIB, Win (564dee99)
```
(maint) Add append hiera/lib to RUBYLIB, Win
Windows needs its own entry for RUBYLIB; adding hiera/lib to
get Hiera into the path.
```
* Merge pull request #217 from kbarber/ticket/master/14397-win32console_v1.3.2 (9b7519a4)
```
Merge pull request #217 from kbarber/ticket/master/14397-win32console_v1.3.2
(#14397) Use win32console v1.3.2 now, with pipe fixes
```
* Merge pull request #216 from djm68/fix_heira_windows_path (ab9bf37c)
```
Merge pull request #216 from djm68/fix_heira_windows_path
(maint) Fix puppet conf dir path extraction for Win
```
* (maint) Fix puppet conf dir path extraction for Win (6f7c44ac)
```
(maint) Fix puppet conf dir path extraction for Win
I feel dirty. Terribly ugly hack to retreive a normalized cygpath
path for $confdir. This needs to be address in the lib/windows.rb
at a later date, but this will un-stick the hiera tests on Win.
```
* Merge pull request #215 from jeffmccune/maint/master/add_modules_to_config_key_summary (159c8e14)
```
Merge pull request #215 from jeffmccune/maint/master/add_modules_to_config_key_summary
Add modules to Host Configuration Summary
```
* Add modules to Host Configuration Summary (edf329d2)
```
Add modules to Host Configuration Summary
Without this patch the set of modules installed into the puppet master
modulepath is not displayed in the Host Configuration Summary. This is
a problem because I sometimes forget to switch the branch I'm working on
and I end up running the test suite against a branch that fails the
tests I'm currently working on.
This patch simply adds the array created by --modules to the config hash
object displayed by the summary.
The new summary looks like:
- Host Configuration Summary -
Platform for win2003sat windows-2003-amd64
Platform for qa-ubuntu-lucid ubuntu-10.04-i386
Role for win2003sat agent
Role for qa-ubuntu-lucid master
Role for qa-ubuntu-lucid agent
Ruby version for win2003sat ruby 1.8.7 (2011-12-28 patchlevel 357) [i386-mingw32]
Ruby version for qa-ubuntu-lucid ruby 1.8.7 (2010-01-10 patchlevel 249) [i486-linux]
Config Key|Val: modules ["git@github.com:jeffmccune/puppetlabs-registry.git#maint/master/add_acceptance_tests", "git://github.com/puppetlabs/puppetlabs-stdlib.git#master"]
Config Key|Val: filecount 12
Config Key|Val: puppet_ver "git://github.com/puppetlabs/puppet.git#2.7.x"
Config Key|Val: consoleport 443
```
* Merge pull request #214 from justinstoller/maint/master/end_test_when_no_hosts (2881fbd3)
```
Merge pull request #214 from justinstoller/maint/master/end_test_when_no_hosts
(maint) end test when no hosts
```
* skip test when no valid hosts remain (6316af07)
* end test if no valid hosts remain (3ca8c5d6)
* Merge pull request #213 from djm68/install_hiera_all_hosts (1213880a)
```
Merge pull request #213 from djm68/install_hiera_all_hosts
(maint) Install Hiera on all hosts
```
* (maint) Install Hiera on all hosts (56df1b75)
```
(maint) Install Hiera on all hosts
Minor change to instal Hiera on all hosts vs. just the Puppet
Master host.
```
* (#14397) Use win32console v1.3.2 now, with pipe fixes (2ff30a1a)
```
(#14397) Use win32console v1.3.2 now, with pipe fixes
Previously win32console was throwing errors in the acceptances tests due to a
bug in the code which was causing any redirected output to throw an exception:
https://github.com/luislavena/win32console/issues/14
This issue has now been solved, and subsequently win32console version 1.3.2 is
now safe to use.
```
* Merge pull request #212 from justinstoller/maint/master/install_specific_version_of_gem (eb8c5a09)
```
Merge pull request #212 from justinstoller/maint/master/install_specific_version_of_gem
(maint) install gems individually so specific versions can easily be specified
```
* install gems individually so specific versions can easily be specified (8b685832)
* Merge pull request #211 from justinstoller/maint/master/dont_break_junit (bc34da81)
```
Merge pull request #211 from justinstoller/maint/master/dont_break_junit
(maint) escape the escape character, dont use regexes that dont do anything
```
* escape the escape character, dont use regexes that dont do anything (e6ebd364)
* Merge pull request #210 from jeffmccune/fix/master/hard_reset_modules (bc5a8e2f)
```
Merge pull request #210 from jeffmccune/fix/master/hard_reset_modules
Perform a hard reset to get module changes
```
* Perform a hard reset to get module changes (26dc1aae)
```
Perform a hard reset to get module changes
Without this patch the --modules command line option results in the
behavior of using git checkout -f on the puppet master systems using the
local branch.
This is a problem because I frequently re-write history in my topic
branches and the upstream branch will no longer be fast-forward-able
relative to the local branch reference.
The end result is that my changes aren't actually tested if I rewrite
history.
This patch fixes the problem by doing a hard reset of the local topic
branch against the upstream reference. This ensures the local branch is
the exact same as the upstream reference.
The end result is that my changes are tested. =)
```
* Merge branch 'master' of github.com:puppetlabs/puppet-acceptance (83a00b87)
* (maint) add acceptance test config for jmccune (dd5f9154)
```
(maint) add acceptance test config for jmccune
Jmccune and I are investigating what we need to spin up an
acceptence testing setup a-la-jenkins_pod
```
* Merge pull request #209 from jeffmccune/fix/master/modules_option (721bb668)
```
Merge pull request #209 from jeffmccune/fix/master/modules_option
Fix missing comma in --modules option
```
* Fix missing comma in --modules option (675aa6aa)
```
Fix missing comma in --modules option
I forgot a comma so the -m and --modules string were being combined
together yielding this error:
$ ./test_registry
+ ./systest.rb --config jeff_win2003.yaml --type git2 --puppet git://github.com/jeffmccune/puppet.git#2.7.x --modules git@github.com:jeffmccune/puppetlabs-registry.git#maint/refactor_type_and_provider_helper_methods/add_acceptance_tests --modules git://github.com/puppetlabs/puppetlabs-stdlib.git#master --debug --tests ./acceptance-registry/tests/resource/registry/should_create_key.rb
/Users/jeff/.rvm/rubies/ruby-1.8.7-p334/lib/ruby/1.8/optparse.rb:1450:in `complete': invalid option: --modules (OptionParser::InvalidOption)
from /Users/jeff/.rvm/rubies/ruby-1.8.7-p334/lib/ruby/1.8/optparse.rb:1448:in `catch'
from /Users/jeff/.rvm/rubies/ruby-1.8.7-p334/lib/ruby/1.8/optparse.rb:1448:in `complete'
from /Users/jeff/.rvm/rubies/ruby-1.8.7-p334/lib/ruby/1.8/optparse.rb:1261:in `parse_in_order'
from /Users/jeff/.rvm/rubies/ruby-1.8.7-p334/lib/ruby/1.8/optparse.rb:1254:in `catch'
from /Users/jeff/.rvm/rubies/ruby-1.8.7-p334/lib/ruby/1.8/optparse.rb:1254:in `parse_in_order'
from /Users/jeff/.rvm/rubies/ruby-1.8.7-p334/lib/ruby/1.8/optparse.rb:1248:in `order!'
from /Users/jeff/.rvm/rubies/ruby-1.8.7-p334/lib/ruby/1.8/optparse.rb:1339:in `permute!'
from /Users/jeff/.rvm/rubies/ruby-1.8.7-p334/lib/ruby/1.8/optparse.rb:1360:in `parse!'
from ./lib/options_parsing.rb:202:in `parse_args'
from ./systest.rb:25
This patch adds in the missing comma and fixes the error.
```
* Merge pull request #206 from jeffmccune/feature/master/registry_acceptance (d20d52b8)
```
Merge pull request #206 from jeffmccune/feature/master/registry_acceptance
Add --modules command line option to test modules
```
* Merge pull request #208 from djm68/add_hiera_lib_dir (dda48e26)
```
Merge pull request #208 from djm68/add_hiera_lib_dir
(maint) Add Hiera lib dir for Linux hosts
```
* (maint) Add Hiera lib dir for Linux hosts (298dfc85)
```
(maint) Add Hiera lib dir for Linux hosts
Add Hiera lib dir: /opt/puppet-git-repos/hiera/lib to $RUBYLIB.
This is very specific to how we install FOSS Puppet via the test
harness, and will not work if Hiera is installed in a different path.
```
* Merge pull request #207 from justinstoller/maint/master/move_required_env_before_install (39cace5d)
```
Merge pull request #207 from justinstoller/maint/master/move_required_env_before_install
(maint) move EnvSetup to before we actually try to install
```
* Add --modules command line option to test modules (e37a7829)
```
Add --modules command line option to test modules
Without this patch the git acceptance type has no way to install
arbitrary Puppet modules. We need this functionality to properly test
the Registry puppet module.
This patch fixes the problem by providing a --modules command line
option. This option takes a list of URI's to Puppet module
repositories. Each listed URI will be cloned into /opt/puppet-git-repos
on each master system using the 04_InstallModules setup step when using
--type git.
Individual test cases may then configure a modulepath directory that
symlinks in the modules we're testing are "installed" on the puppet
master systems.
```
* move EnvSetup to before we actually try to install (677cff33)
* Merge pull request #205 from djm68/add_hiera_install_option (cb22cb78)
```
Merge pull request #205 from djm68/add_hiera_install_option
(maint) Add Hiera install option
```
* (maint) Add Hiera install option (a13eba8b)
```
(maint) Add Hiera install option
Add -h and --hiera + URI to install Hiera. Creates a default
hiera.yaml file as well.
TODO: add Windows install option as well.
```
* (maint) Debian will require different setup (213e56ef)
```
(maint) Debian will require different setup
Debian needs a seperate config step vs. ubuntu.
```
* Merge pull request #204 from djm68/setup_pkg_repo (35396dfc)
```
Merge pull request #204 from djm68/setup_pkg_repo
(maint) Add step for dynamic pkg repo cfg
```
* (maint) Add step for dynamic pkg repo cfg (ded9366a)
```
(maint) Add step for dynamic pkg repo cfg
Our package repos change occassionally, causing grief for our
VMs that are snap shotted with stale configs.
```
* Merge pull request #187 from mkincaid/windows_bindir_fix (a3c5e890)
```
Merge pull request #187 from mkincaid/windows_bindir_fix
Use cygpath to get the Puppet Enterprise binary directory instead of har...
```
* Merge pull request #203 from haus/bump_console_auth_version (875e3db3)
```
Merge pull request #203 from haus/bump_console_auth_version
Bump expected console-auth version to 1.0.10
```
* Bump expected console-auth version to 1.0.10 (5ad72308)
* Merge pull request #202 from justinstoller/maint/master/missing_colon (ea132fd4)
```
Merge pull request #202 from justinstoller/maint/master/missing_colon
(maint) fix missing colon
```
* fix missing colon (76d314ca)
* Merge pull request #201 from justinstoller/maint/master/round_robin_hosts (6900f5e5)
```
Merge pull request #201 from justinstoller/maint/master/round_robin_hosts
(maint) adds multi-platform test networks
```
* adds multi-platform test networks (63058867)
* Merge pull request #200 from justinstoller/maint/master/add_win32console_gem (ccfccfd7)
```
Merge pull request #200 from justinstoller/maint/master/add_win32console_gem
(maint) add the win32console gem to windows agents during testing
```
* add the win32console gem to windows agents during testing (bbc8a87b)
* Merge pull request #199 from justinstoller/maint/master/consolidate_agent_tests (ba3040c1)
```
Merge pull request #199 from justinstoller/maint/master/consolidate_agent_tests
(maint) consolidate our agent tests
```
* consolidate our agent tests (d7294b5b)
* Merge pull request #198 from justinstoller/maint/master/rename_precise_64 (f1b37d2c)
```
Merge pull request #198 from justinstoller/maint/master/rename_precise_64
(maint) use precise-64-2 instead of precise-64-1
```
* use precise-64-2 instead of precise-64-1 (af2825ce)
* Merge pull request #197 from justinstoller/maint/master/bump_console_auth_ver (24079aca)
```
Merge pull request #197 from justinstoller/maint/master/bump_console_auth_ver
(maint) bump console auth version
```
* bump console auth version (a14e4588)
* Merge pull request #196 from justinstoller/maint/master/add_sles11.2_support (bba77e74)
```
Merge pull request #196 from justinstoller/maint/master/add_sles11.2_support
(maint) support latest sles service pack
```
* support latest sles service pack (59e43de3)
* Merge pull request #195 from justinstoller/maint/master/add_precise_config (5b0f56cc)
```
Merge pull request #195 from justinstoller/maint/master/add_precise_config
(maint) full precise support in testing
```
* full precise support in testing (11084db3)
* Merge pull request #194 from justinstoller/maint/master/add_precise_config (b8c34a49)
```
Merge pull request #194 from justinstoller/maint/master/add_precise_config
(maint) add precise config for mono install tests
```
* add precise config for mono install tests (7c0dabae)
* Merge pull request #193 from joshcooper/rename-64-32 (34720321)
```
Merge pull request #193 from joshcooper/rename-64-32
Rename 64 to 32
```
* (Maint) Rename 64 to 32 (6e55d451)
```
(Maint) Rename 64 to 32
Update the hostname
```
* (Maint) Rename from 64 to 32 (97ee9cba)
```
(Maint) Rename from 64 to 32
Will the real windows 2003R2 VM stand up.
```
* Merge pull request #188 from joshcooper/master (d5faaadc)
```
Merge pull request #188 from joshcooper/master
Install gem dependencies
```
* Merge pull request #192 from justinstoller/maint/master/ensure_vm_reversion_before_pre_script (69040c88)
```
Merge pull request #192 from justinstoller/maint/master/ensure_vm_reversion_before_pre_script
(maint) ensure the setup/early phase has passed so that vms have been reverted
```
* ensure the setup/early phase has passed so that vms have been reverted (431b8423)
* Merge pull request #191 from justinstoller/maint/master/add_config_for_old_agents (ea734d57)
```
Merge pull request #191 from justinstoller/maint/master/add_config_for_old_agents
(maint) add simple config for testing against agents in older versions
```
* add simple config for testing against agents in older versions (a800b1b1)
* Merge pull request #190 from justinstoller/maint/master/allow_consoleport_set_from_env_vars (1401b752)
```
Merge pull request #190 from justinstoller/maint/master/allow_consoleport_set_from_env_vars
(maint) allow console port to be set thru env vars
```
* make the env var override the config value (ead732c9)
* allow console port to be set thru env vars (bdf5f41b)
* Merge pull request #189 from justinstoller/maint/master/add_configs (d7d70182)
```
Merge pull request #189 from justinstoller/maint/master/add_configs
(maint) update the configs
```
* add new configs to allow more split master/dash setups (51c23907)
```
add new configs to allow more split master/dash setups
copy the windows cfg to a standard PE spot
```
* (Maint) Add step for installing necessary gems (c1382235)
```
(Maint) Add step for installing necessary gems
The FOSS version of Puppet on Windows requires several gems to run. Up
until now, the necessary gems were part of the 'git' snapshot. However,
as we add more features, additional gems will be required. Rather than
update the snapshot each time, this commit adds a setup step that
installs/updates the gems we require. It is written fairly generically
so that platform-specific gems and behavior can be added.
Note this step only occurs in 'git' but not 'pe' because in the latter
case, the gems should be part of the installer itself.
```
* Use cygpath to get the Puppet Enterprise binary directory instead of hard-coding. (03361413)
```
Use cygpath to get the Puppet Enterprise binary directory instead of hard-coding.
This fixes 64-bit Windows, where it is "Program Files (x86)".
```
* our foss snapshots are essentially on foss only machines (671a7220)
* give the test harness a valid gem structure (939e33ad)
```
give the test harness a valid gem structure
ignore gem paraphanelia in git
```
* rename ci -> config, and centralize configs and their examples in it (ab28bb5d)
* combine configs, use as many common ones as possible (39603206)
* remove unused dist dir (21fc70b1)
* someone left .sh tests around (23cda0c6)
* remove vmutil -- replaced by fission and vagrant (83957b08)
### pe2.5.0 - 27 Mar, 2012 (232e21a5)
* Merge pull request #186 from justinstoller/maint/master/generated_upgrade_a (232e21a5)
```
Merge pull request #186 from justinstoller/maint/master/generated_upgrade_a
(maint) we are generating the upgrade answers now
```
* we are generating the upgrade answers now, forgot in haste and lack of sleep (70ad1845)
* Merge pull request #185 from justinstoller/maint/master/update_upgrade_a (ddc76f7e)
```
Merge pull request #185 from justinstoller/maint/master/update_upgrade_a
(maint) we are finally enforcing the eight chars in upgrades as well...
```
* we are finally enforcing the eight chars in upgrades as well... (a377e5f0)
* Merge pull request #184 from joshcooper/maint/master/fix-cert-race-condition (c321962c)
```
Merge pull request #184 from joshcooper/maint/master/fix-cert-race-condition
(Maint) Ensure agent certs are signed before proceeding
```
* Merge pull request #183 from justinstoller/maint/master/bump_facter_dash_and_auth (aee24412)
```
Merge pull request #183 from justinstoller/maint/master/bump_facter_dash_and_auth
(maint) bump dashboard, facter and add console_auth to version checks
```
* (Maint) Ensure agent certs are signed before proceeding (ca678d7f)
```
(Maint) Ensure agent certs are signed before proceeding
Previously, there was a race condition whereby "slow agents" may not
submit their CSR before `03_PE-SignCerts` tries to sign them. As a
result, we might not sign anything (since exit code 24 is acceptable for
situations where the master is also an agent and its cert is always
autosigned). We would then get a failure later on in `05_Agent_test`
when validating that the agents could connect to the master.
This commit changes the test to validate that all of the agents'
certificates have been issued before proceeding. Note we only do this
for hosts that are only agents, because the master's cert is autosigned.
```
* bump dashboard, facter and add console_auth to version checks (e586fce1)
* Merge pull request #182 from joshcooper/maint/master/stop-pe-agent-while-running (297d246f)
```
Merge pull request #182 from joshcooper/maint/master/stop-pe-agent-while-running
(Maint) Don't run puppet agent in the background during test run
```
* Merge pull request #181 from justinstoller/maint/master/skip_dhcp_on_windows (8b1ebc54)
```
Merge pull request #181 from justinstoller/maint/master/skip_dhcp_on_windows
(maint) dont renew dhcp on windows
```
* dont renew dhcp on windows (676e5887)
* (Maint) Don't run puppet agent in the background during test run (406ceb4e)
```
(Maint) Don't run puppet agent in the background during test run
Previously, the `setup/pe/01_PE-InstallPuppet.rb` and
`02_PE-InstallWindows.rb` tests would install the PE agent, and cause
the agent to run in the background every `runinterval` seconds.
Meanwhile, `setup/pe/05_Agent_test.rb` would try to run `puppet agent
--test` to verify that the agent could connect to the master, retrieve
its SSL certificate, etc.
This causes a second puppet process to start up and contend for the
puppet lock file. Most of the time the first puppet process releases
the lock file and sleeps for 30 minutes, before the 05_Agent_test runs.
But sometimes the the first process still has the file locked, e.g.
because it's pluginsync'ing from the master. If so, 05_Agent_test fails
with `notice: Run of Puppet configuration client already in progress;
skipping`
Since none of the PE acceptance tests rely on having a puppet agent
running in the background, this commit stops all agents before
proceeding. The logic for how to stop the agent was copied from
`setup/pe_co/05_Agent_test.rb`.
```
* Merge pull request #180 from joshcooper/maint/master/fix-ntp (76540ff6)
```
Merge pull request #180 from joshcooper/maint/master/fix-ntp
(Maint) Fix intermittent ssl errors
```
* (Maint) Fix intermittent ssl errors (42a6eb62)
```
(Maint) Fix intermittent ssl errors
Previously, when running windows acceptance tests, the ntp step was
sometimes not updating the clock. As a result, the SSL sanity test would
fail due to mismatched clocks.
It turns out the `/update` flag does not necessarily update the client's
time. It just applies the configuration changes, e.g. ntp server IP
address, so that the Windows service can see them. An explicit /resync
is required to force an immediate ntp update. Also the resync occurs
sychronously, because we're not using the `/nowait` switch.
```
* Merge pull request #179 from joshcooper/maint/master/pe-windows-env (11a89104)
```
Merge pull request #179 from joshcooper/maint/master/pe-windows-env
(Maint): Undo prior changes puppet and facter bin dir
```
* (Maint): Undo prior changes puppet and facter bin dir (508649f2)
```
(Maint): Undo prior changes puppet and facter bin dir
We now pass the puppetbindir in the env command so that it is not
necessary to specify the fully qualified path to puppet.bat and
facter.bat
```
* Merge pull request #178 from justinstoller/maint/master/pe_windows (c9ee0e73)
```
Merge pull request #178 from justinstoller/maint/master/pe_windows
(maint) Allow PE Windows Agents to be installed through the harness
```
* Merge pull request #177 from pcarlisle/fix_silent (885567e3)
```
Merge pull request #177 from pcarlisle/fix_silent
Put back silent option in lib/command
```
* change the way puppet and facter are called to allow for '.bat' ext in (a30c1bbe)
```
change the way puppet and facter are called to allow for '.bat' ext in
PE Windows
```
* skip innappropriate checks for windows (42ea2fe5)
* wait for slow agents to sign in (windows) (b79de8b3)
* strip different line endings from version strings (57e5cff2)
* Put back silent option in lib/command (55136df2)
```
Put back silent option in lib/command
I misinterpreted the meaning of this option since it does not appear elsewhere
in the framework. It is used by some tests to intentionally ignore command
failures.
```
* add a dashboard role to the windows cfg for pe testing (ce3f4f99)
* (Maint) Create PE test to install Windows msi (b0fca167)
```
(Maint) Create PE test to install Windows msi
TBD
```
* Merge pull request #175 from pcarlisle/report_output (a01e8b8f)
```
Merge pull request #175 from pcarlisle/report_output
Include failed command output in exceptions
```
* Include failed command output in exceptions (6480074f)
```
Include failed command output in exceptions
If a command doesn't exit with an expected exit code, include the last ten
lines of its output in the exception formatted for display at the end of the
test run.
This also removes the useless "false is not true" errors.
```
* Merge branch 'master' of github.com:puppetlabs/puppet-acceptance (1e92e158)
* (maint) Change host name for win2003 box (74df810a)
```
(maint) Change host name for win2003 box
Win2003 box is now: win2003r2-64-1
```
* Merge pull request #174 from pcarlisle/remove_silent (e89d747b)
```
Merge pull request #174 from pcarlisle/remove_silent
Remove unused silent switch
```
* Remove unused silent switch (4f8199ed)
```
Remove unused silent switch
Command#exec was not checking exit codes if the silent option was turned on.
It turned out that this option isn't recognized anyway, so I'm removing the
code.
```
* (maint) Mods for EC2 answer files (5e0b398d)
```
(maint) Mods for EC2 answer files
Now use port 443 as default for console
change quoting on console answers
```
* Merge pull request #172 from djm68/update_answers_ec2 (ca8414df)
```
Merge pull request #172 from djm68/update_answers_ec2
(maint) Update EC2 answers
```
* (maint) Update EC2 answers (4c531e75)
```
(maint) Update EC2 answers
EC2 answer generation has not been updated since PE2.0 -- many new
configuration options need to be updated.
```
* Merge pull request #171 from djm68/change_auth_user_to_auth_email (5c52b3bd)
```
Merge pull request #171 from djm68/change_auth_user_to_auth_email
(maint) modify answer file generation for auth_email
```
* (maint) modify answer file generation for auth_email (9d5f804f)
```
(maint) modify answer file generation for auth_email
change q_puppet_enterpriseconsole_auth_user to
q_puppet_enterpriseconsole_auth_user_email
```
* Merge pull request #169 from justinstoller/maint/master/update_upgrade_answers (d9b8e8af)
```
Merge pull request #169 from justinstoller/maint/master/update_upgrade_answers
(maint) missed a question for console
```
* missed a question for console (333b6c1c)
* Merge pull request #168 from justinstoller/maint/master/update_upgrade_answers (f82cec0d)
```
Merge pull request #168 from justinstoller/maint/master/update_upgrade_answers
(maint) first pass at better upgrade answers
```
* first pass at better upgrade answers (0fabc51b)
* Merge pull request #167 from justinstoller/maint/master/no_more_module_tool (c34b5c1e)
```
Merge pull request #167 from justinstoller/maint/master/no_more_module_tool
(maint) remove version check for module tool
```
* we no longer have a separate binary for the module tool, removing version check for it (c2a45efe)
* Merge pull request #163 from joshcooper/maint/master/remove-windows-cfg (26a90a14)
```
Merge pull request #163 from joshcooper/maint/master/remove-windows-cfg
(Maint): Remove orphaned windows configuration
```
* Merge pull request #166 from justinstoller/maint/master/use_env_for_dmv (34c1c21c)
```
Merge pull request #166 from justinstoller/maint/master/use_env_for_dmv
(maint) use env vars for dmv options
```
* use env vars for dmv options (e99e1e22)
* Merge pull request #164 from justinstoller/maint/master/use_actual_email_for_answer (0bd564cc)
```
Merge pull request #164 from justinstoller/maint/master/use_actual_email_for_answer
(maint) use a valid email address instead of "console"
```
* use a valid email address instead of "console" (c5a24f0b)
* (Maint): Remove orphaned windows configuration (43dc2a70)
```
(Maint): Remove orphaned windows configuration
The windows configuration was renamed to have a `ci-` prefix, but the
old version was left behind and is no longer used. Deleting it so we
don't confuse ourselves.
```
* Merge pull request #162 from djm68/add_console_auth_db_name_answer (91740bfe)
```
Merge pull request #162 from djm68/add_console_auth_db_name_answer
(maint) adding answer for _auth_database_name
```
* (maint) adding answer for _auth_database_name (be66debc)
```
(maint) adding answer for _auth_database_name
q_puppet_enterpriseconsole_auth_database_name is a new entry for
the PE installer.
```
* Merge pull request #161 from justinstoller/bump_puppet_ver_for_25 (bc02c136)
```
Merge pull request #161 from justinstoller/bump_puppet_ver_for_25
(maint) bump puppet version to 2.7.12
```
* well *probably* be using 2.7.12 for the next PE (c63a3269)
* Merge pull request #160 from pvande/assertions/assert_output (a10de183)
```
Merge pull request #160 from pvande/assertions/assert_output
Factoring out custom assertions, and adding assert_output.
```
* Factoring out custom assertions, and adding assert_output. (5f4b4c39)
* Merge pull request #159 from mykhyggz/master (cf36e501)
```
Merge pull request #159 from mykhyggz/master
bump dashbord to 1.2.6
```
* (maint) bump Dashboard version to 1.2.6 from 1.2.4 (eab51805)
* Merge pull request #158 from mykhyggz/master (08bcf8f2)
```
Merge pull request #158 from mykhyggz/master
(maint) bump facter version to 1.6.6 from 1.6.4
```
* (maint) Bump facter verstion to 1.6.6 from 1.6.4 (ff7c62cd)
* Merge pull request #157 from justinstoller/dont_duplicate_db_users (ffaacc9d)
```
Merge pull request #157 from justinstoller/dont_duplicate_db_users
(maint) slight tweaks to new answers
```
* slight tweaks to new answers (18240dc2)
* Merge pull request #156 from djm68/add_dmv_answers (36080cb0)
```
Merge pull request #156 from djm68/add_dmv_answers
(maint) add new answers for DMV
```
* (maint) add new answers for DMV (3da76f51)
```
(maint) add new answers for DMV
DMV requires new answers for installation. First pass at adding
this to answer file generation.
```
* Merge pull request #155 from justinstoller/wrong_line_endings (12ac0d1e)
```
Merge pull request #155 from justinstoller/wrong_line_endings
(maint) fix windows cfg
```
* I believe the line endings for the windows cfg were incorrect, they now load properly with YAML.load_file (0e9364ee)
* Merge pull request #154 from justinstoller/maint_same_win_naming (f215b0ff)
```
Merge pull request #154 from justinstoller/maint_same_win_naming
(maint) Same windows naming
```
* Previously the windows config for FOSS was 'windows2003-64a.cfg' every (d432e19e)
```
Previously the windows config for FOSS was 'windows2003-64a.cfg' every
other config is 'ci-...'. This gives the windows config the same naming
as other configs.
Signed-off-by: Justin Stoller
```
* Merge branch 'master' of github.com:puppetlabs/puppet-acceptance (848aaef3)
* (maint) add cfg file for win2003 acceptance testing (d15d3ca2)
* Merge pull request #153 from justinstoller/maint_fix_xml_output (7dd504e7)
```
Merge pull request #153 from justinstoller/maint_fix_xml_output
(maint) fix xml output
```
* s/skipped_test/skipped_tests/ (3dd6b685)
* s/errored_test/errored_tests/ (4750ef65)
* Merge pull request #150 from justinstoller/feature/master/12672-add_confine_method_to_dsl (74b05302)
```
Merge pull request #150 from justinstoller/feature/master/12672-add_confine_method_to_dsl
(#12672) add confine method to dsl
```
* Merge pull request #149 from justinstoller/bug/master/12613-pending_test_method (67d23871)
```
Merge pull request #149 from justinstoller/bug/master/12613-pending_test_method
(#12613) Add Pending Test Method
```
* Merge pull request #147 from justinstoller/feature/master/12673-add_result.output (3be93a6e)
```
Merge pull request #147 from justinstoller/feature/master/12673-add_result.output
(#12673) Add a Result#output member that combines stdout and stderr
```
* add `confine` method to dsl (ba4e19ce)
* show elapsed and average times on summary (3a7af04a)
* cache test status counts, removed unneeded error checking, factor out useful error checking (1c83b26b)
* add pending tests to summaries (52856520)
```
add pending tests to summaries
always use the same methods to retrieve state counts
```
* add pending_test to TestCase (bfc3a651)
* whitespace clean up and dragon notes (acb6ed4b)
* move puppet commands into separate file (bfe1c431)
```
move puppet commands into separate file
additional whitespace
```
* move methods for clarity (4cfc56aa)
```
move methods for clarity
with_standard_output_to_logs taks a block
```
* whitespace clean up (c6af544b)
* clean up syntax in host for Result#output (7f09e4b1)
* rough pass on adding Result#output (f7275248)
### pe2.0.3 - 21 Feb, 2012 (492ff756)
* Merge pull request #151 from justinstoller/additional_release_version_check (492ff756)
```
Merge pull request #151 from justinstoller/additional_release_version_check
(maint) add a check for the pe-puppet-enterprise-release
```
* add a check for the pe-puppet-enterprise-release (eed56e5f)
* Merge pull request #148 from justinstoller/revert/master/quarantine-tempfiles (3b758e93)
```
Merge pull request #148 from justinstoller/revert/master/quarantine-tempfiles
(maint) revert temp dir changes
```
* revert temp dir changes, they depend on mkdirs which will not be implemented now (f069fbd4)
* Merge pull request #143 from justinstoller/really_nice_etc_hosts (f335b81a)
```
Merge pull request #143 from justinstoller/really_nice_etc_hosts
Previously the add master to /etc/hosts step would move all lines
```
* Merge pull request #139 from cprice-puppet/quarantine-tempfiles (02cb1996)
```
Merge pull request #139 from cprice-puppet/quarantine-tempfiles
Add "puppet-acceptance" to base tmp dir path
```
* Merge pull request #146 from justinstoller/bug/master/12665-dont_hard_code_paths (e4cf3647)
```
Merge pull request #146 from justinstoller/bug/master/12665-dont_hard_code_paths
(#12665) allow dist dir and version file to be overridden by env vars
```
* allow dist dir and version file to be overridden by env vars (f78adf6b)
* Merge pull request #145 from joshcooper/maint/master/vardir-not-getting-deleted (b478e4c1)
```
Merge pull request #145 from joshcooper/maint/master/vardir-not-getting-deleted
Maint: Ensure cached catalogs get deleted before starting agent/master test cases
```
* Maint: Use short, unquoted paths on Windows (3382f9c6)
```
Maint: Use short, unquoted paths on Windows
Previously, we quoted the puppetpath and puppetvardir host properties
on Windows because they often contain spaces, e.g. C:\Documents and
Settings. However, when these properties are used in bash commands, it
can result in expected consequences. For example,
if [ -d "#{agent['puppetpath']}" ]
checks if a directory named \"C:\Documents and Settings\...\" exists,
where the quotes are interpreted as part of the path. This was causing
the `with_master_running_on` method to fail to delete Windows agents
vardir contents.
This commit changes the puppetpath and puppetvardir to always return
short versions of Windows paths with forward slashes, e.g.
C:/DOCUME~1/ALLUSE~1/APPLIC~1/PuppetLabs/puppet/var/client_data
This eliminates the need for these paths to be quoted, and makes it
easier for bash commands to do what you expect in a cross-platform
way.
```
* Maint: Agent vardir sometimes not deleted between test cases (12f45cf2)
```
Maint: Agent vardir sometimes not deleted between test cases
The `with_master_running_on` method was recently updated to delete the
contents of each agents' vardir so that cached catalogs from previous
runs don't pollute subsequent runs, and cause the agent to return 0
exit code, when it shouldn't, for example.
However, commit `ba57ee5c` refactored this code and caused a
regression, as it was only deleting the agent's vardir if the
directory existed on the host driving the tests, not the system under
test. It also removed the `-f` flag.
This commit reinstates the `-f` flag and moves the `File.exists?`
check so that it is executed on the agent. This is necessary because
calling `for f in /foo/*` returns the literal string '/foo/*' if the
directory foo does not exist.
```
* Merge pull request #144 from justinstoller/more_robust_agents (aab8cb10)
```
Merge pull request #144 from justinstoller/more_robust_agents
Allow multiple exitcodes for initial puppet agent run
```
* Merge pull request #142 from justinstoller/pre_and_help (695b87e1)
```
Merge pull request #142 from justinstoller/pre_and_help
(#12565 & #12566) `--pre SCRIPT` and help usage
```
* Previously the add master to /etc/hosts step would move all lines (a252d761)
```
Previously the add master to /etc/hosts step would move all lines
except for those that contained the hostname of the master. If
someone had an /etc/hosts file like this:
127.0.0.1 localhost localhost.localdomain ubuntu-alpha
...snip...
It would filter out the localhost line and cause odd errors later
on. This changes the early step to filter out only the lines that
we add (#{ip} #{hostname})
Signed-off-by: Justin Stoller
```
* Merge pull request #141 from cprice-puppet/default-args-for-with-master (0d86568b)
```
Merge pull request #141 from cprice-puppet/default-args-for-with-master
remove autosign default from with_master_running_on
```
* Allow multiple exitcodes for initial puppet agent run (10cb4650)
```
Allow multiple exitcodes for initial puppet agent run
Prior to this (a change I made to not effectively bounce
the agent service) only accepted an exit code of 0.
This worked for my testing because of conditions that caused
the agent to check in once before the test was actually ran.
The issue is when (and this is the typical case in CI) the test
is the first agent run to check in there will usually be
successful changes applied and puppet will exit with 2.
This adds 2 as an acceptable exit code.
Signed-off-by: Justin Stoller
```
* add --pre option (79d9d399)
* print usage banner when no args are given (14479924)
* remove autosign default (56ef289b)
```
remove autosign default
This removes "--autosign" as a default from with_master_running_on.
Also reverts commit 2e7f69a6e75c76ab44cdd49794dbac4fa02d960c :
Revert "alter 03_ValidateSignCert to use new with_master defaults"
```
* Merge pull request #140 from justinstoller/tweak_sign_cert_for_foss (5c1e1719)
```
Merge pull request #140 from justinstoller/tweak_sign_cert_for_foss
(maint) alter 03_ValidateSignCert to use new with_master defaults
```
* alter 03_ValidateSignCert to use new with_master defaults (2e7f69a6)
* Add "puppet-acceptance" to base tmp dir path (13098599)
```
Add "puppet-acceptance" to base tmp dir path
This commit just changes the default "root" temp dir for acceptance
tests from "/tmp" to "/tmp/puppet-acceptance". The goal here is to
quarantine acceptance test temp files into one easily-identifiable
directory that can be cleaned up.
This would only affect tests that were calling the *::File.tmpdir
methods, and should have no effect on the success or failure of any
tests.
```
* Merge pull request #138 from cprice-puppet/default-args-for-with-master (8bb6c4da)
```
Merge pull request #138 from cprice-puppet/default-args-for-with-master
Confirmed on a PE install run, worked fine, merging
```
* This commit includes the following: (ba57ee5c)
```
This commit includes the following:
* New defaults for with_master_running_on:
* will automatically add "--daemonize" if you haven't specified either
that or --no-daemonize
* will automatically add "--logdest=/log/puppetmaster.log" if you don't
specify a logdest; sending acceptance framework log messages to syslog
didn't seem very useful
* will automatically add "--dns_alt_names" if you don't specify it
* will automatically add "--autosign" if you don't specify it
* no longer deletes log dir between executions of master
* Log a readable version of the backtrace if a test calls "flunk"
```
* Merge branch 'maint/master/tidy_up' (726475cc)
```
Merge branch 'maint/master/tidy_up'
* maint/master/tidy_up:
(maint) Ignore /acceptance-tests in version control
(maint) Add Jeff's local vm configuration "example"
Reviewed By: Pinocchio
```
* (maint) Ignore /acceptance-tests in version control (8ce98afc)
```
(maint) Ignore /acceptance-tests in version control
This patch does not touch the code.
Without this patch my prompt still always says dirty. The documentation
[1] mentions to link the Puppet acceptance tests into this working
directory so we may as well ignore the link. This patch makes my prompt
say "clean"
[1] https://sites.google.com/a/puppetlabs.com/main/home/technical/system-acceptance-testing
```
* (maint) Add Jeff's local vm configuration "example" (79f62e39)
```
(maint) Add Jeff's local vm configuration "example"
This patch does not touch the code.
Without this patch my prompt always says dirty. This annoys me. This
patch fixes the problem by adding the config I use straight into the
repository. No harm no foul I say.
```
* Merge branch 'pe2.0.x' (47c7dc79)
* Merge pull request #137 from djm68/sane_cmd_line_defaults_happier_devs (e31811ac)
```
Merge pull request #137 from djm68/sane_cmd_line_defaults_happier_devs
(maint) Set some sane cmd line defaults
```
* (maint) Set some sane cmd line defaults (6627412b)
```
(maint) Set some sane cmd line defaults
Watching some devs run the harness was a little painful: too
many args being passed to stop running step that are geared
to provisoning CI VMs. Setting this opts to not run unless
specified.
```
* Merge pull request #136 from jeffmccune/maint/master/windows_setup_test_fixes (8b9ff34d)
```
Merge pull request #136 from jeffmccune/maint/master/windows_setup_test_fixes
(maint) Fix Test Setup failure on clean windows vm
```
* (maint) Fix Test Setup failure on clean windows vm (3270f64d)
```
(maint) Fix Test Setup failure on clean windows vm
Without this patch applied the acceptance test harness fails to setup
the win2003sat VM I've constructed because it cannot create the
/opt/puppet-git-repos directory. It cannot do so because /opt does not
exist on a default cygwin installation.
This patch fixes the problem by using `mkdir -p` instead of `mkdir`
```
* Merge branch 'pe2.0.x' (240949b8)
* Merge branch 'pe2.0.x' of github.com:puppetlabs/puppet-acceptance into pe2.0.x (7586ee20)
* Merge pull request #130 from justinstoller/dont_kill_the_agents (621aec31)
```
Merge pull request #130 from justinstoller/dont_kill_the_agents
(maint) killing the agents could disguise issues with PE
```
* Merge pull request #134 from justinstoller/stop_repeating_version_info (7b006f12)
```
Merge pull request #134 from justinstoller/stop_repeating_version_info
(12456) Stop repeating version info
```
* use TestConfig.is_pe? instead of TestConfig.puppet_enterprise_version (3fd0519a)
* move the check for whether or not this is PE or FOSS to its own method (12f123be)
```
move the check for whether or not this is PE or FOSS to its own method
only load the version file once
```
* Merge pull request #126 from joshcooper/ticket/master/11944-separate-host-logic (f9cb52b2)
```
Merge pull request #126 from joshcooper/ticket/master/11944-separate-host-logic
(#11944) Separate native command logic from acceptance tests
```
* (#11944) Add default group (64e33301)
```
(#11944) Add default group
This commit just adds a default group for test cases performed on
Windows hosts, e.g. when setting a file's group.
```
* killing the agents could disguise issues with PE not being in a sane state after install (a6ca3580)
* (#11944) Add Unix and Windows exec commands (461df99e)
```
(#11944) Add Unix and Windows exec commands
This commit defines a set of methods for executing common commands on
Unix and Windows, e.g. touch, echo. This way all of logic for
performing exec commands is in one place, rather than scattered
throughout each exec test case.
On Windows, echo is a shell built-in, but there isn't a shell exec
provider, so it has to be wrapped within a cmd.exe shell. Touch is not
a built-in, but it can be faked using echo. Also, we have to use
backslashes when referencing the absolute path to cmd.exe and trying
to invoke it via ssh/cygwin. I'm not entirely sure why, but I can
reproduce the error when running a bash shell on the local Windows
box. The fix is to use backslashes for the absolute path.
This commit assumes the windows directory is in c:/windows, which
isn't ideal. It could be made more robust by querying the remote
system for its ENV['windir'] and ENV['COMSPEC'], or allowing them to
be configured, but that's more than I want to do right now.
```
* (#11944) Add Unix and Windows file commands (54b807f9)
```
(#11944) Add Unix and Windows file commands
This commit defines a set of native commands for validating file
resources on Unix and Windows. This way all of logic for performing
file commands is in one place, rather than scattered throughout each
file test case.
Note the Windows implementation uses cygpath to translate from a posix
path, e.g. /tmp, to a "mixed" windows path, e.g. C:/cygwin/tmp, so
that the latter can be passed to puppet and still be a valid fully
qualified path on Windows.
```
* (#11944) Print the time taken to run each test (65e63076)
```
(#11944) Print the time taken to run each test
This commit adds the time taken to run each test case.
```
* (#11944) Refactor default user logic (132d1f99)
```
(#11944) Refactor default user logic
Previously, the logic for determining the default user for a Unix host
was in the host class when making an ssh connection.
This commit just makes the default explicit for Unix hosts. The
Windows hosts already specified the default user (Administrator).
```
* (#11944) Create a CommandFactory module (359e3219)
```
(#11944) Create a CommandFactory module
The CommandFactory module is responsible for creating an instance of a
Command for a specific Host, executing it, and yielding the results to
the block, if one was supplied.
```
* (#11944) Refactor command execution logic (2b91045c)
```
(#11944) Refactor command execution logic
Previously, the `TestCase#on` method knew about the inner workings of
the Command class, e.g. that 0 was the default successful exit
code. However, that behavior would only occur if you called the `on`
method, but not if you called the `Command#exec` method directly.
This commit moves the logic into the Command class to ensure the logic
is always applied regardless of how the command is executed.
```
* (#11944) Add Unix user and group commands (3ae407c0)
```
(#11944) Add Unix user and group commands
This commit defines a set of native commands for validating user and
group resources on Unix. This way all of the logic for performing user
and group commands on Unix is in one place, rather than scattered
throughout each user and group test case.
```
* (#11944) Add Windows user and group commands (02b55b86)
```
(#11944) Add Windows user and group commands
This commit defines a set of native commands for validating user and
group resources on Windows. This way all of the logic for performing
user and group commands on Windows is in one place, rather than
scattered throughout each user and group test case.
```
* (#11944) Refactor Unix and Windows hosts into separate namespaces (d974a149)
```
(#11944) Refactor Unix and Windows hosts into separate namespaces
This commit just moves the Unix and Windows Host classes into their
own namespaces. This is being in done in preparation for future
commits.
```
* (#11944) Refactor Host classes out of the TestCase namespace (8901fb89)
```
(#11944) Refactor Host classes out of the TestCase namespace
Previously, the Host, WindowsHost, and UnixHost classes were contained
in the TestCase namespace. This commit moves them out to the top-level
as the lifetime of a Host spans multiple TestCases.
```
### pe2.0.2 - 3 Feb, 2012 (e36f0d22)
* Merge branch 'pe2.0.x' (e36f0d22)
* Merge pull request #133 from justinstoller/ci_upgrade_12 (fef0b7fa)
```
Merge pull request #133 from justinstoller/ci_upgrade_12
(maint) add gunzip for solaris
```
* Merge branch 'pe2.0.x' of github.com:puppetlabs/puppet-acceptance into ci_upgrade_12 (6b6befac)
* gunzip for solaris (cb4dca12)
* Merge pull request #131 from justinstoller/ci_upgrade_12 (e418c076)
```
Merge pull request #131 from justinstoller/ci_upgrade_12
(maint) re-sign dashboard properly after upgrade
```
* update upgrader answers (fbff0efe)
* resign dashboard properly after upgrade (04cc9887)
* Merge branch 'pe2.0.x' (a2b32d29)
* Merge pull request #128 from justinstoller/sledgehammer (d5f13ebd)
```
Merge pull request #128 from justinstoller/sledgehammer
This comments out all but the UpgradePuppet step in the pe_upgrade dir
```
* This comments out all but the UpgradePuppet step in the pe_upgrade dir (2adbf86e)
```
This comments out all but the UpgradePuppet step in the pe_upgrade dir
This is totally a sledge hammer kind of fix, but the issue is:
CI will be run with snapshots that are ensured to have known good
setups, skipping based on the --vmrun option would be the best for CI
Locally many will be able to use this as is if they also have known
good snapshots.
I also try to automate as much as I can locally testing PE pre-2.0.
The changes that I'd like to introduce to automate those builds are
not trivial and keeping these files is helpful for my work in that area.
NOTE: This works for me locally with a similar (but not exact) workflow
to CI. It *should* work in CI.
```
### pe2.0.1 - 31 Jan, 2012 (3a118201)
* Merge branch 'master' of github.com:puppetlabs/puppet-acceptance (3a118201)
* (maint) remove version checking for --pe-version option (ba53fc10)
```
(maint) remove version checking for --pe-version option
Checking for a specific PE version serves no real purpose; if
an invalid version is passed the hassness will halt with an
apporiate error indicating the vesrion needed is not found.
```
* Merge pull request #125 from pcarlisle/show-error (acffff6a)
```
Merge pull request #125 from pcarlisle/show-error
On error print the exception message in addition to the backtrace
```
* On error print the exception message in addition to the backtrace (59dcd703)
* Merge pull request #124 from daniel-pittman/avoid-eternally-growing-puppet.conf (571916cb)
```
Merge pull request #124 from daniel-pittman/avoid-eternally-growing-puppet.conf
Empty puppet.conf before adding the server definition.
```
* Merge pull request #123 from cprice-puppet/allow_extra_env_vars_to_puppet_commands (2c01ecef)
```
Merge pull request #123 from cprice-puppet/allow_extra_env_vars_to_puppet_commands
allow extra environment vars for puppet commands
```
* Merge remote branch 'origin/pe2.0.x' (f813bd39)
* (maint) Update all configs for cloudpro (df7916ab)
```
(maint) Update all configs for cloudpro
Adding cloud provisioner to all test configs.
```
* (maint) adding cloudpro role to configs (8ffe51c7)
```
(maint) adding cloudpro role to configs
Adding cloudpro role to install only configs -- test install of
cloudpro with each install only test.
```
* Empty puppet.conf before adding the server definition. (ed6dab8b)
```
Empty puppet.conf before adding the server definition.
Previously `/etc/puppet/puppet.conf` would grow without bounds, because this
setup script appended to the configuration but never removed anything. Now,
instead, it ensures that only the expected content is in place.
Signed-off-by: Daniel Pittman
```
* allow extra environment vars for puppet commands (6c02f8c3)
```
allow extra environment vars for puppet commands
When working on some tickets relating to setting system locales (Facter #12012, Puppet #11860), I came across a situation where I needed to be able to set some environment variables before running puppet commands in my acceptance tests. This changeset adds the ability to pass in an optional ":environment" hash when calling "apply_manifest_on"; the key/value pairs in this hash will be set as environment variables for the duration of the execution of the "puppet apply" operation.
This implementation isn't ideal, but the implementation details are not very visible in the actual acceptance test syntax. We might want to re-work the implementation later, but for now this was the only reasonably easy way to pull it off.
Also--this logic could very easily be extended to work for other puppet commands besides "apply", but hasn't at this point in time.
```
* Merge pull request #122 from cprice-puppet/allow-no-certs-for-single-node (31e61a1c)
```
Merge pull request #122 from cprice-puppet/allow-no-certs-for-single-node
Allow ValidateSignCert to pass in a single-node setup
```
* Merge pull request #121 from daniel-pittman/handle-machine-that-is-master-and-agent (d96a8d61)
```
Merge pull request #121 from daniel-pittman/handle-machine-that-is-master-and-agent
Handle a machine that is both master *and* agent in git tests.
```
* Allow ValidateSignCert to pass in a single-node setup (c94cce99)
```
Allow ValidateSignCert to pass in a single-node setup
In the case where you are running acceptance tests against a single node (which is serving as both master and agent), the puppet cert --sign-all needs to accept an exit code of 24 (which means that there were no certs to sign).
```
* Handle a machine that is both master *and* agent in git tests. (54985a34)
```
Handle a machine that is both master *and* agent in git tests.
The master signs it's own agent certificate implicitly, which was breaking a
test that validated that *all* agents didn't have a certificate.
This skips over the master, although not the validation that the certificate
works, which keeps things running as expected.
Signed-off-by: Daniel Pittman
```
* Merge pull request #119 from daniel-pittman/faster-rerun-through-checkout-reuse (99238dd0)
```
Merge pull request #119 from daniel-pittman/faster-rerun-through-checkout-reuse
Better handling of both new and old git checkouts.
```
* Merge pull request #120 from joshcooper/ticket/master/11743-delete-vardir-contents (3ede70ac)
```
Merge pull request #120 from joshcooper/ticket/master/11743-delete-vardir-contents
(#11743) Delete contents of agent var directory in agent/master tests
```
* (#11743) Delete contents of agent var directory in agent/master tests (2d37c6f0)
```
(#11743) Delete contents of agent var directory in agent/master tests
Previously, the
`helpful_error_message_when_hostname_not_match_server_certificate`
test would correctly report that the server's hostname didn't match
its certificate, however, the test would attempt to use a cached
catalog. If one was present, for example, the 03_ValidateSignCert step
causes the agent to retrieve an empty catalog, then the agent would
apply the catalog and return exit code 0, causing the test to fail.
This commit deletes the contents of the agents' vardir, but not the
vardir itself. This change will only affect tests that use the
`with_master_running_on` method which does not include PE.
```
* Better handling of both new and old git checkouts. (3a7284a9)
```
Better handling of both new and old git checkouts.
This has flapped some, because we try to do too many clever things with remote
execution. Now, it should work robustly in all cases.
Signed-off-by: Daniel Pittman
```
* (maint) --force not supported on old git verions (e1bb15fc)
```
(maint) --force not supported on old git verions
Older versions of git (like on cent5.5) do not support --force
but -f instead.
```
* Merge pull request #118 from djm68/fix_pathing_problem_git_TestSetup (b7faeee7)
```
Merge pull request #118 from djm68/fix_pathing_problem_git_TestSetup
(maint) Create source path
```
* (maint) Create source path (e6e4c07f)
```
(maint) Create source path
In same cases the source path is not created, breaking the git
checkout. Verify the path first, create if needed.
```
* Merge pull request #117 from djm68/fix_git_TestSetup_install (6073db28)
```
Merge pull request #117 from djm68/fix_git_TestSetup_install
(maint) Small fix to dpittmans installer update
```
* (maint) Small fix to dpittmans installer update (c2869752)
```
(maint) Small fix to dpittmans installer update
If existing repo path is not found, factor was cloned into
/root vs. /opt/puppet-git-repos; rest of installer expects to
find /opt/puppet-git-repos/facter.
```
* Merge pull request #116 from daniel-pittman/faster-rerun-through-checkout-reuse (798da835)
```
Merge pull request #116 from daniel-pittman/faster-rerun-through-checkout-reuse
Faster rerun through checkout reuse
```
* Checking in one SSH operation rather than one per git command (990a0823)
```
Checking in one SSH operation rather than one per git command
When we started reusing the repository we needed to do a lot of remote
operations. While the cost of starting a new process is fairly low, it is at
least a couple of RTTs, which will slow down cloud based testing.
This just rewrites the step to collect the operations and glue them together
into a single operation, cutting that overhead dramatically.
Signed-off-by: Daniel Pittman
```
* Clean and forcibly change branch during git setup. (e939f80b)
```
Clean and forcibly change branch during git setup.
Previously we deleted the entire git repo, which would ensure that we had a
clean, pristine, untouched repository for the next test.
Once we started to reuse the existing checkout we can't assume that - if
someone was to fiddle a file in there, it could break everything.
So, we forcibly clean and checkout now, to restore the repository and checkout
to a pristine state before we proceed through the testing.
Signed-off-by: Daniel Pittman
```
* Revert incorrect change to acceptable exit codes for agent. (58661065)
```
Revert incorrect change to acceptable exit codes for agent.
Part of another, incomplete change to the harness slipped into my git checkout
improvements; the exit codes for the agent during validation of the cert
should not have been changed. (This made the test useless, but not actually
break)
This reverts that targeted bit of the change.
Signed-off-by: Daniel Pittman
```
* Merge pull request #113 from daniel-pittman/faster-rerun-through-checkout-reuse (a9388e28)
```
Merge pull request #113 from daniel-pittman/faster-rerun-through-checkout-reuse
Support reuse of an existing git repository checkout.
```
* Merge pull request #115 from daniel-pittman/support-pty-request-on-ssh-channel (233eca85)
```
Merge pull request #115 from daniel-pittman/support-pty-request-on-ssh-channel
Support PTY allocation on SSH channel.
```
* Merge pull request #114 from daniel-pittman/nicer-handling-of-etc-hosts (92ba0922)
```
Merge pull request #114 from daniel-pittman/nicer-handling-of-etc-hosts
Nicer handling of /etc/hosts.
```
* Support PTY allocation on SSH channel. (4c38c4fd)
```
Support PTY allocation on SSH channel.
Previously all remote commands were run without a PTY allocated. This almost
always delivers the same results as running them with a PTY - but not in every
case.
This adds the ability to request a PTY for a specific test, which will cause
one to be allocated - or a hard failure to occur.
This is not made the default for two reasons:
1. It changes behaviour around which scripts are run on exec.
2. It potentially changes logging behaviour.
Signed-off-by: Daniel Pittman
```
* Nicer handling of /etc/hosts. (32b63643)
```
Nicer handling of /etc/hosts.
Previously the updates to /etc/hosts would lead to trouble when the machine
wasn't reverted to a snapshot between each test, or if there was already a
hosts entry for that machine.
Now, instead, we carefully clean out the file to get the content we want, and
nothing but, in place for the test suite run.
Signed-off-by: Daniel Pittman
```
* Support reuse of an existing git repository checkout. (1bae816e)
```
Support reuse of an existing git repository checkout.
Previously the suite would delete the entire git source checkouts, then fetch
them from scratch. This would ensure that the content was clean, but wasn't
actually terribly efficient since almost all content was identical each time.
Now, we clone if the repository is missing, but otherwise update the `origin`
remote to whatever we are targeted at, then fetch that. This has the same net
effect but avoids fetching 36+MB every time the suite runs.
Signed-off-by: Daniel Pittman
```
* Merge pull request #112 from djm68/update_pe_setup_steps_new_host_hash (f1cdf8ee)
```
Merge pull request #112 from djm68/update_pe_setup_steps_new_host_hash
(maint) Update PE setup steps to support host hash
```
* (maint) Update PE setup steps to support host hash (aefcb053)
```
(maint) Update PE setup steps to support host hash
Formally, host config data was stored in the config hash; with
the addition of windows host support, we need to support
per host config data (ie paths). This change requies updating
tests that were using congig to use host hash instead.
```
* Merge pull request #111 from joshcooper/ticket/master/11767-fix-deprecated-certdnsnames (f525fb48)
```
Merge pull request #111 from joshcooper/ticket/master/11767-fix-deprecated-certdnsnames
(#11767) Use newer --dns_alt_names option
```
* (#11767) Use newer --dns_alt_names option (4fdfbc2d)
```
(#11767) Use newer --dns_alt_names option
Previously, the git setup steps were using the old deprecated
--certdnsnames option when generating the master's csr. It was also
using a colon-delimited list instead of a comma-separated list. As a
result, the puppetmasters certificate generated during
03_ValidateSignCert.rb contained bogus X509 Subject Alt Names:
X509v3 Subject Alternative Name:
DNS:centos-55-64-1.puppetlabs.lan,
DNS:puppet:centos-55-64-1:centos-55-64-1
This was not noticed earlier, because the agent never retrieved its
ssl certificate in the setup steps, which is something I recently
changed so that we'd validate that the agent can connect via SSL to
the master in the setup steps, rather than later during the acceptance
tests.
Previously, when running the first acceptance tests from the puppet
repo, the test would delete all of the hosts ssl directories, and
regenerate the certs, but this time using the correct --dns_alt_names
option.
This commit just updates the setup steps to also use the
--dns_alt_names option with a comma delimited list of names to include
in the puppet master's certificate.
```
* Merge pull request #110 from joshcooper/ticket/master/11767-windows-acceptance-tests (071e945c)
```
Merge pull request #110 from joshcooper/ticket/master/11767-windows-acceptance-tests
(#11767) Support Windows agents in acceptance test framework
```
* (#11767) Update README for Windows (ed60071e)
```
(#11767) Update README for Windows
This commit updates the README to describe prequisites for running the
acceptance tests on Windows agents.
```
* (#11767) Always delete ssl directories with_master_running_on (089334af)
```
(#11767) Always delete ssl directories with_master_running_on
Previously, each test case that used `with_master_running_on` had to
remember to delete the ssl directory from each host.
This commit moves that knowledge into `with_master_running_on` and
removes it from the individual test cases.
```
* (#11767) Add the ability to lazily evaluate a command (8cf8fc32)
```
(#11767) Add the ability to lazily evaluate a command
Previously, the command_string for a Command was evaluated at command
creation time. As a result, it wasn't possible to specify a command
like:
on hosts, 'rm -rf #{host["puppetpath"]/ssl}'
and have the command be evaluated in the context of each host.
This commit adds a generic HostCommand that lazily evaluates its
command string, in the `Kernel.eval` sense, with a binding containing
the `host` variable. So now it is possible to do:
on hosts, host_command('rm -rf #{host["puppetpath"]/ssl')
which will remove the ssl directory from each host using each hosts'
`puppetpath` configuration. Note that we're using single quotes to
avoid string interpolation.
```
* Merge pull request #109 from djm68/update_agent_cfgs (9813e848)
```
Merge pull request #109 from djm68/update_agent_cfgs
(maint) Modifying configs to use our dedicated master
```
* (maint) Modifying configs to use our dedicated master (3f868614)
```
(maint) Modifying configs to use our dedicated master
Need an isolated Master node for our agent only tests.
```
* (#11767) Default user to Administrator on Windows (467789e5)
```
(#11767) Default user to Administrator on Windows
Previously, the acceptance tests would ssh as `root` to the remote host.
This commit changes the default user to be `Administrator` on Windows so
that each Jenkins node does not need a 'root' user added to it.
```
* (#11767) Don't assume host['puppetpath'] is /etc/puppet (c34c2fb7)
```
(#11767) Don't assume host['puppetpath'] is /etc/puppet
Previously, the acceptance tests failed on Windows because puppet.conf
does not live in /etc/puppet on Windows.
This commit changes the default value of `puppetpath` for Windows
hosts relative to the CommonAppData folder. Sadly, the location of
this folder is different between 2003 and 2008, and the folder usually
contains spaces, e.g. C:\Documents and Settings\All Users\Application
Data.
This commit uses the Cygwin utility `cygpath` to lookup the
CommonAppData folder, whose id is 35 (0x23). See the following for
known-folder ids:
http://source.winehq.org/source/include/shlobj.h
It also updates the acceptance tests to use the `puppetpath` value when
appending the `server` property to the `agent` section of the hosts'
`puppet.conf`. And since the CommonAppData folder contain spaces, the
value of `puppetpath` is quoted on Windows.
```
* Merge pull request #108 from justinstoller/uninstaller_support (9778f654)
```
Merge pull request #108 from justinstoller/uninstaller_support
(maint) better solaris output
```
* better solaris output (23cafce6)
```
better solaris output
fix hardcoded paths
```
* (#11767) Make RemoteExec commands work on Windows (9e6c7103)
```
(#11767) Make RemoteExec commands work on Windows
Previously, the acceptance tests could not launch puppet and facter via
SSH and Cygwin on the Windows side, due to Cygwin's bash shell
attempting to invoke ruby.exe on `C:\Ruby187\bin\puppet` and failing,
because that file contains Windows-style paths that confuse bash.
This commit simply wraps the puppet and facter commands within a
`cmd.exe` shell to escape from the bash shell (though the environment
is inherited).
```
* (#11767) Don't create a new SSH connection for each TestCase (f5da078f)
```
(#11767) Don't create a new SSH connection for each TestCase
Previously, a new Host instance was being created for each combination
of TestSuite, TestCase, and Host. As a result, multiple SSH
connections, including SSH authentication, were being performed
unnecessarily. This was actually a regression introduced in
b62f8056f0b5499ad9341487c1fca6f328c0830b.
Given a sufficiently large number of TestCases, the test driver and/or
system under test could run out of file descriptors.
This commit moves the creation of hosts to the top-level, so that the
same SSH connection can be reused across multiple TestSuites and
TestCases. In other words, the acceptance tests will make at most one
SSH connection per host.
This commit also adds a method for closing the SSH connection (if one
was created) and explicitly closes the connection when the tests are
done.
```
* (#11767) Move defaults into type-specific hosts (40689070)
```
(#11767) Move defaults into type-specific hosts
Previously, the acceptance tests were adding POSIX default paths to
the PATH environment variable passed to Windows hosts, e.g. /usr/bin,
which happens to correspond to the location of the Cygwin utilities
that we don't want the tests to use on Windows.
This commit creates host subclasses that contain the default paths that
are applicable for that platform. It also adds a `Host.create` factory
method that knows how to create the appropriate type of `Host` instance
based on the platform specified in the configuration file.
If we need to support PE-specific install locations on Windows, then it
will be easy to change (in one place).
```
* Merge pull request #107 from djm68/more_robust_early_setup (6939ec18)
```
Merge pull request #107 from djm68/more_robust_early_setup
(maint) Make common setup steps for robust
```
* (maint) Make common setup steps for robust (9f95ad56)
```
(maint) Make common setup steps for robust
Some setup steps either did not log when skipping execution, while
some less critical steps, like key syncing, could fail and cause the
tests to halt -- failures during setup are considered fatal and test
execution will halt.
```
* (maint) Trim el4 test config (42497ec9)
```
(maint) Trim el4 test config
Trimming sol10 for the el4 config. Tried pushing the sol test
into the same run as el4s (all are agent only) but the additonal
load is a bit much for the VM server. Will run Sol seperately.
```
* (#11767) Skip creating puppet user and group on Windows (9bdff8a2)
```
(#11767) Skip creating puppet user and group on Windows
The `getent`, `useradd`, and `groupadd` commands do not exist on
Windows (nor Cygwin), so we skip creating the puppet user and group on
Windows.
Ideally, we should only create the puppet user and group in a `master`
role (when we need to switch uid). However, due to bug #9862 the puppet
group is required on Unix, even for `puppet agent` and `puppet apply`.
Since #9862 doesn't apply on Windows, we can safely skip creating the
puppet user and group on Windows.
```
* (maint) Add addition el4 configs (70c8ece3)
```
(maint) Add addition el4 configs
More build optimization: splitting EL4 + solaris into :q
```
* (#11767) Sync ntp on Windows (ed95ce31)
```
(#11767) Sync ntp on Windows
By default, the acceptance tests perform an ntp sync. On Windows 2003
and up, this can be done using the time service `w32time`, not to be
confused with the command line utility `w32tm.exe` that interacts with
the service.
If the w32time service is already running, then `net start` will
return exit code 2.
```
* (#11892) Add all agents config for install tests (2598a68d)
```
(#11892) Add all agents config for install tests
Trying to parallelize tests -- running all agents at once
with a single master should prove faster, but with more
system load.
```
* Merge pull request #105 from justinstoller/uninstaller_support (6554bf91)
```
Merge pull request #105 from justinstoller/uninstaller_support
(maint) fix solaris service error
```
* Merge pull request #106 from justinstoller/retry_ssh (dd6070e1)
```
Merge pull request #106 from justinstoller/retry_ssh
(maint) attempt to catch Unreachable Hosts and retry
```
* dont run -d on installs without a db (c96c5b2b)
* attempt to catch Unreachable Hosts and retry (b09fbf9b)
* fix solaris service error (1ca44051)
* Merge pull request #104 from justinstoller/uninstaller_support (ae55e4ce)
```
Merge pull request #104 from justinstoller/uninstaller_support
(maint & 11812) Uninstaller support
```
* Merge pull request #103 from djm68/increase_netssh_timeout (416ae4ef)
```
Merge pull request #103 from djm68/increase_netssh_timeout
(maint) Increase net::ssh timeout
```
* (maint) Increase net::ssh timeout (dd0b7b33)
```
(maint) Increase net::ssh timeout
Make the harness more robust, especially just post VM reversion;
harness was timing out trying to reach VMs that were not done
reverting.
```
* Merge pull request #102 from djm68/ntpdate_fault_tolerant (cf17c76d)
```
Merge pull request #102 from djm68/ntpdate_fault_tolerant
(manint) toughen ntpdate step
```
* (manint) toughen ntpdate step (7ca6c176)
```
(manint) toughen ntpdate step
Force NTPdate to run until it gets a responce If we bail out
after one fail ntpdate attempt, we falsely fail a PE build.
```
* skip dashboard-workers in /etc/rc* (77aae2a6)
```
skip dashboard-workers in /etc/rc*
fix typo in rpm syntax
```
* Merge pull request #101 from djm68/update_agent_only_configs_dedicated_master (9c2b6c17)
```
Merge pull request #101 from djm68/update_agent_only_configs_dedicated_master
(maint) Modifiy agent only config for dedicated master
```
* (maint) Modifiy agent only config for dedicated master (f1622a61)
```
(maint) Modifiy agent only config for dedicated master
Have a new dedicated master to use for agent only platforms.
Updating configs for new host.
```
* tweak acceptable exit codes (d06de7b2)
* fix stopping of puppet agent in noop test -- previously the local variable was named the same as a test harness helper method (706d8f65)
* ticket 11812 remove cronjobs (45298251)
* better sh support, remove ! and use test instead of [ (d855c033)
* Merge pull request #100 from justinstoller/bump_dash_ver (4ccb99a3)
```
Merge pull request #100 from justinstoller/bump_dash_ver
(maint) fix typo yml key name
```
* fix typo yml key name (4b756a85)
* Merge pull request #99 from djm68/ticket_11622_print_test_before_execution (2f2fcf07)
```
Merge pull request #99 from djm68/ticket_11622_print_test_before_execution
(#11622) Log test file names before evaluation
```
* (#11622) Log test file names before evaluation (91a3864d)
```
(#11622) Log test file names before evaluation
Currently, the test harness evals a test case (test file), then
logs the results. If the tests hangs, you will not tests was
being run. This patch annouces the test file before it even evals
the code. This will greatly ease debugging.
```
* Merge pull request #95 from justinstoller/uninstaller_support (00d70d0b)
```
Merge pull request #95 from justinstoller/uninstaller_support
(maint) the uninstaller does not need to check versions...
```
* Merge pull request #96 from pcarlisle/ticket/11764-handle-blocks (a9304da7)
```
Merge pull request #96 from pcarlisle/ticket/11764-handle-blocks
(#11764) Handle blocks in all test case methods of the form run_X_on
```
* Merge pull request #98 from justinstoller/bump_dash_ver (5e241f10)
```
Merge pull request #98 from justinstoller/bump_dash_ver
(#11638) add test for dashboard version -- 1.2.4
```
* add test for dashboard version -- 1.2.4 (54aa7a7c)
* Merge pull request #97 from justinstoller/bump_puppet_ver (2a6185b0)
```
Merge pull request #97 from justinstoller/bump_puppet_ver
(#11636) bump puppet version from 2.7.6 to 2.7.9
```
* bump puppet version from 2.7.6 to 2.7.9 (8e8c2391)
* the uninstaller does not need to check versions of packages before uninstalling (7c2a332e)
* (#11764) Handle blocks in all test case methods of the form run_X_on (b8cda1db)
```
(#11764) Handle blocks in all test case methods of the form run_X_on
Before this, some of these methods took blocks and some didn't. Since ruby
doesn't complain when you pass a block to a method that doesn't handle it
there was no feedback if you weren't using these methods correctly.
```
* Merge pull request #94 from justinstoller/bump_rack_ver (60221235)
```
Merge pull request #94 from justinstoller/bump_rack_ver
(#11735) bump rack version to 1.1.3
```
* bump rack version to 1.1.3 (dde6e127)
* Merge pull request #93 from justinstoller/uninstaller_support (dc669280)
```
Merge pull request #93 from justinstoller/uninstaller_support
(maint) blank strings are not false
```
* blank strings are not false (04305dc7)
* Merge pull request #92 from justinstoller/bump_facter_ver (edf4be78)
```
Merge pull request #92 from justinstoller/bump_facter_ver
(maint) bump facter version to 1.6.4
```
* Merge pull request #91 from justinstoller/uninstaller_support (0c141b8e)
```
Merge pull request #91 from justinstoller/uninstaller_support
(#5338) test uninstaller
```
* bump facter version to 1.6.4 (a6089238)
* add test for `-h` option (455463eb)
* break standard and full uninstall tests into separate suites (56c27ed9)
* update options and systest for standard or full uninstalls (cbc6723c)
* merge `-d`, `-p`, and `-a` checks (c7cc49e2)
* comment out purge and db for sanity check (de58d22e)
* update solaris pkging check (d532f2db)
* Merge pull request #90 from justinstoller/package_version_checks (ac9ed8e1)
```
Merge pull request #90 from justinstoller/package_version_checks
(#8659 & #7541) add checks for ruby-augeas, activerecord, and activesupport
```
* add database check (4336e258)
```
add database check
add purge check
```
* add comments for clarity (1227e5fe)
```
add comments for clarity
add checks for pids and lockfiles
add solaris pkging check
```
* add checks for ruby-augeas, activerecord, and activesupport (5430ff9c)
* add package check for deb, el, and hopefully sles (fef78ef5)
```
add package check for deb, el, and hopefully sles
add check that services are not enabled at boot
```
* Merge pull request #88 from jeffmccune/feature/master/11618_setup_ssh_access (a9993939)
```
Merge pull request #88 from jeffmccune/feature/master/11618_setup_ssh_access
Feature/master/11618 setup ssh access
```
* Merge pull request #89 from djm68/allow_alternate_PE_versions_installs (8185cb1d)
```
Merge pull request #89 from djm68/allow_alternate_PE_versions_installs
(maint) Add support to install alt versions of PE
```
* (maint) Add support to install alt versions of PE (a2d557b1)
```
(maint) Add support to install alt versions of PE
Need the ability to install more than just the LASTEST tarball
of PE; passing --pe-version 2.0.0 will install PE 2.0.0 from
/opt/enterptise/dists/pe2.0.0
If --pe-version is ommited, version is derived from LATEST and
/opt/enterprise/dist is used for the path.
```
* (maint) Fix program name in help output (2a3e2a02)
```
(maint) Fix program name in help output
Without this patch the name "harness.rb" is hard coded in the output of
--help. This is incorrect, the program has been renamed to systest.rb.
This patch fixes the problem by using the process name from the process
table to determine the name of the program.
The help now looks like:
% ./systest.rb --help
Usage: systest.rb [options...]
Reviewed-by: Dominic Maraglia
```
* (#11621) Add --dhcp-renew option to enable lease renewal (d75a22df)
```
(#11621) Add --dhcp-renew option to enable lease renewal
Without this patch the DHCP lease renewal step of the early setup phase
is always executed.
This is a problem on my CentOS 6 VMware Fusion VM because the interface
is brought down, disconnecting the SUT from the network before the ifup
command can be issued. This leaves the target system offline and
subsequent steps timeout.
This patch works around the problem by providing and documenting the
--dhcp-renew option to disable renewals.
Reviewed-by: Dominic Maraglia
```
* (#11618) Add root SSH key synchronization setup step (fbac0bc5)
```
(#11618) Add root SSH key synchronization setup step
Without this patch the target systems under test may have out of date
authorized key files since they're usually VM snapshots. This is
problem if there is a test problem requiring investigating by technical
staff.
This patch fixes the problem by synchronizing the
~root/.ssh/authorized_keys file in the setup early phase. The behavior
happens by default on all systems. We assume it will work and intended
to come back and filter out target nodes that are known not to work.
A command line option, --no-root-keys is provided to disable this change
in behavior.
Reviewed-by: Dominic Maraglia
```
* basic uninstaller test (e2108e0f)
* fix typo (980623cc)
* plumbing for allowing Uninstaller testing (c5a6a898)
* Merge pull request #87 from djm68/ticket_11107_alternate_umask (8ff2eee4)
```
Merge pull request #87 from djm68/ticket_11107_alternate_umask
(#11107) Test alternate usmask when installing
```
* (#11107) Test alternate usmask when installing (28eb6e69)
```
(#11107) Test alternate usmask when installing
When selecting --install-only the test harness will switch
umask to 0027 during the install phase.
```
* (#11310) Add master to hosts files -- IPV4 (9cf41682)
```
(#11310) Add master to hosts files -- IPV4
In some cases the ip command will return IPV4 and IPV6; only want
the IPV4 entries. Add "head -1" to only return IPV4.
```
* (maint) cruft clean-up (13178d80)
```
(maint) cruft clean-up
cleaning up a bunch of old cfg files no longer used.
```
* Merge pull request #85 from djm68/update_docs (a10760f7)
```
Merge pull request #85 from djm68/update_docs
(maint) Update README and config examples
```
* (maint) Update README and config examples (b5e1834b)
```
(maint) Update README and config examples
Harness has grown in functionality and docs need updating to
reflect the changes.
```
* Merge pull request #84 from mykhyggz/nodhclient_solaris (c382fce9)
```
Merge pull request #84 from mykhyggz/nodhclient_solaris
solaris machine isn't using dhcp, fixing test
```
* solaris machine isn't using dhcp, fixing test (7b793182)
```
solaris machine isn't using dhcp, fixing test
Test renews dhcp lease, but solaris vm isn't using dhcp anyway
```
* Merge pull request #83 from mykhyggz/typo (cd2d07ef)
```
Merge pull request #83 from mykhyggz/typo
Typo with missing the second 'c' in dhcpcd
```
* Typo with missing the second 'c' in dhcpcd (101aca61)
```
Typo with missing the second 'c' in dhcpcd
One character change to command, adding second 'c' in 'dhcpcd'
```
* Merge pull request #82 from mykhyggz/dhcp_renew (beede68f)
```
Merge pull request #82 from mykhyggz/dhcp_renew
effect a dhcp lease renewal after ntpdate is run
```
* effect a dhcp lease renewal after ntpdate is run (fb2ed0de)
```
effect a dhcp lease renewal after ntpdate is run
Some VMs, after reverting to snapshot, are renewing their dhcp lease after our tests are running, causing apparent network errors. This test will renew the lease early so it's good for a day (or whatever is configured at the dhcp server), rather than just a few seconds.
```
### pe2.0.0 - 31 Jan, 2012 (8d064e33)
* (maint) remove version checking for --pe-version option (8d064e33)
```
(maint) remove version checking for --pe-version option
Checking for a specific PE version serves no real purpose; if
an invalid version is passed the hassness will halt with an
apporiate error indicating the vesrion needed is not found.
```
* (maint) Add support to install alt versions of PE (15bfaeed)
```
(maint) Add support to install alt versions of PE
Need the ability to install more than just the LASTEST tarball
of PE; passing --pe-version 2.0.0 will install PE 2.0.0 from
/opt/enterptise/dists/pe2.0.0
If --pe-version is ommited, version is derived from LATEST and
/opt/enterprise/dist is used for the path.
```
### pe2.0 - 11 Nov, 2011 (4d7b65b6)
* Merge pull request #81 from djm68/add_cert_sign_master_dashboard (4d7b65b6)
```
Merge pull request #81 from djm68/add_cert_sign_master_dashboard
(maint) Add modified cert signing step to install
```
* (maint) Add modified cert signing step to install (1ee7d5db)
```
(maint) Add modified cert signing step to install
Only need to sign certs when master/dash are on the same node;
when master and dashboard are seprate, autosign will be used.
```
* Merge pull request #80 from mykhyggz/deprecated_certsign (97d32745)
```
Merge pull request #80 from mykhyggz/deprecated_certsign
Move sign dashboard certs test out of the way
```
* Move sign dashboard certs test out of the way (255f3de6)
```
Move sign dashboard certs test out of the way
Certs are already signed, this just generates a '400' rake abort error now. Moving to setup/deprecated/
```
* Merge pull request #78 from justinstoller/remove_mco_q_in_upgrader (fb5dd065)
```
Merge pull request #78 from justinstoller/remove_mco_q_in_upgrader
(maint) updated upgrader answers for removing mco
```
* Merge pull request #79 from mykhyggz/signcert_deprecated (07030a84)
```
Merge pull request #79 from mykhyggz/signcert_deprecated
Move pe_sign_certs to new folder 'deprecated'
```
* Move pe_sign_certs to new folder 'deprecated' (d124d441)
```
Move pe_sign_certs to new folder 'deprecated'
Certs are autosigned earlier in the install process. This test is no longer valid, so moving to a new folder 'deprecated'
```
* (maint) minor yaml error in cfg file (717e5583)
```
(maint) minor yaml error in cfg file
Cfg file was missing indentations
```
* updated upgrader answers for removing mco (edf883c3)
* (#10437) Add config for OEL 4 (d5515563)
```
(#10437) Add config for OEL 4
Adding CI cfg for Oracle Linux 4
```
* (maint) small tweak to answer file generation (5cf7f3d0)
```
(maint) small tweak to answer file generation
q_puppet_enterpriseconsole_master_hostname might not be set in all
cases, fixed this for master/dashboard.
```
* (maint) Adding consoleport option to CI configs (d684dd85)
```
(maint) Adding consoleport option to CI configs
Set configs to use port 443 for dashboard connections.
```
* (maint) Minor tweak to cfg file (b802bda2)
* Merge pull request #77 from justinstoller/saved_tmp (9fbcf0eb)
```
Merge pull request #77 from justinstoller/saved_tmp
(maint) Saved tmp
```
* only remove if needed (04844272)
* dont blow away all files in tmp (f688efa2)
* Merge pull request #75 from djm68/clean_up_answer_file_code (b03d593e)
```
Merge pull request #75 from djm68/clean_up_answer_file_code
(maint) Clean up answer file code
```
* (maint) Clean up answer file code (5cd2b583)
```
(maint) Clean up answer file code
De-crufting the answer file generation code.
```
* Merge pull request #74 from djm68/console_portno_configurable (a69ae448)
```
Merge pull request #74 from djm68/console_portno_configurable
(maint) Allow alt portno for PE console
```
* (maint) Allow alt portno for PE console (7492b5b6)
```
(maint) Allow alt portno for PE console
PE console will have the option to run on alt portno's, adding
the ability to define an alt portno in the config file. Still
default to port 3000. In the cfg files, add:
CONFIG:
- consoleport: 1234
```
* Merge pull request #73 from djm68/add_puppet_enterpriseconsole_inventory_certname (c9d351f6)
```
Merge pull request #73 from djm68/add_puppet_enterpriseconsole_inventory_certname
(maint) Fix puppet_enterpriseconsole_inventory_certname
```
* (maint) Fix puppet_enterpriseconsole_inventory_certname (5ef34c4f)
```
(maint) Fix puppet_enterpriseconsole_inventory_certname
puppet_enterpriseconsole_inventory_certname was using Master
but requires this entry to be the hostname of the node running
Console.
```
* Merge pull request #72 from djm68/add_puppet_enterpriseconsole_inventory_certname (1362cad1)
```
Merge pull request #72 from djm68/add_puppet_enterpriseconsole_inventory_certname
(maint) more tweaks to answer file: seperate console
```
* (maint) more tweaks to answer file: seperate console (8027a657)
```
(maint) more tweaks to answer file: seperate console
Adding entries for the case when console is on a non-master
node.
```
* Merge pull request #71 from djm68/add_master_entry_to_etc_hosts (637b5d9c)
```
Merge pull request #71 from djm68/add_master_entry_to_etc_hosts
(maint) Add Master entry to hosts file
```
* (maint) Add Master entry to hosts file (8c4dbcf5)
```
(maint) Add Master entry to hosts file
Try to reduce 400 errors by adding entry to /etc/hosts
```
* Merge pull request #70 from djm68/more_answer_file_fixes (b8156ba3)
```
Merge pull request #70 from djm68/more_answer_file_fixes
(maint) More mods to tweak new answer files
```
* (maint) More mods to tweak new answer files (bd113762)
* (maint) Fix platform strings in config files (d8b266fc)
```
(maint) Fix platform strings in config files
x86_64 needed, not 386
```
* Merge pull request #69 from djm68/update_answer_files (48c09cf1)
```
Merge pull request #69 from djm68/update_answer_files
(maint) answer files have changed significantly
```
* (maint) answer files have changed significantly (e74b7b50)
```
(maint) answer files have changed significantly
Time to bring answer files upto date with latest PE format.
```
* Merge pull request #68 from djm68/10375_disallow_install_with_no_dashboard (331d0f19)
```
Merge pull request #68 from djm68/10375_disallow_install_with_no_dashboard
(#10375) If the no dashboard is specified, we halt
```
* (#10375) If the no dashboard is specified, we halt (dbeb660a)
```
(#10375) If the no dashboard is specified, we halt
PE requires a Dashboard to be configured. Added code to raise
and exception during answer file generation. Added a new
option to TestSuite "stop_on_error" that will halt test execution
when this is set and an error is raised.
```
* Merge pull request #67 from mykhyggz/answers_auth (8479a144)
```
Merge pull request #67 from mykhyggz/answers_auth
(maint) add answers for auth_user and auth_name
```
* (maint) add answers for auth_user and auth_name (9081daf5)
```
(maint) add answers for auth_user and auth_name
New questions are causing tests to fail before install. This should address the failure.
```
* (maint) Add cloud provisioner entry to answer file generation (417c8986)
```
(maint) Add cloud provisioner entry to answer file generation
Agents only installs in ec2 did not have an entry for
cloud provisioner.
```
* (maint) Clean out old OE Linux configs (25e4a1b2)
* (maint) Adding sles single node test configs (58d53d52)
```
(maint) Adding sles single node test configs
Adding sles11 single node configs for install testing.
```
* (maint) add Ubuntu single node configs (6377fdaa)
```
(maint) add Ubuntu single node configs
Adding Ubuntu single node configs for install testing.
```
* (maint) Adding single node debian configs (b93c90c7)
```
(maint) Adding single node debian configs
Adding single node debian configs for our install only tests.
```
* (maint) add single node configs for el5 (0ea8131d)
```
(maint) add single node configs for el5
Single node configs for installer only tests
```
* (maint) adding some single node test configs (d2db361d)
```
(maint) adding some single node test configs
For install only tests, setup single node configs for our
many platforms.
```
* (maint) Remove old configs (3a356180)
* (maint) More config file sanitizing (d692695d)
```
(maint) More config file sanitizing
Rename agent cfgs to match new naming schema.
```
* Merge pull request #66 from djm68/sanitize_cfgs (081a2abb)
```
Merge pull request #66 from djm68/sanitize_cfgs
(maint) Improve cfg file names, add test cgs
```
* (maint) Improve cfg file names, add test cgs (320275a5)
```
(maint) Improve cfg file names, add test cgs
Acceptance tests are configuration driven, so adding more cfgs
which will improve our test coverage. Modifying cfg file names
format to platform_ver-64mda-32a.cfg
platform_ver: OS platform and version
64mda: 64 bit node running Master, Dashboard, Agent
32a: 32 bit node running Agent
```
* (maint) Adding dashboard role to Master in cfg file (d339388b)
* Merge pull request #65 from djm68/merge_pe-version_installer_fixes (7154f12b)
```
Merge pull request #65 from djm68/merge_pe-version_installer_fixes
(maint) Install PE versions 1.0 - 1.2.4
```
* (maint) Install PE versions 1.0 - 1.2.4 (f716f152)
```
(maint) Install PE versions 1.0 - 1.2.4
Installing is ever more complex with so many versions, tar ball
names, and varied installing semantics. Adding ability
to install any of the 1.x series of PE without the need to check
out older versions of the harness. This might not be perfect as
version checks (facter, module tool etc) will fail; however, install
will run and is sufficient to bootstrap old PE versions.
```
* Merge pull request #64 from djm68/add_non_console_cfg (3780f593)
```
Merge pull request #64 from djm68/add_non_console_cfg
(#10276) Add harness config files sans dashboard
```
* (#10276) Add harness config files sans dashboard (55ed338d)
```
(#10276) Add harness config files sans dashboard
Need to test some basic install without dashboard to be sure
console questions do not leak over into non-dashboard installs.
```
* Merge pull request #62 from djm68/prep_for_cloud_provisioner_CI (6a91a318)
```
Merge pull request #62 from djm68/prep_for_cloud_provisioner_CI
(maint) added test config for new CP tests on VMware
```
* (maint) added test config for new CP tests on VMware (c8faf25e)
```
(maint) added test config for new CP tests on VMware
Config is a template only -- will update when real hosts are
provisioned.
```
* Merge pull request #58 from justinstoller/update_valid_pe (fa8d0b32)
```
Merge pull request #58 from justinstoller/update_valid_pe
(maint) Update valid pe
```
* Merge pull request #56 from justinstoller/updater_updates (fb9c58d0)
```
Merge pull request #56 from justinstoller/updater_updates
(maint) Updater updates
```
* Merge pull request #61 from djm68/update_4_new_answers (4570b94d)
```
Merge pull request #61 from djm68/update_4_new_answers
(#10276) Add fixes for additional PE answers
```
* (#10276) Add fixes for additional PE answers (10fd653a)
```
(#10276) Add fixes for additional PE answers
Even more PE answers need to be added.
```
* Merge pull request #60 from djm68/answers_for_apache_ssl (fed70d0f)
```
Merge pull request #60 from djm68/answers_for_apache_ssl
(maint) New question for setup of apache ssl
```
* (maint) New question for setup of apache ssl (dabd6fbf)
```
(maint) New question for setup of apache ssl
Update answer file generation to include new apache ssl options.
```
* Merge pull request #59 from djm68/ticket_10255_add_q_puppet_enterpriseconsole_auth (cf6fd887)
```
Merge pull request #59 from djm68/ticket_10255_add_q_puppet_enterpriseconsole_auth
(10255) add support for new answer file question
```
* added question and answer for upgrading modules (f1663831)
* (10255) add support for new answer file question (6bbd2bce)
```
(10255) add support for new answer file question
New quesiton for authenticating access to dashboard
```
* 1.2.4 is now a valid pe version (b3d1c631)
* dont guess the extensions of old versions of puppet; use whatevers there (89953af3)
* (maint) Add guthub sig to known_hosts (30e452a6)
```
(maint) Add guthub sig to known_hosts
Allow access to private git repos w/out prompting
```
* Merge branch 'master' of github.com:puppetlabs/puppet-acceptance (9ea440bc)
* (maint) allow install from private git repos (72085439)
```
(maint) allow install from private git repos
Harness was hanging up on git@github repos.
```
* Merge pull request #57 from justinstoller/spelling_correction (b7a6ead8)
```
Merge pull request #57 from justinstoller/spelling_correction
(maint) fixed small spelling mistake
```
* fixed small spelling mistake (d2f6f105)
* we use .gz tars for most recent version now (0dfbecb3)
* add files for signing multiple nodes for pe 1.2 and above (ac3d31fc)
* fix regex (13233c19)
* update upgrade answers for cloud_pro and system_packages (2fedfc42)
* handle tar & tar.gz according to how its currently setup (49739b73)
* Merge pull request #55 from djm68/mod_pe_co_setup_for_pe123 (6336f57c)
```
Merge pull request #55 from djm68/mod_pe_co_setup_for_pe123
(maint) add path to dist dir for pe123
```
* (maint) add path to dist dir for pe123 (0ef5897a)
```
(maint) add path to dist dir for pe123
Need to pull pe123 tarballs from pe123/; add code to append
pe123 path to dist tar source path
```
* Merge pull request #54 from djm68/mod_setup_to_install_old_pe_versions (05d37f6b)
```
Merge pull request #54 from djm68/mod_setup_to_install_old_pe_versions
(maint) Mod installers to handle old pe versions
```
* (maint) Mod installers to handle old pe versions (8376b841)
```
(maint) Mod installers to handle old pe versions
Required mods to install pe1.1 and 1.0 using test harness. Many
change in platform naming, tar balls etc require ugly hacks...
```
* Merge pull request #53 from djm68/add_pe_setup_for_CO (3cff05dd)
```
Merge pull request #53 from djm68/add_pe_setup_for_CO
(maint) add special setup type for pe CO tests
```
* (maint) add special setup type for pe CO tests (44857df7)
```
(maint) add special setup type for pe CO tests
Need a special setup type to deal with major PE changes from
1.0 1.1 1.2 etc.
```
* Merge pull request #52 from djm68/add_pe_version_option (a490b5ad)
```
Merge pull request #52 from djm68/add_pe_version_option
(maint) Add --pe-version to test harness
```
* (maint) Add --pe-version to test harness (b2b8e74d)
```
(maint) Add --pe-version to test harness
With the need to test many versions of PE (old and new) it is no
longer feasible to only use the string from LATEST. By adding
this option we can easily specify a PE version in CI and not
modfiy LATEST. Omitting --pe-version simply falls back to using
LATEST.
```
* Merge pull request #49 from djm68/10070_sign_dashboard_certs_update_new_cert_name (fe4c52f5)
```
Merge pull request #49 from djm68/10070_sign_dashboard_certs_update_new_cert_name
10070 sign dashboard certs update new cert name
```
* (maint) use the new method "puppet" vs "on" (0712c766)
```
(maint) use the new method "puppet" vs "on"
Use the new puppet method to call "sign" which improves
portability to non-Linux OSes.
```
* (#10070) SignDashboardCerts fails wrong cert name (216025b6)
```
(#10070) SignDashboardCerts fails wrong cert name
Certnames have been changed to pe-internal-*; update the test to
use the new format for signing the dashboard cert.
```
* Merge pull request #48 from justinstoller/ticket_10032_update_parseonly_test (95df108f)
```
Merge pull request #48 from justinstoller/ticket_10032_update_parseonly_test
(#10032) adds TestCase#puppet macro to aid fixing ticket 10032
```
* adds TestCase#puppet macro to aid fixing ticket 10032 (c385ab53)
* Merge pull request #47 from bodepd/update_test_vm (0eac448b)
```
Merge pull request #47 from bodepd/update_test_vm
(maint) updated host used for cloud prov testing
```
* (maint) updated host used for cloud prov testing (a817dc30)
```
(maint) updated host used for cloud prov testing
The previous host had some conflicts with other tests.
The updated host is not currently used before 10pm.
```
* Merge pull request #46 from djm68/10038_update_answer_file_generation_cloud_provisioner (55b053c1)
```
Merge pull request #46 from djm68/10038_update_answer_file_generation_cloud_provisioner
(#10038) Update answer file generation for CP optional
```
* Merge pull request #45 from djm68/10036_update_example_cfgs (c4f36732)
```
Merge pull request #45 from djm68/10036_update_example_cfgs
(#10036) Update test config and README
```
* (#10038) Update answer file generation for CP optional (5edf0bcf)
```
(#10038) Update answer file generation for CP optional
Clould provisioner is now an optional install requiring an
additional question in the installer. Update answer file generation to
add the new question.
```
* (#10036) Update test config and README (a496c7e8)
```
(#10036) Update test config and README
Exmaple configs and the README were woefully out of date.
```
* Merge pull request #44 from bodepd/upate_ami_os (47ee8756)
```
Merge pull request #44 from bodepd/upate_ami_os
(maint) update to use valid AMI.
```
* (maint) update to use valid AMI. (6caf819a)
```
(maint) update to use valid AMI.
Previously it was using now deprecated
el-5 AMI.
This commit updates the cloud pack test setup to
use the new centos56 AMI.
```
* Merge pull request #43 from djm68/change_config_for_master_dashboard_agent_one_host (ca2f4c39)
```
Merge pull request #43 from djm68/change_config_for_master_dashboard_agent_one_host
(#9991) Update harness config to trigger license tests
```
* Merge pull request #42 from djm68/ticket_10015_ntp_server_option (1d5ee20d)
```
Merge pull request #42 from djm68/ticket_10015_ntp_server_option
(#10015) add ntp server option to test harness
```
* (#9991) Update harness config to trigger license tests (686755e7)
```
(#9991) Update harness config to trigger license tests
Modified many test configs to have agent, master, dashboard on a
single host as this will test a different code path for the license
module. RHEL config still have dashboard on a seperate host.
```
* (#10015) add ntp server option to test harness (54bcb49a)
```
(#10015) add ntp server option to test harness
The ntpdate server is currently hard coded into the test harness. It
uses a ntpdate server on the lan for reliability, but this removes the
option for testing while working from home. Added --ntp-server option
to the test harness, defaults to ntp.puppetlabs.lan.
```
* Merge pull request #41 from mykhyggz/version_update (702164cb)
```
Merge pull request #41 from mykhyggz/version_update
new facter version
```
* new facter version (dea50907)
* Merge pull request #40 from djm68/simplify_vmrun_code (dc57e585)
```
Merge pull request #40 from djm68/simplify_vmrun_code
(#9981) Clean up extra commands to vrsh in test harness
```
* (#9981) Clean up extra commands to vrsh in test harness (6752f461)
```
(#9981) Clean up extra commands to vrsh in test harness
Test harness includes additional step to extract host names
from the VMware server; this step is no longer required and
removing this code removes a somewhat expensive call to the
ESX server.
```
* Merge pull request #39 from djm68/increase_ntp_timeout (45f94537)
```
Merge pull request #39 from djm68/increase_ntp_timeout
(#9980) Using internal ntp server vs. external
```
* (#9980) Using internal ntp server vs. external (d811c01d)
```
(#9980) Using internal ntp server vs. external
OPs have added an internal NTP server saving us from having to
go to the external pool.ntp.otrg system. This will prevents the
many failures we have in setting time on our VMs post revert.
```
* Merge pull request #37 from djm68/master_dashboard_on_single_host (a0e72358)
```
Merge pull request #37 from djm68/master_dashboard_on_single_host
(maint) Need answer file for single master/dashboard cfg
```
* (maint) Need answer file for single master/dashboard cfg (822c1ab0)
```
(maint) Need answer file for single master/dashboard cfg
This is essentially a one off scenario for for installing one ec2;
need to modify the answer file generation for single host
master/dashboard/agent. Only affects ec2 work.
```
* Merge pull request #36 from djm68/change_installer_for_tar_gz_files (c639b236)
```
Merge pull request #36 from djm68/change_installer_for_tar_gz_files
(maint) Installer support for tar.gz vs. plain tar
```
* (maint) Installer support for tar.gz vs. plain tar (b3fb8b23)
```
(maint) Installer support for tar.gz vs. plain tar
Change to handle tar.gz vs. plain tar files. We now move lots of
files around, including in ec2. Much more efficient to use tar.gz
vs plain tar files.
```
* Merge pull request #35 from mykhyggz/version_strings (29ce4ba6)
```
Merge pull request #35 from mykhyggz/version_strings
change puppet version string to match current
```
* change puppet version string to match current (8b541cdd)
* Merge pull request #10 from haus/add-trace (b9a7c683)
```
Merge pull request #10 from haus/add-trace
Add --trace to dashboard rake tasks so that when they fail, more verbose
```
* Merge pull request #32 from justinstoller/master (000023c8)
```
Merge pull request #32 from justinstoller/master
(#9668) add check for rack version
```
* Merge pull request #34 from mykhyggz/yaml_error (7dc30209)
```
Merge pull request #34 from mykhyggz/yaml_error
YAML Error: Inconsistent indentation level
```
* YAML Error: Inconsistent indentation level (a13daaff)
* Merge pull request #33 from haus/ticket/9494 (af089e27)
```
Merge pull request #33 from haus/ticket/9494
Removing dirty chmod hack to expose potential failure.
```
* Removing dirty chmod hack to expose potential failure. (2fa97ca9)
```
Removing dirty chmod hack to expose potential failure.
Signed-off-by: Matthaus Litteken
```
* properly specified packages (67bba35b)
* fixed typo: host['role'] > host['roles'] (d0a82a20)
* check rack version (85688086)
* Merge pull request #31 from djm68/ec2_mods (b4f5c2fd)
```
Merge pull request #31 from djm68/ec2_mods
(maint) modify harness to complete AWS PE installs
```
* (maint) Tweaks to answer file generation for aws installs (09a0498a)
* (maint) modify harness to complete AWS PE installs (13ce3b73)
* Merge pull request #30 from djm68/modify_answer_generation_for_aws (1cbbc69b)
```
Merge pull request #30 from djm68/modify_answer_generation_for_aws
(maint) Mods answer file generation for AWS installs
```
* (maint) Mods answer file generation for AWS installs (58f13e71)
```
(maint) Mods answer file generation for AWS installs
Due to the difference in AWS hostname scheme, need to query
http://169.254.169.254/2008-02-01/meta-data/public-hostname
for the corect cert name.
```
* Merge pull request #29 from djm68/add_aws_install_method (7627d852)
```
Merge pull request #29 from djm68/add_aws_install_method
(maint) Add ec2 install method
```
* (maint) Add ec2 install method (9b313486)
```
(maint) Add ec2 install method
For scale testing, we need the ability to install PE on ec2
instances. New install type "pe_aws" installs PE on nodes,
and works in conjunction with pe-builder to actually provision
the nodes.
```
* Merge pull request #27 from djm68/another_try_to_fix_agent_test (b835b42c)
```
Merge pull request #27 from djm68/another_try_to_fix_agent_test
(9140) puppet agent test fails
```
* (9140) puppet agent test fails (a6210a2a)
```
(9140) puppet agent test fails
Puppet agent --test fails in an unpredictable manner. Add an
addition sleep step to assist in debugging problem
```
* Merge pull request #26 from djm68/simplify_pe_checking (c4fe00b3)
```
Merge pull request #26 from djm68/simplify_pe_checking
(maint) More cleanup for PE type checking
```
* (maint) More cleanup for PE type checking (ad04f60a)
* Merge pull request #25 from djm68/cleanup_vmrun_code (9d8ee04a)
```
Merge pull request #25 from djm68/cleanup_vmrun_code
(maint) cleanup PE type checking
```
* (maint) cleanup PE type checking (6e346971)
```
(maint) cleanup PE type checking
several places in the test environment check for install type
"pe" and "pe_ro"; need only check for "pe".
```
* Merge pull request #24 from bodepd/dashboard_warning (64318770)
```
Merge pull request #24 from bodepd/dashboard_warning
(#9556) Dashboard should not be required for PE test
```
* (#9556) Dashboard should not be required for PE test (da38f63c)
```
(#9556) Dashboard should not be required for PE test
You should be able to request the hostname of the dashboard
host without making dashboard a required host for a test.
```
* Merge pull request #23 from bodepd/add_silent_option_back (4ba35eb3)
```
Merge pull request #23 from bodepd/add_silent_option_back
(maint) Add silent option back to on method
```
* (maint) Add silent option back to on method (bdcd4079)
```
(maint) Add silent option back to on method
We had unwittenly deprecated this option
and it turns out is used so this caused test
failures.
```
* Merge pull request #22 from bodepd/9538_skip_answers_generation_for_non-pe_tests (f1b2797f)
```
Merge pull request #22 from bodepd/9538_skip_answers_generation_for_non-pe_tests
(#9538) Do not generate PE answers arrays on non-PE tests
```
* (#9538) Do not generate PE answers arrays on non-PE tests (3020c1ca)
```
(#9538) Do not generate PE answers arrays on non-PE tests
Previously, the answers files templates were being generated on
non-PE tests. This makes it hard to make changes to the
answers generation and understand the tests that it may imact.
```
* Merge pull request #20 from djm68/fix_answerfile_generation (81a9444f)
```
Merge pull request #20 from djm68/fix_answerfile_generation
(maint) fix answer file gen -- breaking non PE tests
```
* (maint) fix answer file gen -- breaking non PE tests (f95db60c)
```
(maint) fix answer file gen -- breaking non PE tests
Answer file gen was using "dashboard" which is actually a method call
which checks for the validity of dashboard config; in this case, a
FOSS test has not dashboard and then fails
```
* (maint) add support for CP for vm reversion (7c5564f6)
```
(maint) add support for CP for vm reversion
The setup type pe_cp needed to be added to vmrun as supported setup
type.
```
* Merge pull request #19 from bodepd/update_vm_name (2cf66dfe)
```
Merge pull request #19 from bodepd/update_vm_name
(maint) update name of vm to use for tests
```
* (maint) update name of vm to use for tests (a16128b6)
* Merge pull request #18 from djm68/fix_stdout_logging (af74349d)
```
Merge pull request #18 from djm68/fix_stdout_logging
Fix stdout logging
```
* (maint) Improve logging (a99f4d08)
```
(maint) Improve logging
Adding hostname to output for stdout, stderr, exit code.
```
* (maint) Crust removal (2cbf842d)
* Merge pull request #17 from bodepd/cp_work (35ad88d9)
```
Merge pull request #17 from bodepd/cp_work
Cp work
```
* (#9519) Add config file for rhel 5 CP tests (821251df)
```
(#9519) Add config file for rhel 5 CP tests
Adds a config file for rhel5-latest i386.
```
* (#9494) document that chown line needs to be removed (ebcf55a1)
```
(#9494) document that chown line needs to be removed
it is actually masking a potential bug and needs to
be removed
```
* Merge pull request #16 from bodepd/9515_use_key_options (46352807)
```
Merge pull request #16 from bodepd/9515_use_key_options
(#9515) Use key options
```
* (#9515) Use key options (576c7784)
```
(#9515) Use key options
Need to update the CP setup script to use the new
key params.
```
* Merge pull request #15 from djm68/add_ssh_config_opts (9c6e010a)
```
Merge pull request #15 from djm68/add_ssh_config_opts
(maint) Adding support to pass sshkey and cloud ID as arg
```
* (maint) Adding support to pass sshkey and cloud ID as arg (b91ebfcb)
```
(maint) Adding support to pass sshkey and cloud ID as arg
Need ability to use alternate sshkeys and cloud provider ID keys
to allow provisioning and testing in clouds
```
* Merge pull request #14 from bodepd/ec2_support (194112bf)
```
Merge pull request #14 from bodepd/ec2_support
Ec2 support
```
* Only use one ec2 node. (08ffc23c)
```
Only use one ec2 node.
FOr performance, we only need one node from ec2.
This node can serve as both the dashboard and master.
```
* (#9494) chown reports dir on master (30a2c740)
```
(#9494) chown reports dir on master
This is a work-around for #9494. we fix the
permissions on the reports dir for the master after
installation. This should be removed when #9494 is
really fixed.
```
* (#9504) Add specified hostname as certdnsname (b992b147)
```
(#9504) Add specified hostname as certdnsname
To support ec2 where the hostname used is not the
same as what is returned by `hostname`
This patch adds the hostname from the config file
as a certdnsname.
```
* (maint) Add PE specific check for ruby (3eb4bd61)
```
(maint) Add PE specific check for ruby
Checking the version on ruby was blindly looking for Ruby in the
search path, else in the puppet bin dir. Made the test specific,
checking specifically for PE or non-PE installs.
```
* Add setup type for cp_pe (35819b56)
```
Add setup type for cp_pe
Adds a type that can be used to take a host config
file that does not have a master, create a new
node to serve as the master and generate a new
config file.
```
* Add ability to retrieve test config as a hash (9ddcee4e)
```
Add ability to retrieve test config as a hash
This can be used to save the current state of
tests so that hosts can be programmatically added
to existing configurations.
```
* Merge pull request #11 from djm68/cleanup_configs (9c0e9ca5)
```
Merge pull request #11 from djm68/cleanup_configs
(maint) clean up configs
```
* Merge pull request #13 from bodepd/9449_forward_agents (fab014ef)
```
Merge pull request #13 from bodepd/9449_forward_agents
(#9449) forward agents by default.
```
* (#9449) forward agents by default. (634a371b)
```
(#9449) forward agents by default.
Updates the test harness to forward ssh agent
by default.
This is a requirement of the acceptance tests for
the cloud provisioner.
```
* (maint) Modify harness to allow alternate ssh key (7763c47c)
```
(maint) Modify harness to allow alternate ssh key
To allow the use of alternate ssh credentials for use with such
things as EC2, we need the ability to used arbitrary ssh keys.
Added -k and --key
```
* (maint) Increment puppet version for CmdrKeith (c5008cc0)
* Add --trace to dashboard rake tasks so that when they fail, more verbose output is available. (23947b4d)
```
Add --trace to dashboard rake tasks so that when they fail, more verbose output is available.
Signed-off-by: Matthaus Litteken
```
### pe1.2 - 6 Sep, 2011 (ba3dadd2)
* Initial release.