]> git.ipfire.org Git - thirdparty/knot-resolver.git/log
thirdparty/knot-resolver.git
3 years agoutils: modelling: fix type processing between different python versions
Vasek Sraier [Wed, 27 Oct 2021 15:14:35 +0000 (17:14 +0200)] 
utils: modelling: fix type processing between different python versions

3 years agoadded autogenerated setup.py
Vasek Sraier [Wed, 27 Oct 2021 09:57:06 +0000 (11:57 +0200)] 
added autogenerated setup.py

3 years agosystemd: changed the default name of garbage collector service due to collision with...
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

3 years agogeneral config handling overhaul
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

3 years agopoetry: removed obsolete dependencies, updated packages
Vasek Sraier [Fri, 22 Oct 2021 12:10:54 +0000 (14:10 +0200)] 
poetry: removed obsolete dependencies, updated packages

3 years agosimple custom implementation of dataclasses in order to prevent dependence on the...
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

3 years agofixed tests
Vasek Sraier [Mon, 18 Oct 2021 11:42:45 +0000 (13:42 +0200)] 
fixed tests

3 years agoutils: modelling: added basic support for generating JSON schema
Vasek Sraier [Mon, 18 Oct 2021 11:36:19 +0000 (13:36 +0200)] 
utils: modelling: added basic support for generating JSON schema

3 years agokres manager: removed left over variables
Vasek Sraier [Sun, 10 Oct 2021 18:53:36 +0000 (20:53 +0200)] 
kres manager: removed left over variables

3 years agotypo fix
Vasek Sraier [Tue, 5 Oct 2021 22:15:51 +0000 (00:15 +0200)] 
typo fix

3 years agofix: formatting and linter errors caused by the previous commit
Vasek Sraier [Sun, 3 Oct 2021 13:07:58 +0000 (15:07 +0200)] 
fix: formatting and linter errors caused by the previous commit

3 years agocli client: added static hints + bug fix of id assignment
Vasek Sraier [Sun, 3 Oct 2021 13:02:50 +0000 (15:02 +0200)] 
cli client: added static hints   + bug fix of id assignment

3 years agodirectory structure: removed unused config directory
Vasek Sraier [Fri, 1 Oct 2021 21:00:19 +0000 (23:00 +0200)] 
directory structure: removed unused config directory

3 years agoserver: dynamic configuration of listen address and log level, refactoring of startup
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

3 years agodatamodel: static-hints section added
Aleš [Fri, 1 Oct 2021 12:12:40 +0000 (14:12 +0200)] 
datamodel: static-hints section added

3 years agodatamodel: logging section added
Aleš [Thu, 30 Sep 2021 10:12:10 +0000 (12:12 +0200)] 
datamodel: logging section added

3 years agodatamodel: cache section added
Aleš [Wed, 29 Sep 2021 20:08:10 +0000 (22:08 +0200)] 
datamodel: cache section added

3 years agonaming: tests: datamodel: names corresponding to schema modules
Aleš [Wed, 22 Sep 2021 15:07:36 +0000 (17:07 +0200)] 
naming: tests: datamodel: names corresponding to schema modules

3 years agotests: datamodel: removed unnecessary tests
Aleš [Wed, 22 Sep 2021 15:01:02 +0000 (17:01 +0200)] 
tests: datamodel: removed unnecessary tests

3 years agonaming: datamodel: added '_schema' suffix to modules names
Aleš [Wed, 22 Sep 2021 14:53:34 +0000 (16:53 +0200)] 
naming: datamodel: added '_schema' suffix to modules names

3 years agonaming: added 'Schema' suffix to all classes derived from 'SchemaNode'
Aleš [Wed, 22 Sep 2021 14:42:16 +0000 (16:42 +0200)] 
naming: added 'Schema' suffix to all classes derived from 'SchemaNode'

3 years agoMerge branch 'configuration-datamodel' into 'master'
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

3 years agointegration test: terminate the manager when it fails to start in time
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

3 years agofixup! utils: modelling: SchemaNode documentation
Vasek Sraier [Wed, 22 Sep 2021 10:48:28 +0000 (12:48 +0200)] 
fixup! utils: modelling: SchemaNode documentation

