-
Notifications
You must be signed in to change notification settings - Fork 1
/
ChangeLog
396 lines (333 loc) · 13.6 KB
/
ChangeLog
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
CHANGES
=======
* #14: Fix test - on various versions of OpenSSL there are different messages
* #14: Clean up
* #14: Clean up
* #14: Docs reference
* #14: SMTP - Added functional test, separated from unit test
* #14: Added TLS and TIMEOUT support
* #14: Fixed documentation entry
* PR #19 fixes
* PR #19 fixes
* PR #19 fixes
* Try to fix CI build: \`error: Can not find Rust compiler\`
* Debug CI: Avoid DNS resolution
* Debug CI - change port
* Debug CI - change port
* Improve assertion to see whats wrong on CI
* Increase verbosity for tests on CI
* Increase verbosity for tests on CI: Always inspect docker events after build
* Increase verbosity for tests on CI: Inspect why
* Increase verbosity for tests on CI in test case
* Increase verbosity for tests on CI, enable stderr on error
* [https://github.com/riotkit-org/infracheck/pull/19] Smaller fixes, mostly reported by Intelji PyCharm as part of code review
* Added SMTP credentials healthcheck and basic unit tests
v2.0
----
* Update docs
* Update docs
* Remove supervisord, we no longer need it - as Infracheck is now working in daemon mode
* Updated docs, added info about rkd:// protocol
* Increased coverage
* Increased coverage
* Added minimal coverage for ConfigLoader
* Added more unittests coverage for rkd\_support, improved rkd\_support by the way while writing tests
* Bump RKD to stable v2.3.3
* Set RKD version to 2.3
* Resolve existing functional tests
* Resolve existing unit tests
* Fixed "AttributeError: 'str' object has no attribute 'decode'"
* Fixed "AttributeError: 'str' object has no attribute 'decode'"
* #12: Temporarily point to RKD beta version
* #12: Improve RKD integration by using simpler switch \`--imports\`
* #12: Added integration with RiotKit-Do
* #9, #10, #11: Extracted few exceptions into exceptions.py module, moved http layer to the lower level (it should be next to cli), added versioning endpoint
* #9, #10: Update docker image
* #9, #10: Logic extraction from controller into more layers, added model, using pickle instead of json in database cache, the application now is working in two threads - one is server, second is background worker (replaces crontab calls)
v1.10
-----
* #8: Fix issue with missing "msgpack"
v1.10.0.0b3
-----------
* #8: Add missing package "msgpack"
v1.10.0.0b2
-----------
* #8: Add hashbang
* #8: Update docs
* #8: Update docs
* #8: Fix deprecations, update docs
v1.10.0.0b1
-----------
* #8: Update docs formatting
* #8: Covered influxdb-query with tests
* #8: Refactor container test utils
* Docs: Add example to the disk-space
* Docs: Add example to the ovh-expiration
* Docs: Add example to the ovh-expiration
* Docs: Add example to the docker-container-log
* #8: Initially added influxdb-query check
v1.9.1
------
* #7: Added missing ARCH in docker tag
* Updated badges
v1.9
----
* #7: Clean up
* #7: Build on ARM
* #7: Set almost final pipelines
* #7: Enable ARM build
* #7: Attempt to keep the git tag in PBR build
* #7: Attempting to resolve git tag retrieving
* #7: Attempting to resolve git tag retrieving
* #7: add missing wheel package
* #7: add missing wheel package
* #7: add missing hashbang
* #7: return a value in :image task
* #7: Compat
* #7: Add login to registry
* #7: Release job
* #7: Release job
* #7: Fixes related to GH Actions
* #7: Fixes related to GH Actions
* #7: Fixes related to GH Actions
* #7: Fixes related to GH Actions
* #7: Fixes related to GH Actions
* #7: Moving to Github Actions
* #7: Moving to Github Actions
* Build on Python 3.7
* #6: Implement "docker-container-log" check
* Remove unused, nonsense check
* Create index also on existing databases
* Correct: sqlite3.Warning: You can only execute one statement at a time
* Add index for better performance of the SQLite3
v1.8
----
* Refactor: Moved docs to Python files
* Postgres support: Included "postgres" check in docs
* Postgres support: Added simple PostgreSQL check if the DB is up
v1.8.rc1
--------
* Postgres support: Corrected one typo, and added distinction between no rights and no data
* ARM: Correct package name
* Fixed problem with building Docker image - after enforcing regeneration of requirements.txt
* Postgres support: Added missing postgresql-devel required for building/installing psycopg2
* Building: Always re-generate requirements.txt
* Postgres support: Switch from psycopg2 to psycopg2-binary
* Postgres support: Switch from psycopg2 to psycopg2-binary
* Postgres support: Added psycopg2 as dependency
* Postgres support: chmod +x
* Docs: Added PostgreSQL replication checks
* Added PostgreSQL replication checks
v1.7
----
* Docs: Added passwords deploying strategy
* Docs: Added templating documentation
v1.7.rc5
--------
* Runner: Added a simple templating in input variables. Example: ${ENV.USER} to see current user. Use this mechanism to pass credentials securely
* Runner: Added some default timeout for safety reasons
v1.7.rc4
--------
* SSH: Added creation of .ssh directory and known\_hosts file if not present
* SSH: Added support for adding to known\_hosts first time
* Tests: Increased SSH container timeout to avoid random failures
* Load avg checks: Corrected invalid casting in timeout parameter and extracted code into the checklib
* Formatting
* Docker: Added required packages
* Reminder check: Correct a misleading message
* Docs: Deleted development-only information
v1.7.rc3
--------
* Docker: Fixed containers - added missing gcc after adding dependency that requires compilation
* Added correct requirements.txt
* Tests: Corrected paths in tests
* Checks: Add swap-usage-max-percent
* Checks: Added load-average and load-average-auto
v1.7.rc2
--------
* CI: Increased timeout for SSH container
* CI: Added missing make task
* CI: debug
* CI: Fix build by allowing running in venv
* CI: Fix build by allowing running in venv
* Docs: Added all new checks to docs
* Docs: Fixed errors in the docs
* Added new check - \`ssh-files-checksum\`: \`Calls remote process using SSH and expects: the listed files and checksums will be matching\`
* SSH-based checks are now sharing the same code by using a library, simplified imports and made them more safe
* Runner: Added support for lists and dicts in parameters
* Add \`ssh-fingerprint\` check: \`Verifies if remote host fingerprint matches. Helps detecting man-in-the-middle and server takeover attacks.\`
* Tests: Close the docker socket to avoid warnings in tests
* Tests: Separate unit tests from functional tests, improve pipeline - correct mistake
* Tests: Separate unit tests from functional tests, improve pipeline
v1.7.rc1
--------
* Tests: Improved tests that uses SSH container - the container is setup one for a class
* Tests: Collecting output from SSH container
* Refactored "replication-running" check syntax and added additional status information
* CI: Attempt to run unit tests on travis
* CI: Trying to bring up the unit tests
* Covered "reminder" check with tests
* CI: Fixing Python 3.7 build
* CI: Add missing pipenv
* Add compatibility with Python 3.7 stage
* Downgrade packages for Python 3.6 compatibility
* No longer require strict Python version, correct Docker builds
* Corrected mistake in travis configuration
* Changing the way the application is deployed. Introducing pipenv
* Enabled docker in travis builds as it is required for testing
* Covered "ssh-command" with tests and fixed all spotted bugs
* Preparation for the Pipenv support
* Updated documentation for requirements
* Added documentation for "reminder" check
* Added ssh-command
* Added "reminder" check that should remind about upcoming dates
* Docker: Fixed typo in entrypoint
v1.6.1
------
* Cleared username from cron entry
* Restored /etc/crontabs/root as it was previously working
* Unified docker images to base on same OS - Alpine 3.9: Do not have to support two cron types
* Unified docker images to base on same OS - Alpine 3.9
* Correct crontab support to be compatible with multiple cron systems
* Corrected ARM dockerfile by adding supervisord config file
v1.6
----
* Makefile: Switched shell to bash
* CI: Fixed typo
* Moving to Travis
* Fixed documentation styling for new check
* Added retry support
* Added ovh-expiration check
* Refactored - moved infrastructural things to separate directory, added Slack notifications
v1.5.2
------
* Bugfix: The CHECK\_INTERVAL expression was evaluated, but it should not
v1.5.1
------
* Fixed possibly not executing crontab due to syntax error (double quote remained from docker environment variables)
v1.5.0
------
* Simplified docs
* Docker: Cleaned up the container, now we can be sure that the installed version of infracheck is used, the database have it's constant place at "/database/db.sqlite3", the crontab endpoint have explict arguments same as server
* domain-expiration: Shell whois checking method got exception handling
v1.4.3
------
* domain-expiration: Properly handling not registered domains
v1.4.2
------
* Domain Expiration is now properly handling ".info" domains
* Runner: Now contains the stderr
v1.4.1
------
* Fixed: --force flag was not considered, --lazy needed to be also specified
* Fixed types casting in arguments passing from CLI
* Fixed types casting in arguments passing from CLI
* Hotfix: Fixed 503 on HTTP caused by missing new params
* Updated suggestion in reference in docs
1.4.0
-----
* Added --lazy flag
* Added --wait / WAIT\_TIME, secured \`domain-expiration\` check against CPU overload
v1.3.0
------
* Added docs, clean up
* Resolved unit tests
* Resolved "rate limit exceeded" in domain-expiration check, by adding waits
* Added caching mechanism, so the HTTP endpoint will not execute all checks each time. Now the background process triggered by crontab will be updating status cache, and the HTTP endpoint will read it
* Fixed documentation syntax
* Fixed link to the documentation
* Travis: Setting correct Python versions
* Travis: Setting correct Python versions
* Travis: Setting correct Python versions
* Fixed mistake in path
* Changed description format for PyPI, allowing failures on travis nightly and pypi3
* Changed to mime of description to text/markdown for PyPI
* Trying to fix the travis build
* Trying to fix the travis build
* Fixed travis build after path change
* Switched to Alpine 3.9, fixed incorrect path after recent changes
* Resolved permissions problem
* Added tests for domain-expiration check, updated documentation, dependencies list
* Renamed check to fit the convention
* Added domain-expiration check
* Corrected package name
v1.1.2
------
* Fixed invalid types casting - when the value in checks parameters was an integer, then there was an exception
* Update LICENSE
* Create LICENSE
* Resolved test after changes done on purpose
* Added example free-ram usage
* Applied PEP-8 rules to the free-ram file
* Added missing documentation
* Changed names to fit into the existing naming convention
* fix the test
* fix free\_ram.py and free\_ram\_test.sh according to code review
* Add a check to watch for available RAM and a test for this check
v1.1.1
------
* update disk-space-test.sh to run check with proper name
* fix disk-space-test.sh and add a mock value for checks/disk-space
* Change app/checks/disk-space so that it uses environmental variablesw
* Rewrite app/checks/disk-space to python, change the syntax
* Updated changelog, changed min. Python version to 3.5
v1.1
----
* Update README.md
* Update README.md
* Reordered badges (commited from github)
* Added badges (commited in github)
* Deleted support for Python 3.7 as on Travis it does not work
* Replaced call to "bc", as it works differently on different operating systems. The floats support in bash is not so good
* Switched from sh to bash
* CI: Added Python 3.7 to the build
* Stripped out characters different than numbers and dots for compatiblity reasons
* Reverted last CI change
* Added Mattermost notification to notify riotkit collective
* Resolved #2: Disk space is now properly recognized
* Travis-CI: Release to PYPI conditions
* Building not only on tags
* Updated credentials
* Added information about the docker container variables
v1.0.1
------
* Fixed crontab on Debian / armhf
* Added coverage ignore for server and argument parsing
* Added supervisor and scheduled job support using cron
* Fixed regression after change of name of global status from "status" to "global\_status" - so it could be easily checked with an external monitoring software
* Added additional checks to the docker images
v1.0
----
* Updated readme
* Resolved a problem on CI
* Added a docs badge
* Added docs, fixed ARM build
* Added coverage submission
* Added MySQL replication check
* Added MySQL and PostgreSQL clients to the container
* Better tests coverage for controller and checkers
* Travis: Clean up, not supporting Python 3.4 anymore
* Fixed: Paths with non-project structure were also marked as valid
* Properly marking now the global status, so it would be possible to check it by the monitoring
* Improved "http" check, so it is now following redirections and extra failing on non 200 pages
* Playing with travis build
* Fixed travis build
* Fixed travis build
* Adjusting travis build
* Added a few tests, updated travis config, set up setuptools using pbr
* Added File Repository's Bahub check
* Fixed floats support in disk-space healthcheck
* Corrected docker package name
* Switched ARM build to Debian, CURL is now ignoring certificate problems (like it is on healthcheck services), there should be a separate check for certificate expiration and validity
* Switched to Alpine 3.8 for ARM image
* Added ARM build
v0.1.1
------
* Fixed docker entrypoint, added more checks, added example
* Added support for "CMD" in docker
* Added support for path prefixing
* Fixed possibility to add custom checks
* Clean up
* Moved README.md to proper directory
* Added travis integration
* Added to git