]>
git.ipfire.org Git - thirdparty/knot-resolver.git/log
Vasek Sraier [Wed, 27 Oct 2021 15:14:35 +0000 (17:14 +0200)]
utils: modelling: fix type processing between different python versions
Vasek Sraier [Wed, 27 Oct 2021 09:57:06 +0000 (11:57 +0200)]
added autogenerated setup.py
Vasek Sraier [Fri, 22 Oct 2021 16:30:31 +0000 (18:30 +0200)]
systemd: changed the default name of garbage collector service due to collision with existing unit
Vasek Sraier [Fri, 22 Oct 2021 16:09:08 +0000 (18:09 +0200)]
general config handling overhaul
* separated config storage from kres_manager.py into config_store.py
* changed constants.py into a list of functions based on config, instead of actual constants
* each subprocess gets its own configuration file, which stays on the disk as long as the process is running
* properly changing working directory on startup
* split config changes into 2 stop process - verification and application
* allowed for any part of the system to verify config changes
* removed support for systemd non-transient services
Vasek Sraier [Fri, 22 Oct 2021 12:10:54 +0000 (14:10 +0200)]
poetry: removed obsolete dependencies, updated packages
Vasek Sraier [Fri, 22 Oct 2021 12:09:25 +0000 (14:09 +0200)]
simple custom implementation of dataclasses in order to prevent dependence on the backport library
Vasek Sraier [Mon, 18 Oct 2021 11:42:45 +0000 (13:42 +0200)]
fixed tests
Vasek Sraier [Mon, 18 Oct 2021 11:36:19 +0000 (13:36 +0200)]
utils: modelling: added basic support for generating JSON schema
Vasek Sraier [Sun, 10 Oct 2021 18:53:36 +0000 (20:53 +0200)]
kres manager: removed left over variables
Vasek Sraier [Tue, 5 Oct 2021 22:15:51 +0000 (00:15 +0200)]
typo fix
Vasek Sraier [Sun, 3 Oct 2021 13:07:58 +0000 (15:07 +0200)]
fix: formatting and linter errors caused by the previous commit
Vasek Sraier [Sun, 3 Oct 2021 13:02:50 +0000 (15:02 +0200)]
cli client: added static hints + bug fix of id assignment
Vasek Sraier [Fri, 1 Oct 2021 21:00:19 +0000 (23:00 +0200)]
directory structure: removed unused config directory
Vasek Sraier [Fri, 1 Oct 2021 20:39:16 +0000 (22:39 +0200)]
server: dynamic configuration of listen address and log level, refactoring of startup
Aleš [Fri, 1 Oct 2021 12:12:40 +0000 (14:12 +0200)]
datamodel: static-hints section added
Aleš [Thu, 30 Sep 2021 10:12:10 +0000 (12:12 +0200)]
datamodel: logging section added
Aleš [Wed, 29 Sep 2021 20:08:10 +0000 (22:08 +0200)]
datamodel: cache section added
Aleš [Wed, 22 Sep 2021 15:07:36 +0000 (17:07 +0200)]
naming: tests: datamodel: names corresponding to schema modules
Aleš [Wed, 22 Sep 2021 15:01:02 +0000 (17:01 +0200)]
tests: datamodel: removed unnecessary tests
Aleš [Wed, 22 Sep 2021 14:53:34 +0000 (16:53 +0200)]
naming: datamodel: added '_schema' suffix to modules names
Aleš [Wed, 22 Sep 2021 14:42:16 +0000 (16:42 +0200)]
naming: added 'Schema' suffix to all classes derived from 'SchemaNode'
Vaclav Sraier [Wed, 22 Sep 2021 10:57:42 +0000 (12:57 +0200)]
Merge branch 'configuration-datamodel' into 'master'
Modelling and configuration schema improvements
Closes #21
See merge request knot/knot-resolver-manager!12
Vasek Sraier [Thu, 9 Sep 2021 13:19:48 +0000 (15:19 +0200)]
integration test: terminate the manager when it fails to start in time
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
Vasek Sraier [Sun, 5 Sep 2021 18:41:55 +0000 (20:41 +0200)]
systemd: resetting failed kresd units on startup
fix #16
Aleš [Mon, 13 Sep 2021 10:47:11 +0000 (12:47 +0200)]
datamodel: empty '_validate' methods removed
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š [Mon, 13 Sep 2021 10:40:19 +0000 (12:40 +0200)]
utils: validator: implementation of '_validate' method is not required
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š [Mon, 13 Sep 2021 10:19:38 +0000 (12:19 +0200)]
datamodel: dns64: change of prefix type
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
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 [Sat, 17 Jul 2021 18:49:27 +0000 (20:49 +0200)]
systemd: termination notifications; pretty ids improvement
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 [Sat, 17 Jul 2021 08:39:48 +0000 (10:39 +0200)]
manager: human-readable numerical IDs (instead of uuids used previously)
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.
Vasek Sraier [Sat, 17 Jul 2021 08:10:45 +0000 (10:10 +0200)]
formatting fix
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
Vasek Sraier [Sat, 17 Jul 2021 08:04:06 +0000 (10:04 +0200)]
manager: completed support for running GC
closes #1
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
Vasek Sraier [Tue, 13 Jul 2021 19:22:01 +0000 (21:22 +0200)]
added document describing manager's architecture
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
Vasek Sraier [Tue, 13 Jul 2021 18:25:18 +0000 (20:25 +0200)]
updated README
Aleš [Thu, 9 Sep 2021 13:27:28 +0000 (15:27 +0200)]
datamodel: dnssec: section completed, tests
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
Aleš [Wed, 8 Sep 2021 13:53:36 +0000 (15:53 +0200)]
datamodel: options: section completed, tests
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š [Wed, 8 Sep 2021 13:31:12 +0000 (15:31 +0200)]
datamodel: lua: minor modifications, tests
Aleš [Tue, 29 Jun 2021 13:15:21 +0000 (15:15 +0200)]
config: server: improvements to get number of CPUs
Aleš [Wed, 8 Sep 2021 10:56:51 +0000 (12:56 +0200)]
datamodel: dns64 section added
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
Aleš [Tue, 7 Sep 2021 14:07:07 +0000 (16:07 +0200)]
datamodel: server: added several conf options
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