3 years agoutils: modelling: SchemaNode documentation
Vasek Sraier [Wed, 22 Sep 2021 10:44:33 +0000 (12:44 +0200)] 
utils: modelling: SchemaNode documentation

3 years agoMerge branch 'unified_schema_node' into 'configuration-datamodel'
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

3 years agodatamodel: server: webmgmt subsection added
Aleš [Tue, 14 Sep 2021 10:41:27 +0000 (12:41 +0200)] 
datamodel: server: webmgmt subsection added

3 years agodatamodel: lua template works with 'listen', config file fix
Aleš [Wed, 22 Sep 2021 09:03:40 +0000 (11:03 +0200)] 
datamodel: lua template works with 'listen', config file fix

3 years agodatamodel: types: interface and port combination added to Listen
Aleš [Mon, 13 Sep 2021 14:41:58 +0000 (16:41 +0200)] 
datamodel: types:  interface and port combination added to Listen

3 years agoutils: modelling: improved error messages
Vasek Sraier [Wed, 22 Sep 2021 08:51:10 +0000 (10:51 +0200)] 
utils: modelling: improved error messages

3 years agoutils: modelling: self object in transformation functions cannot be accessed
Vasek Sraier [Wed, 22 Sep 2021 08:46:14 +0000 (10:46 +0200)] 
utils: modelling: self object in transformation functions cannot be accessed

3 years agodatamodel: edit schema nodes to work with new modelling utils
Aleš [Wed, 22 Sep 2021 08:17:50 +0000 (10:17 +0200)] 
datamodel: edit schema nodes to work with new modelling utils

3 years agoutils: modelling: matching types in obj type validation
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

3 years agodatamodel: types: SizeUnit: added method to return value in bytes
Aleš [Tue, 21 Sep 2021 18:58:34 +0000 (20:58 +0200)] 
datamodel: types: SizeUnit: added method to return value in bytes

3 years agoutils: modelling: error message when both transformation function and default value...
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.

3 years agotests: datamodel: dns64, dnssec defaults/conversion check
Aleš [Tue, 21 Sep 2021 10:40:35 +0000 (12:40 +0200)] 
tests: datamodel: dns64, dnssec defaults/conversion check

3 years agoutils: modelling: default fields assigned before everything else, conversion function...
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

3 years agoutils: modelling: move conversion from between '-' and '_' to _ parsing step (from...
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)

3 years agotests: utils: rewrite tests for new modeling utils
Aleš [Mon, 20 Sep 2021 11:36:28 +0000 (13:36 +0200)] 
tests: utils: rewrite tests for new modeling utils

3 years agoutils: separation of modelling and parsing tools, transition of the whole project
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

3 years agoutils: renamed data_parser_validator module to modelling
Vasek Sraier [Thu, 16 Sep 2021 20:13:25 +0000 (22:13 +0200)] 
utils: renamed data_parser_validator module to modelling

3 years agoutils: unified data modeling tools into one SchemaNode class
Vasek Sraier [Thu, 16 Sep 2021 13:29:30 +0000 (15:29 +0200)] 
utils: unified data modeling tools into one SchemaNode class

3 years agosystemd: resetting failed kresd units on startup
Vasek Sraier [Sun, 5 Sep 2021 18:41:55 +0000 (20:41 +0200)] 
systemd: resetting failed kresd units on startup

fix #16

3 years agodatamodel: empty '_validate' methods removed
Aleš [Mon, 13 Sep 2021 10:47:11 +0000 (12:47 +0200)] 
datamodel: empty '_validate' methods removed

3 years agoMerge branch 'data-parser-and-validator-reimplementation' into 'master'
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

3 years agoutils: validator: implementation of '_validate' method is not required
Aleš [Mon, 13 Sep 2021 10:40:19 +0000 (12:40 +0200)] 
utils: validator: implementation of  '_validate' method is not required

3 years agoMerge branch 'failed_worker_notifications' into 'master'
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

3 years agoutils: data parser and validator reimplementation
Aleš Mrázek [Fri, 3 Sep 2021 12:11:51 +0000 (14:11 +0200)] 
utils: data parser and validator reimplementation

