]>
git.ipfire.org Git - thirdparty/knot-resolver.git/log
Vasek Sraier [Wed, 22 Sep 2021 10:48:28 +0000 (12:48 +0200)]
fixup! utils: modelling: SchemaNode documentation
Vasek Sraier [Wed, 22 Sep 2021 10:44:33 +0000 (12:44 +0200)]
utils: modelling: SchemaNode documentation
Aleš Mrázek [Wed, 22 Sep 2021 09:13:49 +0000 (11:13 +0200)]
Merge branch 'unified_schema_node' into 'configuration-datamodel'
Unified data modeling tools
See merge request knot/knot-resolver-manager!11
Aleš [Tue, 14 Sep 2021 10:41:27 +0000 (12:41 +0200)]
datamodel: server: webmgmt subsection added
Aleš [Wed, 22 Sep 2021 09:03:40 +0000 (11:03 +0200)]
datamodel: lua template works with 'listen', config file fix
Aleš [Mon, 13 Sep 2021 14:41:58 +0000 (16:41 +0200)]
datamodel: types: interface and port combination added to Listen
Vasek Sraier [Wed, 22 Sep 2021 08:51:10 +0000 (10:51 +0200)]
utils: modelling: improved error messages
Vasek Sraier [Wed, 22 Sep 2021 08:46:14 +0000 (10:46 +0200)]
utils: modelling: self object in transformation functions cannot be accessed
Aleš [Wed, 22 Sep 2021 08:17:50 +0000 (10:17 +0200)]
datamodel: edit schema nodes to work with new modelling utils
Aleš [Tue, 21 Sep 2021 23:37:41 +0000 (01:37 +0200)]
utils: modelling: matching types in obj type validation
- when obj and expected type match during type validation, full obj is returned
Aleš [Tue, 21 Sep 2021 18:58:34 +0000 (20:58 +0200)]
datamodel: types: SizeUnit: added method to return value in bytes
Vasek Sraier [Tue, 21 Sep 2021 14:12:06 +0000 (16:12 +0200)]
utils: modelling: error message when both transformation function and default value set at the same time
After a discussion, we decided that this situation does not make any sense and we don't
know, how the program should behave. Therefore, we just disallow it.
Aleš [Tue, 21 Sep 2021 10:40:35 +0000 (12:40 +0200)]
tests: datamodel: dns64, dnssec defaults/conversion check
Vasek Sraier [Tue, 21 Sep 2021 07:59:13 +0000 (09:59 +0200)]
utils: modelling: default fields assigned before everything else, conversion functions called last
Vasek Sraier [Mon, 20 Sep 2021 12:29:53 +0000 (14:29 +0200)]
utils: modelling: move conversion from between '-' and '_' to _ parsing step (from modelling)
Aleš [Mon, 20 Sep 2021 11:36:28 +0000 (13:36 +0200)]
tests: utils: rewrite tests for new modeling utils
Vasek Sraier [Mon, 20 Sep 2021 10:34:00 +0000 (12:34 +0200)]
utils: separation of modelling and parsing tools, transition of the whole project
Vasek Sraier [Thu, 16 Sep 2021 20:13:25 +0000 (22:13 +0200)]
utils: renamed data_parser_validator module to modelling
Vasek Sraier [Thu, 16 Sep 2021 13:29:30 +0000 (15:29 +0200)]
utils: unified data modeling tools into one SchemaNode class
Aleš [Mon, 13 Sep 2021 10:47:11 +0000 (12:47 +0200)]
datamodel: empty '_validate' methods removed
Aleš [Mon, 13 Sep 2021 10:40:19 +0000 (12:40 +0200)]
utils: validator: implementation of '_validate' method is not required
Aleš [Mon, 13 Sep 2021 10:19:38 +0000 (12:19 +0200)]
datamodel: dns64: change of prefix type
Vasek Sraier [Mon, 13 Sep 2021 09:20:21 +0000 (11:20 +0200)]
utils: parser/validator: passing of custom values from one first tree to another
Vasek Sraier [Mon, 13 Sep 2021 08:54:48 +0000 (10:54 +0200)]
datamodel: custom type: network /96: added special error message for entering /128
Vasek Sraier [Sun, 12 Sep 2021 20:51:37 +0000 (22:51 +0200)]
improved error messages + custom values propagating to strict data model
Error messages now contain information about their origin. If it is known,
the user is informed about the specific place in tree where an error occured.
+ Consolidated all exceptions at one place. closes #21
Propagating TimeUnits to strict data model, because that way, it's not ambiguous
whether they represent seconds or milliseconds.
Vaclav Sraier [Sun, 12 Sep 2021 19:22:18 +0000 (21:22 +0200)]
Merge branch 'datamodel_types' into 'configuration-datamodel'
Datamodel: Network address and file path custom data types
See merge request knot/knot-resolver-manager!9
Aleš [Thu, 9 Sep 2021 13:49:11 +0000 (15:49 +0200)]
fixup! fixup! datamodel: dnssec: section completed, tests
Vasek Sraier [Sun, 12 Sep 2021 12:50:01 +0000 (14:50 +0200)]
datamodel: custom types: listen address, network addresses
Aleš [Thu, 9 Sep 2021 13:47:25 +0000 (15:47 +0200)]
fixup! datamodel: dnssec: section completed, tests
Vasek Sraier [Sun, 5 Sep 2021 17:50:33 +0000 (19:50 +0200)]
datamodel: added basic ip&port and path custom data types
Aleš [Thu, 9 Sep 2021 13:27:28 +0000 (15:27 +0200)]
datamodel: dnssec: section completed, tests
Aleš Mrázek [Fri, 3 Sep 2021 12:11:52 +0000 (14:11 +0200)]
Merge branch 'data-parser-and-validator-reimplementation' into 'master'
utils: data parser and validator reimplementation
Closes #13
See merge request knot/knot-resolver-manager!8
Aleš [Wed, 8 Sep 2021 13:53:36 +0000 (15:53 +0200)]
datamodel: options: section completed, tests
Vaclav Sraier [Sat, 21 Aug 2021 14:29:25 +0000 (14:29 +0000)]
Merge branch 'failed_worker_notifications' into 'master'
Failed worker notifications
See merge request knot/knot-resolver-manager!5
Aleš Mrázek [Fri, 3 Sep 2021 12:11:51 +0000 (14:11 +0200)]
utils: data parser and validator reimplementation
Aleš [Wed, 8 Sep 2021 13:31:12 +0000 (15:31 +0200)]
datamodel: lua: minor modifications, tests
Vasek Sraier [Wed, 21 Jul 2021 21:00:59 +0000 (23:00 +0200)]
Revert "systemd: termination notifications; pretty ids improvement"
This reverts commit
0e36c7ff19c680ee9a0098745e7f9fe9c4920a67 . Integration tests fail
and I don't know why. The commit is moved onto a separate branch and the work on it
will continue there, until it works properly.
Vaclav Sraier [Sat, 21 Aug 2021 14:29:25 +0000 (14:29 +0000)]
Failed worker notifications
Aleš [Wed, 8 Sep 2021 10:56:51 +0000 (12:56 +0200)]
datamodel: dns64 section added
Vasek Sraier [Sat, 17 Jul 2021 18:49:27 +0000 (20:49 +0200)]
systemd: termination notifications; pretty ids improvement
Aleš [Tue, 7 Sep 2021 14:07:07 +0000 (16:07 +0200)]
datamodel: server: added several conf options
Vasek Sraier [Sat, 17 Jul 2021 08:39:48 +0000 (10:39 +0200)]
manager: human-readable numerical IDs (instead of uuids used previously)
Vasek Sraier [Sun, 5 Sep 2021 18:41:55 +0000 (20:41 +0200)]
systemd: resetting failed kresd units on startup
fix #16
Vasek Sraier [Sat, 17 Jul 2021 08:10:45 +0000 (10:10 +0200)]
formatting fix
Vasek Sraier [Sat, 17 Jul 2021 08:04:06 +0000 (10:04 +0200)]
manager: completed support for running GC
closes #1
Vasek Sraier [Tue, 13 Jul 2021 19:22:01 +0000 (21:22 +0200)]
added document describing manager's architecture
Vasek Sraier [Tue, 13 Jul 2021 18:25:18 +0000 (20:25 +0200)]
updated README
Vasek Sraier [Fri, 2 Jul 2021 21:06:12 +0000 (23:06 +0200)]
manager: manual selection of subprocess controllers (+ small fixes of scripts)
closes #9
Vasek Sraier [Wed, 30 Jun 2021 17:50:51 +0000 (19:50 +0200)]
support for systemd with transient units, non-containerized integration tests and lot of bug fixes
Aleš [Tue, 29 Jun 2021 13:15:21 +0000 (15:15 +0200)]
config: server: improvements to get number of CPUs
Vasek Sraier [Mon, 28 Jun 2021 12:59:43 +0000 (14:59 +0200)]
manager: cli client, extracted constants and tweaks for running locally with supervisord
Vasek Sraier [Sun, 27 Jun 2021 13:30:28 +0000 (15:30 +0200)]
api: implemented Caddy-style partial config updates (subtree specified in URL)
Vasek Sraier [Sun, 27 Jun 2021 09:53:12 +0000 (11:53 +0200)]
fixed accidentally broken test after refactoring
Vasek Sraier [Sun, 27 Jun 2021 09:19:39 +0000 (11:19 +0200)]
refactored controller interface, added support for session systemd
Rewritten interface for process managers to better fit OOP principles (and it
generally feels nicer than before). Support for session systemd is not tested
yet, but should follow shortly in a future as we get rid of containerized tests
closes #8
Vasek Sraier [Sat, 12 Jun 2021 17:45:18 +0000 (19:45 +0200)]
types: type fixes for a new version of pyright
Vasek Sraier [Sat, 12 Jun 2021 08:55:01 +0000 (10:55 +0200)]
code cleanup
removed unnecessary import
Vasek Sraier [Sat, 12 Jun 2021 08:44:01 +0000 (10:44 +0200)]
supervisord controller: removed sleep(1) from supervisord initialization
This should definitely not be a way to prevent race conditions...
Aleš [Wed, 9 Jun 2021 21:16:48 +0000 (23:16 +0200)]
docs: basic structure
Aleš [Mon, 7 Jun 2021 12:37:19 +0000 (14:37 +0200)]
config: lua: validation exception added
Vasek Sraier [Mon, 7 Jun 2021 09:23:36 +0000 (11:23 +0200)]
manager: implemented graceful shutdown by POSTing to /stop
closes #2
Vasek Sraier [Wed, 2 Jun 2021 16:36:40 +0000 (18:36 +0200)]
manager: api: parse the request content based on Content-Type header
closes #4
Aleš [Wed, 2 Jun 2021 16:32:53 +0000 (18:32 +0200)]
config: import jinja template from file
Vaclav Sraier [Wed, 2 Jun 2021 16:06:38 +0000 (16:06 +0000)]
Merge branch '3-implement-configuration-file-loading-on-startup' into 'master'
Resolve "Implement configuration file loading on startup"
Closes #3
See merge request knot/knot-resolver-manager!3
Vasek Sraier [Wed, 26 May 2021 11:59:35 +0000 (13:59 +0200)]
ci: attempt to fix problem with updating dependencies
Vasek Sraier [Wed, 2 Jun 2021 14:31:37 +0000 (16:31 +0200)]
manager: loading initial configuration on startup and default path changes
Aleš [Wed, 26 May 2021 09:35:20 +0000 (11:35 +0200)]
docs: fixdeps: sphinx-rtd-theme removed
- not needed for development purposes
Aleš [Tue, 25 May 2021 18:21:53 +0000 (20:21 +0200)]
docs: initial sphinx config
Vasek Sraier [Mon, 24 May 2021 09:44:42 +0000 (11:44 +0200)]
typing: fixed types after type-checker update
Vasek Sraier [Mon, 24 May 2021 09:07:12 +0000 (11:07 +0200)]
tasks: fixdeps - automatically update npm packages
Vaclav Sraier [Mon, 24 May 2021 08:59:43 +0000 (08:59 +0000)]
Merge branch 'ci' into 'master'
LXC-containers based CI with integration tests
See merge request knot/knot-resolver-manager!2
Vaclav Sraier [Mon, 10 May 2021 15:28:50 +0000 (15:28 +0000)]
ci: removed outdated comment from ci config
Vaclav Sraier [Mon, 24 May 2021 08:59:43 +0000 (08:59 +0000)]
LXC-containers based CI with integration tests
Aleš [Thu, 6 May 2021 15:07:19 +0000 (17:07 +0200)]
config: several config options and features
- initial implementation of network.interfaces
- network.edns-buffer-size accepts one or two arguments
- suffixes for byte size and time interval
Aleš [Mon, 3 May 2021 11:23:47 +0000 (13:23 +0200)]
formatting: utils: dataclasses_parservalidator
- formatting fix
- few comments added
Aleš [Mon, 3 May 2021 07:19:14 +0000 (09:19 +0200)]
utils: detect duplicate keys in configuration
- custom hook for json loader
- custom loader for PyYAML
Vasek Sraier [Thu, 22 Apr 2021 17:55:39 +0000 (19:55 +0200)]
ci: changed the way CI works
Squashed commit of the following:
commit
b439b895b4ea18fc63124fb66b55b439f7b10fef
Author: Vasek Sraier <git@vakabus.cz>
Date: Thu Apr 22 19:47:48 2021 +0200
ci: npm global install in dev container
commit
c3a896269b222a8d23af54910ed2fe98193fa496
Author: Vasek Sraier <git@vakabus.cz>
Date: Thu Apr 22 19:12:12 2021 +0200
ci: installing npm dependencies globally
commit
473fbf4878c40f859b4bb2eb25c9ccd2ac5a427d
Author: Vasek Sraier <git@vakabus.cz>
Date: Thu Apr 22 18:56:57 2021 +0200
scripts: virtual env or ci detection
commit
fcf1d0e8035825fc1bd236b9c84bf792198c2aab
Author: Vasek Sraier <git@vakabus.cz>
Date: Thu Apr 22 18:48:41 2021 +0200
scripts: fixed bash options
commit
aa96cf925ac0cd6ad36b89f011e449006dd6d8e9
Author: Vasek Sraier <git@vakabus.cz>
Date: Thu Apr 22 18:45:49 2021 +0200
ci: updated check stage definition
commit
40a00e1261cf51c8a15e237e73d9a1dd2ffd3e61
Author: Vasek Sraier <git@vakabus.cz>
Date: Thu Apr 22 18:33:51 2021 +0200
ci: fix dev container definition
commit
ccedf3e18aead5097bec11384c2fd08c783129cd
Author: Vasek Sraier <git@vakabus.cz>
Date: Thu Apr 22 18:30:37 2021 +0200
ci: fixed typo in .gitlab-ci.yml
commit
eaada4a0cfe1282fd90af838f6d2dade0129c47e
Author: Vasek Sraier <git@vakabus.cz>
Date: Thu Apr 22 18:06:39 2021 +0200
ci: use different container and always build it
Vasek Sraier [Thu, 22 Apr 2021 16:03:05 +0000 (18:03 +0200)]
scripts: updated scripts so that they don't repeat themselves
Vasek Sraier [Thu, 22 Apr 2021 15:24:24 +0000 (17:24 +0200)]
dependencies: added apkg to poetry managed dependencies
Vaclav Sraier [Thu, 22 Apr 2021 15:07:09 +0000 (15:07 +0000)]
Merge branch 'apkg' into 'master'
distro: add apkg-powered packaging for debian
See merge request knot/knot-resolver-manager!1
Vasek Sraier [Mon, 19 Apr 2021 21:34:39 +0000 (23:34 +0200)]
manager: supervisord backend: completing implementation with first working test
Jakub Ružička [Tue, 20 Apr 2021 11:11:22 +0000 (13:11 +0200)]
distro: add apkg-powered packaging for debian
see distro/README.md
Vasek Sraier [Mon, 19 Apr 2021 14:03:28 +0000 (16:03 +0200)]
manager: supervisord backend: initial untested support
Aleš [Thu, 15 Apr 2021 14:47:58 +0000 (16:47 +0200)]
config: server: private attribute for the number of instances
The value of the attribute is determined indirectly from
loaded configuration or based on the number of system's CPUs.
Aleš [Thu, 15 Apr 2021 12:53:23 +0000 (14:53 +0200)]
manager: parser validator: validation methods renamed
Vasek Sraier [Thu, 15 Apr 2021 11:59:39 +0000 (13:59 +0200)]
manager: parser validator: skipping internal fields when parsing dataclasses
Vasek Sraier [Thu, 15 Apr 2021 11:51:48 +0000 (13:51 +0200)]
manager: parser validator: support for booleans and more hand specified type coercions
Vasek Sraier [Thu, 15 Apr 2021 11:36:07 +0000 (13:36 +0200)]
manager: parser validator: changed primitive type coercion
int, float -> str ... allowed and will happen
str -> int, float ... disallowed
float -> int ... allowed and will happen
int -> float ... allowed and will happen
Aleš [Wed, 14 Apr 2021 14:17:08 +0000 (16:17 +0200)]
config: basic structure
- new sections added
- number of kresd instances can be based on number of system's CPUs
Aleš [Tue, 13 Apr 2021 16:51:51 +0000 (18:51 +0200)]
config: files moved to 'datamodel' subdirectory
Vasek Sraier [Mon, 12 Apr 2021 09:36:04 +0000 (11:36 +0200)]
utils: type parser validator: fixed bugs with exceptions missing format strings
Vasek Sraier [Mon, 12 Apr 2021 09:27:33 +0000 (11:27 +0200)]
utils: type parser validator - support for proper Unions with Literals
Vasek Sraier [Thu, 8 Apr 2021 15:22:28 +0000 (17:22 +0200)]
service manager backend: systemd: added some form of detection that systemd is available
Vasek Sraier [Wed, 7 Apr 2021 20:53:26 +0000 (22:53 +0200)]
scripts: vscode configuration
Vasek Sraier [Wed, 7 Apr 2021 20:28:19 +0000 (22:28 +0200)]
integration: added test for crash behaviour
Vasek Sraier [Wed, 7 Apr 2021 19:13:40 +0000 (21:13 +0200)]
manager: preparation for multiple service manager backends
Aleš [Tue, 6 Apr 2021 15:06:55 +0000 (17:06 +0200)]
config: logging section added
Aleš [Thu, 1 Apr 2021 14:25:46 +0000 (16:25 +0200)]
config: dns64 section added
Vasek Sraier [Tue, 30 Mar 2021 18:40:01 +0000 (20:40 +0200)]
types: fixing type detection
This is just weird. The previous version was working without issues
on pretty much every system except for our integration testing tool.
This seems to fix it. But I still don't understand, how it really works.
Vasek Sraier [Tue, 30 Mar 2021 17:52:46 +0000 (19:52 +0200)]
tests: fixed formatting
Vasek Sraier [Tue, 30 Mar 2021 17:51:25 +0000 (19:51 +0200)]
tests: unit test for parsing simple configuration