HISTORY.md in beaker-hostgenerator-0.5.0 vs HISTORY.md in beaker-hostgenerator-0.6.0
- old
+ new
@@ -1,18 +1,249 @@
# default - History
## Tags
-* [LATEST - 31 Mar, 2016 (36291ea6)](#LATEST)
+* [LATEST - 11 May, 2016 (4a8ee90e)](#LATEST)
+* [0.5.0 - 31 Mar, 2016 (fa3ae0c8)](#0.5.0)
* [0.4.0 - 10 Feb, 2016 (dc333b1c)](#0.4.0)
* [0.3.3 - 3 Feb, 2016 (41051da9)](#0.3.3)
* [0.3.2 - 28 Jan, 2016 (299df8ec)](#0.3.2)
* [0.3.1 - 30 Dec, 2015 (7a3f10ca)](#0.3.1)
* [0.3.0 - 30 Dec, 2015 (4b03eaf4)](#0.3.0)
* [0.2.0 - 22 Dec, 2015 (dfa33e5f)](#0.2.0)
* [0.1.0 - 21 Dec, 2015 (474f4ccb)](#0.1.0)
* [0.0.1 - 7 Oct, 2015 (d99251e6)](#0.0.1)
## Details
-### <a name = "LATEST">LATEST - 31 Mar, 2016 (36291ea6)
+### <a name = "LATEST">LATEST - 11 May, 2016 (4a8ee90e)
+
+* (GEM) update beaker-hostgenerator version to 0.6.0 (4a8ee90e)
+
+* Merge pull request #29 from nwolfe/maint/master/prepare-for-release (7e0decc0)
+
+
+```
+Merge pull request #29 from nwolfe/maint/master/prepare-for-release
+
+(maint) Prepare for 0.6.0 release
+```
+* (maint) Prepare for 0.6.0 release (c15c1bf6)
+
+* Merge pull request #28 from nwolfe/qeng3276/none-hypervisor-and-host-settings (d105e4bd)
+
+
+```
+Merge pull request #28 from nwolfe/qeng3276/none-hypervisor-and-host-settings
+
+(QENG-3276) Add None hypervisor and per-host settings support
+```
+* (QENG-3276) Minor refactorings; failing test fixture (b0926b22)
+
+
+```
+(QENG-3276) Minor refactorings; failing test fixture
+
+This commit includes the following minor refactorings based on feedback:
+* Inline if block surrounding arbitrary_settings['hostname']
+* Strip the `__` name prefix from `__generate_host_roles!` and make
+ private; adjust spec test accordingly
+* Change test fixture `expected_exception` support to not use the
+ dangerous `eval`, and added `per-host-settings/malformed-input.yaml`
+ test fixture to exercise the support
+```
+* (QENG-3276) Update CHANGELOG (0a170d42)
+
+
+```
+(QENG-3276) Update CHANGELOG
+
+This commit adds notes for the next release regarding the 'none'
+hypervisor and arbitrary key-value host settings support.
+```
+* (QENG-3276) Add more parser tests for failures (b80d94ab)
+
+
+```
+(QENG-3276) Add more parser tests for failures
+
+This commit adds tests that validate the proper exceptions are thrown
+when invalid arbitrary host settings are provided.
+
+This also expands host-setting support to include arbitrary whitespace
+to allow for more human-readable input.
+```
+* (MAINT) Wire up expected_excpetion test fitxure support (78cccb14)
+
+
+```
+(MAINT) Wire up expected_excpetion test fitxure support
+
+This commits finishes the work necessary to support expected exceptions
+defined in the test fixture YAML files.
+```
+* (QENG-3276) Move host role code into Roles module (78a2679e)
+
+
+```
+(QENG-3276) Move host role code into Roles module
+
+This commit moves the ROLES map and custom role config map out of the
+Data and Generator classes and into the Roles class.
+This also changes the implementation of custom role configuration from
+being a meta-programming method call into a standard map index.
+```
+* (QENG-3276) Extract code into new Parser module (9764fd7e)
+
+
+```
+(QENG-3276) Extract code into new Parser module
+
+This commit moves the NODE_REGEX constant and handful of methods tightly
+coupled to it into a new module called Parser. This module is
+responsible for dealing with the raw user input string and turning it
+into data structures that the Generator and hypervisors can operate on.
+```
+* (QENG-3276) Minor method refactoring (ce763dc0)
+
+
+```
+(QENG-3276) Minor method refactoring
+
+This commit renames a method, marks some methods as private, and
+extracts some logic into its own method.
+```
+* (QENG-3276) Update README (fd99cc9f)
+
+
+```
+(QENG-3276) Update README
+
+This commit updates the README to include an example of the new 'none'
+hypervisor and per-host settings.
+
+Also rename "Puppet Labs" references to just "Puppet".
+```
+* (QENG-3276) Update CLI help/usage text (7d85dff4)
+
+
+```
+(QENG-3276) Update CLI help/usage text
+
+This commit updates the CLI help text to mention the new arbitrary host
+settings support, and include the list of valid hypervisors when the
+`--list` option is given.
+```
+* (QENG-3276) Test fixtures for hypervisor and settings (34d4e649)
+
+
+```
+(QENG-3276) Test fixtures for hypervisor and settings
+
+This commit adds a couple hand-made test fixtures that exercise the new
+"none" hypervisor and arbitrary host settings support.
+```
+* Merge pull request #27 from nwolfe/maint/master/decouple-generator-and-hypervisors (52293374)
+
+
+```
+Merge pull request #27 from nwolfe/maint/master/decouple-generator-and-hypervisors
+
+(maint) Decouple hypervisors from generator
+```
+* (QENG-3276) Add None hypervisor and per-host settings support (ab38abef)
+
+
+```
+(QENG-3276) Add None hypervisor and per-host settings support
+
+This commit adds a new "none" hypervisor to support non-provisioned
+hosts. Non-provisioned hosts require a handful of other host settings to
+be specified in order for Beaker to use it properly, so this commit also
+adds support for arbitrary key-value host settings.
+
+For example:
+
+ $ .. centos6-64m{hypervisor=none,hostname=my-host,vmhostname=othername}
+ ---
+ HOSTS:
+ my-host:
+ pe_dir:
+ pe_ver:
+ pe_upgrade_dir:
+ pe_upgrade_ver:
+ platform: el-6-x86_64
+ hypervisor: none
+ vmhostname: othername
+ roles:
+ - agent
+ - master
+ CONFIG:
+ nfs_server: none
+ consoleport: 443
+```
+* (maint) Docstrings for new hypervisor architecture (9c35595f)
+
+
+```
+(maint) Docstrings for new hypervisor architecture
+
+This commit adds docstrings to modules and methods, specifically the
+BeakerHostGenerator::Hypervisor and BeakerHostGenerator::Data modules.
+```
+* (maint) Generate multi-platform test fixtures (996578cb)
+
+
+```
+(maint) Generate multi-platform test fixtures
+
+To help with test coverage, this adds a directory full of generated
+test fixtures with multi-platform hosts in a form similar to
+"centos6-64m-debian8-32-sles12-64a". Two of the three hosts have a
+random role assigned.
+```
+* (maint) New generated windows test fixtures (2591347e)
+
+
+```
+(maint) New generated windows test fixtures
+
+The rake task 'generate:fixtures' produced several new Windows fixtures.
+Perhaps we had previously updated the code to add support for more
+Windows platforms, but we forgot to re-generate the test fixtures?
+```
+* (maint) Decouple hypervisors from generator (aa39202e)
+
+
+```
+(maint) Decouple hypervisors from generator
+
+This commit is a large refactor that teases apart the generate code from
+the hypervisor code.
+
+Previously the VMPooler hypervisor class was a subclass of the Generator
+class, which was fine when there was only one hypervisor, but made it
+difficult to add support for per-host/multiple hypervisors.
+
+Now, there's a 1-to-many relationship between the Generator
+(BeakerHostGenerator::Generator) and the
+Hypervisors (BeakerHostGenerator::Hypervisor).
+
+The giant map of OSINFO data that was previously in the
+'data/vmpooler.rb' has been promoted and moved into data.rb as the
+`osinfo` module function. The parts specific to the VMPooler hypervisor
+have been nested under submaps keyed by the name of the hypervisor,
+`:vmpooler`.
+
+Adding support for a new hypervisor now requires implementing
+BeakerHostGenerator::Hypervisor::Interface, and adding any appropriate
+platform data as a submap to the OSINFO map in data.rb, keyed under a
+symbol named after the new hypervisor (e.g. `:my_hypervisor`).
+
+The module function `BeakerHostGenerator::Data.get_platform_info` can
+then be used when implementing the hypervisor to extract the relevant
+platform data under the key `:my_hypervisor`.
+```
+### <a name = "0.5.0">0.5.0 - 31 Mar, 2016 (fa3ae0c8)
+
+* (HISTORY) update beaker-hostgenerator history for gem release 0.5.0 (fa3ae0c8)
* (GEM) update beaker-hostgenerator version to 0.5.0 (36291ea6)
* (MAINT) Update changelog for pending release. (5b2e75bf)