3 years agodatamodel: dns64: change of prefix type
Aleš [Mon, 13 Sep 2021 10:19:38 +0000 (12:19 +0200)] 
datamodel: dns64: change of prefix type

3 years agoRevert "systemd: termination notifications; pretty ids improvement"
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.

3 years agoFailed worker notifications
Vaclav Sraier [Sat, 21 Aug 2021 14:29:25 +0000 (14:29 +0000)] 
Failed worker notifications

3 years agoutils: parser/validator: passing of custom values from one first tree to another
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

3 years agosystemd: termination notifications; pretty ids improvement
Vasek Sraier [Sat, 17 Jul 2021 18:49:27 +0000 (20:49 +0200)] 
systemd: termination notifications; pretty ids improvement

3 years agodatamodel: custom type: network /96: added special error message for entering /128
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

3 years agomanager: human-readable numerical IDs (instead of uuids used previously)
Vasek Sraier [Sat, 17 Jul 2021 08:39:48 +0000 (10:39 +0200)] 
manager: human-readable numerical IDs (instead of uuids used previously)

3 years agoimproved error messages + custom values propagating to strict data model
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.

3 years agoformatting fix
Vasek Sraier [Sat, 17 Jul 2021 08:10:45 +0000 (10:10 +0200)] 
formatting fix

3 years agoMerge branch 'datamodel_types' into 'configuration-datamodel'
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

3 years agomanager: completed support for running GC
Vasek Sraier [Sat, 17 Jul 2021 08:04:06 +0000 (10:04 +0200)] 
manager: completed support for running GC

closes #1

3 years agofixup! fixup! datamodel: dnssec: section completed, tests
Aleš [Thu, 9 Sep 2021 13:49:11 +0000 (15:49 +0200)] 
fixup! fixup! datamodel: dnssec: section completed, tests

3 years agodatamodel: custom types: listen address, network addresses
Vasek Sraier [Sun, 12 Sep 2021 12:50:01 +0000 (14:50 +0200)] 
datamodel: custom types: listen address, network addresses

3 years agoadded document describing manager's architecture
Vasek Sraier [Tue, 13 Jul 2021 19:22:01 +0000 (21:22 +0200)] 
added document describing manager's architecture

3 years agofixup! datamodel: dnssec: section completed, tests
Aleš [Thu, 9 Sep 2021 13:47:25 +0000 (15:47 +0200)] 
fixup! datamodel: dnssec: section completed, tests

3 years agodatamodel: added basic ip&port and path custom data types
Vasek Sraier [Sun, 5 Sep 2021 17:50:33 +0000 (19:50 +0200)] 
datamodel: added basic ip&port and path custom data types

3 years agoupdated README
Vasek Sraier [Tue, 13 Jul 2021 18:25:18 +0000 (20:25 +0200)] 
updated README

3 years agodatamodel: dnssec: section completed, tests
Aleš [Thu, 9 Sep 2021 13:27:28 +0000 (15:27 +0200)] 
datamodel: dnssec: section completed, tests

3 years agomanager: manual selection of subprocess controllers (+ small fixes of scripts)
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

3 years agodatamodel: options: section completed, tests
Aleš [Wed, 8 Sep 2021 13:53:36 +0000 (15:53 +0200)] 
datamodel: options: section completed, tests

3 years agosupport for systemd with transient units, non-containerized integration tests and...
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

3 years agodatamodel: lua: minor modifications, tests
Aleš [Wed, 8 Sep 2021 13:31:12 +0000 (15:31 +0200)] 
datamodel: lua: minor modifications, tests

3 years agoconfig: server: improvements to get number of CPUs
Aleš [Tue, 29 Jun 2021 13:15:21 +0000 (15:15 +0200)] 
config: server: improvements to get number of CPUs

3 years agodatamodel: dns64 section added
Aleš [Wed, 8 Sep 2021 10:56:51 +0000 (12:56 +0200)] 
datamodel: dns64 section added

3 years agomanager: cli client, extracted constants and tweaks for running locally with supervisord
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

3 years agodatamodel: server: added several conf options
Aleš [Tue, 7 Sep 2021 14:07:07 +0000 (16:07 +0200)] 
datamodel: server: added several conf options

