OctoDNS is open source software used to implement ‘DNS as code’ infrastructure. It is most often used as a middleware to keep multiple DNS configurations in sync between two different providers.
OctoDNS allows users to store their DNS configurations inside of YAML configuration files and deploy changes via Github as a version control solution. In this way organizations can implement multi-provider DNS solutions and maintain a single source of truth without introducing complicated maintenance or human error.
Feature support will vary between providers and is not without a few drawbacks. In most cases OctoDNS cannot be used to manage parity between DNS providers if the required configuration takes advantage of the proprietary features of either provider.
The public Github repository for OctoDNS including documentation on its features and supported providers can be found here: https://github.com/github/octodns