Commit Graph

100 Commits (master)

Author SHA1 Message Date
Vitaliy Filippov c03be448e0 Send empty replies to AAAA requests
In conformance with https://tools.ietf.org/html/rfc4074 # Expected Behavior
2020-01-23 18:43:32 +03:00
Vitaliy Filippov 57dfab11eb Enable TCP by default and add option to disable it 2020-01-22 13:50:25 +03:00
Vitaliy Filippov 42c7d2b5e6 Add dns_address cli parameter 2020-01-17 17:48:14 +03:00
Vitaliy Filippov 63a7cc1603 Add systemd unit 2020-01-17 17:41:07 +03:00
Vitaliy Filippov 6de1109854 Change to a non-root user after starting the server 2020-01-17 17:22:19 +03:00
Justin Riley 5805c65dc4 Merge branch 'daemon-log-sync-errors' into 'master'
catch and log all sync exceptions in daemon

See merge request !3
2017-04-14 14:18:34 -04:00
Justin Riley 1d7f8dcf63 catch and log all sync exceptions in daemon
...instead of crashing.
2017-04-14 14:14:57 -04:00
Justin Riley 29ac797907 Merge branch 'add-version-flag' into 'master'
add --version flag

Closes #1

See merge request !2
2017-04-14 13:19:41 -04:00
Justin Riley 16dd655a94 add --version flag
closes #1
2017-04-14 13:16:15 -04:00
Justin Riley 7d410cf195 Merge branch 'gitlab-ci' into 'master'
build docker container after tests pass

See merge request !1
2017-04-14 12:23:10 -04:00
Justin Riley 4dd482eb3d build docker container after tests pass 2017-04-14 12:15:23 -04:00
Justin Riley 763616c132 Merge branch 'daemon-sync-interval' 2016-10-21 09:27:01 -04:00
Justin Riley f71b8080cc daemon: sync with opennebula on defined interval
- Added --sync-interval option that defaults to 5 minutes
2016-10-21 00:30:39 -04:00
Justin Riley 16d697f18d add docker image for onedns 2016-10-17 15:41:40 -04:00
Justin Riley 198fa9f770 daemon: set default dns port to 53 2016-10-17 15:40:52 -04:00
Justin Riley 3c38aa9baa README: fix badge urls [ci-skip] 2016-10-13 16:59:14 -04:00
Justin Riley 2b821f4a61 gitlab-ci: enable pip cache 2016-10-13 16:03:34 -04:00
Justin Riley 9c188b6022 limit test discovery to onedns directory [ci-skip] 2016-10-12 00:19:47 -04:00
Justin Riley 3cb6146c80 remove unnecessary after script
...this is redundant given that we have --cov-report in [tool:pytest] in
setup.cfg
2016-10-11 23:59:26 -04:00
Justin Riley c06c7bbbce Merge branch 'gitlab-ci' 2016-10-11 23:46:09 -04:00
Justin Riley ab73b9acb7 remove 'coverage {combine,html}' commands 2016-10-11 23:43:11 -04:00
Justin Riley 26fb8c0abb bump pytest and plugins to latest versions 2016-10-11 23:29:03 -04:00
Justin Riley 40dfd97292 gitlab-ci: setup ONE_AUTH for tests 2016-10-11 22:47:42 -04:00
Justin Riley 9246a4b813 README: add build and coverage status 2016-10-11 22:34:54 -04:00
Justin Riley ceb941d501 add gitlab continuous integration config 2016-10-11 22:29:57 -04:00
Justin Riley 74cd3fb003 add test-requirements.txt for test dependencies 2016-10-11 22:29:57 -04:00
Justin Riley 999adab4b2 Merge branch 'dnslib' 2016-10-07 15:32:47 -04:00
Justin Riley f05db7d322 tests: add fixtures from opennebula test instance 2016-10-07 15:30:32 -04:00
Justin Riley b4d64b327f README: add usage 2016-10-07 15:27:11 -04:00
Justin Riley f9554f7f79 resolver: remove unused future print import 2016-10-06 00:29:49 -04:00
Justin Riley 9ca71db458 server: sanitize VM names in _get_vm_dns_entries
...using the same method as 15-hostname in OpenNebula/addon-context-linux
2016-10-06 00:23:40 -04:00
Justin Riley 9b47eb8f08 setup.cfg: use [tool:pytest] instead of [pytest]
...[pytest] is deprecated
2016-10-06 00:01:51 -04:00
Justin Riley abd1744553 utils: add tests for get_fqdn 2016-10-05 23:36:07 -04:00
Justin Riley 5475be37f2 add tests for onedns.server (now at 100% coverage) 2016-09-28 11:35:07 -04:00
Justin Riley 4c245819ce server: implement tiebreaker for VMs with same name/IP
The tiebreaker is first-come first serve - ie whichever VM had the name
or IP first wins (based on VM id). The sync() method now sorts the VM
list by id in order to evaluate the tiebreaker correctly (VM list comes
that way from ONED but just in case...).
2016-09-28 11:18:14 -04:00
Justin Riley a7051e0689 server: build new zone and replace live copy in sync
Instead of clearing the live zone and iterating through and adding
records from OpenNebula we build an entirely new zone, sync it with
OpenNebula, and instantaneously swap it with the currently live zone.
This minimizes the amount of time that the DNS server is missing entries
while its syncing with OpenNebula.
2016-09-28 11:16:31 -04:00
Justin Riley 3a07adba10 resolver: add zone kwarg to {add,remove}_host methods 2016-09-28 11:07:12 -04:00
Justin Riley bc88849e31 add utils for verifying presence/absence in DNS 2016-09-28 10:48:26 -04:00
Justin Riley 8bad8b47d4 add tests for onedns base exception 2016-08-19 12:28:10 -04:00
Justin Riley a97e9f687c add tests for cli 2016-08-19 09:19:50 -04:00
Justin Riley b735c84a04 resolver: add thread mutex and use new zone module 2016-08-17 16:21:05 -04:00
Justin Riley 2c0283fdb7 add zone module with in-memory zone implementation 2016-08-17 10:13:43 -04:00
Justin Riley 56f6998753 add vms fixture that gets recorded using vcrpy
Should help prevent creating duplicate vcrpy yaml's in
onedns/tests/fixtures for the same 'get all vms' request in multiple
tests.
2016-08-12 11:24:52 -04:00
Justin Riley 6892508b9e resolver: add zone kwarg to add_host
This will allow OneDNS.sync to build a new zone and instantly swap it
with the currently active zone to minimize downtime.
2016-08-12 11:13:50 -04:00
Justin Riley ec8c1902ab move get_fqdn to onedns.utils module 2016-08-12 11:12:11 -04:00
Justin Riley 7f2a3ca8a8 add kwargs for server, port, and tcp to dnsquery 2016-08-12 11:03:55 -04:00
Justin Riley 6fecaed95a add optional vms kwarg to sync for testing 2016-08-12 10:44:09 -04:00
Justin Riley 9ba49ee677 tests: move dns query code to onedns.tests.utils 2016-08-03 12:01:41 -04:00
Justin Riley e6a1724251 fix flake8 failures 2016-08-03 11:45:57 -04:00
Justin Riley 2c32c03ab4 vcr: scrub ONE xmlrpc auth from recordings 2016-08-03 11:38:10 -04:00