3 years agoapi: implemented Caddy-style partial config updates (subtree specified in URL)
Vasek Sraier [Sun, 27 Jun 2021 13:30:28 +0000 (15:30 +0200)] 
api: implemented Caddy-style partial config updates (subtree specified in URL)

3 years agofixed accidentally broken test after refactoring
Vasek Sraier [Sun, 27 Jun 2021 09:53:12 +0000 (11:53 +0200)] 
fixed accidentally broken test after refactoring

3 years agorefactored controller interface, added support for session systemd
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

3 years agotypes: type fixes for a new version of pyright
Vasek Sraier [Sat, 12 Jun 2021 17:45:18 +0000 (19:45 +0200)] 
types: type fixes for a new version of pyright

3 years agocode cleanup
Vasek Sraier [Sat, 12 Jun 2021 08:55:01 +0000 (10:55 +0200)] 
code cleanup

removed unnecessary import

3 years agosupervisord controller: removed sleep(1) from supervisord initialization
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...

3 years agodocs: basic structure
Aleš [Wed, 9 Jun 2021 21:16:48 +0000 (23:16 +0200)] 
docs: basic structure

3 years agoconfig: lua: validation exception added
Aleš [Mon, 7 Jun 2021 12:37:19 +0000 (14:37 +0200)] 
config: lua: validation exception added

3 years agomanager: implemented graceful shutdown by POSTing to /stop
Vasek Sraier [Mon, 7 Jun 2021 09:23:36 +0000 (11:23 +0200)] 
manager: implemented graceful shutdown by POSTing to /stop

closes #2

3 years agomanager: api: parse the request content based on Content-Type header
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

3 years agoconfig: import jinja template from file
Aleš [Wed, 2 Jun 2021 16:32:53 +0000 (18:32 +0200)] 
config: import jinja template from file

3 years agoMerge branch '3-implement-configuration-file-loading-on-startup' into 'master'
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

3 years agoci: attempt to fix problem with updating dependencies
Vasek Sraier [Wed, 26 May 2021 11:59:35 +0000 (13:59 +0200)] 
ci: attempt to fix problem with updating dependencies

3 years agomanager: loading initial configuration on startup and default path changes
Vasek Sraier [Wed, 2 Jun 2021 14:31:37 +0000 (16:31 +0200)] 
manager: loading initial configuration on startup and default path changes

3 years agodocs: fixdeps: sphinx-rtd-theme removed
Aleš [Wed, 26 May 2021 09:35:20 +0000 (11:35 +0200)] 
docs: fixdeps: sphinx-rtd-theme removed
- not needed for development purposes

3 years agodocs: initial sphinx config
Aleš [Tue, 25 May 2021 18:21:53 +0000 (20:21 +0200)] 
docs: initial sphinx config

3 years agotyping: fixed types after type-checker update
Vasek Sraier [Mon, 24 May 2021 09:44:42 +0000 (11:44 +0200)] 
typing: fixed types after type-checker update

3 years agotasks: fixdeps - automatically update npm packages
Vasek Sraier [Mon, 24 May 2021 09:07:12 +0000 (11:07 +0200)] 
tasks: fixdeps - automatically update npm packages

3 years agoMerge branch 'ci' into 'master'
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

3 years agoci: removed outdated comment from ci config
Vaclav Sraier [Mon, 10 May 2021 15:28:50 +0000 (15:28 +0000)] 
ci: removed outdated comment from ci config

3 years agoLXC-containers based CI with integration tests
Vaclav Sraier [Mon, 24 May 2021 08:59:43 +0000 (08:59 +0000)] 
LXC-containers based CI with integration tests

3 years agoconfig: several config options and features
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

3 years agoformatting: utils: dataclasses_parservalidator
Aleš [Mon, 3 May 2021 11:23:47 +0000 (13:23 +0200)] 
formatting: utils: dataclasses_parservalidator
- formatting fix
- few comments added

3 years agoutils: detect duplicate keys in configuration
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

3 years agoci: changed the way CI works
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

3 years agoscripts: updated scripts so that they don't repeat themselves
Vasek Sraier [Thu, 22 Apr 2021 16:03:05 +0000 (18:03 +0200)] 
scripts: updated scripts so that they don't repeat themselves