wombat-cli 0.5.0 → 0.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +323 -10
- data/generator_files/cookbooks/automate/metadata.rb +1 -1
- data/generator_files/cookbooks/automate/recipes/default.rb +12 -0
- data/generator_files/cookbooks/workstation/metadata.rb +1 -1
- data/generator_files/cookbooks/workstation/recipes/certs-keys.rb +1 -1
- data/generator_files/cookbooks/workstation/recipes/default.rb +1 -0
- data/lib/wombat/build.rb +6 -48
- data/lib/wombat/cli.rb +18 -2
- data/lib/wombat/common.rb +54 -4
- data/lib/wombat/delete.rb +16 -43
- data/lib/wombat/deploy.rb +34 -7
- data/lib/wombat/output.rb +26 -11
- data/lib/wombat/version.rb +1 -1
- data/wombat-cli.gemspec +1 -0
- metadata +16 -3
- data/generator_files/templates/arm.tidy.json.erb +0 -32
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: b3386bfb67b39614535ca4fa63213acada01be17
|
|
4
|
+
data.tar.gz: eb926b84b51dfefd22c97dd0e20be1b57e3bf2da
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: b47d2093c0d4eb2573775df500089f11a98bb0bc358dbccc9043542b50cb0b8055110ab9c6c63d889d4a0807d0786828a055b90e66673f933608c6e385d6249f
|
|
7
|
+
data.tar.gz: e652deef64db3783f8d7be9ee56c3dc64cfe064eae6572edf68fa7c76501b05c1c5ae794d03093ea97035f611440e7057ad4121afc3f47f4e85df510c0013da5
|
data/CHANGELOG.md
CHANGED
|
@@ -1,30 +1,64 @@
|
|
|
1
1
|
# Change Log
|
|
2
2
|
|
|
3
|
+
## [v0.6.0](https://github.com/chef-cft/wombat/tree/v0.6.0)
|
|
4
|
+
|
|
5
|
+
[Full Changelog](https://github.com/chef-cft/wombat/compare/v0.5.0...v0.6.0)
|
|
6
|
+
|
|
7
|
+
**Closed issues:**
|
|
8
|
+
|
|
9
|
+
- resource group deletions [\#323](https://github.com/chef-cft/wombat/issues/323)
|
|
10
|
+
- ARM template needs wombat version awareness [\#321](https://github.com/chef-cft/wombat/issues/321)
|
|
11
|
+
- build on azure appends to logfile [\#318](https://github.com/chef-cft/wombat/issues/318)
|
|
12
|
+
- does wombat still need to install git? [\#308](https://github.com/chef-cft/wombat/issues/308)
|
|
13
|
+
|
|
14
|
+
**Merged pull requests:**
|
|
15
|
+
|
|
16
|
+
- Pin Chrome to known working version. [\#329](https://github.com/chef-cft/wombat/pull/329) ([scarolan](https://github.com/scarolan))
|
|
17
|
+
- Slow and steady wins the overextended metaphor. \(Sleeps for rabbit\) [\#327](https://github.com/chef-cft/wombat/pull/327) ([ChefRycar](https://github.com/ChefRycar))
|
|
18
|
+
- remove hardcoded cert import loop [\#326](https://github.com/chef-cft/wombat/pull/326) ([andrewelizondo](https://github.com/andrewelizondo))
|
|
19
|
+
- create file to disable telemetry [\#325](https://github.com/chef-cft/wombat/pull/325) ([andrewelizondo](https://github.com/andrewelizondo))
|
|
20
|
+
- Stack names and Resource Groups in Azure [\#324](https://github.com/chef-cft/wombat/pull/324) ([russellseymour](https://github.com/russellseymour))
|
|
21
|
+
|
|
3
22
|
## [v0.5.0](https://github.com/chef-cft/wombat/tree/v0.5.0) (2017-03-21)
|
|
4
23
|
[Full Changelog](https://github.com/chef-cft/wombat/compare/v0.4.3...v0.5.0)
|
|
5
24
|
|
|
25
|
+
**Implemented enhancements:**
|
|
26
|
+
|
|
27
|
+
- Base image to use in Azure should be in `wombat.yml` file [\#310](https://github.com/chef-cft/wombat/issues/310)
|
|
28
|
+
- Add support for Azure Managed Disks [\#309](https://github.com/chef-cft/wombat/issues/309)
|
|
29
|
+
|
|
30
|
+
**Closed issues:**
|
|
31
|
+
|
|
32
|
+
- azure-storage a missing gem in gemspec? [\#315](https://github.com/chef-cft/wombat/issues/315)
|
|
33
|
+
- Add Chef Tag for Azure Resources [\#313](https://github.com/chef-cft/wombat/issues/313)
|
|
34
|
+
- Google Chrome Chocolatey Package Fails Install [\#306](https://github.com/chef-cft/wombat/issues/306)
|
|
35
|
+
|
|
6
36
|
**Merged pull requests:**
|
|
7
37
|
|
|
38
|
+
- Release 0.5.0 [\#320](https://github.com/chef-cft/wombat/pull/320) ([binamov](https://github.com/binamov))
|
|
8
39
|
- no more Administrator [\#319](https://github.com/chef-cft/wombat/pull/319) ([binamov](https://github.com/binamov))
|
|
9
40
|
- Select whether to use Managed Disks or not [\#317](https://github.com/chef-cft/wombat/pull/317) ([russellseymour](https://github.com/russellseymour))
|
|
10
41
|
- azure enhancements [\#316](https://github.com/chef-cft/wombat/pull/316) ([binamov](https://github.com/binamov))
|
|
11
42
|
- Added Azure Provide Tag for Chef to resources [\#314](https://github.com/chef-cft/wombat/pull/314) ([russellseymour](https://github.com/russellseymour))
|
|
12
43
|
- Added support for Azure Managed Disks [\#312](https://github.com/chef-cft/wombat/pull/312) ([russellseymour](https://github.com/russellseymour))
|
|
44
|
+
- Azure base image can now be specified in wombat.yml [\#311](https://github.com/chef-cft/wombat/pull/311) ([russellseymour](https://github.com/russellseymour))
|
|
13
45
|
- Remove checksum verification for Google Chrome Chocolatey package [\#307](https://github.com/chef-cft/wombat/pull/307) ([nweddle](https://github.com/nweddle))
|
|
46
|
+
- Release 0.4.3 [\#305](https://github.com/chef-cft/wombat/pull/305) ([binamov](https://github.com/binamov))
|
|
14
47
|
|
|
15
48
|
## [v0.4.3](https://github.com/chef-cft/wombat/tree/v0.4.3) (2017-02-23)
|
|
16
49
|
[Full Changelog](https://github.com/chef-cft/wombat/compare/v0.4.2...v0.4.3)
|
|
17
50
|
|
|
18
51
|
**Merged pull requests:**
|
|
19
52
|
|
|
20
|
-
-
|
|
53
|
+
- namespacery [\#304](https://github.com/chef-cft/wombat/pull/304) ([binamov](https://github.com/binamov))
|
|
54
|
+
- Release 0.4.2 [\#303](https://github.com/chef-cft/wombat/pull/303) ([binamov](https://github.com/binamov))
|
|
21
55
|
|
|
22
56
|
## [v0.4.2](https://github.com/chef-cft/wombat/tree/v0.4.2) (2017-02-23)
|
|
23
57
|
[Full Changelog](https://github.com/chef-cft/wombat/compare/v0.4.1...v0.4.2)
|
|
24
58
|
|
|
25
59
|
**Merged pull requests:**
|
|
26
60
|
|
|
27
|
-
-
|
|
61
|
+
- namespace fix, unblocks bjc pipeline deploys [\#302](https://github.com/chef-cft/wombat/pull/302) ([binamov](https://github.com/binamov))
|
|
28
62
|
|
|
29
63
|
## [v0.4.1](https://github.com/chef-cft/wombat/tree/v0.4.1) (2017-02-23)
|
|
30
64
|
[Full Changelog](https://github.com/chef-cft/wombat/compare/v0.4.0...v0.4.1)
|
|
@@ -36,6 +70,7 @@
|
|
|
36
70
|
|
|
37
71
|
**Merged pull requests:**
|
|
38
72
|
|
|
73
|
+
- Release 0.4.1 [\#301](https://github.com/chef-cft/wombat/pull/301) ([cheeseplus](https://github.com/cheeseplus))
|
|
39
74
|
- Options not being seen by `base\_image` fixes \#299 [\#300](https://github.com/chef-cft/wombat/pull/300) ([russellseymour](https://github.com/russellseymour))
|
|
40
75
|
- Enabled outputs for Azure deployments [\#298](https://github.com/chef-cft/wombat/pull/298) ([russellseymour](https://github.com/russellseymour))
|
|
41
76
|
- chef-server-ctl don't work on compliance [\#297](https://github.com/chef-cft/wombat/pull/297) ([binamov](https://github.com/binamov))
|
|
@@ -48,15 +83,48 @@
|
|
|
48
83
|
[Full Changelog](https://github.com/chef-cft/wombat/compare/v0.3.4...v0.4.0)
|
|
49
84
|
|
|
50
85
|
**Implemented enhancements:**
|
|
86
|
+
|
|
87
|
+
- Templatized kitchen-ec2 setups. [\#280](https://github.com/chef-cft/wombat/issues/280)
|
|
88
|
+
- Add Test Kitchen data to visibility [\#279](https://github.com/chef-cft/wombat/issues/279)
|
|
51
89
|
- Decrease data\_collector timeout during build [\#262](https://github.com/chef-cft/wombat/issues/262)
|
|
90
|
+
- Add in debug support for packer [\#260](https://github.com/chef-cft/wombat/issues/260)
|
|
91
|
+
- Add Visual Studio Code to installed programs [\#210](https://github.com/chef-cft/wombat/issues/210)
|
|
92
|
+
- AWS: Alias for latest AMI that looks it up [\#208](https://github.com/chef-cft/wombat/issues/208)
|
|
93
|
+
|
|
94
|
+
**Closed issues:**
|
|
95
|
+
|
|
96
|
+
- Wombat throws an error when building Infranodes but the packer command is OK [\#284](https://github.com/chef-cft/wombat/issues/284)
|
|
97
|
+
- Windows machines cannot be prepared for Azure after running cookbooks [\#278](https://github.com/chef-cft/wombat/issues/278)
|
|
98
|
+
- When building for Azure `packer` does not complete properly [\#277](https://github.com/chef-cft/wombat/issues/277)
|
|
99
|
+
- posh-git not installing correctly [\#274](https://github.com/chef-cft/wombat/issues/274)
|
|
100
|
+
- `wombat build` command should have an option to make AMIs public [\#271](https://github.com/chef-cft/wombat/issues/271)
|
|
101
|
+
- wombat.yml shouldn't be a hardcoded name [\#265](https://github.com/chef-cft/wombat/issues/265)
|
|
102
|
+
- AWS: Default Windows AMI is deprecated [\#203](https://github.com/chef-cft/wombat/issues/203)
|
|
103
|
+
- Azure: verify build process and add ARM template [\#43](https://github.com/chef-cft/wombat/issues/43)
|
|
104
|
+
|
|
105
|
+
**Merged pull requests:**
|
|
106
|
+
|
|
107
|
+
- Release 0.4.0 [\#291](https://github.com/chef-cft/wombat/pull/291) ([cheeseplus](https://github.com/cheeseplus))
|
|
108
|
+
- Adding Travis config and fixing spec tests [\#290](https://github.com/chef-cft/wombat/pull/290) ([cheeseplus](https://github.com/cheeseplus))
|
|
52
109
|
- Add new command`latest` for getting latest cloud images [\#289](https://github.com/chef-cft/wombat/pull/289) ([cheeseplus](https://github.com/cheeseplus))
|
|
110
|
+
- Refactor how source\_ami/image work [\#288](https://github.com/chef-cft/wombat/pull/288) ([cheeseplus](https://github.com/cheeseplus))
|
|
111
|
+
- Owner now defaults to USER from ENV [\#287](https://github.com/chef-cft/wombat/pull/287) ([russellseymour](https://github.com/russellseymour))
|
|
112
|
+
- Azure updates 2017-02-07 [\#286](https://github.com/chef-cft/wombat/pull/286) ([russellseymour](https://github.com/russellseymour))
|
|
113
|
+
- Creation and removal of stack within Azure [\#285](https://github.com/chef-cft/wombat/pull/285) ([russellseymour](https://github.com/russellseymour))
|
|
114
|
+
- fixes for changed automate api [\#283](https://github.com/chef-cft/wombat/pull/283) ([binamov](https://github.com/binamov))
|
|
115
|
+
- Modified IP range in Azure to match Wombat attributes [\#282](https://github.com/chef-cft/wombat/pull/282) ([russellseymour](https://github.com/russellseymour))
|
|
116
|
+
- Namespacing, break out crypto, and tests [\#281](https://github.com/chef-cft/wombat/pull/281) ([cheeseplus](https://github.com/cheeseplus))
|
|
117
|
+
- Fix posh-git PowerShell module loading [\#275](https://github.com/chef-cft/wombat/pull/275) ([nweddle](https://github.com/nweddle))
|
|
118
|
+
- Azure custom images [\#273](https://github.com/chef-cft/wombat/pull/273) ([russellseymour](https://github.com/russellseymour))
|
|
119
|
+
- Update Azure templates and add ARM ERB template [\#272](https://github.com/chef-cft/wombat/pull/272) ([cheeseplus](https://github.com/cheeseplus))
|
|
120
|
+
- Merging in changes from rjs-azure [\#269](https://github.com/chef-cft/wombat/pull/269) ([cheeseplus](https://github.com/cheeseplus))
|
|
121
|
+
- Make files\_dir toggleable and set default consistently [\#268](https://github.com/chef-cft/wombat/pull/268) ([cheeseplus](https://github.com/cheeseplus))
|
|
122
|
+
- add conf to infranodes path, remove repetition, fix typo [\#267](https://github.com/chef-cft/wombat/pull/267) ([andrewelizondo](https://github.com/andrewelizondo))
|
|
53
123
|
- add cli option, env variable, and default wombat.yml [\#266](https://github.com/chef-cft/wombat/pull/266) ([andrewelizondo](https://github.com/andrewelizondo))
|
|
54
|
-
- Fixes for changed automate api [\#283](https://github.com/chef-cft/wombat/pull/283) ([binamov](https://github.com/binamov))
|
|
55
124
|
- Re-enable .NET speed optimizations [\#264](https://github.com/chef-cft/wombat/pull/264) ([nweddle](https://github.com/nweddle))
|
|
56
|
-
-
|
|
57
|
-
-
|
|
58
|
-
-
|
|
59
|
-
- Lots of Azure support work by ([russellseymour](https://github.com/russellseymour))
|
|
125
|
+
- Rycar/reduce dc timeout [\#263](https://github.com/chef-cft/wombat/pull/263) ([ChefRycar](https://github.com/ChefRycar))
|
|
126
|
+
- Fixing path for files dir to be top-level everywhere [\#261](https://github.com/chef-cft/wombat/pull/261) ([cheeseplus](https://github.com/cheeseplus))
|
|
127
|
+
- Release 0.3.4 [\#258](https://github.com/chef-cft/wombat/pull/258) ([cheeseplus](https://github.com/cheeseplus))
|
|
60
128
|
|
|
61
129
|
## [v0.3.4](https://github.com/chef-cft/wombat/tree/v0.3.4) (2016-12-07)
|
|
62
130
|
[Full Changelog](https://github.com/chef-cft/wombat/compare/v0.3.3...v0.3.4)
|
|
@@ -64,14 +132,14 @@
|
|
|
64
132
|
**Merged pull requests:**
|
|
65
133
|
|
|
66
134
|
- Cmder workaround workstation build [\#257](https://github.com/chef-cft/wombat/pull/257) ([andrewelizondo](https://github.com/andrewelizondo))
|
|
67
|
-
-
|
|
68
|
-
|
|
135
|
+
- aww yeah baby [\#256](https://github.com/chef-cft/wombat/pull/256) ([andrewelizondo](https://github.com/andrewelizondo))
|
|
69
136
|
|
|
70
137
|
## [v0.3.3](https://github.com/chef-cft/wombat/tree/v0.3.3) (2016-11-15)
|
|
71
138
|
[Full Changelog](https://github.com/chef-cft/wombat/compare/v0.3.2...v0.3.3)
|
|
72
139
|
|
|
73
140
|
**Merged pull requests:**
|
|
74
141
|
|
|
142
|
+
- Prep 0.3.3 for release [\#254](https://github.com/chef-cft/wombat/pull/254) ([cheeseplus](https://github.com/cheeseplus))
|
|
75
143
|
- The dotnet opimizations are breaking builds, disabling recipe [\#253](https://github.com/chef-cft/wombat/pull/253) ([cheeseplus](https://github.com/cheeseplus))
|
|
76
144
|
|
|
77
145
|
## [v0.3.2](https://github.com/chef-cft/wombat/tree/v0.3.2) (2016-11-14)
|
|
@@ -91,6 +159,251 @@
|
|
|
91
159
|
- 0.3.1 release [\#246](https://github.com/chef-cft/wombat/pull/246) ([cheeseplus](https://github.com/cheeseplus))
|
|
92
160
|
- Log parsing, like honeybader, does not give... [\#245](https://github.com/chef-cft/wombat/pull/245) ([cheeseplus](https://github.com/cheeseplus))
|
|
93
161
|
|
|
162
|
+
## [v0.3.0](https://github.com/chef-cft/wombat/tree/v0.3.0) (2016-11-03)
|
|
163
|
+
[Full Changelog](https://github.com/chef-cft/wombat/compare/v0.2.1...v0.3.0)
|
|
164
|
+
|
|
165
|
+
**Closed issues:**
|
|
166
|
+
|
|
167
|
+
- Need ability to specify iam\_profile for the Windows workstation [\#240](https://github.com/chef-cft/wombat/issues/240)
|
|
168
|
+
- No multiple WS usernames in Automate server, Chef Server, or Compliance server [\#236](https://github.com/chef-cft/wombat/issues/236)
|
|
169
|
+
- ./wombat deploy bjc-demo fails if there are no logs in packer/logs [\#234](https://github.com/chef-cft/wombat/issues/234)
|
|
170
|
+
- remove hardcoded template names [\#231](https://github.com/chef-cft/wombat/issues/231)
|
|
171
|
+
- wombat-cli in rubygems needs a bump [\#230](https://github.com/chef-cft/wombat/issues/230)
|
|
172
|
+
|
|
173
|
+
**Merged pull requests:**
|
|
174
|
+
|
|
175
|
+
- Add init subcommand and become a real gem [\#244](https://github.com/chef-cft/wombat/pull/244) ([cheeseplus](https://github.com/cheeseplus))
|
|
176
|
+
- Add update command for lock and template [\#243](https://github.com/chef-cft/wombat/pull/243) ([cheeseplus](https://github.com/cheeseplus))
|
|
177
|
+
- Optionally apply IAM roles to workstations. Fix \#240 [\#242](https://github.com/chef-cft/wombat/pull/242) ([cheeseplus](https://github.com/cheeseplus))
|
|
178
|
+
- Make configuration truly optional [\#241](https://github.com/chef-cft/wombat/pull/241) ([cheeseplus](https://github.com/cheeseplus))
|
|
94
179
|
|
|
180
|
+
## [v0.2.1](https://github.com/chef-cft/wombat/tree/v0.2.1) (2016-10-19)
|
|
181
|
+
**Implemented enhancements:**
|
|
182
|
+
|
|
183
|
+
- Generate sample data and node backups for Compliance server [\#172](https://github.com/chef-cft/wombat/issues/172)
|
|
184
|
+
- Sort out how to copy license key to Delivery server [\#138](https://github.com/chef-cft/wombat/issues/138)
|
|
185
|
+
- Add bookmarks to Learn Chef tutorials on the workstation [\#126](https://github.com/chef-cft/wombat/issues/126)
|
|
186
|
+
- all packer templates should have the same variables, simplifying our rake commands [\#124](https://github.com/chef-cft/wombat/issues/124)
|
|
187
|
+
- Chef DK now includes Delivery CLI [\#123](https://github.com/chef-cft/wombat/issues/123)
|
|
188
|
+
- set FQDN in config for all server products [\#93](https://github.com/chef-cft/wombat/issues/93)
|
|
189
|
+
|
|
190
|
+
**Fixed bugs:**
|
|
191
|
+
|
|
192
|
+
- delivery: automate and viz bomb because /etc/hosts file is missing localhost [\#167](https://github.com/chef-cft/wombat/issues/167)
|
|
193
|
+
- Infranodes have invalid client config [\#117](https://github.com/chef-cft/wombat/issues/117)
|
|
194
|
+
- Extra AMIs are generated [\#116](https://github.com/chef-cft/wombat/issues/116)
|
|
195
|
+
- Infranodes aren't available for push jobs [\#110](https://github.com/chef-cft/wombat/issues/110)
|
|
196
|
+
- Cannot run push jobs on nodes from Windows workstation [\#108](https://github.com/chef-cft/wombat/issues/108)
|
|
197
|
+
- Windows workstation should have a Chef server config [\#99](https://github.com/chef-cft/wombat/issues/99)
|
|
198
|
+
|
|
199
|
+
**Closed issues:**
|
|
200
|
+
|
|
201
|
+
- How does this relate to the main Automate documentation? [\#229](https://github.com/chef-cft/wombat/issues/229)
|
|
202
|
+
- Support CentOS [\#217](https://github.com/chef-cft/wombat/issues/217)
|
|
203
|
+
- Add Cucumber tests [\#215](https://github.com/chef-cft/wombat/issues/215)
|
|
204
|
+
- Move keys to top level dir [\#211](https://github.com/chef-cft/wombat/issues/211)
|
|
205
|
+
- Building workstation image fails [\#204](https://github.com/chef-cft/wombat/issues/204)
|
|
206
|
+
- workstation: Upon first boot, .NET compiles all the things, leading to clunky experience [\#202](https://github.com/chef-cft/wombat/issues/202)
|
|
207
|
+
- Extract PSReadLine resource needs a guard [\#196](https://github.com/chef-cft/wombat/issues/196)
|
|
208
|
+
- include `keys:create` task in `packer:build\_ami\*` commands [\#188](https://github.com/chef-cft/wombat/issues/188)
|
|
209
|
+
- Abstract Common Functions to Wombat [\#182](https://github.com/chef-cft/wombat/issues/182)
|
|
210
|
+
- Infranodes have no tests [\#181](https://github.com/chef-cft/wombat/issues/181)
|
|
211
|
+
- Whats in a name? [\#180](https://github.com/chef-cft/wombat/issues/180)
|
|
212
|
+
- add workstation to hosts file [\#176](https://github.com/chef-cft/wombat/issues/176)
|
|
213
|
+
- The Great Automate Renaming [\#175](https://github.com/chef-cft/wombat/issues/175)
|
|
214
|
+
- chef-server::cheffish needs support for environments [\#169](https://github.com/chef-cft/wombat/issues/169)
|
|
215
|
+
- support multiple workstations [\#163](https://github.com/chef-cft/wombat/issues/163)
|
|
216
|
+
- Delivery should NOT delete its license [\#159](https://github.com/chef-cft/wombat/issues/159)
|
|
217
|
+
- s/delivery.license/automate.license [\#158](https://github.com/chef-cft/wombat/issues/158)
|
|
218
|
+
- Chef Server build breaks on v 12.8.0 [\#153](https://github.com/chef-cft/wombat/issues/153)
|
|
219
|
+
- Update Chrome bookmarks [\#150](https://github.com/chef-cft/wombat/issues/150)
|
|
220
|
+
- Sorting of infra breaks on an empty array [\#139](https://github.com/chef-cft/wombat/issues/139)
|
|
221
|
+
- Build nodes are not using the provided chefdk version attribute. [\#135](https://github.com/chef-cft/wombat/issues/135)
|
|
222
|
+
- Chef version not being used in bootstrap process [\#134](https://github.com/chef-cft/wombat/issues/134)
|
|
223
|
+
- Push jobs not configured in all environments [\#133](https://github.com/chef-cft/wombat/issues/133)
|
|
224
|
+
- workstation\_spec.rb failures [\#127](https://github.com/chef-cft/wombat/issues/127)
|
|
225
|
+
- Do initial CCR on infranodes during cloud-init [\#114](https://github.com/chef-cft/wombat/issues/114)
|
|
226
|
+
- Windows workstation: knife doesn't know what server\_url is [\#107](https://github.com/chef-cft/wombat/issues/107)
|
|
227
|
+
- etc-hosts recipe doesn't respect infranodes on windows [\#101](https://github.com/chef-cft/wombat/issues/101)
|
|
228
|
+
- CFN template contains invalid AMI IDs [\#96](https://github.com/chef-cft/wombat/issues/96)
|
|
229
|
+
- ordering in /etc/hosts matters for automatically setting FQDN [\#92](https://github.com/chef-cft/wombat/issues/92)
|
|
230
|
+
- Support multiple regions [\#91](https://github.com/chef-cft/wombat/issues/91)
|
|
231
|
+
- workstation has hardcoded hostsfile [\#84](https://github.com/chef-cft/wombat/issues/84)
|
|
232
|
+
- delivery and build-node cookbooks no longer allow for multiple build-nodes [\#75](https://github.com/chef-cft/wombat/issues/75)
|
|
233
|
+
- wombat.json is becoming overly complex [\#74](https://github.com/chef-cft/wombat/issues/74)
|
|
234
|
+
- Add cloudinit to CloudFormation instance resources [\#70](https://github.com/chef-cft/wombat/issues/70)
|
|
235
|
+
- Update Readme to reflect refactoring [\#69](https://github.com/chef-cft/wombat/issues/69)
|
|
236
|
+
- Add tests to build-node cookbook [\#67](https://github.com/chef-cft/wombat/issues/67)
|
|
237
|
+
- after renaming the delivery server to delivery, the cert is throwing a name mismatch [\#55](https://github.com/chef-cft/wombat/issues/55)
|
|
238
|
+
- instead of a cert for chef/delivery separately, we should just create a self signed star cert [\#54](https://github.com/chef-cft/wombat/issues/54)
|
|
239
|
+
- The Curious Case of License Keys [\#51](https://github.com/chef-cft/wombat/issues/51)
|
|
240
|
+
- Determine how to pre-load data [\#50](https://github.com/chef-cft/wombat/issues/50)
|
|
241
|
+
- Add virtualbox builder for packer [\#39](https://github.com/chef-cft/wombat/issues/39)
|
|
242
|
+
- Create acceptance node build [\#35](https://github.com/chef-cft/wombat/issues/35)
|
|
243
|
+
- Add chef compliance build [\#34](https://github.com/chef-cft/wombat/issues/34)
|
|
244
|
+
- Output artifact: CloudFormation template [\#28](https://github.com/chef-cft/wombat/issues/28)
|
|
245
|
+
- delivery\_builder: configure with cookbook [\#27](https://github.com/chef-cft/wombat/issues/27)
|
|
246
|
+
- Need to cleanup packer logs or not simply append [\#15](https://github.com/chef-cft/wombat/issues/15)
|
|
247
|
+
|
|
248
|
+
**Merged pull requests:**
|
|
95
249
|
|
|
96
|
-
|
|
250
|
+
- Release 0.2.1 [\#239](https://github.com/chef-cft/wombat/pull/239) ([cheeseplus](https://github.com/cheeseplus))
|
|
251
|
+
- Update readme to reflect new options [\#238](https://github.com/chef-cft/wombat/pull/238) ([cheeseplus](https://github.com/cheeseplus))
|
|
252
|
+
- Make updating the lock and template optional [\#237](https://github.com/chef-cft/wombat/pull/237) ([cheeseplus](https://github.com/cheeseplus))
|
|
253
|
+
- fixes multi-ws, multi-build-node cft generation [\#235](https://github.com/chef-cft/wombat/pull/235) ([binamov](https://github.com/binamov))
|
|
254
|
+
- Adjustable timeout [\#226](https://github.com/chef-cft/wombat/pull/226) ([cheeseplus](https://github.com/cheeseplus))
|
|
255
|
+
- Workstation builds based on key [\#225](https://github.com/chef-cft/wombat/pull/225) ([cheeseplus](https://github.com/cheeseplus))
|
|
256
|
+
- Fixing parallel builds [\#224](https://github.com/chef-cft/wombat/pull/224) ([cheeseplus](https://github.com/cheeseplus))
|
|
257
|
+
- Fix linux infranodes, build, and logic refactor [\#223](https://github.com/chef-cft/wombat/pull/223) ([cheeseplus](https://github.com/cheeseplus))
|
|
258
|
+
- Instance resizing [\#222](https://github.com/chef-cft/wombat/pull/222) ([cheeseplus](https://github.com/cheeseplus))
|
|
259
|
+
- Windows infranodes GO [\#221](https://github.com/chef-cft/wombat/pull/221) ([cheeseplus](https://github.com/cheeseplus))
|
|
260
|
+
- Infranodes cookbook windows support [\#220](https://github.com/chef-cft/wombat/pull/220) ([cheeseplus](https://github.com/cheeseplus))
|
|
261
|
+
- Simplify build logic [\#219](https://github.com/chef-cft/wombat/pull/219) ([cheeseplus](https://github.com/cheeseplus))
|
|
262
|
+
- Adding CentOS support parity [\#218](https://github.com/chef-cft/wombat/pull/218) ([cheeseplus](https://github.com/cheeseplus))
|
|
263
|
+
- Remove errant cookbook [\#216](https://github.com/chef-cft/wombat/pull/216) ([cheeseplus](https://github.com/cheeseplus))
|
|
264
|
+
- Wombat has morphed into a RubyGem [\#213](https://github.com/chef-cft/wombat/pull/213) ([cheeseplus](https://github.com/cheeseplus))
|
|
265
|
+
- Fixes \#211 [\#212](https://github.com/chef-cft/wombat/pull/212) ([cheeseplus](https://github.com/cheeseplus))
|
|
266
|
+
- Update README.md [\#209](https://github.com/chef-cft/wombat/pull/209) ([andrewelizondo](https://github.com/andrewelizondo))
|
|
267
|
+
- All Hail Wombat [\#207](https://github.com/chef-cft/wombat/pull/207) ([cheeseplus](https://github.com/cheeseplus))
|
|
268
|
+
- Make .NET Great Again [\#206](https://github.com/chef-cft/wombat/pull/206) ([nweddle](https://github.com/nweddle))
|
|
269
|
+
- Move authorized keys functionality into Wombat cookbook [\#201](https://github.com/chef-cft/wombat/pull/201) ([cheeseplus](https://github.com/cheeseplus))
|
|
270
|
+
- Fix tests [\#200](https://github.com/chef-cft/wombat/pull/200) ([cheeseplus](https://github.com/cheeseplus))
|
|
271
|
+
- The PTY, we needs it [\#199](https://github.com/chef-cft/wombat/pull/199) ([cheeseplus](https://github.com/cheeseplus))
|
|
272
|
+
- Ask your doctor if Guards are right for you [\#198](https://github.com/chef-cft/wombat/pull/198) ([scarolan](https://github.com/scarolan))
|
|
273
|
+
- Adding support for GCE [\#193](https://github.com/chef-cft/wombat/pull/193) ([cheeseplus](https://github.com/cheeseplus))
|
|
274
|
+
- ensure we're using the correct local variable name [\#192](https://github.com/chef-cft/wombat/pull/192) ([andrewelizondo](https://github.com/andrewelizondo))
|
|
275
|
+
- fixes ssh for workstation-N users [\#190](https://github.com/chef-cft/wombat/pull/190) ([binamov](https://github.com/binamov))
|
|
276
|
+
- Fixing more rename fallout because I am a bad man [\#189](https://github.com/chef-cft/wombat/pull/189) ([cheeseplus](https://github.com/cheeseplus))
|
|
277
|
+
- add support for chef environments [\#187](https://github.com/chef-cft/wombat/pull/187) ([andrewelizondo](https://github.com/andrewelizondo))
|
|
278
|
+
- Suppress crt/key content [\#185](https://github.com/chef-cft/wombat/pull/185) ([cheeseplus](https://github.com/cheeseplus))
|
|
279
|
+
- Fixing serial and parallel build\_all tasks [\#184](https://github.com/chef-cft/wombat/pull/184) ([cheeseplus](https://github.com/cheeseplus))
|
|
280
|
+
- The road to hell is paved with dashes [\#183](https://github.com/chef-cft/wombat/pull/183) ([cheeseplus](https://github.com/cheeseplus))
|
|
281
|
+
- The Great Renaming [\#179](https://github.com/chef-cft/wombat/pull/179) ([cheeseplus](https://github.com/cheeseplus))
|
|
282
|
+
- Fix the install command for Windows [\#178](https://github.com/chef-cft/wombat/pull/178) ([cheeseplus](https://github.com/cheeseplus))
|
|
283
|
+
- Fixing compliance user [\#177](https://github.com/chef-cft/wombat/pull/177) ([cheeseplus](https://github.com/cheeseplus))
|
|
284
|
+
- Cleanup the variables across templates [\#174](https://github.com/chef-cft/wombat/pull/174) ([cheeseplus](https://github.com/cheeseplus))
|
|
285
|
+
- waffle.io Badge [\#173](https://github.com/chef-cft/wombat/pull/173) ([waffle-iron](https://github.com/waffle-iron))
|
|
286
|
+
- Fixes for multi workstation and cheffish permissions [\#171](https://github.com/chef-cft/wombat/pull/171) ([cheeseplus](https://github.com/cheeseplus))
|
|
287
|
+
- Cleaner hostsfile workaround - fixes \#167 [\#170](https://github.com/chef-cft/wombat/pull/170) ([cheeseplus](https://github.com/cheeseplus))
|
|
288
|
+
- Support multiple workstations [\#166](https://github.com/chef-cft/wombat/pull/166) ([cheeseplus](https://github.com/cheeseplus))
|
|
289
|
+
- Chocolately is enforcing security that not all packages abide by - temp fix [\#165](https://github.com/chef-cft/wombat/pull/165) ([cheeseplus](https://github.com/cheeseplus))
|
|
290
|
+
- Since we've changed the default domain, we need to regen keys [\#164](https://github.com/chef-cft/wombat/pull/164) ([cheeseplus](https://github.com/cheeseplus))
|
|
291
|
+
- Updating defaults and making naming simpler [\#162](https://github.com/chef-cft/wombat/pull/162) ([cheeseplus](https://github.com/cheeseplus))
|
|
292
|
+
- makes ssh\_key in kitchen path agnostic [\#161](https://github.com/chef-cft/wombat/pull/161) ([binamov](https://github.com/binamov))
|
|
293
|
+
- does not delete delivery.license, fixes \#159 [\#160](https://github.com/chef-cft/wombat/pull/160) ([binamov](https://github.com/binamov))
|
|
294
|
+
- fixes ~/.ssh/config for real this time [\#157](https://github.com/chef-cft/wombat/pull/157) ([binamov](https://github.com/binamov))
|
|
295
|
+
- More CloudFormation powers [\#156](https://github.com/chef-cft/wombat/pull/156) ([cheeseplus](https://github.com/cheeseplus))
|
|
296
|
+
- Fix rake aborting when infranodes: YAML key value is undefined [\#155](https://github.com/chef-cft/wombat/pull/155) ([nweddle](https://github.com/nweddle))
|
|
297
|
+
- add api\_fqdn to chef-server.rb [\#152](https://github.com/chef-cft/wombat/pull/152) ([andrewelizondo](https://github.com/andrewelizondo))
|
|
298
|
+
- fixes ~/.ssh/config for delivery [\#151](https://github.com/chef-cft/wombat/pull/151) ([binamov](https://github.com/binamov))
|
|
299
|
+
- Delete the license key [\#149](https://github.com/chef-cft/wombat/pull/149) ([tpetchel](https://github.com/tpetchel))
|
|
300
|
+
- Add bookmark to Learn Chef tutorial [\#148](https://github.com/chef-cft/wombat/pull/148) ([tpetchel](https://github.com/tpetchel))
|
|
301
|
+
- Copy the pub key to workstation [\#147](https://github.com/chef-cft/wombat/pull/147) ([cheeseplus](https://github.com/cheeseplus))
|
|
302
|
+
- Use the API [\#146](https://github.com/chef-cft/wombat/pull/146) ([cheeseplus](https://github.com/cheeseplus))
|
|
303
|
+
- Lazy load wombat cookbook artifacts [\#145](https://github.com/chef-cft/wombat/pull/145) ([andrewelizondo](https://github.com/andrewelizondo))
|
|
304
|
+
- add keys:create task to recipe [\#144](https://github.com/chef-cft/wombat/pull/144) ([andrewelizondo](https://github.com/andrewelizondo))
|
|
305
|
+
- simplify kitchen build, output artifacts into shared directory [\#143](https://github.com/chef-cft/wombat/pull/143) ([andrewelizondo](https://github.com/andrewelizondo))
|
|
306
|
+
- kitchenize our build process [\#142](https://github.com/chef-cft/wombat/pull/142) ([andrewelizondo](https://github.com/andrewelizondo))
|
|
307
|
+
- remove unneeded guards in packer\_build method [\#141](https://github.com/chef-cft/wombat/pull/141) ([andrewelizondo](https://github.com/andrewelizondo))
|
|
308
|
+
- Added if to sort to account for empty array. Updated readme with corr… [\#140](https://github.com/chef-cft/wombat/pull/140) ([ChefRycar](https://github.com/ChefRycar))
|
|
309
|
+
- sort when reading the rakefile [\#137](https://github.com/chef-cft/wombat/pull/137) ([andrewelizondo](https://github.com/andrewelizondo))
|
|
310
|
+
- change the do\_all command to update wombat.lock [\#136](https://github.com/chef-cft/wombat/pull/136) ([andrewelizondo](https://github.com/andrewelizondo))
|
|
311
|
+
- Set fqdn compliance [\#132](https://github.com/chef-cft/wombat/pull/132) ([andrewelizondo](https://github.com/andrewelizondo))
|
|
312
|
+
- Prepend channel in infranodes.json [\#131](https://github.com/chef-cft/wombat/pull/131) ([tpetchel](https://github.com/tpetchel))
|
|
313
|
+
- Use $CHANNEL-$VERSION [\#130](https://github.com/chef-cft/wombat/pull/130) ([cheeseplus](https://github.com/cheeseplus))
|
|
314
|
+
- Rycar/add domain prefix [\#129](https://github.com/chef-cft/wombat/pull/129) ([ChefRycar](https://github.com/ChefRycar))
|
|
315
|
+
- Fixup data\_collector [\#128](https://github.com/chef-cft/wombat/pull/128) ([tpetchel](https://github.com/tpetchel))
|
|
316
|
+
- add version of chefdk to build-node [\#125](https://github.com/chef-cft/wombat/pull/125) ([andrewelizondo](https://github.com/andrewelizondo))
|
|
317
|
+
- Update Push Jobs setup on infranodes, include config.d, vendor in infra/build-nodes [\#122](https://github.com/chef-cft/wombat/pull/122) ([andrewelizondo](https://github.com/andrewelizondo))
|
|
318
|
+
- move config.d under .chef [\#121](https://github.com/chef-cft/wombat/pull/121) ([andrewelizondo](https://github.com/andrewelizondo))
|
|
319
|
+
- quote it in case of spaces :D [\#120](https://github.com/chef-cft/wombat/pull/120) ([andrewelizondo](https://github.com/andrewelizondo))
|
|
320
|
+
- remove port and enterprise from data collector [\#119](https://github.com/chef-cft/wombat/pull/119) ([andrewelizondo](https://github.com/andrewelizondo))
|
|
321
|
+
- Fix data collector and correct node-name [\#118](https://github.com/chef-cft/wombat/pull/118) ([andrewelizondo](https://github.com/andrewelizondo))
|
|
322
|
+
- use grep on the log file to select a matching ami [\#113](https://github.com/chef-cft/wombat/pull/113) ([andrewelizondo](https://github.com/andrewelizondo))
|
|
323
|
+
- control admins group in cheffish, conf\_d directory on workstation [\#112](https://github.com/chef-cft/wombat/pull/112) ([andrewelizondo](https://github.com/andrewelizondo))
|
|
324
|
+
- we already have the etc-hosts information, make ssh config simpler [\#111](https://github.com/chef-cft/wombat/pull/111) ([andrewelizondo](https://github.com/andrewelizondo))
|
|
325
|
+
- Workstation cleanup, atom replaces vscode, remove scripts [\#106](https://github.com/chef-cft/wombat/pull/106) ([cheeseplus](https://github.com/cheeseplus))
|
|
326
|
+
- Couple of fixes to get basic vagrant install working [\#105](https://github.com/chef-cft/wombat/pull/105) ([irvingpop](https://github.com/irvingpop))
|
|
327
|
+
- Update default.rb [\#104](https://github.com/chef-cft/wombat/pull/104) ([andrewelizondo](https://github.com/andrewelizondo))
|
|
328
|
+
- update rake tasks, add auth keys [\#103](https://github.com/chef-cft/wombat/pull/103) ([andrewelizondo](https://github.com/andrewelizondo))
|
|
329
|
+
- fixed etc hosts for windows workstation [\#102](https://github.com/chef-cft/wombat/pull/102) ([andrewelizondo](https://github.com/andrewelizondo))
|
|
330
|
+
- Fixing knife.rb and a bookmark [\#100](https://github.com/chef-cft/wombat/pull/100) ([cheeseplus](https://github.com/cheeseplus))
|
|
331
|
+
- the great infra nodes war of 1812 [\#98](https://github.com/chef-cft/wombat/pull/98) ([andrewelizondo](https://github.com/andrewelizondo))
|
|
332
|
+
- Trim workstation install and have chef-server use wombat cookbook users [\#97](https://github.com/chef-cft/wombat/pull/97) ([cheeseplus](https://github.com/cheeseplus))
|
|
333
|
+
- Adding cmder config [\#95](https://github.com/chef-cft/wombat/pull/95) ([cheeseplus](https://github.com/cheeseplus))
|
|
334
|
+
- Fix fqdn with /etc/hosts ordering and allow user defined source\_amis [\#94](https://github.com/chef-cft/wombat/pull/94) ([cheeseplus](https://github.com/cheeseplus))
|
|
335
|
+
- Refactor workstation to indiv recipes [\#90](https://github.com/chef-cft/wombat/pull/90) ([cheeseplus](https://github.com/cheeseplus))
|
|
336
|
+
- Adding compliance to CFN template, misc fixes [\#89](https://github.com/chef-cft/wombat/pull/89) ([cheeseplus](https://github.com/cheeseplus))
|
|
337
|
+
- Cleanup build node recipes and use wombat cookbook [\#88](https://github.com/chef-cft/wombat/pull/88) ([cheeseplus](https://github.com/cheeseplus))
|
|
338
|
+
- Don't let the counting for build and infra nodes be clever, use fixed integer starting points [\#87](https://github.com/chef-cft/wombat/pull/87) ([cheeseplus](https://github.com/cheeseplus))
|
|
339
|
+
- Don't let the counting for build and infra nodes be clever, use fixed integer starting points [\#86](https://github.com/chef-cft/wombat/pull/86) ([cheeseplus](https://github.com/cheeseplus))
|
|
340
|
+
- Remove redundant .json file extension [\#85](https://github.com/chef-cft/wombat/pull/85) ([tpetchel](https://github.com/tpetchel))
|
|
341
|
+
- fixed cheffish for infranodes [\#83](https://github.com/chef-cft/wombat/pull/83) ([andrewelizondo](https://github.com/andrewelizondo))
|
|
342
|
+
- Cookbooking Chef-server and some re-org/fixes [\#82](https://github.com/chef-cft/wombat/pull/82) ([cheeseplus](https://github.com/cheeseplus))
|
|
343
|
+
- last minute fixes. [\#81](https://github.com/chef-cft/wombat/pull/81) ([andrewelizondo](https://github.com/andrewelizondo))
|
|
344
|
+
- All your codebase are belong to us. [\#80](https://github.com/chef-cft/wombat/pull/80) ([andrewelizondo](https://github.com/andrewelizondo))
|
|
345
|
+
- Separate out config and lock, refactor rakefile, update README [\#79](https://github.com/chef-cft/wombat/pull/79) ([cheeseplus](https://github.com/cheeseplus))
|
|
346
|
+
- Adding gemfile [\#78](https://github.com/chef-cft/wombat/pull/78) ([cheeseplus](https://github.com/cheeseplus))
|
|
347
|
+
- Moving cookbooks dir to toplevel, adding compliance cookbook [\#77](https://github.com/chef-cft/wombat/pull/77) ([cheeseplus](https://github.com/cheeseplus))
|
|
348
|
+
- Several fixes, wombat.json data reorg and rake cleanup [\#76](https://github.com/chef-cft/wombat/pull/76) ([cheeseplus](https://github.com/cheeseplus))
|
|
349
|
+
- Updating docs, fixes \#69 [\#73](https://github.com/chef-cft/wombat/pull/73) ([cheeseplus](https://github.com/cheeseplus))
|
|
350
|
+
- Delivery now configured with a cookbook. With tests. Rejoice. [\#72](https://github.com/chef-cft/wombat/pull/72) ([cheeseplus](https://github.com/cheeseplus))
|
|
351
|
+
- Now with user-data script action [\#71](https://github.com/chef-cft/wombat/pull/71) ([cheeseplus](https://github.com/cheeseplus))
|
|
352
|
+
- Sweet sweet integration tests [\#68](https://github.com/chef-cft/wombat/pull/68) ([cheeseplus](https://github.com/cheeseplus))
|
|
353
|
+
- lean into the cookbook [\#66](https://github.com/chef-cft/wombat/pull/66) ([cheeseplus](https://github.com/cheeseplus))
|
|
354
|
+
- Refactor the vendoring and fix a comment [\#65](https://github.com/chef-cft/wombat/pull/65) ([cheeseplus](https://github.com/cheeseplus))
|
|
355
|
+
- Don't overwrite keys if they already exist [\#64](https://github.com/chef-cft/wombat/pull/64) ([cheeseplus](https://github.com/cheeseplus))
|
|
356
|
+
- Removing keys from repo [\#63](https://github.com/chef-cft/wombat/pull/63) ([cheeseplus](https://github.com/cheeseplus))
|
|
357
|
+
- Various fixes, adding delivery-cli, moving inline PS to cookbook [\#62](https://github.com/chef-cft/wombat/pull/62) ([cheeseplus](https://github.com/cheeseplus))
|
|
358
|
+
- Generating certs/keys with ruby [\#61](https://github.com/chef-cft/wombat/pull/61) ([cheeseplus](https://github.com/cheeseplus))
|
|
359
|
+
- More renaming [\#60](https://github.com/chef-cft/wombat/pull/60) ([cheeseplus](https://github.com/cheeseplus))
|
|
360
|
+
- Add the ability to generate certs and keypair from rake and fix template [\#59](https://github.com/chef-cft/wombat/pull/59) ([cheeseplus](https://github.com/cheeseplus))
|
|
361
|
+
- More renaming for the renaming gods [\#58](https://github.com/chef-cft/wombat/pull/58) ([cheeseplus](https://github.com/cheeseplus))
|
|
362
|
+
- More renaming and minor fixes [\#57](https://github.com/chef-cft/wombat/pull/57) ([cheeseplus](https://github.com/cheeseplus))
|
|
363
|
+
- Im going to walk away slowly now [\#53](https://github.com/chef-cft/wombat/pull/53) ([andrewelizondo](https://github.com/andrewelizondo))
|
|
364
|
+
- update ssh\_config [\#52](https://github.com/chef-cft/wombat/pull/52) ([andrewelizondo](https://github.com/andrewelizondo))
|
|
365
|
+
- Cheffish acls and compliance stubs [\#49](https://github.com/chef-cft/wombat/pull/49) ([andrewelizondo](https://github.com/andrewelizondo))
|
|
366
|
+
- we spent so long thinking if we could, we never stopped to think if w… [\#48](https://github.com/chef-cft/wombat/pull/48) ([andrewelizondo](https://github.com/andrewelizondo))
|
|
367
|
+
- The Great Rename [\#47](https://github.com/chef-cft/wombat/pull/47) ([cheeseplus](https://github.com/cheeseplus))
|
|
368
|
+
- I shouldve tested it [\#46](https://github.com/chef-cft/wombat/pull/46) ([andrewelizondo](https://github.com/andrewelizondo))
|
|
369
|
+
- Updating docs for new commands and workflow [\#45](https://github.com/chef-cft/wombat/pull/45) ([cheeseplus](https://github.com/cheeseplus))
|
|
370
|
+
- Adding timestamps to create stack names [\#44](https://github.com/chef-cft/wombat/pull/44) ([cheeseplus](https://github.com/cheeseplus))
|
|
371
|
+
- An attempt to make the rake UX clearer [\#42](https://github.com/chef-cft/wombat/pull/42) ([cheeseplus](https://github.com/cheeseplus))
|
|
372
|
+
- Rake can now create a CFN stack, light refactoring [\#41](https://github.com/chef-cft/wombat/pull/41) ([cheeseplus](https://github.com/cheeseplus))
|
|
373
|
+
- Use env vars to drive as much as possible for Packer [\#40](https://github.com/chef-cft/wombat/pull/40) ([cheeseplus](https://github.com/cheeseplus))
|
|
374
|
+
- Fix apt, jq, and vendor dirs [\#37](https://github.com/chef-cft/wombat/pull/37) ([cheeseplus](https://github.com/cheeseplus))
|
|
375
|
+
- preload trusted\_certs and client.rb [\#36](https://github.com/chef-cft/wombat/pull/36) ([andrewelizondo](https://github.com/andrewelizondo))
|
|
376
|
+
- Now with 100% more cloudformation [\#33](https://github.com/chef-cft/wombat/pull/33) ([cheeseplus](https://github.com/cheeseplus))
|
|
377
|
+
- Fix knife paths [\#32](https://github.com/chef-cft/wombat/pull/32) ([cheeseplus](https://github.com/cheeseplus))
|
|
378
|
+
- I only had to sacrifice my firstborn to get it working [\#31](https://github.com/chef-cft/wombat/pull/31) ([andrewelizondo](https://github.com/andrewelizondo))
|
|
379
|
+
- remove os type, take the default instead for unix [\#30](https://github.com/chef-cft/wombat/pull/30) ([andrewelizondo](https://github.com/andrewelizondo))
|
|
380
|
+
- After manually rotating the heavy machinery, the worker grew very cra… [\#29](https://github.com/chef-cft/wombat/pull/29) ([andrewelizondo](https://github.com/andrewelizondo))
|
|
381
|
+
- Fixing missing template\_dir calls [\#26](https://github.com/chef-cft/wombat/pull/26) ([cheeseplus](https://github.com/cheeseplus))
|
|
382
|
+
- Don't associate public IPs for anything other than workstation [\#25](https://github.com/chef-cft/wombat/pull/25) ([cheeseplus](https://github.com/cheeseplus))
|
|
383
|
+
- Abstracting out versions to common manifest [\#24](https://github.com/chef-cft/wombat/pull/24) ([cheeseplus](https://github.com/cheeseplus))
|
|
384
|
+
- Readmes are cool [\#23](https://github.com/chef-cft/wombat/pull/23) ([cheeseplus](https://github.com/cheeseplus))
|
|
385
|
+
- removing tfvars and setting defaults in plan [\#22](https://github.com/chef-cft/wombat/pull/22) ([cheeseplus](https://github.com/cheeseplus))
|
|
386
|
+
- Updating rakefile to include other TF commands [\#21](https://github.com/chef-cft/wombat/pull/21) ([cheeseplus](https://github.com/cheeseplus))
|
|
387
|
+
- ensure mocked data for certs is placed on systems [\#20](https://github.com/chef-cft/wombat/pull/20) ([andrewelizondo](https://github.com/andrewelizondo))
|
|
388
|
+
- Adding delivery cert and lying to Root CA [\#19](https://github.com/chef-cft/wombat/pull/19) ([cheeseplus](https://github.com/cheeseplus))
|
|
389
|
+
- Making the key copy a common script, fixing user creation on chef-server [\#18](https://github.com/chef-cft/wombat/pull/18) ([cheeseplus](https://github.com/cheeseplus))
|
|
390
|
+
- Adding workstation cookbook [\#17](https://github.com/chef-cft/wombat/pull/17) ([cheeseplus](https://github.com/cheeseplus))
|
|
391
|
+
- More optimal hostname shenanigans [\#16](https://github.com/chef-cft/wombat/pull/16) ([cheeseplus](https://github.com/cheeseplus))
|
|
392
|
+
- Fixed weird BOM in ssh key \(regeneratedd\) and renaming [\#14](https://github.com/chef-cft/wombat/pull/14) ([cheeseplus](https://github.com/cheeseplus))
|
|
393
|
+
- Render tfvars [\#13](https://github.com/chef-cft/wombat/pull/13) ([andrewelizondo](https://github.com/andrewelizondo))
|
|
394
|
+
- Add azure [\#12](https://github.com/chef-cft/wombat/pull/12) ([andrewelizondo](https://github.com/andrewelizondo))
|
|
395
|
+
- The rakening [\#11](https://github.com/chef-cft/wombat/pull/11) ([cheeseplus](https://github.com/cheeseplus))
|
|
396
|
+
- Refactoring delivery install and adding keys via API [\#10](https://github.com/chef-cft/wombat/pull/10) ([cheeseplus](https://github.com/cheeseplus))
|
|
397
|
+
- Copy the delivery license to packer instance [\#9](https://github.com/chef-cft/wombat/pull/9) ([cheeseplus](https://github.com/cheeseplus))
|
|
398
|
+
- updated build [\#8](https://github.com/chef-cft/wombat/pull/8) ([andrewelizondo](https://github.com/andrewelizondo))
|
|
399
|
+
- Switching to using Atlas box [\#7](https://github.com/chef-cft/wombat/pull/7) ([cheeseplus](https://github.com/cheeseplus))
|
|
400
|
+
- yer a wizard harry [\#6](https://github.com/chef-cft/wombat/pull/6) ([andrewelizondo](https://github.com/andrewelizondo))
|
|
401
|
+
- kent geeet [\#5](https://github.com/chef-cft/wombat/pull/5) ([andrewelizondo](https://github.com/andrewelizondo))
|
|
402
|
+
- All the things [\#4](https://github.com/chef-cft/wombat/pull/4) ([andrewelizondo](https://github.com/andrewelizondo))
|
|
403
|
+
- Packer and terraform - first pass [\#3](https://github.com/chef-cft/wombat/pull/3) ([cheeseplus](https://github.com/cheeseplus))
|
|
404
|
+
- Use networks that don't collide with other hypervisors [\#2](https://github.com/chef-cft/wombat/pull/2) ([cheeseplus](https://github.com/cheeseplus))
|
|
405
|
+
- add vagrant cachier [\#1](https://github.com/chef-cft/wombat/pull/1) ([andrewelizondo](https://github.com/andrewelizondo))
|
|
406
|
+
|
|
407
|
+
|
|
408
|
+
|
|
409
|
+
\* *This Change Log was automatically generated by [github_changelog_generator](https://github.com/skywinder/Github-Changelog-Generator)*
|
|
@@ -43,6 +43,10 @@ directory '/etc/delivery' do
|
|
|
43
43
|
mode '0644'
|
|
44
44
|
end
|
|
45
45
|
|
|
46
|
+
file '/var/opt/delivery/.telemetry.disabled' do
|
|
47
|
+
action :create
|
|
48
|
+
end
|
|
49
|
+
|
|
46
50
|
file '/etc/delivery/automate.pem' do
|
|
47
51
|
content lazy { IO.read('/tmp/private.pem') }
|
|
48
52
|
action :create
|
|
@@ -77,9 +81,17 @@ template '/etc/delivery/delivery.rb' do
|
|
|
77
81
|
)
|
|
78
82
|
end
|
|
79
83
|
|
|
84
|
+
# Addresses an edge case where rabbit times out on the reconfigure.
|
|
85
|
+
execute 'Give delivery time to start up' do
|
|
86
|
+
command 'sleep 300'
|
|
87
|
+
action :run
|
|
88
|
+
end
|
|
89
|
+
|
|
80
90
|
execute 'delivery-ctl reconfigure' do
|
|
81
91
|
command 'delivery-ctl reconfigure'
|
|
82
92
|
action :run
|
|
93
|
+
retries 5
|
|
94
|
+
retry_delay 10
|
|
83
95
|
end
|
|
84
96
|
|
|
85
97
|
execute 'delivery-ctl create-enterprise' do
|
|
@@ -19,7 +19,7 @@ template "#{home}/.ssh/config" do
|
|
|
19
19
|
)
|
|
20
20
|
end
|
|
21
21
|
|
|
22
|
-
|
|
22
|
+
node['demo']['certs'].each do |f|
|
|
23
23
|
file "#{home}/.chef/trusted_certs/#{node['demo']['domain_prefix']}#{f}_#{node['demo']['domain'].tr('.','_')}.crt" do
|
|
24
24
|
content lazy { IO.read("C:/Windows/Temp/#{f}.crt") }
|
|
25
25
|
action :create
|
data/lib/wombat/build.rb
CHANGED
|
@@ -89,54 +89,12 @@ module Wombat
|
|
|
89
89
|
storage_management_client = Azure::ARM::Storage::StorageManagementClient.new(azure_conn)
|
|
90
90
|
storage_management_client.subscription_id = subscription_id
|
|
91
91
|
|
|
92
|
-
#
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
puts format("creating new resource group in '%s'", wombat['azure']['location'])
|
|
99
|
-
|
|
100
|
-
# Set the parameters for the resource group
|
|
101
|
-
resource_group = Azure::ARM::Resources::Models::ResourceGroup.new
|
|
102
|
-
resource_group.location = wombat['azure']['location']
|
|
103
|
-
|
|
104
|
-
# Create hash to be used as tags on the resource group
|
|
105
|
-
tags = {
|
|
106
|
-
owner: ENV['USER'],
|
|
107
|
-
provider: azure_provider_tag
|
|
108
|
-
}
|
|
109
|
-
|
|
110
|
-
# If an owner has been specified in the wombat file override the owner value
|
|
111
|
-
if wombat.key?('owner') && !wombat['owner'].nil?
|
|
112
|
-
tags[:owner] = wombat['owner']
|
|
113
|
-
end
|
|
114
|
-
|
|
115
|
-
# Determine if there are any tags specified in the azure wmbat section that need to be added
|
|
116
|
-
if wombat['azure'].key?('tags') && wombat['azure']['tags'].length > 0
|
|
117
|
-
|
|
118
|
-
# Check to see if there are more than 15 tags in which case output a warning
|
|
119
|
-
if wombat['azure']['tags'].length > 14
|
|
120
|
-
warn ('More than 15 tags have been specified, only the first 15 will be added. This is a restriction in Azure.')
|
|
121
|
-
end
|
|
122
|
-
|
|
123
|
-
# Iterate around the tags and add each one to the tags array, up to 15
|
|
124
|
-
wombat['azure']['tags'].each_with_index do |(key, value), index|
|
|
125
|
-
tags[key] = value
|
|
126
|
-
|
|
127
|
-
if index == 12
|
|
128
|
-
break
|
|
129
|
-
end
|
|
130
|
-
end
|
|
131
|
-
|
|
132
|
-
end
|
|
133
|
-
|
|
134
|
-
# add the tags hash to the parameters
|
|
135
|
-
resource_group.tags = tags
|
|
136
|
-
|
|
137
|
-
# Create the resource group
|
|
138
|
-
resource_management_client.resource_groups.create_or_update(wombat['name'], resource_group)
|
|
139
|
-
end
|
|
92
|
+
# Create the resource group
|
|
93
|
+
create_resource_group(resource_management_client,
|
|
94
|
+
wombat['name'],
|
|
95
|
+
wombat['azure']['location'],
|
|
96
|
+
wombat['owner'],
|
|
97
|
+
wombat['azure']['tags'])
|
|
140
98
|
|
|
141
99
|
# Check to see if the storage account already exists
|
|
142
100
|
banner(format("Checking for storage account: %s", wombat['azure']['storage_account']))
|
data/lib/wombat/cli.rb
CHANGED
|
@@ -90,14 +90,18 @@ module Wombat
|
|
|
90
90
|
options.cloud = opt
|
|
91
91
|
end
|
|
92
92
|
|
|
93
|
-
opts.on("--
|
|
94
|
-
options.
|
|
93
|
+
opts.on("--force", "Force the removal of the parent resource group") do |opt|
|
|
94
|
+
options.force = opt
|
|
95
95
|
end
|
|
96
96
|
|
|
97
97
|
opts.on("--async", "Delete resources asynchronously when not removing all, e.g. do not block command line. (Azure Only)") do |opt|
|
|
98
98
|
options.azure_async = opt
|
|
99
99
|
end
|
|
100
100
|
|
|
101
|
+
opts.on("--config CONFIG", "Specify a different yaml config (default is wombat.yml)") do |opt|
|
|
102
|
+
options.wombat_yml = opt
|
|
103
|
+
end
|
|
104
|
+
|
|
101
105
|
},
|
|
102
106
|
argv: stack_argv_proc
|
|
103
107
|
},
|
|
@@ -121,6 +125,18 @@ module Wombat
|
|
|
121
125
|
opts.on("--async", "Deploy stack asynchronously, e.g. do not block command line. Only applies to Azure deployments.") do |opt|
|
|
122
126
|
options.azure_async = opt
|
|
123
127
|
end
|
|
128
|
+
|
|
129
|
+
opts.on("--config CONFIG", "Specify a different yaml config (default is wombat.yml)") do |opt|
|
|
130
|
+
options.wombat_yml = opt
|
|
131
|
+
end
|
|
132
|
+
|
|
133
|
+
opts.on("-n NAME", "--name NAME", "Name of the stack to create rather than the filename of the stack. Implies --nosuffix.") do |opt|
|
|
134
|
+
options.stack_name = opt
|
|
135
|
+
end
|
|
136
|
+
|
|
137
|
+
opts.on("--nosuffix", "Do not append timestamp to end of the stack (Azure Only)") do |opt|
|
|
138
|
+
options.nosuffix = opt
|
|
139
|
+
end
|
|
124
140
|
},
|
|
125
141
|
argv: stack_argv_proc
|
|
126
142
|
},
|
data/lib/wombat/common.rb
CHANGED
|
@@ -233,9 +233,7 @@ module Wombat
|
|
|
233
233
|
region = lock['azure']['location']
|
|
234
234
|
@storage_account = lock['azure']['storage_account']
|
|
235
235
|
|
|
236
|
-
template_files = {
|
|
237
|
-
"arm.tidy.json.erb": format("%s/%s.tidy.json", conf['stack_dir'], @demo)
|
|
238
|
-
}
|
|
236
|
+
template_files = {}
|
|
239
237
|
|
|
240
238
|
# determine whether to use VHD or Managed Disks
|
|
241
239
|
if !lock['azure'].key?('use_managed_disks') || !lock['azure']['use_managed_disks']
|
|
@@ -366,6 +364,58 @@ module Wombat
|
|
|
366
364
|
def deployment_state(rg_name, deployment_name)
|
|
367
365
|
deployments = resource_management_client.deployments.get(rg_name, deployment_name)
|
|
368
366
|
deployments.properties.provisioning_state
|
|
369
|
-
end
|
|
367
|
+
end
|
|
368
|
+
|
|
369
|
+
def create_resource_group(resource_management_client, name, location, owner = nil, rgtags = {})
|
|
370
|
+
|
|
371
|
+
# Check that the resource group exists
|
|
372
|
+
banner(format("Checking for resource group: %s", name))
|
|
373
|
+
status = resource_management_client.resource_groups.check_existence(name)
|
|
374
|
+
if status
|
|
375
|
+
puts "resource group already exists"
|
|
376
|
+
else
|
|
377
|
+
puts format("creating new resource group in '%s'", location)
|
|
378
|
+
|
|
379
|
+
# Set the parameters for the resource group
|
|
380
|
+
resource_group = Azure::ARM::Resources::Models::ResourceGroup.new
|
|
381
|
+
resource_group.location = location
|
|
382
|
+
|
|
383
|
+
# Create hash to be used as tags on the resource group
|
|
384
|
+
tags = {
|
|
385
|
+
owner: ENV['USER'],
|
|
386
|
+
provider: azure_provider_tag
|
|
387
|
+
}
|
|
388
|
+
|
|
389
|
+
# If an owner has been specified in the wombat file override the owner value
|
|
390
|
+
if !owner.nil?
|
|
391
|
+
tags[:owner] = owner
|
|
392
|
+
end
|
|
393
|
+
|
|
394
|
+
# Determine if there are any tags specified in the azure wmbat section that need to be added
|
|
395
|
+
if !rgtags.nil? && rgtags.length > 0
|
|
396
|
+
|
|
397
|
+
# Check to see if there are more than 15 tags in which case output a warning
|
|
398
|
+
if rgtags.length > 14
|
|
399
|
+
warn ('More than 15 tags have been specified, only the first 15 will be added. This is a restriction in Azure.')
|
|
400
|
+
end
|
|
401
|
+
|
|
402
|
+
# Iterate around the tags and add each one to the tags array, up to 15
|
|
403
|
+
rgtags.each_with_index do |(key, value), index|
|
|
404
|
+
tags[key] = value
|
|
405
|
+
|
|
406
|
+
if index == 12
|
|
407
|
+
break
|
|
408
|
+
end
|
|
409
|
+
end
|
|
410
|
+
|
|
411
|
+
end
|
|
412
|
+
|
|
413
|
+
# add the tags hash to the parameters
|
|
414
|
+
resource_group.tags = rgtags
|
|
415
|
+
|
|
416
|
+
# Create the resource group
|
|
417
|
+
resource_management_client.resource_groups.create_or_update(name, resource_group)
|
|
418
|
+
end
|
|
419
|
+
end
|
|
370
420
|
end
|
|
371
421
|
end
|
data/lib/wombat/delete.rb
CHANGED
|
@@ -12,8 +12,9 @@ module Wombat
|
|
|
12
12
|
def initialize(opts)
|
|
13
13
|
@stack = opts.stack
|
|
14
14
|
@cloud = opts.cloud.nil? ? "aws" : opts.cloud
|
|
15
|
-
@
|
|
15
|
+
@force = opts.force.nil? ? false : opts.force
|
|
16
16
|
@azure_async = opts.azure_async.nil? ? false : opts.azure_async
|
|
17
|
+
@wombat_yml = opts.wombat_yml unless opts.wombat_yml.nil?
|
|
17
18
|
end
|
|
18
19
|
|
|
19
20
|
def start
|
|
@@ -27,7 +28,7 @@ module Wombat
|
|
|
27
28
|
# Delete the stack from the correct platform
|
|
28
29
|
case @cloud
|
|
29
30
|
when "aws"
|
|
30
|
-
cfn = Aws::CloudFormation::Client.new(region: lock['aws']['region'])
|
|
31
|
+
cfn = ::Aws::CloudFormation::Client.new(region: lock['aws']['region'])
|
|
31
32
|
|
|
32
33
|
resp = cfn.delete_stack({
|
|
33
34
|
stack_name: stack,
|
|
@@ -36,58 +37,30 @@ module Wombat
|
|
|
36
37
|
|
|
37
38
|
when "azure"
|
|
38
39
|
|
|
40
|
+
# Configure the delete state
|
|
41
|
+
delete = false
|
|
42
|
+
|
|
39
43
|
# Connect to Azure
|
|
40
44
|
azure_conn = connect_azure()
|
|
41
45
|
|
|
42
46
|
# Create a resource client so that the resource group can be deleted
|
|
43
|
-
@resource_management_client = Azure::ARM::Resources::ResourceManagementClient.new(azure_conn)
|
|
47
|
+
@resource_management_client = ::Azure::ARM::Resources::ResourceManagementClient.new(azure_conn)
|
|
44
48
|
@resource_management_client.subscription_id = ENV['AZURE_SUBSCRIPTION_ID']
|
|
45
49
|
|
|
46
|
-
#
|
|
47
|
-
|
|
50
|
+
# Check the stack that is being requested
|
|
51
|
+
# If it is the parent group display a warning before attempting to delete
|
|
52
|
+
if stack == wombat['name'] && !@force
|
|
53
|
+
warn("You are attempting to delete the resource group that contains your custom images. If you wish to do this please specify the --force parameter on the command")
|
|
54
|
+
else
|
|
55
|
+
delete = true
|
|
56
|
+
end
|
|
57
|
+
|
|
58
|
+
if (delete)
|
|
48
59
|
banner(format("Deleting resource group: %s", stack))
|
|
49
60
|
|
|
50
61
|
resource_management_client.resource_groups.begin_delete(stack)
|
|
51
62
|
|
|
52
63
|
info "Destroy operation accepted and will continue in the background."
|
|
53
|
-
else
|
|
54
|
-
|
|
55
|
-
banner(format("Tidying resource group: %s", stack))
|
|
56
|
-
|
|
57
|
-
# Create new deployment using the tidy template so that the storage account is left
|
|
58
|
-
# behind but all the other resources are removed
|
|
59
|
-
template_file = File.read("#{conf['stack_dir']}/#{stack}.tidy.json")
|
|
60
|
-
|
|
61
|
-
# determine the name of the deployment
|
|
62
|
-
deployment_name = format('deploy-tidy-%s', Time.now().to_i)
|
|
63
|
-
|
|
64
|
-
# Create the deployment definition
|
|
65
|
-
deployment = Azure::ARM::Resources::Models::Deployment.new
|
|
66
|
-
deployment.properties = Azure::ARM::Resources::Models::DeploymentProperties.new
|
|
67
|
-
deployment.properties.mode = Azure::ARM::Resources::Models::DeploymentMode::Complete
|
|
68
|
-
deployment.properties.template = JSON.parse(template_file)
|
|
69
|
-
|
|
70
|
-
# Perform the deployment to the named resource group
|
|
71
|
-
begin
|
|
72
|
-
resource_management_client.deployments.begin_create_or_update_async(stack, deployment_name, deployment).value!
|
|
73
|
-
rescue MsRestAzure::AzureOperationError => operation_error
|
|
74
|
-
rest_error = operation_error.body['error']
|
|
75
|
-
deployment_active = rest_error['code'] == 'DeploymentActive'
|
|
76
|
-
if deployment_active
|
|
77
|
-
info format("Deployment for resource group '%s' is ongoing", stack)
|
|
78
|
-
else
|
|
79
|
-
warn rest_error
|
|
80
|
-
raise operation_error
|
|
81
|
-
end
|
|
82
|
-
end
|
|
83
|
-
|
|
84
|
-
# Monitor the deployment
|
|
85
|
-
if @azure_async
|
|
86
|
-
info "Deployment operation accepted. Use the Azure Portal to check progress"
|
|
87
|
-
else
|
|
88
|
-
info "Removing Automate resources"
|
|
89
|
-
follow_azure_deployment(stack, deployment_name)
|
|
90
|
-
end
|
|
91
64
|
end
|
|
92
65
|
end
|
|
93
66
|
end
|
data/lib/wombat/deploy.rb
CHANGED
|
@@ -6,15 +6,18 @@ module Wombat
|
|
|
6
6
|
class DeployRunner
|
|
7
7
|
include Wombat::Common
|
|
8
8
|
|
|
9
|
-
attr_reader :stack, :cloud, :lock_opt, :template_opt
|
|
9
|
+
attr_reader :stack, :stack_name, :cloud, :lock_opt, :template_opt, :nosuffix
|
|
10
10
|
attr_accessor :resource_management_client
|
|
11
11
|
|
|
12
12
|
def initialize(opts)
|
|
13
13
|
@stack = opts.stack
|
|
14
|
+
@stack_name = opts.stack_name
|
|
14
15
|
@cloud = opts.cloud.nil? ? "aws" : opts.cloud
|
|
15
16
|
@lock_opt = opts.update_lock
|
|
16
17
|
@template_opt = opts.update_template
|
|
17
18
|
@azure_async = opts.azure_async
|
|
19
|
+
@wombat_yml = opts.wombat_yml
|
|
20
|
+
@nosuffix = opts.nosuffix.nil? ? false : true
|
|
18
21
|
end
|
|
19
22
|
|
|
20
23
|
def start
|
|
@@ -27,11 +30,22 @@ module Wombat
|
|
|
27
30
|
|
|
28
31
|
def create_stack(stack)
|
|
29
32
|
|
|
33
|
+
# determine the filename of the stack
|
|
34
|
+
filename = stack
|
|
35
|
+
|
|
36
|
+
# work out the name of the stack to be created
|
|
37
|
+
if !@stack_name.nil?
|
|
38
|
+
|
|
39
|
+
# As the stack name has been specified then set nosuffix
|
|
40
|
+
@nosuffix = true
|
|
41
|
+
stack = stack_name
|
|
42
|
+
end
|
|
43
|
+
|
|
30
44
|
# Deploy the template to the correct stack
|
|
31
45
|
case @cloud
|
|
32
46
|
when "aws"
|
|
33
47
|
|
|
34
|
-
template_file = File.read("#{conf['stack_dir']}/#{
|
|
48
|
+
template_file = File.read("#{conf['stack_dir']}/#{filename}.json")
|
|
35
49
|
cfn = ::Aws::CloudFormation::Client.new(region: lock['aws']['region'])
|
|
36
50
|
|
|
37
51
|
banner("Creating CloudFormation stack")
|
|
@@ -53,11 +67,17 @@ module Wombat
|
|
|
53
67
|
banner("Creating Azure RM stack")
|
|
54
68
|
|
|
55
69
|
# determine the path to the arm template
|
|
56
|
-
template_file = File.read("#{conf['stack_dir']}/#{
|
|
70
|
+
template_file = File.read("#{conf['stack_dir']}/#{filename}.json")
|
|
57
71
|
|
|
58
72
|
# determine the name of the deployment
|
|
59
73
|
deployment_name = format('deploy-%s', Time.now().to_i)
|
|
60
|
-
|
|
74
|
+
|
|
75
|
+
# determine the name of the resource group
|
|
76
|
+
resource_group_name = stack
|
|
77
|
+
if !nosuffix
|
|
78
|
+
resource_group_name = format('%s-%s', resource_group_name, Time.now.strftime('%Y%m%d%H%M%S'))
|
|
79
|
+
end
|
|
80
|
+
|
|
61
81
|
# Connect to azure
|
|
62
82
|
azure_conn = connect_azure()
|
|
63
83
|
|
|
@@ -65,6 +85,13 @@ module Wombat
|
|
|
65
85
|
@resource_management_client = Azure::ARM::Resources::ResourceManagementClient.new(azure_conn)
|
|
66
86
|
@resource_management_client.subscription_id = ENV['AZURE_SUBSCRIPTION_ID']
|
|
67
87
|
|
|
88
|
+
# Create the resource group for the deployment
|
|
89
|
+
create_resource_group(resource_management_client,
|
|
90
|
+
resource_group_name,
|
|
91
|
+
wombat['azure']['location'],
|
|
92
|
+
wombat['owner'],
|
|
93
|
+
wombat['azure']['tags'])
|
|
94
|
+
|
|
68
95
|
# Create the deployment definition
|
|
69
96
|
deployment = Azure::ARM::Resources::Models::Deployment.new
|
|
70
97
|
deployment.properties = Azure::ARM::Resources::Models::DeploymentProperties.new
|
|
@@ -73,12 +100,12 @@ module Wombat
|
|
|
73
100
|
|
|
74
101
|
# Perform the deployment to the named resource group
|
|
75
102
|
begin
|
|
76
|
-
resource_management_client.deployments.begin_create_or_update_async(
|
|
103
|
+
resource_management_client.deployments.begin_create_or_update_async(resource_group_name, deployment_name, deployment).value!
|
|
77
104
|
rescue MsRestAzure::AzureOperationError => operation_error
|
|
78
105
|
rest_error = operation_error.body['error']
|
|
79
106
|
deployment_active = rest_error['code'] == 'DeploymentActive'
|
|
80
107
|
if deployment_active
|
|
81
|
-
info format("Deployment for resource group '%s' is ongoing",
|
|
108
|
+
info format("Deployment for resource group '%s' is ongoing", resource_group_name)
|
|
82
109
|
else
|
|
83
110
|
warn rest_error
|
|
84
111
|
raise operation_error
|
|
@@ -89,7 +116,7 @@ module Wombat
|
|
|
89
116
|
if @azure_async
|
|
90
117
|
info "Deployment operation accepted. Use the Azure Portal to check progress"
|
|
91
118
|
else
|
|
92
|
-
follow_azure_deployment(
|
|
119
|
+
follow_azure_deployment(resource_group_name, deployment_name)
|
|
93
120
|
end
|
|
94
121
|
|
|
95
122
|
end
|
data/lib/wombat/output.rb
CHANGED
|
@@ -58,28 +58,43 @@ module Wombat
|
|
|
58
58
|
# Connect to Azure
|
|
59
59
|
azure_conn = connect_azure()
|
|
60
60
|
|
|
61
|
+
# Create a resource client so that the resource groups can be interrogated
|
|
62
|
+
resource_management_client = Azure::ARM::Resources::ResourceManagementClient.new(azure_conn)
|
|
63
|
+
resource_management_client.subscription_id = ENV['AZURE_SUBSCRIPTION_ID']
|
|
64
|
+
|
|
61
65
|
# Create a resource client so that the template can be deployed
|
|
62
66
|
@network_management_client = Azure::ARM::Network::NetworkManagementClient.new(azure_conn)
|
|
63
67
|
network_management_client.subscription_id = ENV['AZURE_SUBSCRIPTION_ID']
|
|
68
|
+
|
|
69
|
+
# Return a list of all the resource groups that begin with the stack name
|
|
70
|
+
resource_groups = resource_management_client.resource_groups.list()
|
|
71
|
+
|
|
72
|
+
# filter the resource groups looking for thos that start with the stack name
|
|
73
|
+
filtered_groups = resource_groups.select { |n| n.name.start_with?(stack) }
|
|
64
74
|
|
|
65
|
-
#
|
|
66
|
-
|
|
75
|
+
# iterate around the filtered resource groups idenfitying the public_ipaddresses in the group
|
|
76
|
+
filtered_groups.each do |group|
|
|
67
77
|
|
|
68
|
-
|
|
78
|
+
# Obtain a list of all the Public IP addresses in the stack
|
|
79
|
+
public_ip_addresses = network_management_client.public_ipaddresses.list(group.name)
|
|
69
80
|
|
|
70
|
-
|
|
71
|
-
if public_ip_addresses.length == 0
|
|
81
|
+
banner(format("Public IP Addresses in '%s'", group.name))
|
|
72
82
|
|
|
73
|
-
|
|
83
|
+
# Check that there are IP addresses in the stack
|
|
84
|
+
if public_ip_addresses.length == 0
|
|
74
85
|
|
|
75
|
-
|
|
86
|
+
warn('No public IP addresses')
|
|
76
87
|
|
|
77
|
-
|
|
78
|
-
public_ip_addresses.each do |public_ip_address|
|
|
88
|
+
else
|
|
79
89
|
|
|
80
|
-
#
|
|
81
|
-
|
|
90
|
+
# Iterate around the public IP addresses and output each one
|
|
91
|
+
public_ip_addresses.each do |public_ip_address|
|
|
92
|
+
|
|
93
|
+
# Output the details about the IP address
|
|
94
|
+
puts format("%s:\t%s (%s)", public_ip_address.name, public_ip_address.ip_address, public_ip_address.dns_settings.fqdn)
|
|
95
|
+
end
|
|
82
96
|
end
|
|
97
|
+
|
|
83
98
|
end
|
|
84
99
|
end
|
|
85
100
|
end
|
data/lib/wombat/version.rb
CHANGED
data/wombat-cli.gemspec
CHANGED
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: wombat-cli
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.6.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Andre Elizondo
|
|
@@ -9,7 +9,7 @@ authors:
|
|
|
9
9
|
autorequire:
|
|
10
10
|
bindir: bin
|
|
11
11
|
cert_chain: []
|
|
12
|
-
date: 2017-
|
|
12
|
+
date: 2017-04-24 00:00:00.000000000 Z
|
|
13
13
|
dependencies:
|
|
14
14
|
- !ruby/object:Gem::Dependency
|
|
15
15
|
name: rake
|
|
@@ -137,6 +137,20 @@ dependencies:
|
|
|
137
137
|
- - "~>"
|
|
138
138
|
- !ruby/object:Gem::Version
|
|
139
139
|
version: 0.11.5.preview
|
|
140
|
+
- !ruby/object:Gem::Dependency
|
|
141
|
+
name: github_changelog_generator
|
|
142
|
+
requirement: !ruby/object:Gem::Requirement
|
|
143
|
+
requirements:
|
|
144
|
+
- - ">="
|
|
145
|
+
- !ruby/object:Gem::Version
|
|
146
|
+
version: '0'
|
|
147
|
+
type: :runtime
|
|
148
|
+
prerelease: false
|
|
149
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
150
|
+
requirements:
|
|
151
|
+
- - ">="
|
|
152
|
+
- !ruby/object:Gem::Version
|
|
153
|
+
version: '0'
|
|
140
154
|
description: With a tough barrel-like body, short powerful legs, and long flat claws,
|
|
141
155
|
the wombat walks with a shuffling gait but is extremely adept at tunneling
|
|
142
156
|
email:
|
|
@@ -322,7 +336,6 @@ files:
|
|
|
322
336
|
- generator_files/packer/infranodes.json
|
|
323
337
|
- generator_files/packer/workstation.json
|
|
324
338
|
- generator_files/templates/arm.md.json.erb
|
|
325
|
-
- generator_files/templates/arm.tidy.json.erb
|
|
326
339
|
- generator_files/templates/arm.vhd.json.erb
|
|
327
340
|
- generator_files/templates/bootstrap-aws.erb
|
|
328
341
|
- generator_files/templates/cfn.json.erb
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
|
|
3
|
-
"contentVersion": "1.0.0.1",
|
|
4
|
-
"parameters": {
|
|
5
|
-
"storageAccountName": {
|
|
6
|
-
"type": "string",
|
|
7
|
-
"metadata": {
|
|
8
|
-
"description": "Name of the storage account that should be used to store the machine disks"
|
|
9
|
-
},
|
|
10
|
-
"defaultValue": "<%= @storage_account %>"
|
|
11
|
-
}
|
|
12
|
-
},
|
|
13
|
-
"variables": {
|
|
14
|
-
"sa": {
|
|
15
|
-
"name": "[parameters('storageAccountName')]",
|
|
16
|
-
"type": "Standard_LRS"
|
|
17
|
-
},
|
|
18
|
-
"location": "[resourceGroup().location]"
|
|
19
|
-
},
|
|
20
|
-
"resources": [
|
|
21
|
-
{
|
|
22
|
-
"type": "Microsoft.Storage/storageAccounts",
|
|
23
|
-
"name": "[variables('sa').name]",
|
|
24
|
-
"apiVersion": "2015-06-15",
|
|
25
|
-
"location": "[variables('location')]",
|
|
26
|
-
"properties": {
|
|
27
|
-
"accountType": "[variables('sa').type]"
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
],
|
|
31
|
-
"outputs": {}
|
|
32
|
-
}
|