knife-tidy 1.2.0 → 2.0.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/lib/chef/knife/tidy_backup_clean.rb +87 -87
- data/lib/chef/knife/tidy_base.rb +11 -11
- data/lib/chef/knife/tidy_notify.rb +69 -69
- data/lib/chef/knife/tidy_server_clean.rb +23 -23
- data/lib/chef/knife/tidy_server_report.rb +40 -40
- data/lib/chef/tidy_acls.rb +33 -33
- data/lib/chef/tidy_common.rb +20 -20
- data/lib/chef/tidy_server.rb +1 -1
- data/lib/chef/tidy_substitutions.rb +11 -11
- data/lib/knife-tidy/version.rb +2 -2
- metadata +5 -101
- data/.gitignore +0 -52
- data/.travis.yml +0 -26
- data/CHANGELOG.md +0 -246
- data/Gemfile +0 -38
- data/README.md +0 -165
- data/Rakefile +0 -58
- data/TODO.md +0 -5
- data/conf/substitutions.json.example +0 -10
- data/knife-tidy.gemspec +0 -32
- data/spec/chef/knife/tidy_backup_clean_spec.rb +0 -0
- data/spec/chef/knife/tidy_base_spec.rb +0 -25
- data/spec/spec_helper.rb +0 -17
data/.gitignore
DELETED
@@ -1,52 +0,0 @@
|
|
1
|
-
*.rbc
|
2
|
-
.config
|
3
|
-
coverage
|
4
|
-
InstalledFiles
|
5
|
-
lib/bundler/man
|
6
|
-
pkg
|
7
|
-
rdoc
|
8
|
-
spec/reports
|
9
|
-
test/tmp
|
10
|
-
test/version_tmp
|
11
|
-
tmp
|
12
|
-
_Store
|
13
|
-
reports/
|
14
|
-
conf/*.json
|
15
|
-
*~
|
16
|
-
*#
|
17
|
-
.#*
|
18
|
-
\#*#
|
19
|
-
.*.sw[a-z]
|
20
|
-
*.un~
|
21
|
-
*.tmp
|
22
|
-
*.bk
|
23
|
-
*.bkup
|
24
|
-
|
25
|
-
# ruby/bundler files
|
26
|
-
.ruby-version
|
27
|
-
.ruby-gemset
|
28
|
-
.rvmrc
|
29
|
-
Gemfile.lock
|
30
|
-
.bundle
|
31
|
-
*.gem
|
32
|
-
|
33
|
-
# YARD artifacts
|
34
|
-
.yardoc
|
35
|
-
_yardoc
|
36
|
-
doc/
|
37
|
-
.idea
|
38
|
-
|
39
|
-
# chef stuff
|
40
|
-
Berksfile.lock
|
41
|
-
.kitchen
|
42
|
-
.kitchen.local.yml
|
43
|
-
vendor/
|
44
|
-
.coverage/
|
45
|
-
.zero-knife.rb
|
46
|
-
Policyfile.lock.json
|
47
|
-
.chef/
|
48
|
-
|
49
|
-
# vagrant stuff
|
50
|
-
.vagrant/
|
51
|
-
.vagrant.d/
|
52
|
-
.kitchen/
|
data/.travis.yml
DELETED
@@ -1,26 +0,0 @@
|
|
1
|
-
language: ruby
|
2
|
-
cache: bundler
|
3
|
-
dist: trusty
|
4
|
-
sudo: false
|
5
|
-
|
6
|
-
# Early warning system to catch if Rubygems breaks something
|
7
|
-
before_install:
|
8
|
-
- gem update --system
|
9
|
-
- gem uninstall bundler -a -x
|
10
|
-
- gem install bundler
|
11
|
-
- rm -f .bundle/config
|
12
|
-
|
13
|
-
rvm:
|
14
|
-
- 2.3.5
|
15
|
-
- 2.4.2
|
16
|
-
- ruby-head
|
17
|
-
|
18
|
-
matrix:
|
19
|
-
allow_failures:
|
20
|
-
- rvm: ruby-head
|
21
|
-
|
22
|
-
script: bundle exec rake spec
|
23
|
-
|
24
|
-
branches:
|
25
|
-
only:
|
26
|
-
- master
|
data/CHANGELOG.md
DELETED
@@ -1,246 +0,0 @@
|
|
1
|
-
# Change Log
|
2
|
-
|
3
|
-
## [1.2.0](https://github.com/chef-customers/knife-tidy/tree/1.2.0) (2018-05-17)
|
4
|
-
[Full Changelog](https://github.com/chef-customers/knife-tidy/compare/1.1.0...1.2.0)
|
5
|
-
|
6
|
-
**Closed issues:**
|
7
|
-
|
8
|
-
- notifications fail for chef orgs containing an underscore [\#77](https://github.com/chef-customers/knife-tidy/issues/77)
|
9
|
-
- Add option to attach raw JSON report files to the email notification [\#75](https://github.com/chef-customers/knife-tidy/issues/75)
|
10
|
-
|
11
|
-
**Merged pull requests:**
|
12
|
-
|
13
|
-
- bump to 1.2.0 [\#85](https://github.com/chef-customers/knife-tidy/pull/85) ([jeremymv2](https://github.com/jeremymv2))
|
14
|
-
- fix empty clients group [\#84](https://github.com/chef-customers/knife-tidy/pull/84) ([jeremymv2](https://github.com/jeremymv2))
|
15
|
-
|
16
|
-
## [1.1.0](https://github.com/chef-customers/knife-tidy/tree/1.1.0) (2018-01-11)
|
17
|
-
[Full Changelog](https://github.com/chef-customers/knife-tidy/compare/1.0.1...1.1.0)
|
18
|
-
|
19
|
-
**Closed issues:**
|
20
|
-
|
21
|
-
- the backup-path should default to current working directory [\#79](https://github.com/chef-customers/knife-tidy/issues/79)
|
22
|
-
|
23
|
-
**Merged pull requests:**
|
24
|
-
|
25
|
-
- Jjh/fix notification reports [\#80](https://github.com/chef-customers/knife-tidy/pull/80) ([itmustbejj](https://github.com/itmustbejj))
|
26
|
-
|
27
|
-
## [1.0.1](https://github.com/chef-customers/knife-tidy/tree/1.0.1) (2017-12-12)
|
28
|
-
[Full Changelog](https://github.com/chef-customers/knife-tidy/compare/1.0.0...1.0.1)
|
29
|
-
|
30
|
-
**Closed issues:**
|
31
|
-
|
32
|
-
- Clean up references to tidy methods [\#68](https://github.com/chef-customers/knife-tidy/issues/68)
|
33
|
-
- A stale search index can generate inaccurate tidy reports [\#62](https://github.com/chef-customers/knife-tidy/issues/62)
|
34
|
-
|
35
|
-
**Merged pull requests:**
|
36
|
-
|
37
|
-
- Fix validate\_user\_acls and default\_user\_acl methods [\#73](https://github.com/chef-customers/knife-tidy/pull/73) ([itmustbejj](https://github.com/itmustbejj))
|
38
|
-
|
39
|
-
## [1.0.0](https://github.com/chef-customers/knife-tidy/tree/1.0.0) (2017-12-04)
|
40
|
-
[Full Changelog](https://github.com/chef-customers/knife-tidy/compare/0.7.0...1.0.0)
|
41
|
-
|
42
|
-
**Merged pull requests:**
|
43
|
-
|
44
|
-
- Enabled cookbook deletion [\#71](https://github.com/chef-customers/knife-tidy/pull/71) ([itmustbejj](https://github.com/itmustbejj))
|
45
|
-
- Add option for backup path to server clean [\#70](https://github.com/chef-customers/knife-tidy/pull/70) ([TheLunaticScripter](https://github.com/TheLunaticScripter))
|
46
|
-
- Warn the user if there are nodes created in the last hour that haven'… [\#67](https://github.com/chef-customers/knife-tidy/pull/67) ([itmustbejj](https://github.com/itmustbejj))
|
47
|
-
- Add guard to skip generating org reports if the search index is not u… [\#66](https://github.com/chef-customers/knife-tidy/pull/66) ([itmustbejj](https://github.com/itmustbejj))
|
48
|
-
- Enable server clean command and clarify confirmation dialogue [\#31](https://github.com/chef-customers/knife-tidy/pull/31) ([jonlives](https://github.com/jonlives))
|
49
|
-
|
50
|
-
## [0.7.0](https://github.com/chef-customers/knife-tidy/tree/0.7.0) (2017-11-29)
|
51
|
-
[Full Changelog](https://github.com/chef-customers/knife-tidy/compare/0.6.1...0.7.0)
|
52
|
-
|
53
|
-
**Closed issues:**
|
54
|
-
|
55
|
-
- Users/clients from backups older than CS 12.5 may be missing read acls on clients [\#63](https://github.com/chef-customers/knife-tidy/issues/63)
|
56
|
-
- notify subcommand ignores --orgs option [\#59](https://github.com/chef-customers/knife-tidy/issues/59)
|
57
|
-
|
58
|
-
**Merged pull requests:**
|
59
|
-
|
60
|
-
- release 0.7.0 [\#65](https://github.com/chef-customers/knife-tidy/pull/65) ([jeremymv2](https://github.com/jeremymv2))
|
61
|
-
- Add admins/users groups to the read acl for clients from \< CS 12.5 [\#64](https://github.com/chef-customers/knife-tidy/pull/64) ([itmustbejj](https://github.com/itmustbejj))
|
62
|
-
- Restore acls for ::server-admins and org read access groups if they a… [\#61](https://github.com/chef-customers/knife-tidy/pull/61) ([itmustbejj](https://github.com/itmustbejj))
|
63
|
-
- Filter email notifications on org\_list config option. [\#60](https://github.com/chef-customers/knife-tidy/pull/60) ([itmustbejj](https://github.com/itmustbejj))
|
64
|
-
- Set default encoding to utf-8 to properly handle non-ascii in backups. [\#58](https://github.com/chef-customers/knife-tidy/pull/58) ([itmustbejj](https://github.com/itmustbejj))
|
65
|
-
- Add check for pre-12.3 nodes to report generation… [\#57](https://github.com/chef-customers/knife-tidy/pull/57) ([jonlives](https://github.com/jonlives))
|
66
|
-
- bump path to 0.6.1 [\#55](https://github.com/chef-customers/knife-tidy/pull/55) ([jeremymv2](https://github.com/jeremymv2))
|
67
|
-
|
68
|
-
## [0.6.1](https://github.com/chef-customers/knife-tidy/tree/0.6.1) (2017-10-26)
|
69
|
-
[Full Changelog](https://github.com/chef-customers/knife-tidy/compare/0.6.0...0.6.1)
|
70
|
-
|
71
|
-
**Closed issues:**
|
72
|
-
|
73
|
-
- knife tidy server clean - org names with \_ [\#53](https://github.com/chef-customers/knife-tidy/issues/53)
|
74
|
-
|
75
|
-
**Merged pull requests:**
|
76
|
-
|
77
|
-
- fixing orgs with underscores [\#54](https://github.com/chef-customers/knife-tidy/pull/54) ([jeremymv2](https://github.com/jeremymv2))
|
78
|
-
- Jeremymv2/release 0 6 0 [\#52](https://github.com/chef-customers/knife-tidy/pull/52) ([jeremymv2](https://github.com/jeremymv2))
|
79
|
-
|
80
|
-
## [0.6.0](https://github.com/chef-customers/knife-tidy/tree/0.6.0) (2017-10-23)
|
81
|
-
[Full Changelog](https://github.com/chef-customers/knife-tidy/compare/0.5.2...0.6.0)
|
82
|
-
|
83
|
-
**Merged pull requests:**
|
84
|
-
|
85
|
-
- fix travis [\#51](https://github.com/chef-customers/knife-tidy/pull/51) ([jeremymv2](https://github.com/jeremymv2))
|
86
|
-
- Add knife tidy notify command [\#50](https://github.com/chef-customers/knife-tidy/pull/50) ([jonlives](https://github.com/jonlives))
|
87
|
-
- bump to 0.5.2 [\#49](https://github.com/chef-customers/knife-tidy/pull/49) ([jeremymv2](https://github.com/jeremymv2))
|
88
|
-
|
89
|
-
## [0.5.2](https://github.com/chef-customers/knife-tidy/tree/0.5.2) (2017-10-20)
|
90
|
-
[Full Changelog](https://github.com/chef-customers/knife-tidy/compare/0.5.1...0.5.2)
|
91
|
-
|
92
|
-
**Merged pull requests:**
|
93
|
-
|
94
|
-
- fixing regex for whitespace [\#48](https://github.com/chef-customers/knife-tidy/pull/48) ([jeremymv2](https://github.com/jeremymv2))
|
95
|
-
- bump patch to 0.5.1 [\#47](https://github.com/chef-customers/knife-tidy/pull/47) ([jeremymv2](https://github.com/jeremymv2))
|
96
|
-
|
97
|
-
## [0.5.1](https://github.com/chef-customers/knife-tidy/tree/0.5.1) (2017-10-19)
|
98
|
-
[Full Changelog](https://github.com/chef-customers/knife-tidy/compare/0.5.0...0.5.1)
|
99
|
-
|
100
|
-
**Merged pull requests:**
|
101
|
-
|
102
|
-
- Add node\_count to stale node json output. [\#46](https://github.com/chef-customers/knife-tidy/pull/46) ([MarkGibbons](https://github.com/MarkGibbons))
|
103
|
-
- bump to 0.5.0 [\#45](https://github.com/chef-customers/knife-tidy/pull/45) ([jeremymv2](https://github.com/jeremymv2))
|
104
|
-
|
105
|
-
## [0.5.0](https://github.com/chef-customers/knife-tidy/tree/0.5.0) (2017-10-06)
|
106
|
-
[Full Changelog](https://github.com/chef-customers/knife-tidy/compare/0.4.1...0.5.0)
|
107
|
-
|
108
|
-
**Closed issues:**
|
109
|
-
|
110
|
-
- Supermarket.chef.io [\#37](https://github.com/chef-customers/knife-tidy/issues/37)
|
111
|
-
|
112
|
-
**Merged pull requests:**
|
113
|
-
|
114
|
-
- enabling deletion of stale nodes [\#44](https://github.com/chef-customers/knife-tidy/pull/44) ([jeremymv2](https://github.com/jeremymv2))
|
115
|
-
- better warning message before confirmation [\#43](https://github.com/chef-customers/knife-tidy/pull/43) ([jeremymv2](https://github.com/jeremymv2))
|
116
|
-
- Jeremymv2/chef sugar fix default [\#42](https://github.com/chef-customers/knife-tidy/pull/42) ([jeremymv2](https://github.com/jeremymv2))
|
117
|
-
- deleting nodes also deletes client [\#41](https://github.com/chef-customers/knife-tidy/pull/41) ([jeremymv2](https://github.com/jeremymv2))
|
118
|
-
- Change nodes\_list method to get all nodes [\#40](https://github.com/chef-customers/knife-tidy/pull/40) ([nsdavidson](https://github.com/nsdavidson))
|
119
|
-
- bump version to 0.4.1 [\#39](https://github.com/chef-customers/knife-tidy/pull/39) ([jeremymv2](https://github.com/jeremymv2))
|
120
|
-
|
121
|
-
## [0.4.1](https://github.com/chef-customers/knife-tidy/tree/0.4.1) (2017-09-27)
|
122
|
-
[Full Changelog](https://github.com/chef-customers/knife-tidy/compare/0.4.0...0.4.1)
|
123
|
-
|
124
|
-
**Merged pull requests:**
|
125
|
-
|
126
|
-
- fixing corrupt invitations and invalid platform names with commas in … [\#38](https://github.com/chef-customers/knife-tidy/pull/38) ([jeremymv2](https://github.com/jeremymv2))
|
127
|
-
- bump to 0.4.0 [\#36](https://github.com/chef-customers/knife-tidy/pull/36) ([jeremymv2](https://github.com/jeremymv2))
|
128
|
-
|
129
|
-
## [0.4.0](https://github.com/chef-customers/knife-tidy/tree/0.4.0) (2017-09-26)
|
130
|
-
[Full Changelog](https://github.com/chef-customers/knife-tidy/compare/0.3.6...0.4.0)
|
131
|
-
|
132
|
-
**Merged pull requests:**
|
133
|
-
|
134
|
-
- fix NilClass on env\_run\_lists [\#35](https://github.com/chef-customers/knife-tidy/pull/35) ([jeremymv2](https://github.com/jeremymv2))
|
135
|
-
- fix merge conflict from rebase [\#34](https://github.com/chef-customers/knife-tidy/pull/34) ([jeremymv2](https://github.com/jeremymv2))
|
136
|
-
- Simple feature to clean up EC11 org objects which don't load into CS12 [\#33](https://github.com/chef-customers/knife-tidy/pull/33) ([irvingpop](https://github.com/irvingpop))
|
137
|
-
- role run\_list clean up and metadata name regex simplification [\#32](https://github.com/chef-customers/knife-tidy/pull/32) ([jeremymv2](https://github.com/jeremymv2))
|
138
|
-
- bump to 0.3.6 [\#30](https://github.com/chef-customers/knife-tidy/pull/30) ([jeremymv2](https://github.com/jeremymv2))
|
139
|
-
|
140
|
-
## [0.3.6](https://github.com/chef-customers/knife-tidy/tree/0.3.6) (2017-09-25)
|
141
|
-
[Full Changelog](https://github.com/chef-customers/knife-tidy/compare/0.3.5...0.3.6)
|
142
|
-
|
143
|
-
**Merged pull requests:**
|
144
|
-
|
145
|
-
- first check if the\_user.has\_key?\('email'\) [\#29](https://github.com/chef-customers/knife-tidy/pull/29) ([jeremymv2](https://github.com/jeremymv2))
|
146
|
-
- bump to 0.3.5 [\#28](https://github.com/chef-customers/knife-tidy/pull/28) ([jeremymv2](https://github.com/jeremymv2))
|
147
|
-
|
148
|
-
## [0.3.5](https://github.com/chef-customers/knife-tidy/tree/0.3.5) (2017-09-20)
|
149
|
-
[Full Changelog](https://github.com/chef-customers/knife-tidy/compare/0.3.4...0.3.5)
|
150
|
-
|
151
|
-
**Merged pull requests:**
|
152
|
-
|
153
|
-
- Catch pins with no cookbooks [\#27](https://github.com/chef-customers/knife-tidy/pull/27) ([nsdavidson](https://github.com/nsdavidson))
|
154
|
-
|
155
|
-
## [0.3.4](https://github.com/chef-customers/knife-tidy/tree/0.3.4) (2017-09-16)
|
156
|
-
[Full Changelog](https://github.com/chef-customers/knife-tidy/compare/0.3.3...0.3.4)
|
157
|
-
|
158
|
-
**Merged pull requests:**
|
159
|
-
|
160
|
-
- check if metadata.has\_key?\('platforms'\) [\#26](https://github.com/chef-customers/knife-tidy/pull/26) ([jeremymv2](https://github.com/jeremymv2))
|
161
|
-
|
162
|
-
## [0.3.3](https://github.com/chef-customers/knife-tidy/tree/0.3.3) (2017-09-15)
|
163
|
-
[Full Changelog](https://github.com/chef-customers/knife-tidy/compare/0.3.2...0.3.3)
|
164
|
-
|
165
|
-
**Merged pull requests:**
|
166
|
-
|
167
|
-
- boiler plate gsub file now works [\#25](https://github.com/chef-customers/knife-tidy/pull/25) ([jeremymv2](https://github.com/jeremymv2))
|
168
|
-
- fixing null values and emtpy arrays in metadata.json [\#24](https://github.com/chef-customers/knife-tidy/pull/24) ([jeremymv2](https://github.com/jeremymv2))
|
169
|
-
- Jeremyv2/action needed notification [\#23](https://github.com/chef-customers/knife-tidy/pull/23) ([jeremymv2](https://github.com/jeremymv2))
|
170
|
-
|
171
|
-
## [0.3.2](https://github.com/chef-customers/knife-tidy/tree/0.3.2) (2017-09-14)
|
172
|
-
[Full Changelog](https://github.com/chef-customers/knife-tidy/compare/0.3.1...0.3.2)
|
173
|
-
|
174
|
-
**Merged pull requests:**
|
175
|
-
|
176
|
-
- fixed name mismatch in metadata.json [\#22](https://github.com/chef-customers/knife-tidy/pull/22) ([jeremymv2](https://github.com/jeremymv2))
|
177
|
-
|
178
|
-
## [0.3.1](https://github.com/chef-customers/knife-tidy/tree/0.3.1) (2017-09-14)
|
179
|
-
[Full Changelog](https://github.com/chef-customers/knife-tidy/compare/0.3.0...0.3.1)
|
180
|
-
|
181
|
-
**Merged pull requests:**
|
182
|
-
|
183
|
-
- generate a metadata.rb if needed [\#21](https://github.com/chef-customers/knife-tidy/pull/21) ([jeremymv2](https://github.com/jeremymv2))
|
184
|
-
- newline for action needed messages [\#20](https://github.com/chef-customers/knife-tidy/pull/20) ([jeremymv2](https://github.com/jeremymv2))
|
185
|
-
|
186
|
-
## [0.3.0](https://github.com/chef-customers/knife-tidy/tree/0.3.0) (2017-09-14)
|
187
|
-
[Full Changelog](https://github.com/chef-customers/knife-tidy/compare/0.2.4...0.3.0)
|
188
|
-
|
189
|
-
**Closed issues:**
|
190
|
-
|
191
|
-
- FATAL: Cannot find subcommand for: 'tidy backup clean' [\#12](https://github.com/chef-customers/knife-tidy/issues/12)
|
192
|
-
|
193
|
-
**Merged pull requests:**
|
194
|
-
|
195
|
-
- bump to 0.3.0 [\#19](https://github.com/chef-customers/knife-tidy/pull/19) ([jeremymv2](https://github.com/jeremymv2))
|
196
|
-
- added dry-run to server clean [\#18](https://github.com/chef-customers/knife-tidy/pull/18) ([jeremymv2](https://github.com/jeremymv2))
|
197
|
-
|
198
|
-
## [0.2.4](https://github.com/chef-customers/knife-tidy/tree/0.2.4) (2017-09-12)
|
199
|
-
[Full Changelog](https://github.com/chef-customers/knife-tidy/compare/0.2.3...0.2.4)
|
200
|
-
|
201
|
-
**Merged pull requests:**
|
202
|
-
|
203
|
-
- disable server clean [\#17](https://github.com/chef-customers/knife-tidy/pull/17) ([jeremymv2](https://github.com/jeremymv2))
|
204
|
-
- bump patch to 0.2.4 [\#16](https://github.com/chef-customers/knife-tidy/pull/16) ([jeremymv2](https://github.com/jeremymv2))
|
205
|
-
- correct any cookbook metadata name issues [\#15](https://github.com/chef-customers/knife-tidy/pull/15) ([jeremymv2](https://github.com/jeremymv2))
|
206
|
-
|
207
|
-
## [0.2.3](https://github.com/chef-customers/knife-tidy/tree/0.2.3) (2017-09-11)
|
208
|
-
[Full Changelog](https://github.com/chef-customers/knife-tidy/compare/0.2.2...0.2.3)
|
209
|
-
|
210
|
-
**Merged pull requests:**
|
211
|
-
|
212
|
-
- setting required ruby to \>= 2.0.0 [\#14](https://github.com/chef-customers/knife-tidy/pull/14) ([jeremymv2](https://github.com/jeremymv2))
|
213
|
-
|
214
|
-
## [0.2.2](https://github.com/chef-customers/knife-tidy/tree/0.2.2) (2017-09-11)
|
215
|
-
[Full Changelog](https://github.com/chef-customers/knife-tidy/compare/0.2.1...0.2.2)
|
216
|
-
|
217
|
-
**Merged pull requests:**
|
218
|
-
|
219
|
-
- Jeremymv2/fix to i [\#13](https://github.com/chef-customers/knife-tidy/pull/13) ([jeremymv2](https://github.com/jeremymv2))
|
220
|
-
- release 0.2.1 [\#11](https://github.com/chef-customers/knife-tidy/pull/11) ([jeremymv2](https://github.com/jeremymv2))
|
221
|
-
|
222
|
-
## [0.2.1](https://github.com/chef-customers/knife-tidy/tree/0.2.1) (2017-09-01)
|
223
|
-
[Full Changelog](https://github.com/chef-customers/knife-tidy/compare/0.2.0...0.2.1)
|
224
|
-
|
225
|
-
**Merged pull requests:**
|
226
|
-
|
227
|
-
- first round of tests [\#10](https://github.com/chef-customers/knife-tidy/pull/10) ([jeremymv2](https://github.com/jeremymv2))
|
228
|
-
- Add environment checking for unused cookbook list [\#9](https://github.com/chef-customers/knife-tidy/pull/9) ([nsdavidson](https://github.com/nsdavidson))
|
229
|
-
- disable [\#8](https://github.com/chef-customers/knife-tidy/pull/8) ([jeremymv2](https://github.com/jeremymv2))
|
230
|
-
- server object deletion [\#7](https://github.com/chef-customers/knife-tidy/pull/7) ([jeremymv2](https://github.com/jeremymv2))
|
231
|
-
- bump version to 0.2.0 [\#6](https://github.com/chef-customers/knife-tidy/pull/6) ([jeremymv2](https://github.com/jeremymv2))
|
232
|
-
|
233
|
-
## [0.2.0](https://github.com/chef-customers/knife-tidy/tree/0.2.0) (2017-08-16)
|
234
|
-
[Full Changelog](https://github.com/chef-customers/knife-tidy/compare/0.1.1...0.2.0)
|
235
|
-
|
236
|
-
**Merged pull requests:**
|
237
|
-
|
238
|
-
- moved all common functions to tidy\_common.rb [\#5](https://github.com/chef-customers/knife-tidy/pull/5) ([jeremymv2](https://github.com/jeremymv2))
|
239
|
-
- Jeremymv2/acl items [\#4](https://github.com/chef-customers/knife-tidy/pull/4) ([jeremymv2](https://github.com/jeremymv2))
|
240
|
-
- updated changelog [\#3](https://github.com/chef-customers/knife-tidy/pull/3) ([jeremymv2](https://github.com/jeremymv2))
|
241
|
-
- bump version to 0.1.1 [\#2](https://github.com/chef-customers/knife-tidy/pull/2) ([jeremymv2](https://github.com/jeremymv2))
|
242
|
-
|
243
|
-
|
244
|
-
|
245
|
-
\* *This Change Log was automatically generated by [github_changelog_generator](https://github.com/skywinder/Github-Changelog-Generator)*
|
246
|
-
|
data/Gemfile
DELETED
@@ -1,38 +0,0 @@
|
|
1
|
-
source "https://rubygems.org"
|
2
|
-
|
3
|
-
gemspec
|
4
|
-
|
5
|
-
if vsn = ENV['TRAVIS_CHEF_VERSION']
|
6
|
-
if m = /branch:(?<branch>.*)$/.match(vsn)
|
7
|
-
gem 'chef', git: 'https://github.com/chef/chef', branch: m[:branch]
|
8
|
-
else
|
9
|
-
gem 'chef', vsn
|
10
|
-
end
|
11
|
-
end
|
12
|
-
|
13
|
-
group :development do
|
14
|
-
gem 'rspec'
|
15
|
-
gem 'rake'
|
16
|
-
gem 'simplecov'
|
17
|
-
gem 'fakefs'
|
18
|
-
gem "chefstyle", git: "https://github.com/chef/chefstyle.git"
|
19
|
-
gem "chef-zero"
|
20
|
-
end
|
21
|
-
|
22
|
-
group :changelog do
|
23
|
-
gem "github_changelog_generator", git: "https://github.com/chef/github-changelog-generator"
|
24
|
-
end
|
25
|
-
|
26
|
-
# This is here instead of gemspec so that we can
|
27
|
-
# override which Chef gem to use when we do testing
|
28
|
-
# Possibilities in the future include using environmental
|
29
|
-
# variables, thus allowing us to to have Travis support
|
30
|
-
|
31
|
-
# Examples you can use in Gemfile.local
|
32
|
-
# gem 'chef', '~> 10.28'
|
33
|
-
# gem 'chef' # latest
|
34
|
-
# gem 'chef', git: 'git://github.com/mal/chef.git', branch: 'CHEF-3307'
|
35
|
-
|
36
|
-
# If you want to load debugging tools into the bundle exec sandbox,
|
37
|
-
# # add these additional dependencies into Gemfile.local
|
38
|
-
eval(IO.read(__FILE__ + '.local'), binding) if File.exists?(__FILE__ + '.local')
|
data/README.md
DELETED
@@ -1,165 +0,0 @@
|
|
1
|
-
# knife tidy
|
2
|
-
|
3
|
-
# Summary
|
4
|
-
|
5
|
-
NOTE: If you're a first-time or inexperienced knife-tidy user, we recommend you read through this blogpost before proceeding with the rest of this documentation: https://blog.chef.io/2017/10/16/migrating-chef-server-knife-ec-backup-knife-tidy/
|
6
|
-
|
7
|
-
This Chef Knife plugin provides:
|
8
|
-
* Reports on the state of Chef Server objects that can be tidied up
|
9
|
-
* Removal of stale nodes (and associated clients and ACLs) identified by the above Reports
|
10
|
-
* A [knife-ec-backup](https://github.com/chef/knife-ec-backup) companion tool that will clean up data integrity issues in an object backup
|
11
|
-
|
12
|
-
# Requirements
|
13
|
-
|
14
|
-
A current Chef Client. Can easily be installed via [Chef DK](https://github.com/chef/chef-dk#installation)
|
15
|
-
|
16
|
-
# Installation
|
17
|
-
|
18
|
-
Via Rubygems
|
19
|
-
```bash
|
20
|
-
gem install knife-tidy
|
21
|
-
```
|
22
|
-
|
23
|
-
Via Source
|
24
|
-
```bash
|
25
|
-
git clone https://github.com/chef-customers/knife-tidy.git
|
26
|
-
cd knife-tidy
|
27
|
-
gem build knife-tidy.gemspec && gem install knife-tidy-*.gem --no-ri --no-rdoc
|
28
|
-
```
|
29
|
-
|
30
|
-
## Common Options
|
31
|
-
|
32
|
-
The following options are supported across all subcommands:
|
33
|
-
|
34
|
-
* `--orgs ORG1,ORG2`:
|
35
|
-
Only apply to objects in the named organizations (default: all orgs)
|
36
|
-
|
37
|
-
## $ knife tidy server report --help
|
38
|
-
|
39
|
-
Cookbooks and nodes account for the largest objects in your Chef Server.
|
40
|
-
If you want to keep it lean and mean and easy to port the object data, you must
|
41
|
-
tidy these unused objects up!
|
42
|
-
|
43
|
-
## Options
|
44
|
-
|
45
|
-
* `--node-threshold NUM_DAYS`
|
46
|
-
Maximum number of days since last checkin before node is considered stale (default: 30)
|
47
|
-
|
48
|
-
Example:
|
49
|
-
```bash
|
50
|
-
knife tidy server report --orgs brewinc,acmeinc --node-threshold 50
|
51
|
-
```
|
52
|
-
|
53
|
-
## Notes
|
54
|
-
`server report` generates json reports as such:
|
55
|
-
|
56
|
-
File Name | Contents
|
57
|
-
--- | ---
|
58
|
-
org_threshold_numdays_stale_nodes.json | Nodes in that org that have not checked in for the number of days specified.
|
59
|
-
org_cookbook_count.json | Number of cookbook versions for each cookbook that that org.
|
60
|
-
org_unused_cookbooks.json | List of cookbooks and versions that do not appear to be in-use for that org. This is determined by checking the versioned run list of each of the nodes in the org.
|
61
|
-
|
62
|
-
## $ knife tidy server clean --help
|
63
|
-
Remove stale nodes that haven't checked-in to the Chef Server as defined by the `--node-threshold NUM_DAYS` option when the reports were generated.. The associated client and ACLs are also removed.
|
64
|
-
|
65
|
-
## Options
|
66
|
-
|
67
|
-
* `--backup-path /path/to/an-ec-backup`
|
68
|
-
The location to the last backup of the target Chef Server. It is not recommended to run the clean command without first taking a current backup using [knife-ec-backup](https://github.com/chef/knife-ec-backup)
|
69
|
-
|
70
|
-
* `--only-cookbooks`
|
71
|
-
Only deletes the unused cookbooks from the target Chef Server. NOTE: Cannot be specified if `--only-nodes` is already specified
|
72
|
-
|
73
|
-
* `--only-nodes`
|
74
|
-
Only deltes the stale nodes, associated clients, and ACLs from the target Chef Server. NOTE: Cannot be specified if `--only-cookbooks` is already specified
|
75
|
-
|
76
|
-
* `--dry-run`
|
77
|
-
Do not perform any actual deletion, only report on what would have been deleted.
|
78
|
-
|
79
|
-
Example:
|
80
|
-
```bash
|
81
|
-
knife tidy server clean --orgs brewinc,acmeinc
|
82
|
-
```
|
83
|
-
|
84
|
-
## $ knife tidy backup clean --help
|
85
|
-
|
86
|
-
## Options
|
87
|
-
|
88
|
-
* `--backup-path /path/to/an-ec-backup`:
|
89
|
-
The Chef Repo to tidy up (such as one created from a [knife-ec-backup](https://github.com/chef/knife-ec-backup)
|
90
|
-
|
91
|
-
* `--gsub-file /path/to/gsub/file`:
|
92
|
-
The path to the file used for substitutions. If non-existant, a boiler plate one will be created.
|
93
|
-
|
94
|
-
Run the following example before attempting the `knife ec backup restore` operation:
|
95
|
-
```bash
|
96
|
-
knife tidy backup clean --gen-gsub
|
97
|
-
INFO: Creating boiler plate gsub file: 'substitutions.json'
|
98
|
-
knife tidy backup clean --backup-path backups/ --gsub-file substitutions.json
|
99
|
-
```
|
100
|
-
|
101
|
-
## Notes
|
102
|
-
|
103
|
-
Global file substitutions can be performed when `--gsub-file` option is used. Several known issues are corrected
|
104
|
-
and others can be added with search/replace pairings. The following boiler plate file is created for you when `--gen-gsub` is used:
|
105
|
-
|
106
|
-
```json
|
107
|
-
{
|
108
|
-
"io-read-version-and-readme.md":{
|
109
|
-
"organizations/*/cookbooks/*/metadata.rb":[
|
110
|
-
{
|
111
|
-
"pattern":"^version +IO.read.* 'VERSION'.*",
|
112
|
-
"replace":"version !COOKBOOK_VERSION!"
|
113
|
-
},
|
114
|
-
{
|
115
|
-
"pattern":"^long_description +IO.read.* 'README.md'.*",
|
116
|
-
"replace":"#long_description \"A Long Description..\""
|
117
|
-
}
|
118
|
-
]
|
119
|
-
}
|
120
|
-
}
|
121
|
-
```
|
122
|
-
|
123
|
-
## $ knife tidy notify
|
124
|
-
|
125
|
-
The ```knife tidy notify```command is used to send a summary of the reports generated by ```knife tidy server report``` to your organisation admins.
|
126
|
-
|
127
|
-
When run from the directory containing your reports, it will iterate through the reports for each organisation in turn, and query the Chef server specified in your ```knife.rb``` for all admins of that organisation.
|
128
|
-
|
129
|
-
It will then generate a summary email from your knife tidy reports, and email it to all admins for that organisation.
|
130
|
-
|
131
|
-
This command assumes you have access to an SMTP server you can use for sending outgoing emails.
|
132
|
-
|
133
|
-
## Options
|
134
|
-
|
135
|
-
* `--smtp_server `:
|
136
|
-
The SMTP Server to use (defaults to localhost)
|
137
|
-
* `--smtp_port `:
|
138
|
-
The SMTP Port to be used (defaults to 25)
|
139
|
-
* `--smtp_username `:
|
140
|
-
The SMTP Username to be used
|
141
|
-
* `--smtp_password `:
|
142
|
-
The SMTP Password to be used
|
143
|
-
* `--smtp_from `:
|
144
|
-
The From email address to be used when sending email reports
|
145
|
-
* `--smtp_enable_tls `:
|
146
|
-
Whether or not to enable TLS when sending reports via SMTP (defaults to false)
|
147
|
-
* `--smtp_helo `:
|
148
|
-
The SMTP HELO to be used (defaults to localhost)
|
149
|
-
|
150
|
-
Run the following example before attempting the `knife ec backup restore` operation:
|
151
|
-
```bash
|
152
|
-
$> knife tidy notify --smtp_server smtp.myserver.com --smtp_port 587 --smtp_from myuser@myserver.com --smtp_username myuser --smtp_password mypassword --smtp_use_tls
|
153
|
-
|
154
|
-
Reading from /home/myuser/knife_tidy/reports directory
|
155
|
-
Fetching report data for organisation mytestorg
|
156
|
-
Parsing file /home/myuser/knife_tidy/reports/mytestorg_unused_cookbooks.json
|
157
|
-
Parsing file /home/myuser/knife_tidy/reports/mytestorg_cookbook_count.json
|
158
|
-
Parsing file /home/myuser/knife_tidy/reports/mytestorg_stale_nodes.json
|
159
|
-
Fetching admins users for organisation mytestorg
|
160
|
-
Sending email reports for organisation mytestorg
|
161
|
-
```
|
162
|
-
|
163
|
-
## Summary and Credits
|
164
|
-
|
165
|
-
* Server Report was ported from Nolan Davidson's [chef-cleanup](https://github.com/nsdavidson/chef-cleanup)
|