Refactor API and zone update handling #31
Annotations
1 error and 3 warnings
lint
You have commit messages with errors
⧗ input: Refactor zone_present()
Factor in rrset and record changes and drop the separate
rrsets_present() state function. Utilize dictdiffer to avoid lots of the
complicated and convoluted comparison code at the cost of a slightly
less uniform but still useful diff in the changes output.
Signed-off-by: Georg Pfuetzenreuter <[email protected]>
✖ subject may not be empty [subject-empty]
✖ type may not be empty [type-empty]
✖ found 2 problems, 0 warnings
ⓘ Get help: https://github.com/conventional-changelog/commitlint/#what-is-commitlint
⧗ input: Support rrset updates in zone_present()
Avoid splitting rrsets updates to a separate state function when it is
handled in the same PowerDNS API payload, rather integrate the logic
from rrsets_presents() into zone_present(). The second function can be
deleted in a later patch once functionality is deemed equivalent.
Signed-off-by: Georg Pfuetzenreuter <[email protected]>
✖ subject may not be empty [subject-empty]
✖ type may not be empty [type-empty]
✖ found 2 problems, 0 warnings
ⓘ Get help: https://github.com/conventional-changelog/commitlint/#what-is-commitlint
⧗ input: Refactor modules
The existing modules rely on the "pdnsapi" library which is proprietary
and has not received recent updates. Other Python libraries for
interfacing with the PowerDNS API suffer from the same issues or are
feature incomplete.
Solve this and make the modules more easily extensible by directly
interfacing with the PowerDNS HTTP REST API, utilizing the requests
library which is already installed as a dependency of a common Salt
deployment. For more efficient interaction as part of state modules
which repeatedly call the execution module, add the requests-toolbelt
library as the only additional dependency for easier implementation of
a base session.
As part of this refactoring the functions are renamed to follow a more
streamlined scheme differentiating between read and write operations,
and the output is aligned with what is returned directly by PowerDNS.
As a result, this is a breaking change.
Signed-off-by: Georg Pfuetzenreuter <[email protected]>
✖ subject may not be empty [subject-empty]
✖ type may not be empty [type-empty]
✖ found 2 problems, 0 warnings
ⓘ Get help: https://github.com/conventional-changelog/commitlint/#what-is-commitlint
|
lint
The following actions uses node12 which is deprecated and will be forced to run on node16: actions/checkout@v2. For more info: https://github.blog/changelog/2023-06-13-github-actions-all-actions-will-run-on-node16-instead-of-node12-by-default/
|
lint
The following actions use a deprecated Node.js version and will be forced to run on node20: actions/checkout@v2. For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/
|
lint
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
|