README.md in beaker-hostgenerator-0.9.0 vs README.md in beaker-hostgenerator-0.10.0
- old
+ new
@@ -11,10 +11,11 @@
- [Usage](#usage)
- [Simple two-host layout](#simple-two-host-layout)
- [Single host with Arbitrary Roles](#single-host-with-arbitrary-roles)
- [Two hosts with multiple hypervisors and arbitrary host settings](#two-hosts-with-multiple-hypervisors-and-arbitrary-host-settings)
- [Two hosts with arbitrary host settings with arbitrary lists](#two-hosts-with-arbitrary-host-settings-with-arbitrary-lists)
+ - [Arbitrary nested hashes and arrays](#arbitrary-nested-hashes-and-arrays)
- [Arbitrary global configuration settings](#arbitrary-global-configuration-settings)
- [Custom hypervisor](#custom-hypervisor)
- [URL-encoded input](#url-encoded-input)
- [Testing](#testing)
- [Test Fixtures](#test-fixtures)
@@ -159,11 +160,11 @@
```
### Two hosts with arbitrary host settings with arbitrary lists
```
-$ beaker-hostgenerator centos6-64m{disks=\[16\]-redhat7-64a{disks=\[8\,16\]}
+$ beaker-hostgenerator centos6-64m{disks=\[16\]}-redhat7-64a{disks=\[8\,16\]}
```
Will generate
```yaml
@@ -198,9 +199,44 @@
nfs_server: none
consoleport: 443
pooling_api: http://vmpooler.delivery.puppetlabs.net/
```
+### Arbitrary nested hashes and arrays
+
+```
+$ beaker-hostgenerator --global-config {host_tags={lifetime=4h}\,list=[{listkey=listvalue}]\} redhat7-64m{hostlist=\[string\,{key=value}\,1234\]}
+```
+
+Will generate
+
+```yaml
+---
+HOSTS:
+ redhat7-64-1:
+ pe_dir:
+ pe_ver:
+ pe_upgrade_dir:
+ pe_upgrade_ver:
+ hypervisor: vmpooler
+ platform: el-7-x86_64
+ template: redhat-7-x86_64
+ hostlist:
+ - string
+ - key: value
+ - 1234
+ roles:
+ - agent
+ - master
+CONFIG:
+ nfs_server: none
+ consoleport: 443
+ pooling_api: http://vmpooler.delivery.puppetlabs.net/
+ host_tags:
+ lifetime: 4h
+ list:
+ - listkey: listvalue
+```
### Arbitrary global configuration settings
```
$ beaker-hostgenerator --global-config {preserve_hosts=onfail\,log_level=debug\,server.ip=12.345.6789} redhat7-64m