CHANGES
=======

2014.1.b2
---------

* DevStack: Set the correct state_path
* Disabled paging by default
* Don't install designate packages twice with Devstack
* Add support for paging in V2 api for collections
* Add RMQ+Other options to sample config
* Switch to oslo.rootwrap
* Sync with oslo-incubator 9a7f2f85
* Sync with global-requirements
* Blacklists mysql error
* Add paging to Central rpcapi and service
* Adds support for paging in the storage layer
* Shouldn't pass items to get_collection_href here
* Ensure default DB connection strings use unique defaults
* Fix arguments in get_collection_href
* Default state-path to /var/lib/designate
* Adds a setting for the location of the nzf files
* Stop abusing state_path in find_config
* Add a new ExtensionPlugin class
* Add Unit Tests for Blacklists V2
* Update notification_driver documentation
* Import TLDs to Designate
* Prevent Schema regex's from capturing input
* General Plugin Cleanups
* Create API calls to Manage Blacklisted Domains
* Fix TLD Delete From Storage
* Sync with oslo-incubator rev fa785cea
* Sync with openstack/requirements rev 661e6bad
* Various small fixes to documentation
* Keep the DevStack plugin in-tree
* Add TLD Api documentation
* Make Database Interactions More Transactional
* Remote Designate Agent Calls Fail
* Remove dnsmasq backend
* Replace os.exists with os.path.exists
* Validate name during v2 zone create
* Sink - Delete record on floatingip.delete event
* Check if RS belongs in childzone
* Add APIs for managing TLDs
* provide designate getting started instructions for Fedora 19
* Update setup.cfg for the Neutron -> Quantum handler rename
* Remove dependencies on pep8, pyflakes and flake8
* Sync with global requirements
* Ensure APIv2 list respose formats are correct
* FloatingIP PTR record functionality
* Moved Limits API endpoint to a RESTController
* Return a HTTP 405 for unsupported HTTP methods
* six is now a requirement of many of the oslo-incubator modules
* Made Pecan HTML debugging an option for v2 API
* PowerDNS backend tests
* Ensure Flask uses our JSON Encoder
* Add support for specifying tenant/user/token in the NoAuthMiddleware
* Removing Docs about the old Sudo mechanismn
* Designate requires Babel during runtime now
* Cleanup API v2 Link Generation and Views
* Ensure migrations run on PostgreSQL
* Switch out designate.notifier for oslo's version
* Reinstate RecordSet placement validation
* Sync with oslo-incubator
* The default port is not 0.0.0.0, it is 9001
* Ensure JSON Schema format validators operate only on strings
* Database fixture
* Ensure SQLite has the correct unique_record index
* Docs spelling/capitalization fixes
* Specify column names during the PowerDNS backends InsertFromSelect's
* Do not try to update records if there are none
* Introduce RecordSets concept to core, and add initial RRSet API to v2
* Provide support for "All Tenants" access
* Correct migration 33
* Fixed bug where sync_all could not be run
* Use % when printing keyfile/certfile errors
* Make sure that certfile and keyfile are readable
* BUG# 1258262 Added secret parameter to options for sensitive data
* Bug #1257888: Remote Designate Agent Call Fails
* Denormalize tenant_id into the records table
* Multi-backend
* Put test resources into own folder
* Backend tests restructure
* Ensure logs are captured and displayed when tests fail
* Fix typo in config and rename Quantrum > Neutron everywhere
* Multiple testing fixes
* Allow a context to be elevated to admin status
* Don't require domain_id in find_record* methods
* Pass the service-catalog if any to the context
* Add placeholder migrations to allow backports to Havana
* Added a check for HTTP_X_IDENTITY_STATUS
* Add SLDs that act like TLDs
* Support building wheels (PEP-427)
* Add .testrepository to ST2 project ignore
* nsd4slave backend
* Update notifications towards oslo.messaging
* Switch to testr / testtools / fixtures, remove nose
* Update PPA URL
* Expose touch_domain via an API extension
* Update TLD list per IANA list version 2013110700
* Fix inconsistent dnspython imports bug
* Domain Import/Export
* Update setup.cfg for Icehouse development cycle

2013.2
------

* Ensure we're compatible with JSONSchema 1.3.0 through 2.2.0
* Sync requirements with stable/havana requirements
* Zoneextractor tool
* Ensure all FakeBackend methods use info level logs
* Abstract quota enforcement in central service
* Minor tox.ini changes, should speed things up
* Add status fields for domains and records
* Correct JSONSchemas for min/max TTLs
* Added info on flake8 to docs
* Update domains when servers are created, modified or deleted
* Add rudimentary migration testing
* docs: Correct errors in the Create Record examples
* BIND9 Plugin Cleanup
* Ensure beta versions are not downloaded from pypi
* Correct PowerDNS migration 006
* Monkeypatch WebTest to support HTTP PATCH
* Give more meaningful error message when no servers are configured
* Add initial BIND9 backend docs
* Ensure default TTL is respected by PowerDNS backend
* Allow default SOA values to be configured
* Ensure tables are InnoDB and UTF8
* Cleaned up fake backend backend
* Central RPCAPI should call the correct sync methods
* Add APIv2 Zones Controller
* Fixed broken links in README.md
* Fixup CNAME placement validation
* PowerDNS - Correctly quote TXT and SPF record
* Fix utils.render_temaplate_to_file() test case name
* Revert "PowerDNS - Ensure SPF records are quoted correctly"
* docs: Add 'description' field to domains
* Cleanup v2 schema links
* Add description field to v2 schemas
* Minor v1 records schema corrections
* Add "Invalid TLD" error message
* Correct V2 limits schema
* Switch to EntryPoints for the binaries
* Add API v2 /limits endpoint
* Update Getting Started Guide
* Sync doc/requirements.txt with openstack/requirements
* API Version 2 - Initial Framework
* Sync requirements with openstack/requirements
* Add more API documentation for record types
* Bug 1206849: Add more logging to the API Layer
* PowerDNS - Ensure SPF records are quoted correctly
* Add Description Field to Domains/Records
* Update PBR to 0.5.21
* Fixup incorrect exception handler
* Update PBR
* Restore JSONSchema 1.1.0 compatibility
* Fix a minor doc build warning
* Ensure all errors raised from netaddr are caught
* Internal SQLA Storage Consistency Cleanup
* Ensure the deleted column is not truncated
* Update 'Getting Started' Doc
* Reduce logspam from amqp
* Ensure backend resources are always deletable
* Refactor JSONSchema handling code
* Remove out of date TODOs from README
* Move doc/examples to doc/source/examples
* Move Keystone config to main designate config
* re-org docs & add details on production architecture
* Ensure Code Coverage only includes designate
* better ipv4 validation
* Replace missing indexes for SQLite
* Ensure StorageAPI always re-raises exceptions appropriately
* corrected event details in Nova Handler notes
* Logging & docs improvement for notification_handler
* Remove unnecessary default criterion value
* find_record should take a domain_id argument
* find_records does not need to perform an is_admin check
* Sync requirements with openstack/requirements
* Remove openstack.common.cfg
* Remove invalid entrypoints
* Accept trailing /'s on URLs
* Add 'Getting Started' Doc
* Implement a Quota management API extension
* bug# 1198890 internal api tidy
* Update docs links from moniker.rtfd.org to designate.rtfd.org
* Add DevStack documentation page
* Override default config values correctly
* Middlewares should tell you they have started
* Sync with oslo-incubator stable/grizzly
* Update link to designate-cookbook
* Add doc link to sample plugin repo
* Add a related links page to the docs
* Remove comments from *requirements.txt (workaround pbr bug)
* bug# 1198849 - from blallau
* Update the outdated install document
* Ensure sphinx and sphinxcontrib-httpdomain are installed for doc builds
* Ensure RTD builds install all the necessary deps
* bug# 1198885 - report 'latest' instead 'None' on database-sync
* Ensure central cleans up storage if the backend fails
* Add the Request-ID as a HTTP reponse header
* Carry oslo-incubator review #34949
* Sync with oslo stable/grizzly c7862b5239822d701b7fb155faa4607eff602627
* Ensure all backend methods respect deleted domains
* quota-domain-records sould be an IntOpt
* Ensure the unique index on domains.name is correctly dropped
* Bug #1194889 - Fix migration 16 on SQLite
* Added notes on setting up a designate dev environment
* bug/1195284 - correct ttl checks to match RFC
* Add simple Maintenance Mode WSGI middleware
* Update jsonschema dependancy
* Sync requirements with openstack/requirements (except jsonschema)
* Keep deleted domains in the DB
* Ensure domains that fail to create are cleaned
* Ensure request media-types are sane
* Ensure records are unique, per RFC2181 Sec 5.0
* Add LICENSE file
* Rename to designate in .gitreview
* Rename keystone-setup script for designate
* Correct some overzealous s/moniker/designate/'s
* Bump version to 2013.2
* Correct a few links broken during the s/moniker/designate/
* Rename Moniker -> Designate
* Switch to Flake8 and add Hacking checks
* Sync requirements with openstack/requirements. (Except jsonschema)
* Fix pyflakes error
* Guard against deletion of a parent domain
* Remove unused SQLA utils code
* Ensure record placement validation does not prevent updates
* Validate UUID URL parameters
* Add request-id to the API's fault responses
* Switch to PBR
* Helper utilities
* The utils module in oslo is no more
* Ensure create domain/record records call the correct count_* methods
* Ensure our quotas/limits are consistent with other OpenStack projects
* Implement Quota Support
* Ensure two PTR records cannot have the same name
* Update import of oslo's processutils
* Extend reports API extension with more information
* Cleanup method/varible ordering in the various places they are defined
* Update report API ext method names to match URLs
* Remove unnecessary try/catches from API extensions
* Ensure all error responses are JSON
* Ensure API calls fail when junk/unexpected properties are supplied
* Add tests to ensure domain notifications are sent correctly
* Removing unused test helpers
* Add periodic_task from Oslo
* Correct the service name used in notifications
* Add a "force" option to context sudo
* Add Central.find_*() methods
* Show log level in moniker-manage output
* Commands should extend our Base Command, rather than cliff.Command
* Remove un-used base CLI command classes
* Update to the latest loopingcall from oslo
* Convert openstack-common.conf to the new format
* Ensure X-Moniker-Sudo-Tenant-ID values are either a UUID or int
* Prefix all Moniker notifications with "dns."
* Add a test case for email addr's with a trailing period
* 0.0.0.0 is an invalid IPv4 address
* Cleanup PowerDNS database schema
* Support all valid (per RFC1035) email addresses
* Implement support for RPC Versioning
* Remove redundant moniker-manage commands
* Ensure record changes trigger a backend serial increment
* Abstract API exception handling
* Tighten up TTL and Priority acceptable value ranges
* Added /reports, /reports/domains, /reports/records & /reports/tenants
* A domain may not have a NULL TTL
* Ensure supplied email addresses are valid for use in the SOA RNAME field
* Add support for specifying custom domain/record name max lengths
* Validate SRV record format
* Add localhost, localdomain and local and remove com, net, org from default blacklist
* Set the default value for accepted TLD's to match the IANA TLD list
* Quick fix to oslo-wsgi for wsgi.Service compat with service.ProcessLauncher
* Domain name's should not be accepted with wildcards
* Add 'accepted_tld_list' config option
* Add ability to "touch" a domain via the API
* Allow for record create/update/delete's and domain updates's without incrementing the serial number
* Add a simple profiling decorator
* Prevent is_subrecord iterating past the domain name itself
* Revert "A domain's TTL must not be null."
* A domain's TTL must not be null
* Use the 'fake' backend by default
* Make Diagnostics and Sync API's optional
* Separate notification handling from the central service
* Remove base Plugin testcase
* API tests should tearDown in the correct order
* Refactor DNSMasq plugin for easier transition to the upcoming transactional changes
* Remove the distinction between a storage engine and connection
* Add Also-Notify support to PowerDNS backend
* Wrap backend interactions in try/catch blocks
* Add a base 'Backend' exception class for backend specific exceptions to extend from
* Fetching a domain's list of authoritative name servers should not be filtered by tenant_id
* Ensure database-sync works when no version is specified
* Rename sync-all to the more accurate "sync-domains"
* Ensure we enforce the various rules for CNAME records
* Add novalocal to the default domain name blacklist
* Fixup migration #12 and support a target version when doing a database-sync
* Ensure migrate.cfg's are included in the sdist tarball
* Saner default values for SOA
* Ensure serial number does not go backwards
* Pin to jsonschema less than 1.0
* Rename the X-Moniker-Tenant-ID header to X-Moniker-Sudo-Tenant-ID to make more clear its meaning and use
* Support SSHFP records
* Correct migration #10
* Massively improve hostname validation
* Move diagnostics API resource under /v1/ and split out the sync methods
* Add support for plugin provided API resources
* Add 'servers' link to domain schema
* Drop the ipv4 and ipv6 columns from servers. It's never been used and makes little sense
* Add ability to fetch the list of nameservers hosting a particular domain
* Consistently use try/except/else
* Ensure doc examples use valid JSON
* Correct Context-Type -> Content-Type typo in docs
* Attach context to local.store a little earlier
* Ensure tools/* is included in sdist
* Remove unnecessary test api-paste and policy.json
* Ensure resources are included in dist packages
* Ensure we attach the context object to oslo-local for oslo-log to find
* Simple implementation of DNSMasq backend
* PowerDNS: Allow domain type to be configured
* Ensure PowerDNS backup updates the SOA serial when necessary
* Add ordername/auth cols to PowerDNS Record model
* Set the auth field correctly for PowerDNS
* Allow Context properties to be passed through get_admin_context()
* Fixup moniker-manage sync commands
* Add moniker-manage CLI commands to trigger sync's
* Allow admin context's to retrieve domains from all tenants
* PowerDNS currently only supports hmac-md5 TSIG
* Calls to get_servers from backends should use an admin context
* Add moniker-manage commands for maintaining servers and TSIG keys
* Use a dash as the command separater in moniker-manage
* Fix incorrect column name used when updating a TSIG key
* Add support for TSIG to PowerDNS backend
* Add tests for incorrect domain_id checks
* Ensure records belong to the domain_id supplied in the URL
* Pass TSIG Key Create/Update/Delete to backend implementations
* Fixup a rebase gone wrong.
* Provide initial support for TSIG
* Pass an instance of the central service, or the central_api proxy to backends
* Add initial PowerDNS migration repo
* Fixup bug in bind9 backend
* Domain Sync should not attempt to delete records after deleting the domain
* Prevent renaming of a domain, and ensure records are contained in their parent domain
* Add SPF to type ENUM in Records Table
* Update REST API docs to remove links
* Remove some magic from the RPC Backend API
* Add naive domain/record synchronization implementations

2013.1.alpha1
-------------

* Ensure config files are included in sdist tarball
* Rename moniker-api-paste.ini -> api-paste.ini
* Cleanup and simplify Tenant "Sudo" Code
* Cleanup Blacklist code, Protect from sub-domain hijacking. Upgrade to pyflakes 0.6.1
* Override the format for records
* Replace reserved domain suffixes with regex based domain name blacklist
* Use Policy enforcement to record an Audit trail
* Update to JSONSchema 0.8 final
* Re-add version.py
* Initial Diagnostics API endpoint
* Sync with Oslo 30a50c8a
* Move config files from 'etc/' to 'etc/moniker/' to match what oslo's update.py expects
* Allow Moniker Services to Spawn N processes each
* Add sample config entry for reserved_domain_suffixes
* Change to rootwrapper - bug #1075120
* A Domain's TTL should be optional
* Sanitize content field for certain record types
* Pass server list from central -> backend for domain operations
* Add sample PowerDNS backend config
* Minor doc cleanup's
* Update Docs with GetRecord call
* PowerDNS Backend Driver
* Fix bug #1075268 - Support multiple notification handlers listening to the same notification type
* Log messages produced by the Keystone Auth Token middleware
* Add support for a "sudo" like mechanism in the API
* Add dummy versions list endpoint
* Add support for admin-reserved DNS domain name suffixes
* Add support for PTR records
* *Really* cleanup the sample config this time
* Sync with oslo a8973c52
* Add tests for API 409 Handling (Duplicates / Conflicts)
* Add tests for API 404 Handling
* Handle RPC timeout's appropriately in the API
* Updated Docs with recent API changes, particularly records
* Cleanup sample config file
* Add tests for KeystoneContextMiddleware and NoAuthMiddleware
* Allow wildcard DNS records using a *
* Update MANIFEST.in to ensure only sample configs are included
* Ensure `moniker-manage --version` reports the correct version number
* Sync with oslo-incubator ad93e4e3
* Fix coverage output folder
* Switch to a single config file, using a config group per service
* Fixup default policy.json
* Allow configuration file to be specified via --config-file
* Add more happy path API tests for servers/domains/records
* Ensure Schema handle datetime objects appropriately
* Centralize argv slicing
* Use consistent base class name for moniker.backend tests
* Remove dead code from moniker.storage
* Fixup hostname regex + add some tests for valid host names
* Provide sample logdir config option
* Sync with oslo 8888ad01
* Ensure bin/moniker-manage is executable
* Ensure MANIFEST.in is correct - No longer include *.pyc
* Exclude ST2 project file from sdist
* Ditch pre_version argument to oslo-version
* Added generic SQLOPTS
* Record TTL should default to, and accept, NULL values
* Remove unnecessary if/else block from the bind9 zone template
* Move database_connection sample config to the correct section
* Remove unnecessary steps from the install guide
* Ensure partial API updates are validated correctly
* Include setup-requires in tox.ini
* Sync with Oslo e6c576d9
* Fixup sample moniker-api.conf
* moniker-manage CLI should read DB connection string from correct config group
* Minor install doc corrections
* Ensure Plugin config declarations are compatible with oslo-config's `import_opt` method
* Partial fix for bug #1074093
* Correctly raise Duplicate exceptions with MySQL
* Fixup migration #3 for MySQL
* Add /bind9 to .gitignore
* Fixup bind9 zone template
* bug #1086467, fixed by using moniker record ID in dns_domains column
* Fixup final pyflakes error + enable pyflakes check by default
* Fixup Server JSONSchema
* Allow the central and agent services to have separate defaults for the backend_driver config option
* cfg.CONF is a global, let's not pass it around unnecessarily
* Add backend_driver default to moniker-central.conf
* Switch to plain .json schemas and improve Schema handling
* Added central backend changes and rpc plugin. Added write_database flag to mysqlbind agent
* Fix inconsistencies in use of IPAddr and UUID instances
* Fixup API after breakage in change Ie65b6d25
* Cleanup use of Flask Blueprint's in the API
* Sync with Oslo-Incubator 1fd7694e
* Move SQLA types to shared location
* Add empty testcase for the MySQL Bind9 backend
* Working mysqlbind agent. Thank you to Endre and Kiall for the help!
* Fixed a single-letter typo in docs
* Move out session from the sqlalchemy impl to a more re-usable place
* Keystone helper
* Change the use of self.conf to cfg.CONF[self.name]
* Fixup sample agent config
* Tests cleanup and add helpers
* Add more test helpers
* More install doc corrections
* Install doc corrections
* POST helper for API tests
* Do teardown properly
* Abstract test functionality a bit more - make more use of get_*_fixture
* Fixup config access in bind9 backend
* Add DB init commands to README.md
* Add first API test for listing servers
* The PyFlakes tox env should not run by default
* Process only events with handlers - skip the rest
* Fixes bug #1081525
* Typo fix in install docs
* Move fixtures to be available to all tests
* Move docs where they belong (RTFD)
* Add cliff to pip-requires and ensure all bin/ files are checked with pep8
* Make us client library independent for server side operations
* Fix so it invokes on load
* Generalize tests of plugins take 2, bug #1080415
* Add Quantum handlers for floating ip with tests
* Fixes bug #1080467
* Generalize testcases for handlers, bug #1080415
* Fix broken version for migrate.
* Implemented deltetion in the bind9 agent, fixed deletion in the backend, added migrate for foreign key changes
* Cleanup tox / test deps
* Fix most issues identified by PyFlakes
* Add PyFlakes tox env
* Update readme a bit
* Add Quantum samples
* Minor test cleanups
* Remove `get_config_overrides` method from tests
* Add policy checks for all resource create/update/delete/get/list actions
* Pull Keystone middleware from the keystone client package
* Restrict the Servers resource to admin users
* Parse roles from Keystone into the Context
* Track plugin name and type within records
* Update the docs to use virtualenv's --no-site-packages flag
* Update docs according to latest plugin change
* Abstract out functionality into plugins
* Fixed bind9 agent backend to handle new domains properly
* Add *.egg to .gitignore
* Subclass OS-Common's Context class
* Added fix to zone template to append dot to end of data for various records that require it
* Add utils.resource_string() method
* Ensure Agent service calls the backends register_opts() method
* Be consistent with sample state_path configuration value
* Switch bind9 agent to a driver based implementation
* Sync up notification handler test naming
* Remove backported unittest assertions in favour of unittest2
* Ensure database-connection config variable is defined correctly
* Minor sample config file fixes
* Make notification handler config option name consistent
* Add nosexcover and nosehtmloutput Nosetests plugins to tools/test-requires
* Document state-path configuration option
* Fix bug #1075595 - Ensure a missing configuration file raises an error
* Ensure the bind9 agent logs an error when there are no servers configured
* Provide a sane sample database_connection config value
* Ensure we depend on SQLAlchemy 7.x
* Added moniker API documentation
* Re-order tox.ini sections
* Fixup broken migration
* Cleanup UnitTest assert backports
* Add initial support for handling notifications from other OpenStack services
* Add filtering to the storage layers get_* methods
* Split on "+" to determine driver.
* Update requirements for monikerclient -> python-monikerclient
* Add pypi trove classifiers
* Import and make use of openstack.common.version module
* Sync with OS-Common 3d6c2368a5de16d875341426db8ddc9888213264
* Remove duplicated line from docs
* Update docs a little
* Add requirements for RTD
* Cache pip downloads on Jenkins
* Remove Travis CI config, now that Moniker is on Gerrit
* Fixup deps and tox.ini for Stackforge+Gerrit
* Update docs for Servers API
* Hide autogenated doc files in Sublime Text 2 project
* Add sample API call to the sphinx docs (It's not necessarily accurate!)
* Add sphinx doc skeleton
* Update MANIFEST.in
* Ensure CLI only loads local file if it exists
* Move optional dep's to their own file
* Use a local config file only when it exists
* Sync with OS Common aca1805d911caefe14a73edb6ced281cf54e7ad2
* Update default config files
* Remove DB migrations from TODO list
* Move SQLA dep in pip-requires to indicate it is optional (kinda)
* Complete Skipped storage tests
* Ensure we use a single Service instance per test case
* Ensure tearDown is performed in the reverse order of setUp
* Switch from Query.filter() -> Query.get() for single record fetches
* Add Storage test for get_record/get_records
* Minor cleanup
* Lower the default SQL debug level
* NULL is an acceptable value for tenant_id
* Ensure `moniker database` commands read the moniker-central config file
* Cleanup SQLA migrate changes + "Un-Abstract" the type definitions
* Migrate scripts now work! Also re-coded the tenant_id NULL fix
* Found a bug that allows insertion into domains with NULL tenant_id
* Changes to get sqlalchemy migrate to work. Still not there
* Move create/destroy DB hacks to the tests themselves, and ensure they respect the storage driver choice
* Update DB CLI commands for database -> storage changes
* Fixup previous commit
* Saner default values for Path+DB configs
* Ensure the SQLA tests actually use the SQLA driver
* Remove unnecessary hack inherited from ceilometer
* Rename "sqla" to "impl_sqlalchemy"
* Fix license headers and skip setting engine before connection
* Attempt to make backends more driver based like in Ceilometer
* Switch from git:// to GubHub tarball via https for python-monikerclient dep
* Rename sql_connection to the more generic database_connection
* PEP8 Fix
* Add database init + sync commands
* Backport a few of assert methods not present in Py26. Fixes the tests on Py26
* Remove pypi from travis-ci config
* Add openstack.nose_plugin as a test dep
* Add Openstack-Nose test dep
* Fixup Travis-CI and tox config
* Two newlines needed for zone files that have more than one RR to have one newline at end
* Add Travis-CI config file
* Final fixes for migrations addition
* Add tests policy.json
* Ensure utils.find_config() raises correctly on failure to find config
* Policy implementation (part 1)
* Add Database driver server method tests
* Ensure agents recieve the correct params for delete_domain calls
* Handle `exceptions.Forbidden` appropriately in the API
* Correct handling of duplicates
* Fixup PEP8 errors in previous merge + remove license info from empty files
* Add SQLAlchemy Migrate dep
* Add some missing deps required by OS-Common
* Delete duplicated schemas.py
* Include newer bin/ files on tox pep8 checks
* Use the latest version of PEP8
* Re-creating changes, this time with Git identity set! * Changes to models.py to set column width * Added initial migration scripts
* Add PasteDeploy dep to tools/pip-requires
* Remove duplicate requirement on setuptools-git
* Extract setup-requires from setup.py
* Add tests_require to setup.py
* Move TODO's to the bottom on the readme
* Move some dep's from test-requires to pip-requires
* Add some *really* basic instructions
* Add .venv to gitignore file
* Ensure all bin/ files are as "dumb" as possible
* Add Moniker Central tests for domains and records
* Remove temporary keystone config options
* Remove Debug API endpoint + Remove some unneeded imports
* Switch from Flask's WSGI Server to OpenStack Commons + Use PasteDeploy for easier Keystone integration
* Add OpenStack Common WSGI module
* Ensuring fitering a empty collection works
* Move API app from __init__.py -> app.py
* Use fake RPC backend for testing
* Add Moniker Central server management tests
* Remove some un-used imports
* Move create schema hack into into it's own method
* Add tox and venv to ST2 folder ignores
* Fix another missing license header
* Add skeleton test framework
* Fix license headers
* Make use of OpenStack Common setup module
* Ensure the bind9 agent's output path is created, if necessary
* Ensure delete's are flushed to the DB immediately
* Ensure moniker's exceptions are re-raised over RPC
* Reapply WIP openstack common patch from https://review.openstack.org/#/c/13953/
* Ensure the RNDC call only supplies a config file option if one has been explicitly set
* Remove leftover config file
* Sync with OpenStack Common rev f182936b
* Add some temp config vars to disable keystone and use a default tenant/user instead
* Lots of changes:
* Add utils and exception modules from openstack-common
* Switch default sql_connection to an in-memory sqlite DB
* Sync to openstack-common rev 974989d9
* Remove leftover file
* Add TODO note
* Rename TODO list
* Initial Public Commit
