Retire Packaging Deb project repos
This commit is part of a series to retire the Packaging Deb project. Step 2 is to remove all content from the project repos, replacing it with a README notification where to find ongoing work, and how to recover the repo if needed at some future point (as in https://docs.openstack.org/infra/manual/drivers.html#retiring-a-project). Change-Id: Ib784ade7594933fc9e09461d2a294521e6224f72
This commit is contained in:
parent
accd70a656
commit
18dba242d1
|
@ -1,7 +0,0 @@
|
||||||
[run]
|
|
||||||
branch = True
|
|
||||||
source = designate
|
|
||||||
omit = designate/tests/*
|
|
||||||
|
|
||||||
[report]
|
|
||||||
ignore_errors = True
|
|
|
@ -1,56 +0,0 @@
|
||||||
|
|
||||||
# Python related files
|
|
||||||
|
|
||||||
*.dat
|
|
||||||
*.egg
|
|
||||||
*.egg-info
|
|
||||||
*.pyc
|
|
||||||
.eggs
|
|
||||||
TAGS
|
|
||||||
build
|
|
||||||
|
|
||||||
# Test related files
|
|
||||||
|
|
||||||
*.log
|
|
||||||
.coverage
|
|
||||||
.coverage.*
|
|
||||||
.testrepository/*
|
|
||||||
.tox
|
|
||||||
.venv
|
|
||||||
cover
|
|
||||||
flake8_results.html
|
|
||||||
functionaltests/.testrepository/
|
|
||||||
functionaltests/tempest.log
|
|
||||||
htmlcov/
|
|
||||||
venv
|
|
||||||
|
|
||||||
# Files created by releasenotes build
|
|
||||||
releasenotes/build
|
|
||||||
|
|
||||||
# Editors
|
|
||||||
|
|
||||||
*.sublime-workspace
|
|
||||||
*.swp
|
|
||||||
|
|
||||||
# Misc
|
|
||||||
|
|
||||||
*.DS_Store
|
|
||||||
*.idea
|
|
||||||
*.ipynb
|
|
||||||
*.orig
|
|
||||||
*.sqlite
|
|
||||||
*.sqlite3
|
|
||||||
/.ipynb_checkpoints/*
|
|
||||||
/bind9
|
|
||||||
/dnsmasq
|
|
||||||
AUTHORS
|
|
||||||
ChangeLog
|
|
||||||
contrib/vagrant/.vagrant/
|
|
||||||
designate/versioninfo
|
|
||||||
dist
|
|
||||||
doc/build/*
|
|
||||||
doc/source/api/*
|
|
||||||
api-ref/build/*
|
|
||||||
etc/designate/*.conf
|
|
||||||
etc/designate/*.yaml
|
|
||||||
var/*
|
|
|
@ -1,4 +0,0 @@
|
||||||
[gerrit]
|
|
||||||
host=review.openstack.org
|
|
||||||
port=29418
|
|
||||||
project=openstack/designate.git
|
|
10
.testr.conf
10
.testr.conf
|
@ -1,10 +0,0 @@
|
||||||
[DEFAULT]
|
|
||||||
test_command=OS_STDOUT_CAPTURE=${OS_STDOUT_CAPTURE:-1} \
|
|
||||||
OS_STDERR_CAPTURE=${OS_STDERR_CAPTURE:-1} \
|
|
||||||
OS_LOG_CAPTURE=${OS_LOG_CAPTURE:-1} \
|
|
||||||
OS_DEBUG=${OS_DEBUG:-1} \
|
|
||||||
OS_TEST_TIMEOUT=${OS_TEST_TIMEOUT:-160} \
|
|
||||||
${PYTHON:-python} -m subunit.run discover -t ./ ${OS_TEST_PATH:-./designate/tests} $LISTOPT $IDOPTION
|
|
||||||
|
|
||||||
test_id_option=--load-list $IDFILE
|
|
||||||
test_list_option=--list
|
|
176
LICENSE
176
LICENSE
|
@ -1,176 +0,0 @@
|
||||||
|
|
||||||
Apache License
|
|
||||||
Version 2.0, January 2004
|
|
||||||
http://www.apache.org/licenses/
|
|
||||||
|
|
||||||
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
|
|
||||||
|
|
||||||
1. Definitions.
|
|
||||||
|
|
||||||
"License" shall mean the terms and conditions for use, reproduction,
|
|
||||||
and distribution as defined by Sections 1 through 9 of this document.
|
|
||||||
|
|
||||||
"Licensor" shall mean the copyright owner or entity authorized by
|
|
||||||
the copyright owner that is granting the License.
|
|
||||||
|
|
||||||
"Legal Entity" shall mean the union of the acting entity and all
|
|
||||||
other entities that control, are controlled by, or are under common
|
|
||||||
control with that entity. For the purposes of this definition,
|
|
||||||
"control" means (i) the power, direct or indirect, to cause the
|
|
||||||
direction or management of such entity, whether by contract or
|
|
||||||
otherwise, or (ii) ownership of fifty percent (50%) or more of the
|
|
||||||
outstanding shares, or (iii) beneficial ownership of such entity.
|
|
||||||
|
|
||||||
"You" (or "Your") shall mean an individual or Legal Entity
|
|
||||||
exercising permissions granted by this License.
|
|
||||||
|
|
||||||
"Source" form shall mean the preferred form for making modifications,
|
|
||||||
including but not limited to software source code, documentation
|
|
||||||
source, and configuration files.
|
|
||||||
|
|
||||||
"Object" form shall mean any form resulting from mechanical
|
|
||||||
transformation or translation of a Source form, including but
|
|
||||||
not limited to compiled object code, generated documentation,
|
|
||||||
and conversions to other media types.
|
|
||||||
|
|
||||||
"Work" shall mean the work of authorship, whether in Source or
|
|
||||||
Object form, made available under the License, as indicated by a
|
|
||||||
copyright notice that is included in or attached to the work
|
|
||||||
(an example is provided in the Appendix below).
|
|
||||||
|
|
||||||
"Derivative Works" shall mean any work, whether in Source or Object
|
|
||||||
form, that is based on (or derived from) the Work and for which the
|
|
||||||
editorial revisions, annotations, elaborations, or other modifications
|
|
||||||
represent, as a whole, an original work of authorship. For the purposes
|
|
||||||
of this License, Derivative Works shall not include works that remain
|
|
||||||
separable from, or merely link (or bind by name) to the interfaces of,
|
|
||||||
the Work and Derivative Works thereof.
|
|
||||||
|
|
||||||
"Contribution" shall mean any work of authorship, including
|
|
||||||
the original version of the Work and any modifications or additions
|
|
||||||
to that Work or Derivative Works thereof, that is intentionally
|
|
||||||
submitted to Licensor for inclusion in the Work by the copyright owner
|
|
||||||
or by an individual or Legal Entity authorized to submit on behalf of
|
|
||||||
the copyright owner. For the purposes of this definition, "submitted"
|
|
||||||
means any form of electronic, verbal, or written communication sent
|
|
||||||
to the Licensor or its representatives, including but not limited to
|
|
||||||
communication on electronic mailing lists, source code control systems,
|
|
||||||
and issue tracking systems that are managed by, or on behalf of, the
|
|
||||||
Licensor for the purpose of discussing and improving the Work, but
|
|
||||||
excluding communication that is conspicuously marked or otherwise
|
|
||||||
designated in writing by the copyright owner as "Not a Contribution."
|
|
||||||
|
|
||||||
"Contributor" shall mean Licensor and any individual or Legal Entity
|
|
||||||
on behalf of whom a Contribution has been received by Licensor and
|
|
||||||
subsequently incorporated within the Work.
|
|
||||||
|
|
||||||
2. Grant of Copyright License. Subject to the terms and conditions of
|
|
||||||
this License, each Contributor hereby grants to You a perpetual,
|
|
||||||
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
|
||||||
copyright license to reproduce, prepare Derivative Works of,
|
|
||||||
publicly display, publicly perform, sublicense, and distribute the
|
|
||||||
Work and such Derivative Works in Source or Object form.
|
|
||||||
|
|
||||||
3. Grant of Patent License. Subject to the terms and conditions of
|
|
||||||
this License, each Contributor hereby grants to You a perpetual,
|
|
||||||
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
|
||||||
(except as stated in this section) patent license to make, have made,
|
|
||||||
use, offer to sell, sell, import, and otherwise transfer the Work,
|
|
||||||
where such license applies only to those patent claims licensable
|
|
||||||
by such Contributor that are necessarily infringed by their
|
|
||||||
Contribution(s) alone or by combination of their Contribution(s)
|
|
||||||
with the Work to which such Contribution(s) was submitted. If You
|
|
||||||
institute patent litigation against any entity (including a
|
|
||||||
cross-claim or counterclaim in a lawsuit) alleging that the Work
|
|
||||||
or a Contribution incorporated within the Work constitutes direct
|
|
||||||
or contributory patent infringement, then any patent licenses
|
|
||||||
granted to You under this License for that Work shall terminate
|
|
||||||
as of the date such litigation is filed.
|
|
||||||
|
|
||||||
4. Redistribution. You may reproduce and distribute copies of the
|
|
||||||
Work or Derivative Works thereof in any medium, with or without
|
|
||||||
modifications, and in Source or Object form, provided that You
|
|
||||||
meet the following conditions:
|
|
||||||
|
|
||||||
(a) You must give any other recipients of the Work or
|
|
||||||
Derivative Works a copy of this License; and
|
|
||||||
|
|
||||||
(b) You must cause any modified files to carry prominent notices
|
|
||||||
stating that You changed the files; and
|
|
||||||
|
|
||||||
(c) You must retain, in the Source form of any Derivative Works
|
|
||||||
that You distribute, all copyright, patent, trademark, and
|
|
||||||
attribution notices from the Source form of the Work,
|
|
||||||
excluding those notices that do not pertain to any part of
|
|
||||||
the Derivative Works; and
|
|
||||||
|
|
||||||
(d) If the Work includes a "NOTICE" text file as part of its
|
|
||||||
distribution, then any Derivative Works that You distribute must
|
|
||||||
include a readable copy of the attribution notices contained
|
|
||||||
within such NOTICE file, excluding those notices that do not
|
|
||||||
pertain to any part of the Derivative Works, in at least one
|
|
||||||
of the following places: within a NOTICE text file distributed
|
|
||||||
as part of the Derivative Works; within the Source form or
|
|
||||||
documentation, if provided along with the Derivative Works; or,
|
|
||||||
within a display generated by the Derivative Works, if and
|
|
||||||
wherever such third-party notices normally appear. The contents
|
|
||||||
of the NOTICE file are for informational purposes only and
|
|
||||||
do not modify the License. You may add Your own attribution
|
|
||||||
notices within Derivative Works that You distribute, alongside
|
|
||||||
or as an addendum to the NOTICE text from the Work, provided
|
|
||||||
that such additional attribution notices cannot be construed
|
|
||||||
as modifying the License.
|
|
||||||
|
|
||||||
You may add Your own copyright statement to Your modifications and
|
|
||||||
may provide additional or different license terms and conditions
|
|
||||||
for use, reproduction, or distribution of Your modifications, or
|
|
||||||
for any such Derivative Works as a whole, provided Your use,
|
|
||||||
reproduction, and distribution of the Work otherwise complies with
|
|
||||||
the conditions stated in this License.
|
|
||||||
|
|
||||||
5. Submission of Contributions. Unless You explicitly state otherwise,
|
|
||||||
any Contribution intentionally submitted for inclusion in the Work
|
|
||||||
by You to the Licensor shall be under the terms and conditions of
|
|
||||||
this License, without any additional terms or conditions.
|
|
||||||
Notwithstanding the above, nothing herein shall supersede or modify
|
|
||||||
the terms of any separate license agreement you may have executed
|
|
||||||
with Licensor regarding such Contributions.
|
|
||||||
|
|
||||||
6. Trademarks. This License does not grant permission to use the trade
|
|
||||||
names, trademarks, service marks, or product names of the Licensor,
|
|
||||||
except as required for reasonable and customary use in describing the
|
|
||||||
origin of the Work and reproducing the content of the NOTICE file.
|
|
||||||
|
|
||||||
7. Disclaimer of Warranty. Unless required by applicable law or
|
|
||||||
agreed to in writing, Licensor provides the Work (and each
|
|
||||||
Contributor provides its Contributions) on an "AS IS" BASIS,
|
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
|
||||||
implied, including, without limitation, any warranties or conditions
|
|
||||||
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
|
|
||||||
PARTICULAR PURPOSE. You are solely responsible for determining the
|
|
||||||
appropriateness of using or redistributing the Work and assume any
|
|
||||||
risks associated with Your exercise of permissions under this License.
|
|
||||||
|
|
||||||
8. Limitation of Liability. In no event and under no legal theory,
|
|
||||||
whether in tort (including negligence), contract, or otherwise,
|
|
||||||
unless required by applicable law (such as deliberate and grossly
|
|
||||||
negligent acts) or agreed to in writing, shall any Contributor be
|
|
||||||
liable to You for damages, including any direct, indirect, special,
|
|
||||||
incidental, or consequential damages of any character arising as a
|
|
||||||
result of this License or out of the use or inability to use the
|
|
||||||
Work (including but not limited to damages for loss of goodwill,
|
|
||||||
work stoppage, computer failure or malfunction, or any and all
|
|
||||||
other commercial damages or losses), even if such Contributor
|
|
||||||
has been advised of the possibility of such damages.
|
|
||||||
|
|
||||||
9. Accepting Warranty or Additional Liability. While redistributing
|
|
||||||
the Work or Derivative Works thereof, You may choose to offer,
|
|
||||||
and charge a fee for, acceptance of support, warranty, indemnity,
|
|
||||||
or other liability obligations and/or rights consistent with this
|
|
||||||
License. However, in accepting such obligations, You may act only
|
|
||||||
on Your own behalf and on Your sole responsibility, not on behalf
|
|
||||||
of any other Contributor, and only if You agree to indemnify,
|
|
||||||
defend, and hold each Contributor harmless for any liability
|
|
||||||
incurred by, or claims asserted against, such Contributor by reason
|
|
||||||
of your accepting any such warranty or additional liability.
|
|
||||||
|
|
|
@ -0,0 +1,14 @@
|
||||||
|
This project is no longer maintained.
|
||||||
|
|
||||||
|
The contents of this repository are still available in the Git
|
||||||
|
source code management system. To see the contents of this
|
||||||
|
repository before it reached its end of life, please check out the
|
||||||
|
previous commit with "git checkout HEAD^1".
|
||||||
|
|
||||||
|
For ongoing work on maintaining OpenStack packages in the Debian
|
||||||
|
distribution, please see the Debian OpenStack packaging team at
|
||||||
|
https://wiki.debian.org/OpenStack/.
|
||||||
|
|
||||||
|
For any further questions, please email
|
||||||
|
openstack-dev@lists.openstack.org or join #openstack-dev on
|
||||||
|
Freenode.
|
96
README.rst
96
README.rst
|
@ -1,96 +0,0 @@
|
||||||
========================
|
|
||||||
Team and repository tags
|
|
||||||
========================
|
|
||||||
|
|
||||||
.. image:: https://governance.openstack.org/badges/designate.svg
|
|
||||||
:target: https://governance.openstack.org/reference/tags/index.html
|
|
||||||
|
|
||||||
.. Change things from this point on
|
|
||||||
|
|
||||||
===================
|
|
||||||
OpenStack Designate
|
|
||||||
===================
|
|
||||||
|
|
||||||
Designate is an OpenStack project, providing DNSaaS.
|
|
||||||
|
|
||||||
IRC: #openstack-dns
|
|
||||||
|
|
||||||
Installation: https://docs.openstack.org/designate/latest/
|
|
||||||
|
|
||||||
|
|
||||||
Development
|
|
||||||
===========
|
|
||||||
|
|
||||||
Designate follows the `OpenStack Gerrit Workflow`_
|
|
||||||
|
|
||||||
Setup
|
|
||||||
-----
|
|
||||||
|
|
||||||
Setup a working environment:
|
|
||||||
|
|
||||||
.. code-block:: shell
|
|
||||||
|
|
||||||
git clone https://github.com/openstack/designate.git
|
|
||||||
cd designate
|
|
||||||
virtualenv .venv
|
|
||||||
. .venv/bin/activate
|
|
||||||
pip install -r requirements.txt -r test-requirements.txt
|
|
||||||
python setup.py develop
|
|
||||||
|
|
||||||
Building Docs
|
|
||||||
-------------
|
|
||||||
|
|
||||||
To build the documentation from the restructured text source, do the following:
|
|
||||||
|
|
||||||
.. code-block:: shell
|
|
||||||
|
|
||||||
cd doc
|
|
||||||
pip install -r requirements.txt
|
|
||||||
sphinx-build source/ build/html/
|
|
||||||
|
|
||||||
now point your browser at html/index.html
|
|
||||||
(the official documentation is published to `docs.openstack.org`_ by the
|
|
||||||
maintainers.
|
|
||||||
|
|
||||||
Contributing
|
|
||||||
------------
|
|
||||||
Install the git-review package to make life easier
|
|
||||||
|
|
||||||
.. code-block:: shell
|
|
||||||
|
|
||||||
pip install git-review
|
|
||||||
|
|
||||||
|
|
||||||
Branch, work, & submit:
|
|
||||||
|
|
||||||
.. code-block:: shell
|
|
||||||
|
|
||||||
# cut a new branch, tracking master
|
|
||||||
git checkout --track -b bug/id origin/master
|
|
||||||
# work work work
|
|
||||||
git add stuff
|
|
||||||
git commit
|
|
||||||
# rebase/squash to a single commit before submitting
|
|
||||||
git rebase -i
|
|
||||||
# submit
|
|
||||||
git-review
|
|
||||||
|
|
||||||
Testing
|
|
||||||
-------
|
|
||||||
|
|
||||||
Execute a single test using py27 (test is CentralServiceTest.test_count_domains)
|
|
||||||
|
|
||||||
.. code-block:: shell
|
|
||||||
|
|
||||||
tox -e py27 -- designate.tests.test_central.test_service.CentralServiceTest.test_count_zones_policy_check
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
* Free software: Apache license
|
|
||||||
* Documentation: https://docs.openstack.org/designate/latest/
|
|
||||||
* Source: https://git.openstack.org/cgit/openstack/designate
|
|
||||||
* Bugs: https://bugs.launchpad.net/designate
|
|
||||||
|
|
||||||
|
|
||||||
.. _OpenStack Gerrit Workflow: https://docs.openstack.org/infra/manual/developers.html#development-workflow
|
|
||||||
.. _docs.openstack.org: https://docs.openstack.org/designate/latest/
|
|
|
@ -1,232 +0,0 @@
|
||||||
# Licensed under the Apache License, Version 2.0 (the "License"); you may
|
|
||||||
# not use this file except in compliance with the License. You may obtain
|
|
||||||
# a copy of the License at
|
|
||||||
#
|
|
||||||
# http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
#
|
|
||||||
# Unless required by applicable law or agreed to in writing, software
|
|
||||||
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
|
||||||
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
|
||||||
# License for the specific language governing permissions and limitations
|
|
||||||
# under the License.
|
|
||||||
#
|
|
||||||
# ironic documentation build configuration file, created by
|
|
||||||
# sphinx-quickstart on Sat May 1 15:17:47 2010.
|
|
||||||
#
|
|
||||||
# This file is execfile()d with the current directory set to
|
|
||||||
# its containing dir.
|
|
||||||
#
|
|
||||||
# Note that not all possible configuration values are present in this
|
|
||||||
# autogenerated file.
|
|
||||||
#
|
|
||||||
# All configuration values have a default; values that are commented out
|
|
||||||
# serve to show the default.
|
|
||||||
|
|
||||||
import os
|
|
||||||
import subprocess
|
|
||||||
import sys
|
|
||||||
|
|
||||||
from designate.version import version_info
|
|
||||||
|
|
||||||
import openstackdocstheme
|
|
||||||
|
|
||||||
html_theme = 'openstackdocs'
|
|
||||||
html_theme_path = [openstackdocstheme.get_html_theme_path()]
|
|
||||||
html_theme_options = {
|
|
||||||
"sidebar_mode": "toc",
|
|
||||||
"sidebar_dropdown": "api_ref",
|
|
||||||
}
|
|
||||||
|
|
||||||
extensions = [
|
|
||||||
'os_api_ref',
|
|
||||||
]
|
|
||||||
|
|
||||||
# If extensions (or modules to document with autodoc) are in another directory,
|
|
||||||
# add these directories to sys.path here. If the directory is relative to the
|
|
||||||
# documentation root, use os.path.abspath to make it absolute, like shown here.
|
|
||||||
sys.path.insert(0, os.path.abspath('../../'))
|
|
||||||
sys.path.insert(0, os.path.abspath('../'))
|
|
||||||
sys.path.insert(0, os.path.abspath('./'))
|
|
||||||
|
|
||||||
# -- General configuration ----------------------------------------------------
|
|
||||||
|
|
||||||
# Add any Sphinx extension module names here, as strings. They can be
|
|
||||||
# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom ones.
|
|
||||||
|
|
||||||
# The suffix of source filenames.
|
|
||||||
source_suffix = '.rst'
|
|
||||||
|
|
||||||
# The encoding of source files.
|
|
||||||
#
|
|
||||||
# source_encoding = 'utf-8'
|
|
||||||
|
|
||||||
# The master toctree document.
|
|
||||||
master_doc = 'index'
|
|
||||||
|
|
||||||
# General information about the project.
|
|
||||||
project = u'Designate API Reference'
|
|
||||||
copyright = u'OpenStack Foundation'
|
|
||||||
|
|
||||||
# The version info for the project you're documenting, acts as replacement for
|
|
||||||
# |version| and |release|, also used in various other places throughout the
|
|
||||||
# built documents.
|
|
||||||
#
|
|
||||||
# The full version, including alpha/beta/rc tags.
|
|
||||||
release = version_info.release_string()
|
|
||||||
# The short X.Y version.
|
|
||||||
version = version_info.version_string()
|
|
||||||
|
|
||||||
# Config logABug feature
|
|
||||||
giturl = (
|
|
||||||
u'https://git.openstack.org/cgit/openstack/designate/tree/api-ref/source')
|
|
||||||
# source tree
|
|
||||||
# html_context allows us to pass arbitrary values into the html template
|
|
||||||
html_context = {'bug_tag': 'api-ref',
|
|
||||||
'giturl': giturl,
|
|
||||||
'bug_project': 'designate'}
|
|
||||||
|
|
||||||
# The language for content autogenerated by Sphinx. Refer to documentation
|
|
||||||
# for a list of supported languages.
|
|
||||||
#
|
|
||||||
# language = None
|
|
||||||
|
|
||||||
# There are two options for replacing |today|: either, you set today to some
|
|
||||||
# non-false value, then it is used:
|
|
||||||
# today = ''
|
|
||||||
# Else, today_fmt is used as the format for a strftime call.
|
|
||||||
# today_fmt = '%B %d, %Y'
|
|
||||||
|
|
||||||
# The reST default role (used for this markup: `text`) to use
|
|
||||||
# for all documents.
|
|
||||||
# default_role = None
|
|
||||||
|
|
||||||
# If true, '()' will be appended to :func: etc. cross-reference text.
|
|
||||||
# add_function_parentheses = True
|
|
||||||
|
|
||||||
# If true, the current module name will be prepended to all description
|
|
||||||
# unit titles (such as .. function::).
|
|
||||||
add_module_names = False
|
|
||||||
|
|
||||||
# If true, sectionauthor and moduleauthor directives will be shown in the
|
|
||||||
# output. They are ignored by default.
|
|
||||||
show_authors = False
|
|
||||||
|
|
||||||
# The name of the Pygments (syntax highlighting) style to use.
|
|
||||||
pygments_style = 'sphinx'
|
|
||||||
|
|
||||||
# -- Options for man page output ----------------------------------------------
|
|
||||||
|
|
||||||
# Grouping the document tree for man pages.
|
|
||||||
# List of tuples 'sourcefile', 'target', u'title', u'Authors name', 'manual'
|
|
||||||
|
|
||||||
|
|
||||||
# -- Options for HTML output --------------------------------------------------
|
|
||||||
|
|
||||||
# The theme to use for HTML and HTML Help pages. Major themes that come with
|
|
||||||
# Sphinx are currently 'default' and 'sphinxdoc'.
|
|
||||||
# html_theme_path = ["."]
|
|
||||||
# html_theme = '_theme'
|
|
||||||
|
|
||||||
# Theme options are theme-specific and customize the look and feel of a theme
|
|
||||||
# further. For a list of options available for each theme, see the
|
|
||||||
# documentation.
|
|
||||||
# html_theme_options = {}
|
|
||||||
|
|
||||||
# Add any paths that contain custom themes here, relative to this directory.
|
|
||||||
# html_theme_path = []
|
|
||||||
|
|
||||||
# The name for this set of Sphinx documents. If None, it defaults to
|
|
||||||
# "<project> v<release> documentation".
|
|
||||||
# html_title = None
|
|
||||||
|
|
||||||
# A shorter title for the navigation bar. Default is the same as html_title.
|
|
||||||
# html_short_title = None
|
|
||||||
|
|
||||||
# The name of an image file (relative to this directory) to place at the top
|
|
||||||
# of the sidebar.
|
|
||||||
# html_logo = None
|
|
||||||
|
|
||||||
# The name of an image file (within the static path) to use as favicon of the
|
|
||||||
# docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32
|
|
||||||
# pixels large.
|
|
||||||
# html_favicon = None
|
|
||||||
|
|
||||||
# Add any paths that contain custom static files (such as style sheets) here,
|
|
||||||
# relative to this directory. They are copied after the builtin static files,
|
|
||||||
# so a file named "default.css" will overwrite the builtin "default.css".
|
|
||||||
# html_static_path = ['_static']
|
|
||||||
|
|
||||||
# If not '', a 'Last updated on:' timestamp is inserted at every page bottom,
|
|
||||||
# using the given strftime format.
|
|
||||||
# html_last_updated_fmt = '%b %d, %Y'
|
|
||||||
git_cmd = ["git", "log", "--pretty=format:'%ad, commit %h'", "--date=local",
|
|
||||||
"-n1"]
|
|
||||||
html_last_updated_fmt = subprocess.check_output(git_cmd).decode('utf-8')
|
|
||||||
|
|
||||||
# If true, SmartyPants will be used to convert quotes and dashes to
|
|
||||||
# typographically correct entities.
|
|
||||||
# html_use_smartypants = True
|
|
||||||
|
|
||||||
# Custom sidebar templates, maps document names to template names.
|
|
||||||
# html_sidebars = {}
|
|
||||||
|
|
||||||
# Additional templates that should be rendered to pages, maps page names to
|
|
||||||
# template names.
|
|
||||||
# html_additional_pages = {}
|
|
||||||
|
|
||||||
# If false, no module index is generated.
|
|
||||||
# html_use_modindex = True
|
|
||||||
|
|
||||||
# If false, no index is generated.
|
|
||||||
# html_use_index = True
|
|
||||||
|
|
||||||
# If true, the index is split into individual pages for each letter.
|
|
||||||
# html_split_index = False
|
|
||||||
|
|
||||||
# If true, links to the reST sources are added to the pages.
|
|
||||||
# html_show_sourcelink = True
|
|
||||||
|
|
||||||
# If true, an OpenSearch description file will be output, and all pages will
|
|
||||||
# contain a <link> tag referring to it. The value of this option must be the
|
|
||||||
# base URL from which the finished HTML is served.
|
|
||||||
# html_use_opensearch = ''
|
|
||||||
|
|
||||||
# If nonempty, this is the file name suffix for HTML files (e.g. ".xhtml").
|
|
||||||
# html_file_suffix = ''
|
|
||||||
|
|
||||||
# Output file base name for HTML help builder.
|
|
||||||
htmlhelp_basename = 'designatedoc'
|
|
||||||
|
|
||||||
|
|
||||||
# -- Options for LaTeX output -------------------------------------------------
|
|
||||||
|
|
||||||
# The paper size ('letter' or 'a4').
|
|
||||||
# latex_paper_size = 'letter'
|
|
||||||
|
|
||||||
# The font size ('10pt', '11pt' or '12pt').
|
|
||||||
# latex_font_size = '10pt'
|
|
||||||
|
|
||||||
# Grouping the document tree into LaTeX files. List of tuples
|
|
||||||
# (source start file, target name, title, author, documentclass
|
|
||||||
# [howto/manual]).
|
|
||||||
latex_documents = [
|
|
||||||
('index', 'Designate.tex', u'OpenStack DNS API Documentation',
|
|
||||||
u'OpenStack Foundation', 'manual'),
|
|
||||||
]
|
|
||||||
|
|
||||||
# The name of an image file (relative to this directory) to place at the top of
|
|
||||||
# the title page.
|
|
||||||
# latex_logo = None
|
|
||||||
|
|
||||||
# For "manual" documents, if this is true, then toplevel headings are parts,
|
|
||||||
# not chapters.
|
|
||||||
# latex_use_parts = False
|
|
||||||
|
|
||||||
# Additional stuff for the LaTeX preamble.
|
|
||||||
# latex_preamble = ''
|
|
||||||
|
|
||||||
# Documents to append as an appendix to all manuals.
|
|
||||||
# latex_appendices = []
|
|
||||||
|
|
||||||
# If false, no module index is generated.
|
|
||||||
# latex_use_modindex = True
|
|
|
@ -1,241 +0,0 @@
|
||||||
==========
|
|
||||||
Blacklists
|
|
||||||
==========
|
|
||||||
|
|
||||||
The blacklist entries are used to manage blacklisted zones. If a zone
|
|
||||||
is blacklisted, then it cannot be used to create a zone. By default,
|
|
||||||
only an admin can manage these entries. Blacklisted zones are stored
|
|
||||||
as a regular expression (regex) pattern in the Database/Storage in
|
|
||||||
the blacklists table.
|
|
||||||
|
|
||||||
|
|
||||||
Create Blacklist
|
|
||||||
================
|
|
||||||
|
|
||||||
.. rest_method:: POST /v2/blacklists
|
|
||||||
|
|
||||||
Create a Blacklist
|
|
||||||
|
|
||||||
Normal response codes: 201
|
|
||||||
|
|
||||||
Error response codes: 409, 405,404,403,401,400,503
|
|
||||||
|
|
||||||
|
|
||||||
Request Parameters
|
|
||||||
------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-auth-token: x-auth-token
|
|
||||||
- x-auth-all-projects: x-auth-all-projects
|
|
||||||
- x-auth-sudo-project-id: x-auth-sudo-project-id
|
|
||||||
- pattern: blacklist_pattern
|
|
||||||
- description: blacklist_description
|
|
||||||
|
|
||||||
|
|
||||||
Request Example
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/blacklists/create-blacklist-request.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
|
|
||||||
Response Parameters
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-openstack-request-id: x-openstack-request-id
|
|
||||||
- id: id
|
|
||||||
- pattern: blacklist_pattern
|
|
||||||
- description: blacklist_description
|
|
||||||
- created_at: created_at
|
|
||||||
- updated_at: updated_at
|
|
||||||
- links: links
|
|
||||||
|
|
||||||
|
|
||||||
Response Example
|
|
||||||
----------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/blacklists/blacklist-response.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
List Blacklists
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. rest_method:: GET /v2/blacklists
|
|
||||||
|
|
||||||
List all blacklists
|
|
||||||
|
|
||||||
|
|
||||||
Normal response codes: 200
|
|
||||||
|
|
||||||
Error response codes: 405,404,403,401,400,503
|
|
||||||
|
|
||||||
|
|
||||||
Request Parameters
|
|
||||||
------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-auth-token: x-auth-token
|
|
||||||
- x-auth-all-projects: x-auth-all-projects
|
|
||||||
- x-auth-sudo-project-id: x-auth-sudo-project-id
|
|
||||||
- pattern: blacklist_pattern_filter
|
|
||||||
|
|
||||||
|
|
||||||
Response Parameters
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-openstack-request-id: x-openstack-request-id
|
|
||||||
- id: id
|
|
||||||
- pattern: blacklist_pattern
|
|
||||||
- description: blacklist_description
|
|
||||||
- created_at: created_at
|
|
||||||
- updated_at: updated_at
|
|
||||||
- links: links
|
|
||||||
|
|
||||||
|
|
||||||
Response Example
|
|
||||||
----------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/blacklists/list-blacklists-response.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Show Blacklist
|
|
||||||
==============
|
|
||||||
|
|
||||||
.. rest_method:: GET /v2/blacklists/{blacklist_id}
|
|
||||||
|
|
||||||
Show a blacklist
|
|
||||||
|
|
||||||
|
|
||||||
Normal response codes: 200
|
|
||||||
|
|
||||||
Error response codes: 405,404,403,401,400,503
|
|
||||||
|
|
||||||
|
|
||||||
Request
|
|
||||||
-------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-auth-token: x-auth-token
|
|
||||||
- x-auth-all-projects: x-auth-all-projects
|
|
||||||
- x-auth-sudo-project-id: x-auth-sudo-project-id
|
|
||||||
- blacklist_id: blacklist_id
|
|
||||||
|
|
||||||
|
|
||||||
Response Parameters
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-openstack-request-id: x-openstack-request-id
|
|
||||||
- id: id
|
|
||||||
- pattern: blacklist_pattern
|
|
||||||
- description: blacklist_description
|
|
||||||
- created_at: created_at
|
|
||||||
- updated_at: updated_at
|
|
||||||
- links: links
|
|
||||||
|
|
||||||
|
|
||||||
Response Example
|
|
||||||
----------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/blacklists/blacklist-response.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Update Blacklist
|
|
||||||
================
|
|
||||||
|
|
||||||
.. rest_method:: PATCH /v2/blacklists/{blacklist_id}
|
|
||||||
|
|
||||||
Update a Blacklist
|
|
||||||
|
|
||||||
|
|
||||||
Normal response codes: 200
|
|
||||||
|
|
||||||
Error response codes: 405,404,403,401,400,503
|
|
||||||
|
|
||||||
|
|
||||||
Request Parameters
|
|
||||||
------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-auth-token: x-auth-token
|
|
||||||
- x-auth-all-projects: x-auth-all-projects
|
|
||||||
- x-auth-sudo-project-id: x-auth-sudo-project-id
|
|
||||||
- pattern: blacklist_pattern
|
|
||||||
- description: blacklist_description
|
|
||||||
- blacklist_id: blacklist_id
|
|
||||||
|
|
||||||
|
|
||||||
Request Example
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/blacklists/update-blacklist-request.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
|
|
||||||
Response Parameters
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-openstack-request-id: x-openstack-request-id
|
|
||||||
- id: id
|
|
||||||
- pattern: blacklist_pattern
|
|
||||||
- description: blacklist_description
|
|
||||||
- created_at: created_at
|
|
||||||
- updated_at: updated_at
|
|
||||||
- links: links
|
|
||||||
|
|
||||||
|
|
||||||
Response Example
|
|
||||||
----------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/blacklists/update-blacklist-response.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Delete a Blacklist
|
|
||||||
==================
|
|
||||||
|
|
||||||
.. rest_method:: DELETE /v2/blacklists/{blacklist_id}
|
|
||||||
|
|
||||||
Delete a blacklist
|
|
||||||
|
|
||||||
|
|
||||||
Normal response codes: 204
|
|
||||||
|
|
||||||
Error response codes: 405,404,403,401,400,503
|
|
||||||
|
|
||||||
|
|
||||||
Request
|
|
||||||
-------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-auth-token: x-auth-token
|
|
||||||
- x-auth-all-projects: x-auth-all-projects
|
|
||||||
- x-auth-sudo-project-id: x-auth-sudo-project-id
|
|
||||||
- blacklist_id: blacklist_id
|
|
||||||
|
|
||||||
|
|
||||||
Response Parameters
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-openstack-request-id: x-openstack-request-id
|
|
|
@ -1,54 +0,0 @@
|
||||||
======
|
|
||||||
Limits
|
|
||||||
======
|
|
||||||
|
|
||||||
Show the limits for the current project
|
|
||||||
|
|
||||||
|
|
||||||
Get Project Limits
|
|
||||||
==================
|
|
||||||
|
|
||||||
.. rest_method:: GET /v2/limits
|
|
||||||
|
|
||||||
List project limits
|
|
||||||
|
|
||||||
|
|
||||||
Normal response codes: 200
|
|
||||||
|
|
||||||
Error response codes: 405,404,403,401,400,503
|
|
||||||
|
|
||||||
|
|
||||||
Request
|
|
||||||
-------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-auth-token: x-auth-token
|
|
||||||
- x-auth-all-projects: x-auth-all-projects
|
|
||||||
- x-auth-sudo-project-id: x-auth-sudo-project-id
|
|
||||||
|
|
||||||
|
|
||||||
Response Parameters
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-openstack-request-id: x-openstack-request-id
|
|
||||||
- max_page_limit: max_page_limit
|
|
||||||
- max_recordset_name_length: max_recordset_name_length
|
|
||||||
- max_recordset_records: max_recordset_records
|
|
||||||
- max_zone_name_length: max_zone_name_length
|
|
||||||
- max_zone_records: max_zone_records
|
|
||||||
- max_zone_recordsets: max_zone_recordsets
|
|
||||||
- max_zones: max_zones
|
|
||||||
- min_ttl: min_ttl
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Response Example
|
|
||||||
----------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/limits/get-limits-response.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
|
|
|
@ -1,104 +0,0 @@
|
||||||
=====
|
|
||||||
Pools
|
|
||||||
=====
|
|
||||||
|
|
||||||
Get information about the pools in a designate install
|
|
||||||
|
|
||||||
|
|
||||||
List all Pools
|
|
||||||
==============
|
|
||||||
|
|
||||||
.. rest_method:: GET /v2/pools
|
|
||||||
|
|
||||||
Get the list of Pools.
|
|
||||||
|
|
||||||
|
|
||||||
Normal response codes: 200
|
|
||||||
|
|
||||||
Error response codes: 405,404,403,401,400,503
|
|
||||||
|
|
||||||
|
|
||||||
Request
|
|
||||||
-------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-auth-token: x-auth-token
|
|
||||||
- x-auth-all-projects: x-auth-all-projects
|
|
||||||
- x-auth-sudo-project-id: x-auth-sudo-project-id
|
|
||||||
|
|
||||||
|
|
||||||
Response Parameters
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-openstack-request-id: x-openstack-request-id
|
|
||||||
- description: description
|
|
||||||
- id: pool_id
|
|
||||||
- attributes: pool_attributes
|
|
||||||
- project_id: project_id
|
|
||||||
- ns_records: pool_ns_records
|
|
||||||
- name: pool_name
|
|
||||||
- created_at: created_at
|
|
||||||
- updated_at: updated_at
|
|
||||||
- links: links
|
|
||||||
- metadata: metadata
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Response Example
|
|
||||||
----------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/pools/list-pools-response.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
|
|
||||||
Show a Pool
|
|
||||||
===========
|
|
||||||
|
|
||||||
.. rest_method:: GET /v2/pools/{pool_id}
|
|
||||||
|
|
||||||
Get a specific Pool
|
|
||||||
|
|
||||||
|
|
||||||
Normal response codes: 200
|
|
||||||
|
|
||||||
Error response codes: 405,404,403,401,400,503
|
|
||||||
|
|
||||||
|
|
||||||
Request
|
|
||||||
-------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-auth-token: x-auth-token
|
|
||||||
- x-auth-all-projects: x-auth-all-projects
|
|
||||||
- x-auth-sudo-project-id: x-auth-sudo-project-id
|
|
||||||
- pool_id: path_pool_id
|
|
||||||
|
|
||||||
|
|
||||||
Response Parameters
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-openstack-request-id: x-openstack-request-id
|
|
||||||
- description: description
|
|
||||||
- id: pool_id
|
|
||||||
- attributes: pool_attributes
|
|
||||||
- project_id: project_id
|
|
||||||
- ns_records: pool_ns_records
|
|
||||||
- name: pool_name
|
|
||||||
- created_at: created_at
|
|
||||||
- updated_at: updated_at
|
|
||||||
- links: links
|
|
||||||
- metadata: metadata
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Response Example
|
|
||||||
----------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/pools/show-pool-response.json
|
|
||||||
:language: javascript
|
|
|
@ -1,196 +0,0 @@
|
||||||
======
|
|
||||||
Quotas
|
|
||||||
======
|
|
||||||
|
|
||||||
Quota operations.
|
|
||||||
|
|
||||||
|
|
||||||
View Quotas
|
|
||||||
===========
|
|
||||||
|
|
||||||
.. rest_method:: GET /v2/quotas/{project_id}
|
|
||||||
|
|
||||||
View a projects quotas
|
|
||||||
|
|
||||||
This returns a key:value set of quotas on the system.
|
|
||||||
|
|
||||||
.. note::
|
|
||||||
|
|
||||||
If a user is viewing another projects quotas, they will need to set
|
|
||||||
``x-auth-all-projects`` to ``True``
|
|
||||||
|
|
||||||
|
|
||||||
They will need a role with the ``All-Projects`` permission to do this.
|
|
||||||
|
|
||||||
|
|
||||||
Normal response codes: 200
|
|
||||||
|
|
||||||
Error response codes: 409,405,404,403,401,400,503
|
|
||||||
|
|
||||||
|
|
||||||
Request
|
|
||||||
-------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-auth-token: x-auth-token
|
|
||||||
- x-auth-all-projects: x-auth-all-projects
|
|
||||||
- x-auth-sudo-project-id: x-auth-sudo-project-id
|
|
||||||
- project_id: path_project_id
|
|
||||||
|
|
||||||
|
|
||||||
Response Parameters
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-openstack-request-id: x-openstack-request-id
|
|
||||||
|
|
||||||
|
|
||||||
Response Example
|
|
||||||
----------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/quotas/get-quotas-response.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
|
|
||||||
View Current Project's Quotas
|
|
||||||
=============================
|
|
||||||
|
|
||||||
.. rest_method:: GET /v2/quotas/
|
|
||||||
|
|
||||||
View the quotas for the current project
|
|
||||||
|
|
||||||
This returns a key:value set of quotas on the system.
|
|
||||||
|
|
||||||
Normal response codes: 200
|
|
||||||
|
|
||||||
Error response codes: 409,405,404,403,401,400,503
|
|
||||||
|
|
||||||
|
|
||||||
Request
|
|
||||||
-------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-auth-token: x-auth-token
|
|
||||||
- x-auth-all-projects: x-auth-all-projects
|
|
||||||
- x-auth-sudo-project-id: x-auth-sudo-project-id
|
|
||||||
- project_id: path_project_id
|
|
||||||
|
|
||||||
|
|
||||||
Response Parameters
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-openstack-request-id: x-openstack-request-id
|
|
||||||
|
|
||||||
|
|
||||||
Response Example
|
|
||||||
----------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/quotas/get-quotas-response.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
|
|
||||||
Set Quotas
|
|
||||||
==========
|
|
||||||
|
|
||||||
.. rest_method:: PATCH /v2/quotas/{project_id}
|
|
||||||
|
|
||||||
Set a projects quotas
|
|
||||||
|
|
||||||
The request should be a key:value set of quotas to be set
|
|
||||||
|
|
||||||
This returns a key:value set of quotas on the system.
|
|
||||||
|
|
||||||
.. note::
|
|
||||||
|
|
||||||
If a user is updating another projects quotas, they will need to set
|
|
||||||
``x-auth-all-projects`` to ``True``
|
|
||||||
|
|
||||||
|
|
||||||
They will need a role with the "All-Projects" and "set-quotas"
|
|
||||||
permission to do this.
|
|
||||||
|
|
||||||
|
|
||||||
Normal response codes: 200
|
|
||||||
|
|
||||||
Error response codes: 409,405,404,403,401,400,503
|
|
||||||
|
|
||||||
|
|
||||||
Request Example
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/quotas/set-quotas-request.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
Request
|
|
||||||
-------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-auth-token: x-auth-token
|
|
||||||
- x-auth-all-projects: x-auth-all-projects
|
|
||||||
- x-auth-sudo-project-id: x-auth-sudo-project-id
|
|
||||||
- project_id: path_project_id
|
|
||||||
|
|
||||||
|
|
||||||
Response Parameters
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-openstack-request-id: x-openstack-request-id
|
|
||||||
|
|
||||||
|
|
||||||
Response Example
|
|
||||||
----------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/quotas/set-quotas-response.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Reset Quotas
|
|
||||||
============
|
|
||||||
|
|
||||||
.. rest_method:: DELETE /v2/quotas/{project_id}
|
|
||||||
|
|
||||||
Reset all quotas for a project to default
|
|
||||||
|
|
||||||
.. note::
|
|
||||||
|
|
||||||
If a user is resetting another projects quotas, they will need to set
|
|
||||||
``x-auth-all-projects`` to ``True``
|
|
||||||
|
|
||||||
They will need a role with the ``All-Projects`` and "set-quotas"
|
|
||||||
permission to do this.
|
|
||||||
|
|
||||||
|
|
||||||
Normal response codes: 204
|
|
||||||
|
|
||||||
Error response codes: 409,405,404,403,401,400,503
|
|
||||||
|
|
||||||
|
|
||||||
Request
|
|
||||||
-------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-auth-token: x-auth-token
|
|
||||||
- x-auth-all-projects: x-auth-all-projects
|
|
||||||
- x-auth-sudo-project-id: x-auth-sudo-project-id
|
|
||||||
- project_id: path_project_id
|
|
||||||
|
|
||||||
|
|
||||||
Response Parameters
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-openstack-request-id: x-openstack-request-id
|
|
||||||
|
|
|
@ -1,627 +0,0 @@
|
||||||
==========
|
|
||||||
Recordsets
|
|
||||||
==========
|
|
||||||
|
|
||||||
Recordsets operations.
|
|
||||||
|
|
||||||
|
|
||||||
Create Recordset
|
|
||||||
================
|
|
||||||
|
|
||||||
.. rest_method:: POST /v2/zones/{zone_id}/recordsets
|
|
||||||
|
|
||||||
Create a recordset in a zone
|
|
||||||
|
|
||||||
|
|
||||||
Normal response codes: 202
|
|
||||||
|
|
||||||
Error response codes: 405,404,403,401,400,503
|
|
||||||
|
|
||||||
|
|
||||||
Request
|
|
||||||
-------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-auth-token: x-auth-token
|
|
||||||
- x-auth-all-projects: x-auth-all-projects
|
|
||||||
- x-auth-sudo-project-id: x-auth-sudo-project-id
|
|
||||||
- name: recordset_name
|
|
||||||
- zone_id: path_zone_id
|
|
||||||
- ttl: recordset_ttl
|
|
||||||
- description: recordset_description
|
|
||||||
- type: recordset_type
|
|
||||||
- records: recordset_records
|
|
||||||
|
|
||||||
|
|
||||||
Request Example
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/recordsets/create-recordset-request.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
Response Parameters
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-openstack-request-id: x-openstack-request-id
|
|
||||||
- id: id
|
|
||||||
- project_id: project_id
|
|
||||||
- name: recordset_name
|
|
||||||
- ttl: recordset_ttl
|
|
||||||
- status: status
|
|
||||||
- action: action
|
|
||||||
- zone_id: recordset_zone_id
|
|
||||||
- zone_name: recordset_zone_name
|
|
||||||
- description: recordset_description
|
|
||||||
- type: recordset_type
|
|
||||||
- version: version
|
|
||||||
- created_at: created_at
|
|
||||||
- updated_at: updated_at
|
|
||||||
- links: links
|
|
||||||
|
|
||||||
|
|
||||||
Response Example
|
|
||||||
----------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/recordsets/create-recordset-response.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
|
|
||||||
List Recordsets in a Zone
|
|
||||||
=========================
|
|
||||||
|
|
||||||
.. rest_method:: GET /v2/zones/{zone_id}/recordsets
|
|
||||||
|
|
||||||
This lists all recordsets in a zone
|
|
||||||
|
|
||||||
|
|
||||||
Normal response codes: 200
|
|
||||||
|
|
||||||
Error response codes: 405,404,403,401,400,503
|
|
||||||
|
|
||||||
|
|
||||||
Request
|
|
||||||
-------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-auth-token: x-auth-token
|
|
||||||
- x-auth-all-projects: x-auth-all-projects
|
|
||||||
- x-auth-sudo-project-id: x-auth-sudo-project-id
|
|
||||||
- zone_id: path_zone_id
|
|
||||||
- limit: limit
|
|
||||||
- marker: marker
|
|
||||||
- sort_dir: sort_dir
|
|
||||||
- sort_key: sort_key
|
|
||||||
- name: recordset_name_filter
|
|
||||||
- type: recordset_type_filter
|
|
||||||
- ttl: recordset_ttl_filter
|
|
||||||
- data: recordset_data_filter
|
|
||||||
- status: recordset_status_filter
|
|
||||||
- description: recordset_description_filter
|
|
||||||
|
|
||||||
|
|
||||||
Response Parameters
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-openstack-request-id: x-openstack-request-id
|
|
||||||
- id: id
|
|
||||||
- project_id: project_id
|
|
||||||
- name: recordset_name
|
|
||||||
- ttl: recordset_ttl
|
|
||||||
- status: status
|
|
||||||
- action: action
|
|
||||||
- zone_id: recordset_zone_id
|
|
||||||
- zone_name: recordset_zone_name
|
|
||||||
- description: recordset_description
|
|
||||||
- type: recordset_type
|
|
||||||
- version: version
|
|
||||||
- created_at: created_at
|
|
||||||
- updated_at: updated_at
|
|
||||||
- links: links
|
|
||||||
- metadata: metadata
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Response Example
|
|
||||||
----------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/recordsets/list-recordset-in-zone-response.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
|
|
||||||
List all Recordsets owned by project
|
|
||||||
====================================
|
|
||||||
|
|
||||||
.. rest_method:: GET /v2/recordsets
|
|
||||||
|
|
||||||
This lists all recordsets owned by a project in Designate
|
|
||||||
|
|
||||||
Normal response codes: 200
|
|
||||||
|
|
||||||
Error response codes: 405,404,403,401,400,503
|
|
||||||
|
|
||||||
|
|
||||||
Request
|
|
||||||
-------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-auth-token: x-auth-token
|
|
||||||
- x-auth-all-projects: x-auth-all-projects
|
|
||||||
- x-auth-sudo-project-id: x-auth-sudo-project-id
|
|
||||||
- zone_id: path_zone_id
|
|
||||||
- limit: limit
|
|
||||||
- marker: marker
|
|
||||||
- sort_dir: sort_dir
|
|
||||||
- sort_key: sort_key
|
|
||||||
- name: recordset_name_filter
|
|
||||||
- type: recordset_type_filter
|
|
||||||
- ttl: recordset_ttl_filter
|
|
||||||
- data: recordset_data_filter
|
|
||||||
- status: recordset_status_filter
|
|
||||||
- description: recordset_description_filter
|
|
||||||
|
|
||||||
|
|
||||||
Response Parameters
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-openstack-request-id: x-openstack-request-id
|
|
||||||
- id: id
|
|
||||||
- project_id: project_id
|
|
||||||
- name: recordset_name
|
|
||||||
- ttl: recordset_ttl
|
|
||||||
- status: status
|
|
||||||
- action: action
|
|
||||||
- zone_id: recordset_zone_id
|
|
||||||
- zone_name: recordset_zone_name
|
|
||||||
- description: recordset_description
|
|
||||||
- type: recordset_type
|
|
||||||
- version: version
|
|
||||||
- created_at: created_at
|
|
||||||
- updated_at: updated_at
|
|
||||||
- links: links
|
|
||||||
- metadata: metadata
|
|
||||||
|
|
||||||
|
|
||||||
Response Example
|
|
||||||
----------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/recordsets/list-all-recordset-response.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
|
|
||||||
Show a Recordset
|
|
||||||
================
|
|
||||||
|
|
||||||
.. rest_method:: GET /v2/zones/{zone_id}/recordsets/{recordset_id}
|
|
||||||
|
|
||||||
Show an single recordset
|
|
||||||
|
|
||||||
Normal response codes: 200
|
|
||||||
|
|
||||||
Error response codes: 405,404,403,401,400,503
|
|
||||||
|
|
||||||
|
|
||||||
Request
|
|
||||||
-------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-auth-token: x-auth-token
|
|
||||||
- x-auth-all-projects: x-auth-all-projects
|
|
||||||
- x-auth-sudo-project-id: x-auth-sudo-project-id
|
|
||||||
- zone_id: path_zone_id
|
|
||||||
- recordset_id: path_recordset_id
|
|
||||||
|
|
||||||
|
|
||||||
Response Parameters
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-openstack-request-id: x-openstack-request-id
|
|
||||||
- id: id
|
|
||||||
- project_id: project_id
|
|
||||||
- name: recordset_name
|
|
||||||
- ttl: recordset_ttl
|
|
||||||
- status: status
|
|
||||||
- action: action
|
|
||||||
- zone_id: recordset_zone_id
|
|
||||||
- zone_name: recordset_zone_name
|
|
||||||
- description: recordset_description
|
|
||||||
- type: recordset_type
|
|
||||||
- version: version
|
|
||||||
- created_at: created_at
|
|
||||||
- updated_at: updated_at
|
|
||||||
- links: links
|
|
||||||
|
|
||||||
|
|
||||||
Response Example
|
|
||||||
----------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/recordsets/show-recordset-response.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
|
|
||||||
Update a Recordset
|
|
||||||
==================
|
|
||||||
|
|
||||||
.. rest_method:: PUT /v2/zones/{zone_id}/recordsets/{recordset_id}
|
|
||||||
|
|
||||||
Update a recordset
|
|
||||||
|
|
||||||
Normal response codes: 202
|
|
||||||
|
|
||||||
Error response codes: 405,404,403,401,400,503
|
|
||||||
|
|
||||||
|
|
||||||
Request
|
|
||||||
-------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-auth-token: x-auth-token
|
|
||||||
- x-auth-all-projects: x-auth-all-projects
|
|
||||||
- x-auth-sudo-project-id: x-auth-sudo-project-id
|
|
||||||
- x-designate-edit-managed-records: x-designate-edit-managed-records
|
|
||||||
- zone_id: path_zone_id
|
|
||||||
- recordset_id: path_recordset_id
|
|
||||||
- ttl: recordset_ttl
|
|
||||||
- description: recordset_description
|
|
||||||
- records: recordset_records
|
|
||||||
|
|
||||||
Request Example
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/recordsets/update-recordset-request.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
Response Parameters
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-openstack-request-id: x-openstack-request-id
|
|
||||||
- id: id
|
|
||||||
- project_id: project_id
|
|
||||||
- name: recordset_name
|
|
||||||
- ttl: recordset_ttl
|
|
||||||
- status: status
|
|
||||||
- action: action
|
|
||||||
- zone_id: recordset_zone_id
|
|
||||||
- zone_name: recordset_zone_name
|
|
||||||
- description: recordset_description
|
|
||||||
- type: recordset_type
|
|
||||||
- version: version
|
|
||||||
- created_at: created_at
|
|
||||||
- updated_at: updated_at
|
|
||||||
- links: links
|
|
||||||
|
|
||||||
|
|
||||||
Response Example
|
|
||||||
----------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/recordsets/update-recordset-response.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
|
|
||||||
Delete a Recordset
|
|
||||||
==================
|
|
||||||
|
|
||||||
.. rest_method:: DELETE /v2/zones/{zone_id}/recordsets/{recordset_id}
|
|
||||||
|
|
||||||
Delete a recordset
|
|
||||||
|
|
||||||
Normal response codes: 202
|
|
||||||
|
|
||||||
Error response codes: 405,404,403,401,400,503
|
|
||||||
|
|
||||||
|
|
||||||
Request
|
|
||||||
-------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-auth-token: x-auth-token
|
|
||||||
- x-auth-all-projects: x-auth-all-projects
|
|
||||||
- x-auth-sudo-project-id: x-auth-sudo-project-id
|
|
||||||
- x-designate-edit-managed-records: x-designate-edit-managed-records
|
|
||||||
- zone_id: path_zone_id
|
|
||||||
- recordset_id: path_recordset_id
|
|
||||||
|
|
||||||
|
|
||||||
Response Parameters
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-openstack-request-id: x-openstack-request-id
|
|
||||||
- id: id
|
|
||||||
- project_id: project_id
|
|
||||||
- name: recordset_name
|
|
||||||
- ttl: recordset_ttl
|
|
||||||
- status: status
|
|
||||||
- action: action
|
|
||||||
- zone_id: recordset_zone_id
|
|
||||||
- zone_name: recordset_zone_name
|
|
||||||
- description: recordset_description
|
|
||||||
- type: recordset_type
|
|
||||||
- version: version
|
|
||||||
- created_at: created_at
|
|
||||||
- updated_at: updated_at
|
|
||||||
- links: links
|
|
||||||
|
|
||||||
|
|
||||||
Response Example
|
|
||||||
----------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/recordsets/update-recordset-response.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
|
|
||||||
Create a MX Recordset
|
|
||||||
=====================
|
|
||||||
|
|
||||||
.. rest_method:: POST /v2/zones/{zone_id}/recordsets
|
|
||||||
|
|
||||||
Create a MX recordset in a zone
|
|
||||||
|
|
||||||
|
|
||||||
Normal response codes: 202
|
|
||||||
|
|
||||||
Error response codes: 405,404,403,401,400,503
|
|
||||||
|
|
||||||
|
|
||||||
Request
|
|
||||||
-------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-auth-token: x-auth-token
|
|
||||||
- x-auth-all-projects: x-auth-all-projects
|
|
||||||
- x-auth-sudo-project-id: x-auth-sudo-project-id
|
|
||||||
- x-designate-edit-managed-records: x-designate-edit-managed-records
|
|
||||||
- zone_id: path_zone_id
|
|
||||||
- name: recordset_name
|
|
||||||
- ttl: recordset_ttl
|
|
||||||
- description: recordset_description
|
|
||||||
- type: recordset_type
|
|
||||||
- records: recordset_records
|
|
||||||
|
|
||||||
|
|
||||||
Request Example
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/recordsets/create-mx-recordset-request.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
|
|
||||||
Response Parameters
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-openstack-request-id: x-openstack-request-id
|
|
||||||
- id: id
|
|
||||||
- project_id: project_id
|
|
||||||
- name: recordset_name
|
|
||||||
- ttl: recordset_ttl
|
|
||||||
- status: status
|
|
||||||
- action: action
|
|
||||||
- zone_id: recordset_zone_id
|
|
||||||
- zone_name: recordset_zone_name
|
|
||||||
- description: recordset_description
|
|
||||||
- type: recordset_type
|
|
||||||
- version: version
|
|
||||||
- created_at: created_at
|
|
||||||
- updated_at: updated_at
|
|
||||||
- links: links
|
|
||||||
|
|
||||||
|
|
||||||
Response Example
|
|
||||||
----------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/recordsets/create-mx-recordset-response.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
|
|
||||||
Create a SSHFP Recordset
|
|
||||||
========================
|
|
||||||
|
|
||||||
.. rest_method:: POST /v2/zones/{zone_id}/recordsets
|
|
||||||
|
|
||||||
Create a MX recordset in a zone
|
|
||||||
|
|
||||||
|
|
||||||
Normal response codes: 202
|
|
||||||
|
|
||||||
Error response codes: 405,404,403,401,400,503
|
|
||||||
|
|
||||||
|
|
||||||
Request
|
|
||||||
-------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-auth-token: x-auth-token
|
|
||||||
- x-auth-all-projects: x-auth-all-projects
|
|
||||||
- x-auth-sudo-project-id: x-auth-sudo-project-id
|
|
||||||
- zone_id: path_zone_id
|
|
||||||
- name: recordset_name
|
|
||||||
- ttl: recordset_ttl
|
|
||||||
- description: recordset_description
|
|
||||||
- type: recordset_type
|
|
||||||
- records: recordset_records
|
|
||||||
|
|
||||||
|
|
||||||
Request Example
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/recordsets/create-sshfp-recordset-request.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
|
|
||||||
Response Parameters
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-openstack-request-id: x-openstack-request-id
|
|
||||||
- id: id
|
|
||||||
- project_id: project_id
|
|
||||||
- name: recordset_name
|
|
||||||
- ttl: recordset_ttl
|
|
||||||
- status: status
|
|
||||||
- action: action
|
|
||||||
- zone_id: recordset_zone_id
|
|
||||||
- zone_name: recordset_zone_name
|
|
||||||
- description: recordset_description
|
|
||||||
- type: recordset_type
|
|
||||||
- version: version
|
|
||||||
- created_at: created_at
|
|
||||||
- updated_at: updated_at
|
|
||||||
- links: links
|
|
||||||
|
|
||||||
|
|
||||||
Response Example
|
|
||||||
----------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/recordsets/create-sshfp-recordset-response.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
|
|
||||||
Create a SPF Recordset
|
|
||||||
======================
|
|
||||||
|
|
||||||
.. rest_method:: POST /v2/zones/{zone_id}/recordsets
|
|
||||||
|
|
||||||
Create a MX recordset in a zone
|
|
||||||
|
|
||||||
|
|
||||||
Normal response codes: 202
|
|
||||||
|
|
||||||
Error response codes: 405,404,403,401,400,503
|
|
||||||
|
|
||||||
|
|
||||||
Request
|
|
||||||
-------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-auth-token: x-auth-token
|
|
||||||
- x-auth-all-projects: x-auth-all-projects
|
|
||||||
- x-auth-sudo-project-id: x-auth-sudo-project-id
|
|
||||||
- zone_id: path_zone_id
|
|
||||||
- name: recordset_name
|
|
||||||
- ttl: recordset_ttl
|
|
||||||
- description: recordset_description
|
|
||||||
- type: recordset_type
|
|
||||||
- records: recordset_records
|
|
||||||
|
|
||||||
|
|
||||||
Request Example
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/recordsets/create-spf-recordset-request.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
|
|
||||||
Response Parameters
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-openstack-request-id: x-openstack-request-id
|
|
||||||
- id: id
|
|
||||||
- project_id: project_id
|
|
||||||
- name: recordset_name
|
|
||||||
- ttl: recordset_ttl
|
|
||||||
- status: status
|
|
||||||
- action: action
|
|
||||||
- zone_id: recordset_zone_id
|
|
||||||
- zone_name: recordset_zone_name
|
|
||||||
- description: recordset_description
|
|
||||||
- type: recordset_type
|
|
||||||
- version: version
|
|
||||||
- created_at: created_at
|
|
||||||
- updated_at: updated_at
|
|
||||||
- links: links
|
|
||||||
|
|
||||||
|
|
||||||
Response Example
|
|
||||||
----------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/recordsets/create-spf-recordset-response.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
|
|
||||||
Create a SRV Recordset
|
|
||||||
======================
|
|
||||||
|
|
||||||
.. rest_method:: POST /v2/zones/{zone_id}/recordsets
|
|
||||||
|
|
||||||
Create a MX recordset in a zone
|
|
||||||
|
|
||||||
|
|
||||||
Normal response codes: 202
|
|
||||||
|
|
||||||
Error response codes: 405,404,403,401,400,503
|
|
||||||
|
|
||||||
|
|
||||||
Request
|
|
||||||
-------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-auth-token: x-auth-token
|
|
||||||
- x-auth-all-projects: x-auth-all-projects
|
|
||||||
- x-auth-sudo-project-id: x-auth-sudo-project-id
|
|
||||||
- zone_id: path_zone_id
|
|
||||||
- name: recordset_name
|
|
||||||
- ttl: recordset_ttl
|
|
||||||
- description: recordset_description
|
|
||||||
- type: recordset_type
|
|
||||||
- records: recordset_records
|
|
||||||
|
|
||||||
|
|
||||||
Request Example
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/recordsets/create-srv-recordset-request.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
|
|
||||||
Response Parameters
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-openstack-request-id: x-openstack-request-id
|
|
||||||
- id: id
|
|
||||||
- project_id: project_id
|
|
||||||
- name: recordset_name
|
|
||||||
- ttl: recordset_ttl
|
|
||||||
- status: status
|
|
||||||
- action: action
|
|
||||||
- zone_id: recordset_zone_id
|
|
||||||
- zone_name: recordset_zone_name
|
|
||||||
- description: recordset_description
|
|
||||||
- type: recordset_type
|
|
||||||
- version: version
|
|
||||||
- created_at: created_at
|
|
||||||
- updated_at: updated_at
|
|
||||||
- links: links
|
|
||||||
|
|
||||||
|
|
||||||
Response Example
|
|
||||||
----------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/recordsets/create-srv-recordset-response.json
|
|
||||||
:language: javascript
|
|
|
@ -1,192 +0,0 @@
|
||||||
===========
|
|
||||||
FloatingIPs
|
|
||||||
===========
|
|
||||||
|
|
||||||
In order to use the FloatingIPs functionality you will need to have a FloatingIP
|
|
||||||
associated to your project in Neutron.
|
|
||||||
|
|
||||||
Set FloatingIP's PTR record
|
|
||||||
============================
|
|
||||||
|
|
||||||
.. rest_method:: PATCH /v2/reverse/floatingips/{region}:{floatingip_id}
|
|
||||||
|
|
||||||
Set a PTR record for the given FloatingIP. The domain if it does not exist
|
|
||||||
will be provisioned automatically.
|
|
||||||
|
|
||||||
Normal response codes: 202
|
|
||||||
|
|
||||||
Error response codes: 405,404,403,401,400,503
|
|
||||||
|
|
||||||
|
|
||||||
Request
|
|
||||||
-------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-auth-token: x-auth-token
|
|
||||||
- x-auth-all-projects: x-auth-all-projects
|
|
||||||
- x-auth-sudo-project-id: x-auth-sudo-project-id
|
|
||||||
- ptrdname: fptrd_name
|
|
||||||
- description: fptr_description
|
|
||||||
- ttl: fptr_ttl
|
|
||||||
- region: region
|
|
||||||
- floatingip_id: floatingip_id
|
|
||||||
|
|
||||||
Request Example
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/reverse_floatingips/set-ptr-record-request.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
|
|
||||||
Response Parameters
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-openstack-request-id: x-openstack-request-id
|
|
||||||
- id: fptr_id
|
|
||||||
- ptrdname: fptrd_name
|
|
||||||
- description: fptr_description
|
|
||||||
- ttl: fptr_ttl
|
|
||||||
- address: floatingip_address
|
|
||||||
- status: status
|
|
||||||
- action: action
|
|
||||||
- links: links
|
|
||||||
|
|
||||||
|
|
||||||
Response Example
|
|
||||||
----------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/reverse_floatingips/ptr-record-response.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
|
|
||||||
Show FloatingIP's PTR record
|
|
||||||
============================
|
|
||||||
|
|
||||||
.. rest_method:: GET /v2/reverse/floatingips/{region}:{floatingip_id}
|
|
||||||
|
|
||||||
Shows a particular FloatingIP PTR
|
|
||||||
|
|
||||||
Normal response codes: 200
|
|
||||||
|
|
||||||
Error response codes: 405,404,403,401,400,503
|
|
||||||
|
|
||||||
|
|
||||||
Request
|
|
||||||
-------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-auth-token: x-auth-token
|
|
||||||
- x-auth-all-projects: x-auth-all-projects
|
|
||||||
- x-auth-sudo-project-id: x-auth-sudo-project-id
|
|
||||||
- region: region
|
|
||||||
- floatingip_id: floatingip_id
|
|
||||||
|
|
||||||
Response Parameters
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-openstack-request-id: x-openstack-request-id
|
|
||||||
- id: fptr_id
|
|
||||||
- ptrdname: fptrd_name
|
|
||||||
- description: fptr_description
|
|
||||||
- ttl: fptr_ttl
|
|
||||||
- address: floatingip_address
|
|
||||||
- status: status
|
|
||||||
- action: action
|
|
||||||
- links: links
|
|
||||||
|
|
||||||
|
|
||||||
Response Example
|
|
||||||
----------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/reverse_floatingips/ptr-record-response.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
|
|
||||||
List FloatingIP's PTR record
|
|
||||||
============================
|
|
||||||
|
|
||||||
.. rest_method:: GET /v2/reverse/floatingips
|
|
||||||
|
|
||||||
List FloatingIP PTR records
|
|
||||||
|
|
||||||
Normal response codes: 200
|
|
||||||
|
|
||||||
Error response codes: 405,404,403,401,400,503
|
|
||||||
|
|
||||||
|
|
||||||
Request
|
|
||||||
-------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-auth-token: x-auth-token
|
|
||||||
- x-auth-all-projects: x-auth-all-projects
|
|
||||||
- x-auth-sudo-project-id: x-auth-sudo-project-id
|
|
||||||
|
|
||||||
|
|
||||||
Response Parameters
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-openstack-request-id: x-openstack-request-id
|
|
||||||
- id: fptr_id
|
|
||||||
- ptrdname: fptrd_name
|
|
||||||
- description: fptr_description
|
|
||||||
- ttl: fptr_ttl
|
|
||||||
- address: floatingip_address
|
|
||||||
- status: status
|
|
||||||
- action: action
|
|
||||||
- links: links
|
|
||||||
|
|
||||||
|
|
||||||
Response Example
|
|
||||||
----------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/reverse_floatingips/list-ptr-record-response.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
|
|
||||||
Unset FloatingIP's PTR record
|
|
||||||
=============================
|
|
||||||
|
|
||||||
.. rest_method:: PATCH /v2/reverse/floatingips/{region}:{floatingip_id}
|
|
||||||
|
|
||||||
Unset the PTR record for a FloatingIP
|
|
||||||
|
|
||||||
Normal response codes: 202
|
|
||||||
|
|
||||||
Error response codes: 405,404,403,401,400,503
|
|
||||||
|
|
||||||
|
|
||||||
Request
|
|
||||||
-------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-auth-token: x-auth-token
|
|
||||||
- x-auth-all-projects: x-auth-all-projects
|
|
||||||
- x-auth-sudo-project-id: x-auth-sudo-project-id
|
|
||||||
- region: region
|
|
||||||
- floatingip_id: floatingip_id
|
|
||||||
|
|
||||||
|
|
||||||
Request Example
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/reverse_floatingips/unset-ptr-record-request.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
|
|
||||||
Response Parameters
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-openstack-request-id: x-openstack-request-id
|
|
|
@ -1,54 +0,0 @@
|
||||||
================
|
|
||||||
Service Statuses
|
|
||||||
================
|
|
||||||
|
|
||||||
The Service Status entries are used to track the health state of the services
|
|
||||||
in the Designate system. Each service will report in it's health via RPC or
|
|
||||||
using HTTP.
|
|
||||||
|
|
||||||
|
|
||||||
List Statuses
|
|
||||||
=============
|
|
||||||
|
|
||||||
.. rest_method:: GET /v2/service_status
|
|
||||||
|
|
||||||
List all Services and statuses.
|
|
||||||
|
|
||||||
|
|
||||||
.. rest_status_code:: success status.yaml
|
|
||||||
|
|
||||||
- 200
|
|
||||||
|
|
||||||
.. rest_status_code:: error status.yaml
|
|
||||||
|
|
||||||
- 400
|
|
||||||
- 401
|
|
||||||
- 403
|
|
||||||
- 404
|
|
||||||
- 405
|
|
||||||
- 503
|
|
||||||
|
|
||||||
Request Parameters
|
|
||||||
------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-auth-token: x-auth-token
|
|
||||||
- x-auth-all-projects: x-auth-all-projects
|
|
||||||
- x-auth-sudo-project-id: x-auth-sudo-project-id
|
|
||||||
|
|
||||||
|
|
||||||
Response Parameters
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-openstack-request-id: x-openstack-request-id
|
|
||||||
- id: id
|
|
||||||
|
|
||||||
|
|
||||||
Response Example
|
|
||||||
----------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/service_status/service_status_list.json
|
|
||||||
:language: javascript
|
|
|
@ -1,240 +0,0 @@
|
||||||
===
|
|
||||||
Tld
|
|
||||||
===
|
|
||||||
|
|
||||||
Tld operations.
|
|
||||||
|
|
||||||
|
|
||||||
Create Tld
|
|
||||||
==========
|
|
||||||
|
|
||||||
.. rest_method:: POST /v2/tlds
|
|
||||||
|
|
||||||
Create a tld
|
|
||||||
|
|
||||||
|
|
||||||
Normal response codes: 201
|
|
||||||
|
|
||||||
Error response codes: 409,405,404,403,401,400,503
|
|
||||||
|
|
||||||
|
|
||||||
Request
|
|
||||||
-------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-auth-token: x-auth-token
|
|
||||||
- x-auth-all-projects: x-auth-all-projects
|
|
||||||
- x-auth-sudo-project-id: x-auth-sudo-project-id
|
|
||||||
- name: tld_name
|
|
||||||
- description: tld_description
|
|
||||||
|
|
||||||
Request Example
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/tlds/create-tld-request.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Response Parameters
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-openstack-request-id: x-openstack-request-id
|
|
||||||
- id: id
|
|
||||||
- name: tld_name
|
|
||||||
- description: tld_description
|
|
||||||
- created_at: created_at
|
|
||||||
- updated_at: updated_at
|
|
||||||
- links: links
|
|
||||||
|
|
||||||
|
|
||||||
Response Example
|
|
||||||
----------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/tlds/tld-response.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
|
|
||||||
Show Tld
|
|
||||||
========
|
|
||||||
|
|
||||||
.. rest_method:: GET /v2/tlds/{tld_id}
|
|
||||||
|
|
||||||
Show a tld
|
|
||||||
|
|
||||||
|
|
||||||
Normal response codes: 200
|
|
||||||
|
|
||||||
Error response codes: 405,404,403,401,400,503
|
|
||||||
|
|
||||||
|
|
||||||
Request
|
|
||||||
-------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-auth-token: x-auth-token
|
|
||||||
- x-auth-all-projects: x-auth-all-projects
|
|
||||||
- x-auth-sudo-project-id: x-auth-sudo-project-id
|
|
||||||
- tld_id: tld_id
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Response Parameters
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-openstack-request-id: x-openstack-request-id
|
|
||||||
- id: id
|
|
||||||
- name: tld_name
|
|
||||||
- description: tld_description
|
|
||||||
- created_at: created_at
|
|
||||||
- updated_at: updated_at
|
|
||||||
- links: links
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Response Example
|
|
||||||
----------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/tlds/tld-response.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
|
|
||||||
List Tlds
|
|
||||||
=========
|
|
||||||
|
|
||||||
.. rest_method:: GET /v2/tlds
|
|
||||||
|
|
||||||
List the tlds associated with the Project
|
|
||||||
|
|
||||||
|
|
||||||
Normal response codes: 200
|
|
||||||
|
|
||||||
Error response codes: 405,403,401,400,503
|
|
||||||
|
|
||||||
|
|
||||||
Request
|
|
||||||
-------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-auth-token: x-auth-token
|
|
||||||
- x-auth-all-projects: x-auth-all-projects
|
|
||||||
- x-auth-sudo-project-id: x-auth-sudo-project-id
|
|
||||||
- limit: limit
|
|
||||||
- marker: marker
|
|
||||||
- sort_dir: sort_dir
|
|
||||||
- sort_key: sort_key
|
|
||||||
- name: tld_name_filter
|
|
||||||
|
|
||||||
|
|
||||||
Response Parameters
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-openstack-request-id: x-openstack-request-id
|
|
||||||
- id: id
|
|
||||||
- name: tld_name
|
|
||||||
- description: tld_description
|
|
||||||
- created_at: created_at
|
|
||||||
- updated_at: updated_at
|
|
||||||
- links: links
|
|
||||||
|
|
||||||
|
|
||||||
Response Example
|
|
||||||
----------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/tlds/list-tlds-response.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
|
|
||||||
Update Tld
|
|
||||||
==========
|
|
||||||
|
|
||||||
.. rest_method:: PATCH /v2/tlds/{tld_id}
|
|
||||||
|
|
||||||
Update a tld
|
|
||||||
|
|
||||||
|
|
||||||
Normal response codes: 200
|
|
||||||
|
|
||||||
Error response codes: 405,404,403,401,400,503
|
|
||||||
|
|
||||||
|
|
||||||
Request
|
|
||||||
-------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-auth-token: x-auth-token
|
|
||||||
- x-auth-all-projects: x-auth-all-projects
|
|
||||||
- x-auth-sudo-project-id: x-auth-sudo-project-id
|
|
||||||
- tld_id: tld_id
|
|
||||||
- name: tld_name
|
|
||||||
- description: tld_description
|
|
||||||
|
|
||||||
|
|
||||||
Request Example
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/tlds/update-tld-request.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
|
|
||||||
Response Parameters
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-openstack-request-id: x-openstack-request-id
|
|
||||||
- id: id
|
|
||||||
- name: tld_name
|
|
||||||
- description: tld_description
|
|
||||||
- created_at: created_at
|
|
||||||
- updated_at: updated_at
|
|
||||||
- links: links
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Response Example
|
|
||||||
----------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/tlds/update-tld-response.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
|
|
||||||
Delete Tld
|
|
||||||
==========
|
|
||||||
|
|
||||||
.. rest_method:: DELETE /v2/tlds/{tld_id}
|
|
||||||
|
|
||||||
Delete a tld
|
|
||||||
|
|
||||||
Normal response codes: 204
|
|
||||||
|
|
||||||
Error response codes: 405,404,403,401,400,503
|
|
||||||
|
|
||||||
|
|
||||||
Request
|
|
||||||
-------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-auth-token: x-auth-token
|
|
||||||
- x-auth-all-projects: x-auth-all-projects
|
|
||||||
- x-auth-sudo-project-id: x-auth-sudo-project-id
|
|
||||||
- tld_id: tld_id
|
|
||||||
|
|
||||||
|
|
||||||
Response Parameters
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-openstack-request-id: x-openstack-request-id
|
|
|
@ -1,261 +0,0 @@
|
||||||
=======
|
|
||||||
Tsigkey
|
|
||||||
=======
|
|
||||||
|
|
||||||
Transaction signatures (TSIG) is a mechanism used to secure DNS messages and
|
|
||||||
to provide secure server-to-server communication (usually between master and
|
|
||||||
slave server, but can be extended for dynamic updates as well).
|
|
||||||
|
|
||||||
Create Tsigkeys
|
|
||||||
===============
|
|
||||||
|
|
||||||
.. rest_method:: POST /v2/tsigkeys
|
|
||||||
|
|
||||||
Create a new Tsigkey
|
|
||||||
|
|
||||||
Normal response codes: 201
|
|
||||||
|
|
||||||
Error response codes: 409, 405,404,403,401,400,503
|
|
||||||
|
|
||||||
|
|
||||||
Request
|
|
||||||
-------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-auth-token: x-auth-token
|
|
||||||
- x-auth-all-projects: x-auth-all-projects
|
|
||||||
- x-auth-sudo-project-id: x-auth-sudo-project-id
|
|
||||||
- name: tsigkey_name
|
|
||||||
- algorithm: tsigkey_algorithm
|
|
||||||
- secret: tsigkey_secret
|
|
||||||
- scope: tsigkey_scope
|
|
||||||
- resource_id: resource_id
|
|
||||||
|
|
||||||
|
|
||||||
Request Example
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/tsigkeys/create-tsigkey-request.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
Response Parameters
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-openstack-request-id: x-openstack-request-id
|
|
||||||
- id: id
|
|
||||||
- resource_id: resource_id
|
|
||||||
- name: tsigkey_name
|
|
||||||
- scope: tsigkey_scope
|
|
||||||
- secret: tsigkey_secret
|
|
||||||
- algorithm: tsigkey_algorithm
|
|
||||||
- created_at: created_at
|
|
||||||
- updated_at: updated_at
|
|
||||||
- links: links
|
|
||||||
|
|
||||||
|
|
||||||
Response Example
|
|
||||||
----------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/tsigkeys/tsigkey-response.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
List Tsigkeys
|
|
||||||
=============
|
|
||||||
|
|
||||||
.. rest_method:: GET /v2/tsigkeys
|
|
||||||
|
|
||||||
List all tsigkeys
|
|
||||||
|
|
||||||
|
|
||||||
Normal response codes: 200
|
|
||||||
|
|
||||||
Error response codes: 405,404,403,401,400,503
|
|
||||||
|
|
||||||
|
|
||||||
Request Parameters
|
|
||||||
------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-auth-token: x-auth-token
|
|
||||||
- x-auth-all-projects: x-auth-all-projects
|
|
||||||
- x-auth-sudo-project-id: x-auth-sudo-project-id
|
|
||||||
- limit: limit
|
|
||||||
- marker: marker
|
|
||||||
- sort_dir: sort_dir
|
|
||||||
- sort_key: sort_key
|
|
||||||
- name: tsigkey_name_filter
|
|
||||||
- algorithm: tsigkey_algorithm_filter
|
|
||||||
- scope: tsigkey_scope_filter
|
|
||||||
|
|
||||||
|
|
||||||
Response Parameters
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-openstack-request-id: x-openstack-request-id
|
|
||||||
- id: id
|
|
||||||
- resource_id: resource_id
|
|
||||||
- name: tsigkey_name
|
|
||||||
- scope: tsigkey_scope
|
|
||||||
- secret: tsigkey_secret
|
|
||||||
- algorithm: tsigkey_algorithm
|
|
||||||
- created_at: created_at
|
|
||||||
- updated_at: updated_at
|
|
||||||
- links: links
|
|
||||||
|
|
||||||
|
|
||||||
Response Example
|
|
||||||
----------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/tsigkeys/list-tsigkeys-response.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Show a Tsigkey
|
|
||||||
==============
|
|
||||||
|
|
||||||
.. rest_method:: GET /v2/tsigkeys/{tsigkey_id}
|
|
||||||
|
|
||||||
Show a tsigkey
|
|
||||||
|
|
||||||
|
|
||||||
Normal response codes: 200
|
|
||||||
|
|
||||||
Error response codes: 405,404,403,401,400,503
|
|
||||||
|
|
||||||
|
|
||||||
Request
|
|
||||||
-------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-auth-token: x-auth-token
|
|
||||||
- x-auth-all-projects: x-auth-all-projects
|
|
||||||
- x-auth-sudo-project-id: x-auth-sudo-project-id
|
|
||||||
- tsigkey_id: tsigkey_id
|
|
||||||
|
|
||||||
|
|
||||||
Response Parameters
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-openstack-request-id: x-openstack-request-id
|
|
||||||
- id: id
|
|
||||||
- resource_id: resource_id
|
|
||||||
- name: tsigkey_name
|
|
||||||
- scope: tsigkey_scope
|
|
||||||
- secret: tsigkey_secret
|
|
||||||
- algorithm: tsigkey_algorithm
|
|
||||||
- created_at: created_at
|
|
||||||
- updated_at: updated_at
|
|
||||||
- links: links
|
|
||||||
|
|
||||||
|
|
||||||
Response Example
|
|
||||||
----------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/tsigkeys/tsigkey-response.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Update Tsigkey
|
|
||||||
================
|
|
||||||
|
|
||||||
.. rest_method:: PATCH /v2/tsigkeys/{tsigkey_id}
|
|
||||||
|
|
||||||
Update the attribute(s) of an existing tsigkey
|
|
||||||
|
|
||||||
|
|
||||||
Normal response codes: 200
|
|
||||||
|
|
||||||
Error response codes: 405,404,403,401,400,503
|
|
||||||
|
|
||||||
|
|
||||||
Request Parameters
|
|
||||||
------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-auth-token: x-auth-token
|
|
||||||
- x-auth-all-projects: x-auth-all-projects
|
|
||||||
- x-auth-sudo-project-id: x-auth-sudo-project-id
|
|
||||||
- name: tsigkey_name
|
|
||||||
- algorithm: tsigkey_algorithm
|
|
||||||
- secret: tsigkey_secret
|
|
||||||
- scope: tsigkey_scope
|
|
||||||
- resource_id: resource_id
|
|
||||||
- tsigkey_id: tsigkey_id
|
|
||||||
|
|
||||||
|
|
||||||
Request Example
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/tsigkeys/update-tsigkey-request.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
|
|
||||||
Response Parameters
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-openstack-request-id: x-openstack-request-id
|
|
||||||
- id: id
|
|
||||||
- resource_id: resource_id
|
|
||||||
- name: tsigkey_name
|
|
||||||
- scope: tsigkey_scope
|
|
||||||
- secret: tsigkey_secret
|
|
||||||
- algorithm: tsigkey_algorithm
|
|
||||||
- created_at: created_at
|
|
||||||
- updated_at: updated_at
|
|
||||||
- links: links
|
|
||||||
|
|
||||||
|
|
||||||
Response Example
|
|
||||||
----------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/tsigkeys/update-tsigkey-response.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Delete a Tsigkey
|
|
||||||
================
|
|
||||||
|
|
||||||
.. rest_method:: DELETE /v2/tsigkeys/{tsigkey_id}
|
|
||||||
|
|
||||||
Delete a tsigkey
|
|
||||||
|
|
||||||
|
|
||||||
Normal response codes: 204
|
|
||||||
|
|
||||||
Error response codes: 405,404,403,401,400,503
|
|
||||||
|
|
||||||
|
|
||||||
Request
|
|
||||||
-------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-auth-token: x-auth-token
|
|
||||||
- x-auth-all-projects: x-auth-all-projects
|
|
||||||
- x-auth-sudo-project-id: x-auth-sudo-project-id
|
|
||||||
- tsigkey_id: tsigkey_id
|
|
||||||
|
|
||||||
|
|
||||||
Response Parameters
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-openstack-request-id: x-openstack-request-id
|
|
|
@ -1,37 +0,0 @@
|
||||||
============
|
|
||||||
API Versions
|
|
||||||
============
|
|
||||||
|
|
||||||
Show all enabled API versions
|
|
||||||
|
|
||||||
List all API versions
|
|
||||||
=====================
|
|
||||||
|
|
||||||
.. rest_method:: GET /
|
|
||||||
|
|
||||||
|
|
||||||
Normal response codes: 200
|
|
||||||
|
|
||||||
Error response codes: 405,404,403,401,400,503
|
|
||||||
|
|
||||||
|
|
||||||
Request
|
|
||||||
-------
|
|
||||||
|
|
||||||
No parameters needed
|
|
||||||
|
|
||||||
Response Parameters
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-openstack-request-id: x-openstack-request-id
|
|
||||||
|
|
||||||
|
|
||||||
Response Example
|
|
||||||
----------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/versions/get-versions-response.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
|
|
|
@ -1,227 +0,0 @@
|
||||||
============
|
|
||||||
Zone Exports
|
|
||||||
============
|
|
||||||
|
|
||||||
Zone exports can be an asynchronous operation,
|
|
||||||
and there are different endpoints to view the status and progress of an export
|
|
||||||
|
|
||||||
|
|
||||||
Create a Zone Export
|
|
||||||
====================
|
|
||||||
|
|
||||||
.. rest_method:: POST /v2/zones/{zone_id}/tasks/export
|
|
||||||
|
|
||||||
Export a zone.
|
|
||||||
|
|
||||||
.. note:: This POST should have no body
|
|
||||||
|
|
||||||
Normal response codes: 202
|
|
||||||
|
|
||||||
Error response codes: 405,404,403,401,400,503
|
|
||||||
|
|
||||||
|
|
||||||
Request
|
|
||||||
-------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-auth-token: x-auth-token
|
|
||||||
- x-auth-all-projects: x-auth-all-projects
|
|
||||||
- x-auth-sudo-project-id: x-auth-sudo-project-id
|
|
||||||
- zone_id: path_zone_id
|
|
||||||
|
|
||||||
|
|
||||||
Response Parameters
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-openstack-request-id: x-openstack-request-id
|
|
||||||
- id: zone_export_id
|
|
||||||
- location: zone_export_location
|
|
||||||
- status: zone_export_status
|
|
||||||
- zone_id: zone_export_zone_id
|
|
||||||
- message: zone_export_message
|
|
||||||
- project_id: project_id
|
|
||||||
- created_at: created_at
|
|
||||||
- updated_at: updated_at
|
|
||||||
- version: version
|
|
||||||
|
|
||||||
|
|
||||||
Response Example
|
|
||||||
----------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/zones/create-zone-export-response.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
|
|
||||||
List all Zone Exports
|
|
||||||
=====================
|
|
||||||
|
|
||||||
.. rest_method:: GET /v2/zones/tasks/exports
|
|
||||||
|
|
||||||
|
|
||||||
Normal response codes: 200
|
|
||||||
|
|
||||||
Error response codes: 405,404,403,401,400,503
|
|
||||||
|
|
||||||
|
|
||||||
Request
|
|
||||||
-------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-auth-token: x-auth-token
|
|
||||||
- x-auth-all-projects: x-auth-all-projects
|
|
||||||
- x-auth-sudo-project-id: x-auth-sudo-project-id
|
|
||||||
- zone_id: zone_export_zone_id_filter
|
|
||||||
- message: zone_export_message_filter
|
|
||||||
- status: zone_export_status_filter
|
|
||||||
|
|
||||||
|
|
||||||
Response Parameters
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-openstack-request-id: x-openstack-request-id
|
|
||||||
- id: zone_export_id
|
|
||||||
- location: zone_export_location
|
|
||||||
- status: zone_export_status
|
|
||||||
- zone_id: zone_export_zone_id
|
|
||||||
- project_id: project_id
|
|
||||||
- created_at: created_at
|
|
||||||
- updated_at: updated_at
|
|
||||||
- version: version
|
|
||||||
- links: links
|
|
||||||
- metadata: metadata
|
|
||||||
|
|
||||||
|
|
||||||
Response Example
|
|
||||||
----------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/zones/list-zone-export-response.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
|
|
||||||
Show a Zone Export Information
|
|
||||||
==============================
|
|
||||||
|
|
||||||
.. rest_method:: GET /v2/zones/tasks/exports/{zone_export_id}
|
|
||||||
|
|
||||||
|
|
||||||
Normal response codes: 200
|
|
||||||
|
|
||||||
Error response codes: 405,404,403,401,400,503
|
|
||||||
|
|
||||||
|
|
||||||
Request
|
|
||||||
-------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-auth-token: x-auth-token
|
|
||||||
- x-auth-all-projects: x-auth-all-projects
|
|
||||||
- x-auth-sudo-project-id: x-auth-sudo-project-id
|
|
||||||
- zone_export_id: path_zone_export_id
|
|
||||||
|
|
||||||
|
|
||||||
Response Parameters
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-openstack-request-id: x-openstack-request-id
|
|
||||||
- id: zone_export_id
|
|
||||||
- location: zone_export_location
|
|
||||||
- status: zone_export_status
|
|
||||||
- zone_id: zone_export_zone_id
|
|
||||||
- project_id: project_id
|
|
||||||
- created_at: created_at
|
|
||||||
- updated_at: updated_at
|
|
||||||
- version: version
|
|
||||||
- links: links
|
|
||||||
|
|
||||||
|
|
||||||
Response Example
|
|
||||||
----------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/zones/show-zone-export-response.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
|
|
||||||
Retrive a Zone Export from the Designate Datastore
|
|
||||||
==================================================
|
|
||||||
|
|
||||||
.. rest_method:: GET /v2/zones/tasks/exports/{zone_export_id}/export
|
|
||||||
|
|
||||||
|
|
||||||
Normal response codes: 200
|
|
||||||
|
|
||||||
Error response codes: 405,404,403,401,400,503
|
|
||||||
|
|
||||||
.. note::
|
|
||||||
This endpoint will send a response with a ``text/dns`` content-type.
|
|
||||||
If the client does not include a ``Accepts: text/dns`` header the request
|
|
||||||
will be rejected.
|
|
||||||
|
|
||||||
|
|
||||||
Request
|
|
||||||
-------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-auth-token: x-auth-token
|
|
||||||
- x-auth-all-projects: x-auth-all-projects
|
|
||||||
- x-auth-sudo-project-id: x-auth-sudo-project-id
|
|
||||||
- zone_export_id: path_zone_export_id
|
|
||||||
- accepts: zone_export_accepts
|
|
||||||
|
|
||||||
|
|
||||||
Response Parameters
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-openstack-request-id: x-openstack-request-id
|
|
||||||
|
|
||||||
|
|
||||||
Response Example
|
|
||||||
----------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/zones/show-zone-export-content.txt
|
|
||||||
:language: text
|
|
||||||
|
|
||||||
|
|
||||||
Delete a Zone Export
|
|
||||||
====================
|
|
||||||
|
|
||||||
.. rest_method:: DELETE /v2/zones/tasks/exports/{zone_export_id}
|
|
||||||
|
|
||||||
This will just delete the record of the zone export, not the exported zone.
|
|
||||||
|
|
||||||
The zone will have to be deleted from the zone delete API
|
|
||||||
|
|
||||||
|
|
||||||
Normal response codes: 204
|
|
||||||
|
|
||||||
Error response codes: 405,404,403,401,400,503
|
|
||||||
|
|
||||||
|
|
||||||
Request
|
|
||||||
-------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-auth-token: x-auth-token
|
|
||||||
- x-auth-all-projects: x-auth-all-projects
|
|
||||||
- x-auth-sudo-project-id: x-auth-sudo-project-id
|
|
||||||
- zone_export_id: path_zone_export_id
|
|
||||||
|
|
||||||
|
|
||||||
Response Parameters
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-openstack-request-id: x-openstack-request-id
|
|
|
@ -1,178 +0,0 @@
|
||||||
===========
|
|
||||||
Zone Import
|
|
||||||
===========
|
|
||||||
|
|
||||||
Zone imports are an asynchronous operation, and there are different endpoints
|
|
||||||
to view the status and progress of an import
|
|
||||||
|
|
||||||
|
|
||||||
Create a Zone Import
|
|
||||||
====================
|
|
||||||
|
|
||||||
.. rest_method:: POST /v2/zones/tasks/imports
|
|
||||||
|
|
||||||
Import a zone.
|
|
||||||
|
|
||||||
.. note:: This POST should have no body, and the content-type should be text/dns
|
|
||||||
|
|
||||||
Normal response codes: 202
|
|
||||||
|
|
||||||
Error response codes: 405,404,403,401,400,503
|
|
||||||
|
|
||||||
|
|
||||||
Request
|
|
||||||
-------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-auth-token: x-auth-token
|
|
||||||
- x-auth-all-projects: x-auth-all-projects
|
|
||||||
- x-auth-sudo-project-id: x-auth-sudo-project-id
|
|
||||||
|
|
||||||
|
|
||||||
Response Parameters
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-openstack-request-id: x-openstack-request-id
|
|
||||||
- id: zone_import_id
|
|
||||||
- status: zone_import_status
|
|
||||||
- zone_id: zone_import_zone_id
|
|
||||||
- message: zone_import_message
|
|
||||||
- project_id: project_id
|
|
||||||
- created_at: created_at
|
|
||||||
- updated_at: updated_at
|
|
||||||
- version: version
|
|
||||||
|
|
||||||
|
|
||||||
Response Example
|
|
||||||
----------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/zones/create-zone-import-response.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
|
|
||||||
List all Zone Imports
|
|
||||||
=====================
|
|
||||||
|
|
||||||
.. rest_method:: GET /v2/zones/tasks/imports
|
|
||||||
|
|
||||||
|
|
||||||
Normal response codes: 200
|
|
||||||
|
|
||||||
Error response codes: 405,404,403,401,400,503
|
|
||||||
|
|
||||||
|
|
||||||
Request
|
|
||||||
-------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-auth-token: x-auth-token
|
|
||||||
- x-auth-all-projects: x-auth-all-projects
|
|
||||||
- x-auth-sudo-project-id: x-auth-sudo-project-id
|
|
||||||
- zone_id: zone_import_zone_id_filter
|
|
||||||
- message: zone_import_message_filter
|
|
||||||
- status: zone_import_status_filter
|
|
||||||
|
|
||||||
|
|
||||||
Response Parameters
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-openstack-request-id: x-openstack-request-id
|
|
||||||
- id: zone_import_id
|
|
||||||
- status: zone_import_status
|
|
||||||
- zone_id: zone_import_zone_id
|
|
||||||
- project_id: project_id
|
|
||||||
- created_at: created_at
|
|
||||||
- updated_at: updated_at
|
|
||||||
- version: version
|
|
||||||
- links: links
|
|
||||||
- metadata: metadata
|
|
||||||
|
|
||||||
|
|
||||||
Response Example
|
|
||||||
----------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/zones/list-zone-import-response.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
Show a Zone Import
|
|
||||||
==================
|
|
||||||
|
|
||||||
.. rest_method:: GET /v2/zones/tasks/imports/{zone_import_id}
|
|
||||||
|
|
||||||
|
|
||||||
Normal response codes: 200
|
|
||||||
|
|
||||||
Error response codes: 405,404,403,401,400,503
|
|
||||||
|
|
||||||
|
|
||||||
Request
|
|
||||||
-------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-auth-token: x-auth-token
|
|
||||||
- x-auth-all-projects: x-auth-all-projects
|
|
||||||
- x-auth-sudo-project-id: x-auth-sudo-project-id
|
|
||||||
- zone_import_id: path_zone_import_id
|
|
||||||
|
|
||||||
|
|
||||||
Response Parameters
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-openstack-request-id: x-openstack-request-id
|
|
||||||
- id: zone_import_id
|
|
||||||
- status: zone_import_status
|
|
||||||
- zone_id: zone_import_zone_id
|
|
||||||
- project_id: project_id
|
|
||||||
- created_at: created_at
|
|
||||||
- updated_at: updated_at
|
|
||||||
- version: version
|
|
||||||
- links: links
|
|
||||||
|
|
||||||
|
|
||||||
Response Example
|
|
||||||
----------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/zones/show-zone-import-response.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
Delete a Zone Import
|
|
||||||
====================
|
|
||||||
|
|
||||||
.. rest_method:: DELETE /v2/zones/tasks/imports/{zone_import_id}
|
|
||||||
|
|
||||||
This will just delete the record of the zone import, not the imported zone.
|
|
||||||
|
|
||||||
The zone will have to be deleted from the zone delete API
|
|
||||||
|
|
||||||
|
|
||||||
Normal response codes: 204
|
|
||||||
|
|
||||||
Error response codes: 405,404,403,401,400,503
|
|
||||||
|
|
||||||
|
|
||||||
Request
|
|
||||||
-------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-auth-token: x-auth-token
|
|
||||||
- x-auth-all-projects: x-auth-all-projects
|
|
||||||
- x-auth-sudo-project-id: x-auth-sudo-project-id
|
|
||||||
- zone_import_id: path_zone_import_id
|
|
||||||
|
|
||||||
|
|
||||||
Response Parameters
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-openstack-request-id: x-openstack-request-id
|
|
|
@ -1,156 +0,0 @@
|
||||||
==================================
|
|
||||||
Zone Ownership Transfers - Accepts
|
|
||||||
==================================
|
|
||||||
|
|
||||||
Designate allows users to transer ownership of a zone between projects.
|
|
||||||
|
|
||||||
For the final step, the receiving project has to accept the new zone, using
|
|
||||||
the ``transfer_accepts`` API
|
|
||||||
|
|
||||||
|
|
||||||
Create Zone Transfer Accept
|
|
||||||
============================
|
|
||||||
|
|
||||||
.. rest_method:: POST /v2/zones/tasks/transfer_accepts
|
|
||||||
|
|
||||||
This accepts an offer of a ownership transfer
|
|
||||||
|
|
||||||
|
|
||||||
Normal response codes: 200
|
|
||||||
|
|
||||||
Error response codes: 405,404,403,401,400,503
|
|
||||||
|
|
||||||
|
|
||||||
Request
|
|
||||||
-------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-auth-token: x-auth-token
|
|
||||||
- x-auth-all-projects: x-auth-all-projects
|
|
||||||
- x-auth-sudo-project-id: x-auth-sudo-project-id
|
|
||||||
- key: zone_transfer_request_key
|
|
||||||
- zone_transfer_request_id: zone_transfer_request_id
|
|
||||||
|
|
||||||
|
|
||||||
Request Example
|
|
||||||
----------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/zones/create-zone-transfer-accept-request.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
|
|
||||||
Response Parameters
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-openstack-request-id: x-openstack-request-id
|
|
||||||
- id: zone_transfer_accept_id
|
|
||||||
- status: zone_transfer_request_status
|
|
||||||
- project_id: project_id
|
|
||||||
- zone_id: zone_transfer_request_id
|
|
||||||
- key: zone_transfer_request_key
|
|
||||||
- created_at: created_at
|
|
||||||
- updated_at: updated_at
|
|
||||||
- zone_transfer_request_id: zone_transfer_request_id
|
|
||||||
- links: links
|
|
||||||
|
|
||||||
Response Example
|
|
||||||
----------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/zones/create-zone-transfer-accept-response.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
|
|
||||||
Get Zone Transfer Accept
|
|
||||||
========================
|
|
||||||
|
|
||||||
.. rest_method:: GET /v2/zones/tasks/transfer_requests/{zone_transfer_accept_id}
|
|
||||||
|
|
||||||
|
|
||||||
Normal response codes: 200
|
|
||||||
|
|
||||||
Error response codes: 405,404,403,401,400,503
|
|
||||||
|
|
||||||
|
|
||||||
Request
|
|
||||||
-------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-auth-token: x-auth-token
|
|
||||||
- x-auth-all-projects: x-auth-all-projects
|
|
||||||
- x-auth-sudo-project-id: x-auth-sudo-project-id
|
|
||||||
- zone_transfer_accept_id: path_zone_transfer_accept_id
|
|
||||||
|
|
||||||
|
|
||||||
Response Parameters
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-openstack-request-id: x-openstack-request-id
|
|
||||||
- id: zone_transfer_accept_id
|
|
||||||
- status: zone_transfer_request_status
|
|
||||||
- project_id: project_id
|
|
||||||
- zone_id: zone_transfer_request_id
|
|
||||||
- key: zone_transfer_request_key
|
|
||||||
- created_at: created_at
|
|
||||||
- updated_at: updated_at
|
|
||||||
- zone_transfer_request_id: zone_transfer_request_id
|
|
||||||
- links: links
|
|
||||||
|
|
||||||
Response Example
|
|
||||||
----------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/zones/create-zone-transfer-accept-response.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
|
|
||||||
List Zone Transfer Accepts
|
|
||||||
===========================
|
|
||||||
|
|
||||||
.. rest_method:: GET /v2/zones/tasks/transfer_accepts
|
|
||||||
|
|
||||||
This will list all your accepted ownership transfer.
|
|
||||||
|
|
||||||
Normal response codes: 200
|
|
||||||
|
|
||||||
Error response codes: 405,404,403,401,400,503
|
|
||||||
|
|
||||||
|
|
||||||
Request
|
|
||||||
-------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-auth-token: x-auth-token
|
|
||||||
- x-auth-all-projects: x-auth-all-projects
|
|
||||||
- x-auth-sudo-project-id: x-auth-sudo-project-id
|
|
||||||
- status: zone_transfer_accept_status_filter
|
|
||||||
|
|
||||||
|
|
||||||
Response Parameters
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-openstack-request-id: x-openstack-request-id
|
|
||||||
- id: zone_transfer_accept_id
|
|
||||||
- project_id: project_id
|
|
||||||
- status: zone_transfer_request_status
|
|
||||||
- zone_id: zone_transfer_request_id
|
|
||||||
- key: zone_transfer_request_key
|
|
||||||
- created_at: created_at
|
|
||||||
- updated_at: updated_at
|
|
||||||
- zone_transfer_request_id: zone_transfer_request_id
|
|
||||||
- links: links
|
|
||||||
- metadata: metadata
|
|
||||||
|
|
||||||
|
|
||||||
Response Example
|
|
||||||
----------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/zones/list-zone-transfer-accept-response.json
|
|
||||||
:language: javascript
|
|
|
@ -1,254 +0,0 @@
|
||||||
===================================
|
|
||||||
Zone Ownership Transfers - Requests
|
|
||||||
===================================
|
|
||||||
|
|
||||||
Designate allows users to transer ownership of a zone between projects.
|
|
||||||
|
|
||||||
The traditional route is to create a ``zone_transfer_request``, communicate
|
|
||||||
the key and ID out of band to the intended owner, and they create a
|
|
||||||
``zone_transfer_accept`` using this information, which will move the
|
|
||||||
ownership of the zone that project.
|
|
||||||
|
|
||||||
|
|
||||||
Create Zone Transfer Request
|
|
||||||
============================
|
|
||||||
|
|
||||||
.. rest_method:: POST /v2/zones/{zone_id}/tasks/transfer_requests
|
|
||||||
|
|
||||||
This creates an offer to transfer the zone to a different project.
|
|
||||||
The request can be scoped to single project if the ``project_id`` parameter is
|
|
||||||
supplied.
|
|
||||||
|
|
||||||
.. note:: This POST can have no body.
|
|
||||||
|
|
||||||
|
|
||||||
Normal response codes: 201
|
|
||||||
|
|
||||||
Error response codes: 405,404,403,401,400,503
|
|
||||||
|
|
||||||
|
|
||||||
Request
|
|
||||||
-------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-auth-token: x-auth-token
|
|
||||||
- x-auth-all-projects: x-auth-all-projects
|
|
||||||
- x-auth-sudo-project-id: x-auth-sudo-project-id
|
|
||||||
- zone_id: path_zone_id
|
|
||||||
- target_project_id: zone_transfer_request_target_project_id
|
|
||||||
- description: description
|
|
||||||
|
|
||||||
Request Example
|
|
||||||
----------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/zones/create-zone-transfer-request-request.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
|
|
||||||
Response Parameters
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-openstack-request-id: x-openstack-request-id
|
|
||||||
- id: zone_transfer_request_id
|
|
||||||
- project_id: project_id
|
|
||||||
- description: description
|
|
||||||
- status: zone_transfer_request_status
|
|
||||||
- zone_id: zone_transfer_request_zone_id
|
|
||||||
- zone_name: zone_transfer_request_zone_name
|
|
||||||
- key: zone_transfer_request_key
|
|
||||||
- target_project_id: zone_transfer_request_target_project_id
|
|
||||||
- created_at: created_at
|
|
||||||
- updated_at: updated_at
|
|
||||||
- version: version
|
|
||||||
|
|
||||||
Response Example
|
|
||||||
----------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/zones/create-zone-transfer-request-response.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
|
|
||||||
List Zone Transfer Requests
|
|
||||||
===========================
|
|
||||||
|
|
||||||
.. rest_method:: GET /v2/zones/tasks/transfer_requests
|
|
||||||
|
|
||||||
This will list all your outgoing requests, and any incoming requests that
|
|
||||||
have been scoped to your project.
|
|
||||||
|
|
||||||
Normal response codes: 200
|
|
||||||
|
|
||||||
Error response codes: 405,404,403,401,400,503
|
|
||||||
|
|
||||||
|
|
||||||
Request
|
|
||||||
-------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-auth-token: x-auth-token
|
|
||||||
- x-auth-all-projects: x-auth-all-projects
|
|
||||||
- x-auth-sudo-project-id: x-auth-sudo-project-id
|
|
||||||
- status: zone_transfer_request_status_filter
|
|
||||||
|
|
||||||
|
|
||||||
Response Parameters
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-openstack-request-id: x-openstack-request-id
|
|
||||||
- id: zone_transfer_request_id
|
|
||||||
- project_id: project_id
|
|
||||||
- description: description
|
|
||||||
- status: zone_transfer_request_status
|
|
||||||
- zone_id: zone_transfer_request_zone_id
|
|
||||||
- zone_name: zone_transfer_request_zone_name
|
|
||||||
- key: zone_transfer_request_key
|
|
||||||
- target_project_id: zone_transfer_request_target_project_id
|
|
||||||
- created_at: created_at
|
|
||||||
- updated_at: updated_at
|
|
||||||
- version: version
|
|
||||||
|
|
||||||
Response Example
|
|
||||||
----------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/zones/list-zone-transfer-request-response.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Show a Zone Transfer Request
|
|
||||||
============================
|
|
||||||
|
|
||||||
.. rest_method:: GET /v2/zones/tasks/transfer_requests/{zone_transfer_request_id}
|
|
||||||
|
|
||||||
|
|
||||||
Normal response codes: 200
|
|
||||||
|
|
||||||
Error response codes: 405,404,403,401,400,503
|
|
||||||
|
|
||||||
|
|
||||||
Request
|
|
||||||
-------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-auth-token: x-auth-token
|
|
||||||
- x-auth-all-projects: x-auth-all-projects
|
|
||||||
- x-auth-sudo-project-id: x-auth-sudo-project-id
|
|
||||||
- zone_transfer_request_id: path_zone_transfer_request_id
|
|
||||||
|
|
||||||
|
|
||||||
Response Parameters
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-openstack-request-id: x-openstack-request-id
|
|
||||||
- id: zone_transfer_request_id
|
|
||||||
- project_id: project_id
|
|
||||||
- description: description
|
|
||||||
- status: zone_transfer_request_status
|
|
||||||
- zone_id: zone_transfer_request_zone_id
|
|
||||||
- zone_name: zone_transfer_request_zone_name
|
|
||||||
- key: zone_transfer_request_key
|
|
||||||
- target_project_id: zone_transfer_request_target_project_id
|
|
||||||
- created_at: created_at
|
|
||||||
- updated_at: updated_at
|
|
||||||
- version: version
|
|
||||||
|
|
||||||
Response Example
|
|
||||||
----------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/zones/show-zone-transfer-request-response.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
|
|
||||||
Update a Zone Transfer Request
|
|
||||||
==============================
|
|
||||||
|
|
||||||
.. rest_method:: PATCH /v2/zones/tasks/transfer_requests/{zone_transfer_request_id}
|
|
||||||
|
|
||||||
|
|
||||||
Normal response codes: 200
|
|
||||||
|
|
||||||
Error response codes: 405,404,403,401,400,503
|
|
||||||
|
|
||||||
|
|
||||||
Request
|
|
||||||
-------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-auth-token: x-auth-token
|
|
||||||
- x-auth-all-projects: x-auth-all-projects
|
|
||||||
- x-auth-sudo-project-id: x-auth-sudo-project-id
|
|
||||||
- zone_transfer_request_id: path_zone_transfer_request_id
|
|
||||||
- target_project_id: zone_transfer_request_target_project_id
|
|
||||||
- description: description
|
|
||||||
|
|
||||||
Request Example
|
|
||||||
----------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/zones/update-zone-transfer-request-request.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
|
|
||||||
Response Parameters
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-openstack-request-id: x-openstack-request-id
|
|
||||||
- id: zone_transfer_request_id
|
|
||||||
- project_id: project_id
|
|
||||||
- description: description
|
|
||||||
- status: zone_transfer_request_status
|
|
||||||
- zone_id: zone_transfer_request_zone_id
|
|
||||||
- zone_name: zone_transfer_request_zone_name
|
|
||||||
- key: zone_transfer_request_key
|
|
||||||
- target_project_id: zone_transfer_request_target_project_id
|
|
||||||
- created_at: created_at
|
|
||||||
- updated_at: updated_at
|
|
||||||
- version: version
|
|
||||||
|
|
||||||
Response Example
|
|
||||||
----------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/zones/update-zone-transfer-request-response.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
|
|
||||||
Delete a Zone Transfer Request
|
|
||||||
==============================
|
|
||||||
|
|
||||||
.. rest_method:: DELETE /v2/zones/tasks/transfer_requests/{zone_transfer_request_id}
|
|
||||||
|
|
||||||
|
|
||||||
Normal response codes: 204
|
|
||||||
|
|
||||||
Error response codes: 405,404,403,401,400,503
|
|
||||||
|
|
||||||
|
|
||||||
Request
|
|
||||||
-------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-auth-token: x-auth-token
|
|
||||||
- x-auth-all-projects: x-auth-all-projects
|
|
||||||
- x-auth-sudo-project-id: x-auth-sudo-project-id
|
|
||||||
- zone_transfer_request_id: path_zone_transfer_request_id
|
|
||||||
|
|
||||||
|
|
||||||
Response Parameters
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-openstack-request-id: x-openstack-request-id
|
|
||||||
|
|
|
@ -1,84 +0,0 @@
|
||||||
==========
|
|
||||||
Zone Tasks
|
|
||||||
==========
|
|
||||||
|
|
||||||
Zone tasks.
|
|
||||||
|
|
||||||
|
|
||||||
Abandon Zone
|
|
||||||
============
|
|
||||||
|
|
||||||
.. rest_method:: POST /v2/zones/{zone_id}/tasks/abandon
|
|
||||||
|
|
||||||
Abandon a zone.
|
|
||||||
|
|
||||||
This removes a zone from the designate database without removing it
|
|
||||||
from the backends.
|
|
||||||
|
|
||||||
.. note:: This POST should have no body.
|
|
||||||
|
|
||||||
.. warning::
|
|
||||||
This is a protentially dangerous operation, and should only be used if required
|
|
||||||
|
|
||||||
Normal response codes: 204
|
|
||||||
|
|
||||||
Error response codes: 405,404,403,401,400,503
|
|
||||||
|
|
||||||
|
|
||||||
Request
|
|
||||||
-------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-auth-token: x-auth-token
|
|
||||||
- x-auth-all-projects: x-auth-all-projects
|
|
||||||
- x-auth-sudo-project-id: x-auth-sudo-project-id
|
|
||||||
- zone_id: path_zone_id
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Response Parameters
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-openstack-request-id: x-openstack-request-id
|
|
||||||
|
|
||||||
|
|
||||||
Manually Trigger an Update of a Secondary Zone
|
|
||||||
==============================================
|
|
||||||
|
|
||||||
.. rest_method:: POST /v2/zones/{zone_id}/tasks/xfr
|
|
||||||
|
|
||||||
Trigger a new XFR from the upstream DNS servers
|
|
||||||
|
|
||||||
This will cause designate to query the name servers and if the version in
|
|
||||||
Designate is out of date, import the new version.
|
|
||||||
|
|
||||||
This is useful if an upstream server failed to send a notify to Designate
|
|
||||||
|
|
||||||
.. note:: This POST should have no body.
|
|
||||||
|
|
||||||
.. important:: This is only useful on SECONDARY zones.
|
|
||||||
|
|
||||||
Normal response codes: 202
|
|
||||||
|
|
||||||
Error response codes: 405,404,403,401,400,503
|
|
||||||
|
|
||||||
|
|
||||||
Request
|
|
||||||
-------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-auth-token: x-auth-token
|
|
||||||
- x-auth-all-projects: x-auth-all-projects
|
|
||||||
- x-auth-sudo-project-id: x-auth-sudo-project-id
|
|
||||||
- zone_id: path_zone_id
|
|
||||||
|
|
||||||
Response Parameters
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-openstack-request-id: x-openstack-request-id
|
|
|
@ -1,364 +0,0 @@
|
||||||
====
|
|
||||||
Zone
|
|
||||||
====
|
|
||||||
|
|
||||||
Zone operations.
|
|
||||||
|
|
||||||
|
|
||||||
Create Zone
|
|
||||||
===========
|
|
||||||
|
|
||||||
.. rest_method:: POST /v2/zones
|
|
||||||
|
|
||||||
Create a zone
|
|
||||||
|
|
||||||
|
|
||||||
Normal response codes: 202
|
|
||||||
|
|
||||||
Error response codes: 405,404,403,401,400,503
|
|
||||||
|
|
||||||
|
|
||||||
Request
|
|
||||||
-------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-auth-token: x-auth-token
|
|
||||||
- x-auth-all-projects: x-auth-all-projects
|
|
||||||
- x-auth-sudo-project-id: x-auth-sudo-project-id
|
|
||||||
- name: zone_name
|
|
||||||
- email: zone_email
|
|
||||||
- ttl: zone_ttl
|
|
||||||
- description: zone_description
|
|
||||||
- masters: zone_masters
|
|
||||||
- type: zone_type
|
|
||||||
|
|
||||||
|
|
||||||
Request Example
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/zones/create-zone-request.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
Response Parameters
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-openstack-request-id: x-openstack-request-id
|
|
||||||
- id: id
|
|
||||||
- pool_id: zone_pool_id
|
|
||||||
- project_id: project_id
|
|
||||||
- name: zone_name
|
|
||||||
- email: zone_email
|
|
||||||
- ttl: zone_ttl
|
|
||||||
- serial: zone_serial
|
|
||||||
- status: status
|
|
||||||
- action: action
|
|
||||||
- description: zone_description
|
|
||||||
- masters: zone_masters
|
|
||||||
- type: zone_type
|
|
||||||
- transfered_at: zone_transfered_at
|
|
||||||
- version: version
|
|
||||||
- created_at: created_at
|
|
||||||
- updated_at: updated_at
|
|
||||||
- links: links
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Response Example
|
|
||||||
----------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/zones/zone-response.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
List Zones
|
|
||||||
==========
|
|
||||||
|
|
||||||
.. rest_method:: GET /v2/zones
|
|
||||||
|
|
||||||
List all zones
|
|
||||||
|
|
||||||
|
|
||||||
Normal response codes: 200
|
|
||||||
|
|
||||||
Error response codes: 405,404,403,401,400,503
|
|
||||||
|
|
||||||
|
|
||||||
Request
|
|
||||||
-------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-auth-token: x-auth-token
|
|
||||||
- x-auth-all-projects: x-auth-all-projects
|
|
||||||
- x-auth-sudo-project-id: x-auth-sudo-project-id
|
|
||||||
- limit: limit
|
|
||||||
- marker: marker
|
|
||||||
- sort_dir: sort_dir
|
|
||||||
- sort_key: sort_key
|
|
||||||
- name: zone_name_filter
|
|
||||||
- type: zone_type_filter
|
|
||||||
- email: zone_email_filter
|
|
||||||
- status: zone_status_filter
|
|
||||||
- description: zone_description_filter
|
|
||||||
- ttl: zone_ttl_filter
|
|
||||||
|
|
||||||
|
|
||||||
Response Parameters
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-openstack-request-id: x-openstack-request-id
|
|
||||||
- id: id
|
|
||||||
- pool_id: zone_pool_id
|
|
||||||
- project_id: project_id
|
|
||||||
- name: zone_name
|
|
||||||
- email: zone_email
|
|
||||||
- ttl: zone_ttl
|
|
||||||
- serial: zone_serial
|
|
||||||
- status: status
|
|
||||||
- action: action
|
|
||||||
- description: zone_description
|
|
||||||
- masters: zone_masters
|
|
||||||
- type: zone_type
|
|
||||||
- transfered_at: zone_transfered_at
|
|
||||||
- version: version
|
|
||||||
- created_at: created_at
|
|
||||||
- updated_at: updated_at
|
|
||||||
- links: links
|
|
||||||
- metadata: metadata
|
|
||||||
|
|
||||||
|
|
||||||
Response Example
|
|
||||||
----------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/zones/list-zones-response.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
|
|
||||||
Show a Zone
|
|
||||||
===========
|
|
||||||
|
|
||||||
.. rest_method:: GET /v2/zones/{zone_id}
|
|
||||||
|
|
||||||
Show a zone
|
|
||||||
|
|
||||||
|
|
||||||
Normal response codes: 200
|
|
||||||
|
|
||||||
Error response codes: 405,404,403,401,400,503
|
|
||||||
|
|
||||||
|
|
||||||
Request
|
|
||||||
-------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-auth-token: x-auth-token
|
|
||||||
- x-auth-all-projects: x-auth-all-projects
|
|
||||||
- x-auth-sudo-project-id: x-auth-sudo-project-id
|
|
||||||
- zone_id: path_zone_id
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Response Parameters
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-openstack-request-id: x-openstack-request-id
|
|
||||||
- id: id
|
|
||||||
- pool_id: zone_pool_id
|
|
||||||
- project_id: project_id
|
|
||||||
- name: zone_name
|
|
||||||
- email: zone_email
|
|
||||||
- ttl: zone_ttl
|
|
||||||
- serial: zone_serial
|
|
||||||
- status: status
|
|
||||||
- action: action
|
|
||||||
- description: zone_description
|
|
||||||
- masters: zone_masters
|
|
||||||
- type: zone_type
|
|
||||||
- transfered_at: zone_transfered_at
|
|
||||||
- version: version
|
|
||||||
- created_at: created_at
|
|
||||||
- updated_at: updated_at
|
|
||||||
- links: links
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Response Example
|
|
||||||
----------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/zones/zone-response.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
|
|
||||||
Get the Name Servers for a Zone
|
|
||||||
===============================
|
|
||||||
|
|
||||||
.. rest_method:: GET /v2/zones/{zone_id}/nameservers
|
|
||||||
|
|
||||||
Show the nameservers for a zone
|
|
||||||
|
|
||||||
Normal response codes: 200
|
|
||||||
|
|
||||||
Error response codes: 405,404,403,401,400,503
|
|
||||||
|
|
||||||
|
|
||||||
Request
|
|
||||||
-------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-auth-token: x-auth-token
|
|
||||||
- x-auth-all-projects: x-auth-all-projects
|
|
||||||
- x-auth-sudo-project-id: x-auth-sudo-project-id
|
|
||||||
- zone_id: path_zone_id
|
|
||||||
|
|
||||||
|
|
||||||
Response Parameters
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-openstack-request-id: x-openstack-request-id
|
|
||||||
- hostname: zone_nameserver_hostname
|
|
||||||
- priority: zone_nameserver_priority
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Response Example
|
|
||||||
----------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/zones/show-zone-nameservers-response.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Update a Zone
|
|
||||||
=============
|
|
||||||
|
|
||||||
.. rest_method:: PATCH /v2/zones/{zone_id}
|
|
||||||
|
|
||||||
Update the attribute(s) for an existing zone.
|
|
||||||
|
|
||||||
|
|
||||||
Normal response codes: 202
|
|
||||||
|
|
||||||
Error response codes: 405,404,403,401,400,503
|
|
||||||
|
|
||||||
|
|
||||||
Request
|
|
||||||
-------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-auth-token: x-auth-token
|
|
||||||
- x-auth-all-projects: x-auth-all-projects
|
|
||||||
- x-auth-sudo-project-id: x-auth-sudo-project-id
|
|
||||||
- zone_id: path_zone_id
|
|
||||||
- email: zone_email_update
|
|
||||||
- ttl: zone_ttl
|
|
||||||
- description: zone_description
|
|
||||||
|
|
||||||
|
|
||||||
Request Example
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/zones/update-zone-request.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
|
|
||||||
Response Parameters
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-openstack-request-id: x-openstack-request-id
|
|
||||||
- id: id
|
|
||||||
- pool_id: zone_pool_id
|
|
||||||
- project_id: project_id
|
|
||||||
- name: zone_name
|
|
||||||
- email: zone_email
|
|
||||||
- ttl: zone_ttl
|
|
||||||
- serial: zone_serial
|
|
||||||
- status: status
|
|
||||||
- action: action
|
|
||||||
- description: zone_description
|
|
||||||
- masters: zone_masters
|
|
||||||
- type: zone_type
|
|
||||||
- transfered_at: zone_transfered_at
|
|
||||||
- version: version
|
|
||||||
- created_at: created_at
|
|
||||||
- updated_at: updated_at
|
|
||||||
- links: links
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Response Example
|
|
||||||
----------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/zones/update-zone-response.json
|
|
||||||
:language: javascript
|
|
||||||
|
|
||||||
|
|
||||||
Delete a Zone
|
|
||||||
=============
|
|
||||||
|
|
||||||
.. rest_method:: DELETE /v2/zones/{zone_id}
|
|
||||||
|
|
||||||
Delete a zone
|
|
||||||
|
|
||||||
|
|
||||||
Normal response codes: 202
|
|
||||||
|
|
||||||
Error response codes: 405,404,403,401,400,503
|
|
||||||
|
|
||||||
|
|
||||||
Request
|
|
||||||
-------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-auth-token: x-auth-token
|
|
||||||
- x-auth-all-projects: x-auth-all-projects
|
|
||||||
- x-auth-sudo-project-id: x-auth-sudo-project-id
|
|
||||||
- zone_id: path_zone_id
|
|
||||||
|
|
||||||
|
|
||||||
Response Parameters
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
.. rest_parameters:: parameters.yaml
|
|
||||||
|
|
||||||
- x-openstack-request-id: x-openstack-request-id
|
|
||||||
- id: id
|
|
||||||
- pool_id: zone_pool_id
|
|
||||||
- project_id: project_id
|
|
||||||
- name: zone_name
|
|
||||||
- email: zone_email
|
|
||||||
- ttl: zone_ttl
|
|
||||||
- serial: zone_serial
|
|
||||||
- status: status
|
|
||||||
- action: action
|
|
||||||
- description: zone_description
|
|
||||||
- masters: zone_masters
|
|
||||||
- type: zone_type
|
|
||||||
- transfered_at: zone_transfered_at
|
|
||||||
- version: version
|
|
||||||
- created_at: created_at
|
|
||||||
- updated_at: updated_at
|
|
||||||
- links: links
|
|
||||||
|
|
||||||
|
|
||||||
Response Example
|
|
||||||
----------------
|
|
||||||
|
|
||||||
.. literalinclude:: samples/zones/delete-zone-response.json
|
|
||||||
:language: javascript
|
|
|
@ -1,24 +0,0 @@
|
||||||
:tocdepth: 2
|
|
||||||
|
|
||||||
========
|
|
||||||
DNS API
|
|
||||||
========
|
|
||||||
|
|
||||||
.. rest_expand_all::
|
|
||||||
|
|
||||||
.. include:: dns-api-v2-version.inc
|
|
||||||
.. include:: dns-api-v2-zone.inc
|
|
||||||
.. include:: dns-api-v2-zone-import.inc
|
|
||||||
.. include:: dns-api-v2-zone-export.inc
|
|
||||||
.. include:: dns-api-v2-zone-tasks.inc
|
|
||||||
.. include:: dns-api-v2-zone-ownership-transfer-request.inc
|
|
||||||
.. include:: dns-api-v2-zone-ownership-transfer-accept.inc
|
|
||||||
.. include:: dns-api-v2-recordset.inc
|
|
||||||
.. include:: dns-api-v2-pool.inc
|
|
||||||
.. include:: dns-api-v2-limits.inc
|
|
||||||
.. include:: dns-api-v2-tld.inc
|
|
||||||
.. include:: dns-api-v2-tsigkey.inc
|
|
||||||
.. include:: dns-api-v2-blacklist.inc
|
|
||||||
.. include:: dns-api-v2-quota.inc
|
|
||||||
.. include:: dns-api-v2-service-status.inc
|
|
||||||
.. include:: dns-api-v2-reverse-floatingips.inc
|
|
|
@ -1,897 +0,0 @@
|
||||||
####################
|
|
||||||
# Header Variables #
|
|
||||||
####################
|
|
||||||
|
|
||||||
x-auth-all-projects:
|
|
||||||
description: |
|
|
||||||
If enabled this will show results from all projects in Designate
|
|
||||||
in: header
|
|
||||||
required: false
|
|
||||||
type: bool
|
|
||||||
|
|
||||||
x-auth-sudo-project-id:
|
|
||||||
description: |
|
|
||||||
This allows a user to impersonate another project
|
|
||||||
in: header
|
|
||||||
required: false
|
|
||||||
type: string
|
|
||||||
|
|
||||||
x-auth-token:
|
|
||||||
description: |
|
|
||||||
Token used to identify the user from keystone
|
|
||||||
in: header
|
|
||||||
required: false
|
|
||||||
type: string
|
|
||||||
|
|
||||||
x-designate-edit-managed-records:
|
|
||||||
description: |
|
|
||||||
If enabled this will all users to edit records flagged as managed
|
|
||||||
in: header
|
|
||||||
required: false
|
|
||||||
type: bool
|
|
||||||
|
|
||||||
x-openstack-request-id:
|
|
||||||
description: |
|
|
||||||
ID of the request
|
|
||||||
in: header
|
|
||||||
required: true
|
|
||||||
type: string
|
|
||||||
|
|
||||||
zone_export_accepts:
|
|
||||||
description: >
|
|
||||||
Content-Type that will be accepted by the client.
|
|
||||||
This endpoint will send a response with a ``text/dns`` content-type.
|
|
||||||
If the client does not include a ``Accepts: text/dns`` header
|
|
||||||
in: header
|
|
||||||
required: true
|
|
||||||
type: string
|
|
||||||
|
|
||||||
####################
|
|
||||||
# Path Variables #
|
|
||||||
####################
|
|
||||||
|
|
||||||
blacklist_id:
|
|
||||||
description: |
|
|
||||||
ID for this blacklist
|
|
||||||
in: path
|
|
||||||
required: true
|
|
||||||
type: uuid
|
|
||||||
|
|
||||||
floatingip_id:
|
|
||||||
description: |
|
|
||||||
ID for the floatingip associated with the project
|
|
||||||
in: path
|
|
||||||
required: true
|
|
||||||
type: uuid
|
|
||||||
|
|
||||||
path_pool_id:
|
|
||||||
description: |
|
|
||||||
ID for this pool
|
|
||||||
in: path
|
|
||||||
required: true
|
|
||||||
type: uuid
|
|
||||||
|
|
||||||
path_project_id:
|
|
||||||
description: |
|
|
||||||
ID for the project
|
|
||||||
in: path
|
|
||||||
required: true
|
|
||||||
type: uuid
|
|
||||||
|
|
||||||
path_recordset_id:
|
|
||||||
description: |
|
|
||||||
ID for the recordset
|
|
||||||
in: path
|
|
||||||
required: true
|
|
||||||
type: uuid
|
|
||||||
|
|
||||||
path_zone_export_id:
|
|
||||||
description: |
|
|
||||||
ID for this zone export
|
|
||||||
in: path
|
|
||||||
required: true
|
|
||||||
type: uuid
|
|
||||||
|
|
||||||
path_zone_id:
|
|
||||||
description: |
|
|
||||||
ID for the zone
|
|
||||||
in: path
|
|
||||||
required: true
|
|
||||||
type: uuid
|
|
||||||
|
|
||||||
path_zone_import_id:
|
|
||||||
description: |
|
|
||||||
ID for this zone import
|
|
||||||
in: path
|
|
||||||
required: true
|
|
||||||
type: uuid
|
|
||||||
|
|
||||||
path_zone_transfer_accept_id:
|
|
||||||
description: |
|
|
||||||
ID for this zone transfer accept
|
|
||||||
in: path
|
|
||||||
required: true
|
|
||||||
type: uuid
|
|
||||||
|
|
||||||
path_zone_transfer_request_id:
|
|
||||||
description: |
|
|
||||||
ID for this zone transfer request
|
|
||||||
in: path
|
|
||||||
required: true
|
|
||||||
type: uuid
|
|
||||||
|
|
||||||
region:
|
|
||||||
description: |
|
|
||||||
Openstack region
|
|
||||||
in: path
|
|
||||||
required: true
|
|
||||||
type: string
|
|
||||||
|
|
||||||
tld_id:
|
|
||||||
description: |
|
|
||||||
ID for this tld
|
|
||||||
in: path
|
|
||||||
required: true
|
|
||||||
type: uuid
|
|
||||||
|
|
||||||
tsigkey_id:
|
|
||||||
description: |
|
|
||||||
ID for this tsigkey
|
|
||||||
in: path
|
|
||||||
required: true
|
|
||||||
type: uuid
|
|
||||||
|
|
||||||
|
|
||||||
####################
|
|
||||||
# Query Variables #
|
|
||||||
####################
|
|
||||||
|
|
||||||
blacklist_pattern_filter:
|
|
||||||
description: |
|
|
||||||
Filter results to only show blacklists that have a pattern matching the filter
|
|
||||||
in: query
|
|
||||||
required: false
|
|
||||||
type: string
|
|
||||||
|
|
||||||
limit:
|
|
||||||
description: |
|
|
||||||
Requests a page size of items. Returns a number
|
|
||||||
of items up to a limit value. Use the ``limit`` parameter to make
|
|
||||||
an initial limited request and use the ID of the last-seen item
|
|
||||||
from the response as the ``marker`` parameter value in a
|
|
||||||
subsequent limited request.
|
|
||||||
in: query
|
|
||||||
required: false
|
|
||||||
type: integer
|
|
||||||
|
|
||||||
marker:
|
|
||||||
description: |
|
|
||||||
The ID of the last-seen item. Use the ``limit``
|
|
||||||
parameter to make an initial limited request and use the ID of the
|
|
||||||
last-seen item from the response as the ``marker`` parameter value
|
|
||||||
in a subsequent limited request.
|
|
||||||
in: query
|
|
||||||
required: false
|
|
||||||
type: string
|
|
||||||
|
|
||||||
recordset_data_filter:
|
|
||||||
description: |
|
|
||||||
Filter results to only show recordsets that have a record with data matching the filter
|
|
||||||
in: query
|
|
||||||
required: false
|
|
||||||
type: string
|
|
||||||
|
|
||||||
recordset_description_filter:
|
|
||||||
description: |
|
|
||||||
Filter results to only show recordsets that have a description matching the filter
|
|
||||||
in: query
|
|
||||||
required: false
|
|
||||||
type: string
|
|
||||||
|
|
||||||
recordset_name_filter:
|
|
||||||
description: |
|
|
||||||
Filter results to only show recordsets that have a name matching the filter
|
|
||||||
in: query
|
|
||||||
required: false
|
|
||||||
type: string
|
|
||||||
|
|
||||||
recordset_status_filter:
|
|
||||||
description: |
|
|
||||||
Filter results to only show recordsets that have a status matching the filter
|
|
||||||
in: query
|
|
||||||
required: false
|
|
||||||
type: string
|
|
||||||
|
|
||||||
recordset_ttl_filter:
|
|
||||||
description: |
|
|
||||||
Filter results to only show recordsets that have a ttl matching the filter
|
|
||||||
in: query
|
|
||||||
required: false
|
|
||||||
type: string
|
|
||||||
|
|
||||||
recordset_type_filter:
|
|
||||||
description: |
|
|
||||||
Filter results to only show recordsets that have a type matching the filter
|
|
||||||
in: query
|
|
||||||
required: false
|
|
||||||
type: string
|
|
||||||
|
|
||||||
sort_dir:
|
|
||||||
description: |
|
|
||||||
Sorts the response by the requested sort
|
|
||||||
direction. A valid value is ``asc`` (ascending) or ``desc``
|
|
||||||
(descending). Default is ``asc``. You can specify multiple pairs
|
|
||||||
of sort key and sort direction query parameters. If you omit the
|
|
||||||
sort direction in a pair, the API uses the natural sorting
|
|
||||||
direction of the server attribute that is provided as the
|
|
||||||
``sort_key``.
|
|
||||||
in: query
|
|
||||||
required: false
|
|
||||||
type: string
|
|
||||||
|
|
||||||
sort_key:
|
|
||||||
description: |
|
|
||||||
Sorts the response by the this attribute value.
|
|
||||||
Default is ``id``. You can specify multiple pairs of sort key and
|
|
||||||
sort direction query parameters. If you omit the sort direction in
|
|
||||||
a pair, the API uses the natural sorting direction of the server
|
|
||||||
attribute that is provided as the ``sort_key``.
|
|
||||||
in: query
|
|
||||||
required: false
|
|
||||||
type: string
|
|
||||||
|
|
||||||
tld_name_filter:
|
|
||||||
description: |
|
|
||||||
Filter results to only show tlds that have a name matching the filter
|
|
||||||
in: query
|
|
||||||
required: false
|
|
||||||
type: string
|
|
||||||
|
|
||||||
tsigkey_algorithm_filter:
|
|
||||||
description: |
|
|
||||||
Filter results to only show tsigkeys that have an algorithm matching the filter
|
|
||||||
in: query
|
|
||||||
required: false
|
|
||||||
type: string
|
|
||||||
|
|
||||||
tsigkey_name_filter:
|
|
||||||
description: |
|
|
||||||
Filter results to only show tsigkeys that have a name matching the filter
|
|
||||||
in: query
|
|
||||||
required: false
|
|
||||||
type: string
|
|
||||||
|
|
||||||
tsigkey_scope_filter:
|
|
||||||
description: |
|
|
||||||
Filter results to only show tsigkeys that have a scope matching the filter
|
|
||||||
in: query
|
|
||||||
required: false
|
|
||||||
type: string
|
|
||||||
|
|
||||||
zone_description_filter:
|
|
||||||
description: |
|
|
||||||
Filter results to only show zones that have a description matching the filter
|
|
||||||
in: query
|
|
||||||
required: false
|
|
||||||
type: string
|
|
||||||
|
|
||||||
zone_email_filter:
|
|
||||||
description: |
|
|
||||||
Filter results to only show zones that have an email matching the filter
|
|
||||||
in: query
|
|
||||||
required: false
|
|
||||||
type: string
|
|
||||||
|
|
||||||
zone_export_message_filter:
|
|
||||||
description: |
|
|
||||||
Filter results to only show ``zone_exports`` that have a ``message`` matching the filter
|
|
||||||
in: query
|
|
||||||
required: false
|
|
||||||
type: string
|
|
||||||
|
|
||||||
zone_export_status_filter:
|
|
||||||
description: |
|
|
||||||
Filter results to only show ``zone_exports`` that have a ``status`` matching the filter
|
|
||||||
in: query
|
|
||||||
required: false
|
|
||||||
type: string
|
|
||||||
|
|
||||||
zone_export_zone_id_filter:
|
|
||||||
description: |
|
|
||||||
Filter results to only show ``zone_exports`` that have a ``zone_id`` matching the filter
|
|
||||||
in: query
|
|
||||||
required: false
|
|
||||||
type: uuid
|
|
||||||
|
|
||||||
zone_import_message_filter:
|
|
||||||
description: |
|
|
||||||
Filter results to only show zone_imports that have a ``message`` matching the filter
|
|
||||||
in: query
|
|
||||||
required: false
|
|
||||||
type: string
|
|
||||||
|
|
||||||
zone_import_status_filter:
|
|
||||||
description: |
|
|
||||||
Filter results to only show zone_imports that have a ``status`` matching the filter
|
|
||||||
in: query
|
|
||||||
required: false
|
|
||||||
type: string
|
|
||||||
|
|
||||||
zone_import_zone_id_filter:
|
|
||||||
description: |
|
|
||||||
Filter results to only show zone_imports that have a ``zone_id`` matching the filter
|
|
||||||
in: query
|
|
||||||
required: false
|
|
||||||
type: uuid
|
|
||||||
|
|
||||||
zone_name_filter:
|
|
||||||
description: |
|
|
||||||
Filter results to only show zones that have a name matching the filter
|
|
||||||
in: query
|
|
||||||
required: false
|
|
||||||
type: string
|
|
||||||
|
|
||||||
zone_status_filter:
|
|
||||||
description: |
|
|
||||||
Filter results to only show zones that have a status matching the filter
|
|
||||||
in: query
|
|
||||||
required: false
|
|
||||||
type: string
|
|
||||||
|
|
||||||
zone_transfer_accept_status_filter:
|
|
||||||
description: |
|
|
||||||
Filter results to only show ``zone_transfer_accepts`` that have a ``status`` matching the filter
|
|
||||||
in: query
|
|
||||||
required: false
|
|
||||||
type: string
|
|
||||||
|
|
||||||
zone_transfer_request_status_filter:
|
|
||||||
description: |
|
|
||||||
Filter results to only show ``zone_transfer_requests`` that have a ``status`` matching the filter
|
|
||||||
in: query
|
|
||||||
required: false
|
|
||||||
type: string
|
|
||||||
|
|
||||||
zone_ttl_filter:
|
|
||||||
description: |
|
|
||||||
Filter results to only show zones that have a ttl matching the filter
|
|
||||||
in: query
|
|
||||||
required: false
|
|
||||||
type: integer
|
|
||||||
|
|
||||||
zone_type_filter:
|
|
||||||
description: |
|
|
||||||
Filter results to only show zones that have a type matching the filter
|
|
||||||
in: query
|
|
||||||
required: false
|
|
||||||
type: string
|
|
||||||
|
|
||||||
|
|
||||||
####################
|
|
||||||
# Body Variables #
|
|
||||||
####################
|
|
||||||
|
|
||||||
action:
|
|
||||||
description: |
|
|
||||||
current action in progress on the resource
|
|
||||||
in: body
|
|
||||||
required: true
|
|
||||||
type: enum
|
|
||||||
|
|
||||||
blacklist_description:
|
|
||||||
description: |
|
|
||||||
Description for this blacklist
|
|
||||||
in: body
|
|
||||||
required: false
|
|
||||||
type: string
|
|
||||||
|
|
||||||
blacklist_pattern:
|
|
||||||
description: |
|
|
||||||
Pattern for this blacklist
|
|
||||||
in: body
|
|
||||||
required: true
|
|
||||||
type: string
|
|
||||||
|
|
||||||
created_at:
|
|
||||||
description: |
|
|
||||||
Date / Time when resource was created
|
|
||||||
in: body
|
|
||||||
required: true
|
|
||||||
type: datestamp
|
|
||||||
|
|
||||||
description:
|
|
||||||
description: |
|
|
||||||
Description for the resource. Only shown in API / Horizon
|
|
||||||
in: body
|
|
||||||
required: true
|
|
||||||
type: string
|
|
||||||
|
|
||||||
floatingip_address:
|
|
||||||
description: |
|
|
||||||
The floatingip address for this PTR record.
|
|
||||||
in: body
|
|
||||||
required: true
|
|
||||||
type: string
|
|
||||||
|
|
||||||
fptr_description:
|
|
||||||
description: |
|
|
||||||
Description for this PTR record
|
|
||||||
in: body
|
|
||||||
required: true
|
|
||||||
type: string
|
|
||||||
|
|
||||||
fptr_id:
|
|
||||||
description: |
|
|
||||||
ID for PTR record in the format of <region>:<floatingip_id>
|
|
||||||
in: body
|
|
||||||
required: true
|
|
||||||
type: string
|
|
||||||
|
|
||||||
fptr_ttl:
|
|
||||||
description: |
|
|
||||||
Time to live for this PTR record
|
|
||||||
in: body
|
|
||||||
required: true
|
|
||||||
type: uuid
|
|
||||||
|
|
||||||
fptrd_name:
|
|
||||||
description: |
|
|
||||||
Domain name for this PTR record
|
|
||||||
in: body
|
|
||||||
required: true
|
|
||||||
type: string
|
|
||||||
|
|
||||||
id:
|
|
||||||
description: |
|
|
||||||
ID for the resource
|
|
||||||
in: body
|
|
||||||
required: true
|
|
||||||
type: uuid
|
|
||||||
|
|
||||||
links:
|
|
||||||
description: |
|
|
||||||
Links to the resource, and other related resources.
|
|
||||||
When a response has been broken into pages, we will include
|
|
||||||
a ``next`` link that should be followed to retrieve all results
|
|
||||||
in: body
|
|
||||||
required: true
|
|
||||||
type: object
|
|
||||||
|
|
||||||
max_page_limit:
|
|
||||||
description: |
|
|
||||||
The max amount of items allowed per page
|
|
||||||
in: body
|
|
||||||
required: true
|
|
||||||
type: integer
|
|
||||||
|
|
||||||
max_recordset_name_length:
|
|
||||||
description: |
|
|
||||||
The max length of a recordset name
|
|
||||||
in: body
|
|
||||||
required: true
|
|
||||||
type: integer
|
|
||||||
|
|
||||||
max_recordset_records:
|
|
||||||
description: |
|
|
||||||
The max amount of records contained in a recordset
|
|
||||||
in: body
|
|
||||||
required: true
|
|
||||||
type: integer
|
|
||||||
|
|
||||||
max_zone_name_length:
|
|
||||||
description: |
|
|
||||||
The max length of a zone name
|
|
||||||
in: body
|
|
||||||
required: true
|
|
||||||
type: integer
|
|
||||||
|
|
||||||
max_zone_records:
|
|
||||||
description: |
|
|
||||||
The max amount of records in a zone
|
|
||||||
in: body
|
|
||||||
required: true
|
|
||||||
type: integer
|
|
||||||
|
|
||||||
max_zone_recordsets:
|
|
||||||
description: |
|
|
||||||
The max amount of recordsets per zone
|
|
||||||
in: body
|
|
||||||
required: true
|
|
||||||
type: integer
|
|
||||||
|
|
||||||
max_zones:
|
|
||||||
description: |
|
|
||||||
The max amount of zones for this project
|
|
||||||
in: body
|
|
||||||
required: true
|
|
||||||
type: integer
|
|
||||||
|
|
||||||
metadata:
|
|
||||||
description: |
|
|
||||||
Returns the ``total_count`` of resources matching this filter
|
|
||||||
in: body
|
|
||||||
required: true
|
|
||||||
type: object
|
|
||||||
|
|
||||||
min_ttl:
|
|
||||||
description: |
|
|
||||||
The lowest ttl allowed on this system
|
|
||||||
in: body
|
|
||||||
required: true
|
|
||||||
type: integer
|
|
||||||
|
|
||||||
pool_attributes:
|
|
||||||
description: >
|
|
||||||
Key:Value pairs of information about this pool. This information can be used by the scheduler to place zones on the correct pools
|
|
||||||
in: body
|
|
||||||
required: true
|
|
||||||
type: object
|
|
||||||
|
|
||||||
pool_id:
|
|
||||||
description: |
|
|
||||||
ID for this pool
|
|
||||||
in: body
|
|
||||||
required: true
|
|
||||||
type: uuid
|
|
||||||
|
|
||||||
pool_name:
|
|
||||||
description: |
|
|
||||||
Name for this pool
|
|
||||||
in: body
|
|
||||||
required: true
|
|
||||||
type: string
|
|
||||||
|
|
||||||
pool_ns_records:
|
|
||||||
description: |
|
|
||||||
Name Servers for this pool. Any zones hosted by this pool should be delegated to these DNS servers
|
|
||||||
in: body
|
|
||||||
required: true
|
|
||||||
type: string
|
|
||||||
|
|
||||||
project_id:
|
|
||||||
description: |
|
|
||||||
ID for the project that owns the resource
|
|
||||||
in: body
|
|
||||||
required: true
|
|
||||||
type: uuid
|
|
||||||
|
|
||||||
recordset_description:
|
|
||||||
description: |
|
|
||||||
Description for this recordset
|
|
||||||
in: body
|
|
||||||
required: false
|
|
||||||
type: string
|
|
||||||
|
|
||||||
recordset_name:
|
|
||||||
description: |
|
|
||||||
DNS Name for the recordset
|
|
||||||
in: body
|
|
||||||
required: true
|
|
||||||
type: hostname
|
|
||||||
|
|
||||||
recordset_records:
|
|
||||||
description: |
|
|
||||||
A list of data for this recordset. Each item will be a separate record in Designate
|
|
||||||
These items should conform to the DNS spec for the record type - e.g. A records
|
|
||||||
must be IPv4 addresses, CNAME records must be a hostname.
|
|
||||||
in: body
|
|
||||||
required: true
|
|
||||||
type: string
|
|
||||||
|
|
||||||
recordset_ttl:
|
|
||||||
description: |
|
|
||||||
TTL (Time to Live) for the recordset.
|
|
||||||
in: body
|
|
||||||
required: false
|
|
||||||
type: integer
|
|
||||||
|
|
||||||
recordset_type:
|
|
||||||
description: |
|
|
||||||
They RRTYPE of the recordset.
|
|
||||||
in: body
|
|
||||||
required: true
|
|
||||||
type: string
|
|
||||||
|
|
||||||
recordset_zone_id:
|
|
||||||
description: |
|
|
||||||
ID for the zone that contains this recordset
|
|
||||||
in: body
|
|
||||||
required: true
|
|
||||||
type: uuid
|
|
||||||
|
|
||||||
recordset_zone_name:
|
|
||||||
description: |
|
|
||||||
The name of the zone that contains this recordset
|
|
||||||
in: body
|
|
||||||
required: true
|
|
||||||
type: string
|
|
||||||
|
|
||||||
resource_id:
|
|
||||||
description: |
|
|
||||||
resource id for this tsigkey which can be either zone or pool id
|
|
||||||
in: body
|
|
||||||
required: true
|
|
||||||
type: string
|
|
||||||
|
|
||||||
status:
|
|
||||||
description: |
|
|
||||||
status of the resource
|
|
||||||
in: body
|
|
||||||
required: true
|
|
||||||
type: enum
|
|
||||||
|
|
||||||
tld_description:
|
|
||||||
description: |
|
|
||||||
Description for this tld
|
|
||||||
in: body
|
|
||||||
required: false
|
|
||||||
type: string
|
|
||||||
|
|
||||||
tld_name:
|
|
||||||
description: |
|
|
||||||
Name for this tld
|
|
||||||
in: body
|
|
||||||
required: true
|
|
||||||
type: string
|
|
||||||
|
|
||||||
tsigkey_algorithm:
|
|
||||||
description: |
|
|
||||||
The encryption algorithm for this tsigkey
|
|
||||||
in: body
|
|
||||||
required: true
|
|
||||||
type: string
|
|
||||||
|
|
||||||
tsigkey_name:
|
|
||||||
description: |
|
|
||||||
Name for this tsigkey
|
|
||||||
in: body
|
|
||||||
required: true
|
|
||||||
type: string
|
|
||||||
|
|
||||||
tsigkey_scope:
|
|
||||||
description: |
|
|
||||||
scope for this tsigkey which can be either ZONE or POOL scope
|
|
||||||
in: body
|
|
||||||
required: true
|
|
||||||
type: string
|
|
||||||
|
|
||||||
tsigkey_secret:
|
|
||||||
description: |
|
|
||||||
The actual key to be used
|
|
||||||
in: body
|
|
||||||
required: true
|
|
||||||
type: string
|
|
||||||
|
|
||||||
updated_at:
|
|
||||||
description: |
|
|
||||||
Date / Time when resource last updated
|
|
||||||
in: body
|
|
||||||
required: false
|
|
||||||
type: datestamp
|
|
||||||
|
|
||||||
version:
|
|
||||||
description: |
|
|
||||||
Version of the resource
|
|
||||||
in: body
|
|
||||||
required: true
|
|
||||||
type: integer
|
|
||||||
|
|
||||||
zone_description:
|
|
||||||
description: |
|
|
||||||
Description for this zone
|
|
||||||
in: body
|
|
||||||
required: false
|
|
||||||
type: string
|
|
||||||
|
|
||||||
zone_email:
|
|
||||||
description: |
|
|
||||||
e-mail for the zone. Used in SOA records for the zone
|
|
||||||
in: body
|
|
||||||
required: true
|
|
||||||
type: string
|
|
||||||
|
|
||||||
zone_email_update:
|
|
||||||
description: |
|
|
||||||
e-mail for the zone. Used in SOA records for the zone
|
|
||||||
in: body
|
|
||||||
required: false
|
|
||||||
type: string
|
|
||||||
|
|
||||||
zone_export_id:
|
|
||||||
description: |
|
|
||||||
ID for this zone export
|
|
||||||
in: body
|
|
||||||
required: true
|
|
||||||
type: uuid
|
|
||||||
|
|
||||||
zone_export_location:
|
|
||||||
description: >
|
|
||||||
Where the exported zone is published to.
|
|
||||||
There are currently one placement option available - designate.
|
|
||||||
|
|
||||||
This will be shown by ``designate://<url>``.
|
|
||||||
|
|
||||||
As more drivers are added, this will expand to include swift - this will be
|
|
||||||
indicated by location being set to ``swift://<region>/<container>/<file>``
|
|
||||||
|
|
||||||
This is also allowed be a webserver if the operator implements a different
|
|
||||||
data store, and will be indicted by ``http://<url>``
|
|
||||||
|
|
||||||
When a zone export is complete, the location will be updated, and
|
|
||||||
the exported zone file will be available at the location specified.
|
|
||||||
|
|
||||||
in: body
|
|
||||||
required: false
|
|
||||||
type: string
|
|
||||||
|
|
||||||
zone_export_message:
|
|
||||||
description: |
|
|
||||||
Message about the current status of the export
|
|
||||||
in: body
|
|
||||||
required: false
|
|
||||||
type: uuid
|
|
||||||
|
|
||||||
zone_export_status:
|
|
||||||
description: |
|
|
||||||
Current status of the zone export
|
|
||||||
in: body
|
|
||||||
required: true
|
|
||||||
type: string
|
|
||||||
|
|
||||||
zone_export_zone_id:
|
|
||||||
description: |
|
|
||||||
ID for the zone that is being exported
|
|
||||||
in: body
|
|
||||||
required: false
|
|
||||||
type: uuid
|
|
||||||
|
|
||||||
zone_import_id:
|
|
||||||
description: |
|
|
||||||
ID for this zone import
|
|
||||||
in: body
|
|
||||||
required: true
|
|
||||||
type: uuid
|
|
||||||
|
|
||||||
zone_import_message:
|
|
||||||
description: |
|
|
||||||
Message about the current status of the import
|
|
||||||
in: body
|
|
||||||
required: false
|
|
||||||
type: uuid
|
|
||||||
|
|
||||||
zone_import_status:
|
|
||||||
description: |
|
|
||||||
Current status of the zone import
|
|
||||||
in: body
|
|
||||||
required: true
|
|
||||||
type: uuid
|
|
||||||
|
|
||||||
zone_import_zone_id:
|
|
||||||
description: |
|
|
||||||
ID for the zone that was created by this import
|
|
||||||
in: body
|
|
||||||
required: false
|
|
||||||
type: uuid
|
|
||||||
|
|
||||||
zone_masters:
|
|
||||||
description: |
|
|
||||||
Mandatory for secondary zones. The servers to slave from to get DNS information
|
|
||||||
in: body
|
|
||||||
required: false
|
|
||||||
type: enum
|
|
||||||
|
|
||||||
zone_name:
|
|
||||||
description: |
|
|
||||||
DNS Name for the zone
|
|
||||||
in: body
|
|
||||||
required: true
|
|
||||||
type: domainname
|
|
||||||
|
|
||||||
zone_nameserver_hostname:
|
|
||||||
description: |
|
|
||||||
The hostname of the nameserver that the zone should be delegated to
|
|
||||||
in: body
|
|
||||||
required: true
|
|
||||||
type: hostname
|
|
||||||
|
|
||||||
zone_nameserver_priority:
|
|
||||||
description: |
|
|
||||||
The priority of the nameserver. This is used to determine the order of the
|
|
||||||
the nameserver listings, and which server is used in the SOA record for the
|
|
||||||
zone.
|
|
||||||
in: body
|
|
||||||
required: true
|
|
||||||
type: integer
|
|
||||||
|
|
||||||
zone_pool_id:
|
|
||||||
description: |
|
|
||||||
ID for the pool hosting this zone
|
|
||||||
in: body
|
|
||||||
required: true
|
|
||||||
type: uuid
|
|
||||||
|
|
||||||
zone_serial:
|
|
||||||
description: |
|
|
||||||
current serial number for the zone
|
|
||||||
in: body
|
|
||||||
required: true
|
|
||||||
type: integer
|
|
||||||
|
|
||||||
zone_transfer_accept_id:
|
|
||||||
description: |
|
|
||||||
ID for this zone transfer accept
|
|
||||||
in: body
|
|
||||||
required: true
|
|
||||||
type: uuid
|
|
||||||
|
|
||||||
zone_transfer_accept_status:
|
|
||||||
description: |
|
|
||||||
Current status of the zone transfer request
|
|
||||||
in: body
|
|
||||||
required: true
|
|
||||||
type: string
|
|
||||||
|
|
||||||
zone_transfer_request_id:
|
|
||||||
description: |
|
|
||||||
ID for this zone transfer request
|
|
||||||
in: body
|
|
||||||
required: true
|
|
||||||
type: uuid
|
|
||||||
|
|
||||||
zone_transfer_request_key:
|
|
||||||
description: >
|
|
||||||
Key that is used as part of the zone transfer accept process. This is only
|
|
||||||
shown to the creator, and must be communicated out of band.
|
|
||||||
in: body
|
|
||||||
required: true
|
|
||||||
type: string
|
|
||||||
|
|
||||||
zone_transfer_request_status:
|
|
||||||
description: |
|
|
||||||
Current status of the zone transfer request
|
|
||||||
in: body
|
|
||||||
required: true
|
|
||||||
type: string
|
|
||||||
|
|
||||||
zone_transfer_request_target_project_id:
|
|
||||||
description: >
|
|
||||||
A project ID that the request will be limited to.
|
|
||||||
No other project will be allowed to accept this request.
|
|
||||||
in: body
|
|
||||||
required: false
|
|
||||||
type: string
|
|
||||||
|
|
||||||
zone_transfer_request_zone_id:
|
|
||||||
description: |
|
|
||||||
ID for the zone that is being exported
|
|
||||||
in: body
|
|
||||||
required: true
|
|
||||||
type: uuid
|
|
||||||
|
|
||||||
zone_transfer_request_zone_name:
|
|
||||||
description: |
|
|
||||||
the name of the zone that is being exported
|
|
||||||
in: body
|
|
||||||
required: true
|
|
||||||
type: string
|
|
||||||
|
|
||||||
zone_transfered_at:
|
|
||||||
description: |
|
|
||||||
For secondary zones. The last time an update was retrieved from the master servers
|
|
||||||
in: body
|
|
||||||
required: true
|
|
||||||
type: enum
|
|
||||||
|
|
||||||
zone_ttl:
|
|
||||||
description: |
|
|
||||||
TTL (Time to Live) for the zone.
|
|
||||||
in: body
|
|
||||||
required: false
|
|
||||||
type: integer
|
|
||||||
|
|
||||||
zone_type:
|
|
||||||
description: |
|
|
||||||
Type of zone. PRIMARY is controlled by Designate, SECONDARY zones are slaved from another DNS Server. Defaults to PRIMARY
|
|
||||||
in: body
|
|
||||||
required: false
|
|
||||||
type: enum
|
|
|
@ -1,10 +0,0 @@
|
||||||
{
|
|
||||||
"description": "This is a blacklisted domain.",
|
|
||||||
"links": {
|
|
||||||
"self": "http://127.0.0.1:9001/v2/blacklists/af91edb5-ede8-453f-af13-feabdd088f9c"
|
|
||||||
},
|
|
||||||
"pattern": "^([A-Za-z0-9_\\-]+\\.)*example\\.com\\.$",
|
|
||||||
"created_at": "2016-05-20 06:15:42",
|
|
||||||
"updated_at": null,
|
|
||||||
"id": "af91edb5-ede8-453f-af13-feabdd088f9c"
|
|
||||||
}
|
|
|
@ -1,4 +0,0 @@
|
||||||
{
|
|
||||||
"pattern" : "^([A-Za-z0-9_\\-]+\\.)*example\\.com\\.$",
|
|
||||||
"description" : "This is a blacklisted domain."
|
|
||||||
}
|
|
|
@ -1,27 +0,0 @@
|
||||||
{
|
|
||||||
"blacklists": [
|
|
||||||
{
|
|
||||||
"description": "This is a blacklisted domain.",
|
|
||||||
"links": {
|
|
||||||
"self": "http://127.0.0.1:9001/v2/blacklists/af91edb5-ede8-453f-af13-feabdd088f9c"
|
|
||||||
},
|
|
||||||
"pattern": "^([A-Za-z0-9_\\-]+\\.)*example\\.com\\.$",
|
|
||||||
"created_at": "2016-05-20 06:15:42",
|
|
||||||
"updated_at": null,
|
|
||||||
"id": "af91edb5-ede8-453f-af13-feabdd088f9c"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"description": "Example blacklisted domain.",
|
|
||||||
"links": {
|
|
||||||
"self": "http://127.0.0.1:9001/v2/blacklists/f26e22f8-619f-4738-9077-0586e7cb76bd"
|
|
||||||
},
|
|
||||||
"pattern": "^examples\\.com\\.$",
|
|
||||||
"created_at": "2016-05-20 06:22:12",
|
|
||||||
"updated_at": null,
|
|
||||||
"id": "f26e22f8-619f-4738-9077-0586e7cb76bd"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"links": {
|
|
||||||
"self": "http://127.0.0.1:9001/v2/blacklists"
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,4 +0,0 @@
|
||||||
{
|
|
||||||
"pattern" : "^examples\\.com\\.$",
|
|
||||||
"description" : "Updated the description"
|
|
||||||
}
|
|
|
@ -1,10 +0,0 @@
|
||||||
{
|
|
||||||
"description": "Updated the description",
|
|
||||||
"links": {
|
|
||||||
"self": "http://127.0.0.1:9001/v2/blacklists/f26e22f8-619f-4738-9077-0586e7cb76bd"
|
|
||||||
},
|
|
||||||
"pattern": "^examples\\.com\\.$",
|
|
||||||
"created_at": "2016-05-20 06:22:12",
|
|
||||||
"updated_at": "2016-05-20 06:41:34",
|
|
||||||
"id": "f26e22f8-619f-4738-9077-0586e7cb76bd"
|
|
||||||
}
|
|
|
@ -1,10 +0,0 @@
|
||||||
{
|
|
||||||
"max_page_limit": 1000,
|
|
||||||
"max_recordset_name_length": 255,
|
|
||||||
"max_recordset_records": 20,
|
|
||||||
"max_zone_name_length": 255,
|
|
||||||
"max_zone_records": 500,
|
|
||||||
"max_zone_recordsets": 500,
|
|
||||||
"max_zones": 10,
|
|
||||||
"min_ttl": null
|
|
||||||
}
|
|
|
@ -1,46 +0,0 @@
|
||||||
{
|
|
||||||
"metadata": {
|
|
||||||
"total_count": 2
|
|
||||||
},
|
|
||||||
"links": {
|
|
||||||
"self": "http://127.0.0.1:9001/v2/pools"
|
|
||||||
},
|
|
||||||
"pools": [
|
|
||||||
{
|
|
||||||
"description": null,
|
|
||||||
"id": "794ccc2c-d751-44fe-b57f-8894c9f5c842",
|
|
||||||
"project_id": null,
|
|
||||||
"created_at": "2015-02-18T22:18:58.000000",
|
|
||||||
"attributes": null,
|
|
||||||
"ns_records": [
|
|
||||||
{
|
|
||||||
"hostname": "ns1.example.org.",
|
|
||||||
"priority": 1
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"links": {
|
|
||||||
"self": "http://127.0.0.1:9001/v2/pools/794ccc2c-d751-44fe-b57f-8894c9f5c842"
|
|
||||||
},
|
|
||||||
"name": "default",
|
|
||||||
"updated_at": "2015-02-19T15:59:44.000000"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"description": null,
|
|
||||||
"id": "d1716333-8c16-490f-85ee-29af36907605",
|
|
||||||
"project_id": "noauth-project",
|
|
||||||
"created_at": "2015-02-23T21:56:33.000000",
|
|
||||||
"attributes": null,
|
|
||||||
"ns_records": [
|
|
||||||
{
|
|
||||||
"hostname": "ns2.example.org.",
|
|
||||||
"priority": 1
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"links": {
|
|
||||||
"self": "http://127.0.0.1:9001/v2/pools/d1716333-8c16-490f-85ee-29af36907605"
|
|
||||||
},
|
|
||||||
"name": "example_pool",
|
|
||||||
"updated_at": null
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
|
@ -1,18 +0,0 @@
|
||||||
{
|
|
||||||
"description": null,
|
|
||||||
"id": "d1716333-8c16-490f-85ee-29af36907605",
|
|
||||||
"project_id": "noauth-project",
|
|
||||||
"created_at": "2015-02-23T21:56:33.000000",
|
|
||||||
"attributes": null,
|
|
||||||
"ns_records": [
|
|
||||||
{
|
|
||||||
"hostname": "ns2.example.org.",
|
|
||||||
"priority": 1
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"links": {
|
|
||||||
"self": "http://127.0.0.1:9001/v2/pools/d1716333-8c16-490f-85ee-29af36907605"
|
|
||||||
},
|
|
||||||
"name": "example_pool",
|
|
||||||
"updated_at": null
|
|
||||||
}
|
|
|
@ -1,7 +0,0 @@
|
||||||
{
|
|
||||||
"api_export_size": 1000,
|
|
||||||
"recordset_records": 20,
|
|
||||||
"zone_records": 500,
|
|
||||||
"zone_recordsets": 500,
|
|
||||||
"zones": 100
|
|
||||||
}
|
|
|
@ -1,3 +0,0 @@
|
||||||
{
|
|
||||||
"zones": 500
|
|
||||||
}
|
|
|
@ -1,7 +0,0 @@
|
||||||
{
|
|
||||||
"api_export_size": 1000,
|
|
||||||
"recordset_records": 20,
|
|
||||||
"zone_records": 500,
|
|
||||||
"zone_recordsets": 500,
|
|
||||||
"zones": 500
|
|
||||||
}
|
|
|
@ -1,12 +0,0 @@
|
||||||
{
|
|
||||||
"name" : "mail.example.org.",
|
|
||||||
"description" : "An MX recordset.",
|
|
||||||
"type" : "MX",
|
|
||||||
"ttl" : 3600,
|
|
||||||
"records" : [
|
|
||||||
"10 mail1.example.org.",
|
|
||||||
"20 mail2.example.org.",
|
|
||||||
"30 mail3.example.org.",
|
|
||||||
"40 mail4.example.org."
|
|
||||||
]
|
|
||||||
}
|
|
|
@ -1,23 +0,0 @@
|
||||||
{
|
|
||||||
"status": "PENDING",
|
|
||||||
"description": "An MX recordset.",
|
|
||||||
"links": {
|
|
||||||
"self": "http://127.0.0.1:9001/v2/zones/f6b472ed-1be8-47e8-87a7-687169cacca8/recordsets/c3c1f506-adcf-4751-ae5b-1c5ff00d2e1a"
|
|
||||||
},
|
|
||||||
"created_at": "2016-06-21 06:34:36",
|
|
||||||
"updated_at": null,
|
|
||||||
"records": [
|
|
||||||
"10 mail1.example.org.",
|
|
||||||
"30 mail3.example.org.",
|
|
||||||
"20 mail2.example.org.",
|
|
||||||
"40 mail4.example.org."
|
|
||||||
],
|
|
||||||
"zone_id": "f6b472ed-1be8-47e8-87a7-687169cacca8",
|
|
||||||
"version": 1,
|
|
||||||
"ttl": 3600,
|
|
||||||
"action": "CREATE",
|
|
||||||
"zone_name": "example.org.",
|
|
||||||
"type": "MX",
|
|
||||||
"id": "c3c1f506-adcf-4751-ae5b-1c5ff00d2e1a",
|
|
||||||
"name": "mail.example.org."
|
|
||||||
}
|
|
|
@ -1,9 +0,0 @@
|
||||||
{
|
|
||||||
"name" : "example.org.",
|
|
||||||
"description" : "This is an example record set.",
|
|
||||||
"type" : "A",
|
|
||||||
"ttl" : 3600,
|
|
||||||
"records" : [
|
|
||||||
"10.1.0.2"
|
|
||||||
]
|
|
||||||
}
|
|
|
@ -1,21 +0,0 @@
|
||||||
{
|
|
||||||
"description": "This is an example record set.",
|
|
||||||
"links": {
|
|
||||||
"self": "https://127.0.0.1:9001/v2/zones/2150b1bf-dee2-4221-9d85-11f7886fb15f/recordsets/f7b10e9b-0cae-4a91-b162-562bc6096648"
|
|
||||||
},
|
|
||||||
"updated_at": null,
|
|
||||||
"records": [
|
|
||||||
"10.1.0.2"
|
|
||||||
],
|
|
||||||
"ttl": 3600,
|
|
||||||
"id": "f7b10e9b-0cae-4a91-b162-562bc6096648",
|
|
||||||
"name": "example.org.",
|
|
||||||
"project_id": "4335d1f0-f793-11e2-b778-0800200c9a66",
|
|
||||||
"zone_id": "2150b1bf-dee2-4221-9d85-11f7886fb15f",
|
|
||||||
"zone_name": "example.com.",
|
|
||||||
"created_at": "2014-10-24T19:59:44.000000",
|
|
||||||
"version": 1,
|
|
||||||
"type": "A",
|
|
||||||
"status": "PENDING",
|
|
||||||
"action": "CREATE"
|
|
||||||
}
|
|
|
@ -1,10 +0,0 @@
|
||||||
{
|
|
||||||
"name" : "foospf.example.org.",
|
|
||||||
"description" : "An SPF recordset.",
|
|
||||||
"type" : "SPF",
|
|
||||||
"ttl" : 3600,
|
|
||||||
"records" : [
|
|
||||||
"v=spf1 +all"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
|
|
|
@ -1,20 +0,0 @@
|
||||||
{
|
|
||||||
"status": "PENDING",
|
|
||||||
"description": "An SPF recordset.",
|
|
||||||
"links": {
|
|
||||||
"self": "http://127.0.0.1:9001/v2/zones/f6b472ed-1be8-47e8-87a7-687169cacca8/recordsets/c05a6740-2602-4439-bb70-187dd6547c13"
|
|
||||||
},
|
|
||||||
"created_at": "2016-06-21 12:31:44",
|
|
||||||
"updated_at": null,
|
|
||||||
"records": [
|
|
||||||
"v=spf1 +all"
|
|
||||||
],
|
|
||||||
"zone_id": "f6b472ed-1be8-47e8-87a7-687169cacca8",
|
|
||||||
"version": 1,
|
|
||||||
"ttl": 3600,
|
|
||||||
"action": "CREATE",
|
|
||||||
"zone_name": "example.org.",
|
|
||||||
"type": "SPF",
|
|
||||||
"id": "c05a6740-2602-4439-bb70-187dd6547c13",
|
|
||||||
"name": "foospf.example.org."
|
|
||||||
}
|
|
|
@ -1,9 +0,0 @@
|
||||||
{
|
|
||||||
"name" : "_http._tcp.example.org.",
|
|
||||||
"description" : "An SRV recordset.",
|
|
||||||
"type" : "SRV",
|
|
||||||
"ttl" : 3600,
|
|
||||||
"records" : [
|
|
||||||
"10 0 5060 www.example.org."
|
|
||||||
]
|
|
||||||
}
|
|
|
@ -1,20 +0,0 @@
|
||||||
{
|
|
||||||
"status": "PENDING",
|
|
||||||
"description": "An SRV recordset.",
|
|
||||||
"links": {
|
|
||||||
"self": "http://127.0.0.1:9001/v2/zones/f6b472ed-1be8-47e8-87a7-687169cacca8/recordsets/cc3299b3-c3cd-47e5-9876-8c1d4ad1b88e"
|
|
||||||
},
|
|
||||||
"created_at": "2016-06-21 12:44:38",
|
|
||||||
"updated_at": null,
|
|
||||||
"records": [
|
|
||||||
"10 0 5060 www.example.org."
|
|
||||||
],
|
|
||||||
"zone_id": "f6b472ed-1be8-47e8-87a7-687169cacca8",
|
|
||||||
"version": 1,
|
|
||||||
"ttl": 3600,
|
|
||||||
"action": "CREATE",
|
|
||||||
"zone_name": "example.org.",
|
|
||||||
"type": "SRV",
|
|
||||||
"id": "cc3299b3-c3cd-47e5-9876-8c1d4ad1b88e",
|
|
||||||
"name": "_http._tcp.example.org."
|
|
||||||
}
|
|
|
@ -1,9 +0,0 @@
|
||||||
{
|
|
||||||
"name" : "foo.example.org.",
|
|
||||||
"description" : "An SSHFP recordset.",
|
|
||||||
"type" : "SSHFP",
|
|
||||||
"ttl" : 3600,
|
|
||||||
"records" : [
|
|
||||||
"1 2 6467a09c59607b01fef22ef6918c44a2eaaa14a5e055cfe91bf614b5796d2df0"
|
|
||||||
]
|
|
||||||
}
|
|
|
@ -1,20 +0,0 @@
|
||||||
{
|
|
||||||
"status": "ACTIVE",
|
|
||||||
"description": null,
|
|
||||||
"links": {
|
|
||||||
"self": "http://127.0.0.1:9001/v2/zones/f6b472ed-1be8-47e8-87a7-687169cacca8/recordsets/5fb9d67c-86ac-4ae9-80d5-4c23f7a16b29"
|
|
||||||
},
|
|
||||||
"created_at": "2016-06-21 12:15:35",
|
|
||||||
"updated_at": null,
|
|
||||||
"records": [
|
|
||||||
"2 1 75e080122854693164599205f49d7475ed17d09b"
|
|
||||||
],
|
|
||||||
"zone_id": "f6b472ed-1be8-47e8-87a7-687169cacca8",
|
|
||||||
"version": 1,
|
|
||||||
"ttl": 3600,
|
|
||||||
"action": "NONE",
|
|
||||||
"zone_name": "example.org.",
|
|
||||||
"type": "SSHFP",
|
|
||||||
"id": "5fb9d67c-86ac-4ae9-80d5-4c23f7a16b29",
|
|
||||||
"name": "foo.example.org."
|
|
||||||
}
|
|
|
@ -1,22 +0,0 @@
|
||||||
{
|
|
||||||
"description": "Updated description",
|
|
||||||
"links": {
|
|
||||||
"self": "https://127.0.0.1:9001/v2/zones/2150b1bf-dee2-4221-9d85-11f7886fb15f/recordsets/f7b10e9b-0cae-4a91-b162-562bc6096648"
|
|
||||||
},
|
|
||||||
"updated_at": null,
|
|
||||||
"records": [
|
|
||||||
"10.1.0.2",
|
|
||||||
"10.1.0.3",
|
|
||||||
],
|
|
||||||
"ttl": null,
|
|
||||||
"id": "f7b10e9b-0cae-4a91-b162-562bc6096648",
|
|
||||||
"name": "example.org.",
|
|
||||||
"project_id": "4335d1f0-f793-11e2-b778-0800200c9a66",
|
|
||||||
"zone_id": "2150b1bf-dee2-4221-9d85-11f7886fb15f",
|
|
||||||
"zone_name": "example.com.",
|
|
||||||
"created_at": "2014-10-24T19:59:44.000000",
|
|
||||||
"version": 2,
|
|
||||||
"type": "A",
|
|
||||||
"status": "PENDING",
|
|
||||||
"action": "DELETE"
|
|
||||||
}
|
|
|
@ -1,32 +0,0 @@
|
||||||
{
|
|
||||||
"recordsets": [
|
|
||||||
{
|
|
||||||
"description": "This is an example record set.",
|
|
||||||
"links": {
|
|
||||||
"self": "https://127.0.0.1:9001/v2/zones/2150b1bf-dee2-4221-9d85-11f7886fb15f/recordsets/f7b10e9b-0cae-4a91-b162-562bc6096648"
|
|
||||||
},
|
|
||||||
"updated_at": null,
|
|
||||||
"records": [
|
|
||||||
"10.1.0.2"
|
|
||||||
],
|
|
||||||
"ttl": 3600,
|
|
||||||
"id": "f7b10e9b-0cae-4a91-b162-562bc6096648",
|
|
||||||
"name": "example.org.",
|
|
||||||
"project_id": "4335d1f0-f793-11e2-b778-0800200c9a66",
|
|
||||||
"zone_id": "2150b1bf-dee2-4221-9d85-11f7886fb15f",
|
|
||||||
"zone_name": "example.com.",
|
|
||||||
"created_at": "2014-10-24T19:59:44.000000",
|
|
||||||
"version": 1,
|
|
||||||
"type": "A",
|
|
||||||
"status": "PENDING",
|
|
||||||
"action": "CREATE"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"links": {
|
|
||||||
"self": "http://127.0.0.1:9001/v2/recordsets?limit=1",
|
|
||||||
"next": "http://127.0.0.1:9001/v2/recordsets?limit=1&marker=45fd892d-7a67-4f65-9df0-87273f228d6c"
|
|
||||||
},
|
|
||||||
"metadata": {
|
|
||||||
"total_count": 2
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,32 +0,0 @@
|
||||||
{
|
|
||||||
"recordsets": [
|
|
||||||
{
|
|
||||||
"description": "This is an example record set.",
|
|
||||||
"links": {
|
|
||||||
"self": "https://127.0.0.1:9001/v2/zones/2150b1bf-dee2-4221-9d85-11f7886fb15f/recordsets/f7b10e9b-0cae-4a91-b162-562bc6096648"
|
|
||||||
},
|
|
||||||
"updated_at": null,
|
|
||||||
"records": [
|
|
||||||
"10.1.0.2"
|
|
||||||
],
|
|
||||||
"ttl": 3600,
|
|
||||||
"id": "f7b10e9b-0cae-4a91-b162-562bc6096648",
|
|
||||||
"name": "example.org.",
|
|
||||||
"project_id": "4335d1f0-f793-11e2-b778-0800200c9a66",
|
|
||||||
"zone_id": "2150b1bf-dee2-4221-9d85-11f7886fb15f",
|
|
||||||
"zone_name": "example.com.",
|
|
||||||
"created_at": "2014-10-24T19:59:44.000000",
|
|
||||||
"version": 1,
|
|
||||||
"type": "A",
|
|
||||||
"status": "PENDING",
|
|
||||||
"action": "CREATE"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"links": {
|
|
||||||
"self": "http://127.0.0.1:9001/v2/zones/2150b1bf-dee2-4221-9d85-11f7886fb15f/recordsets?limit=1",
|
|
||||||
"next": "http://127.0.0.1:9001/v2/zones/2150b1bf-dee2-4221-9d85-11f7886fb15f/recordsets?limit=1&marker=45fd892d-7a67-4f65-9df0-87273f228d6c"
|
|
||||||
},
|
|
||||||
"metadata": {
|
|
||||||
"total_count": 2
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,21 +0,0 @@
|
||||||
{
|
|
||||||
"description": "This is an example record set.",
|
|
||||||
"links": {
|
|
||||||
"self": "https://127.0.0.1:9001/v2/zones/2150b1bf-dee2-4221-9d85-11f7886fb15f/recordsets/f7b10e9b-0cae-4a91-b162-562bc6096648"
|
|
||||||
},
|
|
||||||
"updated_at": null,
|
|
||||||
"records": [
|
|
||||||
"10.1.0.2"
|
|
||||||
],
|
|
||||||
"ttl": 3600,
|
|
||||||
"id": "f7b10e9b-0cae-4a91-b162-562bc6096648",
|
|
||||||
"name": "example.org.",
|
|
||||||
"project_id": "4335d1f0-f793-11e2-b778-0800200c9a66",
|
|
||||||
"zone_id": "2150b1bf-dee2-4221-9d85-11f7886fb15f",
|
|
||||||
"zone_name": "example.com.",
|
|
||||||
"created_at": "2014-10-24T19:59:44.000000",
|
|
||||||
"version": 1,
|
|
||||||
"type": "A",
|
|
||||||
"status": "ACTIVE",
|
|
||||||
"action": "NONE"
|
|
||||||
}
|
|
|
@ -1,8 +0,0 @@
|
||||||
{
|
|
||||||
"description" : "Updated description",
|
|
||||||
"ttl" : null,
|
|
||||||
"records" : [
|
|
||||||
"10.1.0.2",
|
|
||||||
"10.1.0.3"
|
|
||||||
]
|
|
||||||
}
|
|
|
@ -1,22 +0,0 @@
|
||||||
{
|
|
||||||
"description": "Updated description",
|
|
||||||
"links": {
|
|
||||||
"self": "https://127.0.0.1:9001/v2/zones/2150b1bf-dee2-4221-9d85-11f7886fb15f/recordsets/f7b10e9b-0cae-4a91-b162-562bc6096648"
|
|
||||||
},
|
|
||||||
"updated_at": null,
|
|
||||||
"records": [
|
|
||||||
"10.1.0.2",
|
|
||||||
"10.1.0.3"
|
|
||||||
],
|
|
||||||
"ttl": null,
|
|
||||||
"id": "f7b10e9b-0cae-4a91-b162-562bc6096648",
|
|
||||||
"name": "example.org.",
|
|
||||||
"project_id": "4335d1f0-f793-11e2-b778-0800200c9a66",
|
|
||||||
"zone_id": "2150b1bf-dee2-4221-9d85-11f7886fb15f",
|
|
||||||
"zone_name": "example.com.",
|
|
||||||
"created_at": "2014-10-24T19:59:44.000000",
|
|
||||||
"version": 2,
|
|
||||||
"type": "A",
|
|
||||||
"status": "PENDING",
|
|
||||||
"action": "UPDATE"
|
|
||||||
}
|
|
|
@ -1,31 +0,0 @@
|
||||||
{
|
|
||||||
"links": {
|
|
||||||
"self": "http://127.0.0.1:9001/v2/reverse/floatingips"
|
|
||||||
},
|
|
||||||
"floatingips": [
|
|
||||||
{
|
|
||||||
"status": "ACTIVE",
|
|
||||||
"ptrdname": "smtp.example.com.",
|
|
||||||
"description": null,
|
|
||||||
"links": {
|
|
||||||
"self": "http://127.0.0.1:9001/v2/reverse/floatingips/RegionOne:c5742ac0-d0f3-4304-a039-9423f727eb96"
|
|
||||||
},
|
|
||||||
"ttl": 600,
|
|
||||||
"address": "172.24.4.10",
|
|
||||||
"action": "NONE",
|
|
||||||
"id": "RegionOne:c5742ac0-d0f3-4304-a039-9423f727eb96"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"status": "ACTIVE",
|
|
||||||
"ptrdname": "tftp.example.com.",
|
|
||||||
"description": null,
|
|
||||||
"links": {
|
|
||||||
"self": "http://127.0.0.1:9001/v2/reverse/floatingips/RegionOne:9860717d-3da6-43df-a0ec-fa8b0e71ea86"
|
|
||||||
},
|
|
||||||
"ttl": 600,
|
|
||||||
"address": "172.24.4.6",
|
|
||||||
"action": "NONE",
|
|
||||||
"id": "RegionOne:9860717d-3da6-43df-a0ec-fa8b0e71ea86"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
|
@ -1,13 +0,0 @@
|
||||||
{
|
|
||||||
"status": "PENDING",
|
|
||||||
"ptrdname": "smtp.example.com.",
|
|
||||||
"description": "This is a floating ip for 127.0.0.1",
|
|
||||||
"links": {
|
|
||||||
"self": "http://127.0.0.1:9001/v2/reverse/floatingips/RegionOne:c5742ac0-d0f3-4304-a039-9423f727eb96"
|
|
||||||
},
|
|
||||||
"ttl": 600,
|
|
||||||
"address": "172.24.4.10",
|
|
||||||
"action": "CREATE",
|
|
||||||
"id": "RegionOne:c5742ac0-d0f3-4304-a039-9423f727eb96"
|
|
||||||
}
|
|
||||||
|
|
|
@ -1,5 +0,0 @@
|
||||||
{
|
|
||||||
"ptrdname" : "smtp.example.com.",
|
|
||||||
"description" : "This is a floating ip for 10.0.0.8",
|
|
||||||
"ttl": 600
|
|
||||||
}
|
|
|
@ -1,3 +0,0 @@
|
||||||
{
|
|
||||||
"ptrdname": null
|
|
||||||
}
|
|
|
@ -1,20 +0,0 @@
|
||||||
{
|
|
||||||
"service_statuses": [
|
|
||||||
{
|
|
||||||
"links": {
|
|
||||||
"self": "http://127.0.0.1:9001/v2/service_status/af91edb5-ede8-453f-af13-feabdd088f9c"
|
|
||||||
},
|
|
||||||
"hostname": "dns-2.example.com.",
|
|
||||||
"status": "UP",
|
|
||||||
"service_name": "api",
|
|
||||||
"stats": null,
|
|
||||||
"capabilities": null,
|
|
||||||
"created_at": "2016-05-20 06:15:42",
|
|
||||||
"heartbeated_at": "2016-07-20 12:14:41",
|
|
||||||
"id": "af91edb5-ede8-453f-af13-feabdd088f9c"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"links": {
|
|
||||||
"self": "http://127.0.0.1:9001/v2/service_status"
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,4 +0,0 @@
|
||||||
{
|
|
||||||
"name" : "com",
|
|
||||||
"description" : "tld description"
|
|
||||||
}
|
|
|
@ -1,26 +0,0 @@
|
||||||
{
|
|
||||||
"tlds": [
|
|
||||||
{
|
|
||||||
"name": "edu",
|
|
||||||
"links": {
|
|
||||||
"self": "http://127.0.0.1:9001/v2/tlds/a7bba387-712b-4b42-9368-4508642c6113"
|
|
||||||
},
|
|
||||||
"created_at": "2016-05-10 05:21:40",
|
|
||||||
"updated_at": null,
|
|
||||||
"id": "a7bba387-712b-4b42-9368-4508642c6113",
|
|
||||||
"description": "demo TLD"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "com",
|
|
||||||
"links": {
|
|
||||||
"self": "http://127.0.0.1:9001/v2/tlds/cfee7486-7ce4-4851-9c38-7b0fe3d42ee9"
|
|
||||||
},
|
|
||||||
"created_at": "2016-05-18 05:07:58",
|
|
||||||
"updated_at": null,
|
|
||||||
"id": "cfee7486-7ce4-4851-9c38-7b0fe3d42ee9",
|
|
||||||
"description": "tld description"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"links": {"self": "http://127.0.0.1:9001/v2/tlds"
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,10 +0,0 @@
|
||||||
{
|
|
||||||
"name": "com",
|
|
||||||
"links": {
|
|
||||||
"self": "http://127.0.0.1:9001/v2/tlds/cfee7486-7ce4-4851-9c38-7b0fe3d42ee9"
|
|
||||||
},
|
|
||||||
"created_at": "2016-05-18 05:07:58",
|
|
||||||
"updated_at": null,
|
|
||||||
"id": "cfee7486-7ce4-4851-9c38-7b0fe3d42ee9",
|
|
||||||
"description": "tld description"
|
|
||||||
}
|
|
|
@ -1,4 +0,0 @@
|
||||||
{
|
|
||||||
"name" : "org",
|
|
||||||
"description" : "Updated the name from com to org"
|
|
||||||
}
|
|
|
@ -1,10 +0,0 @@
|
||||||
{
|
|
||||||
"name": "org",
|
|
||||||
"links": {
|
|
||||||
"self": "http://127.0.0.1:9001/v2/tlds/cfee7486-7ce4-4851-9c38-7b0fe3d42ee9"
|
|
||||||
},
|
|
||||||
"created_at": "2016-05-18 05:07:58",
|
|
||||||
"updated_at": "2016-05-18 05:45:24",
|
|
||||||
"id": "cfee7486-7ce4-4851-9c38-7b0fe3d42ee9",
|
|
||||||
"description": "Updated the name from com to org"
|
|
||||||
}
|
|
|
@ -1,7 +0,0 @@
|
||||||
{
|
|
||||||
"name": "Example key",
|
|
||||||
"algorithm": "hmac-sha256",
|
|
||||||
"secret": "SomeSecretKey",
|
|
||||||
"scope": "POOL",
|
|
||||||
"resource_id": "d96851d0-765c-4ee9-bbdf-153345270bd3"
|
|
||||||
}
|
|
|
@ -1,45 +0,0 @@
|
||||||
{
|
|
||||||
"tsigkeys": [
|
|
||||||
{
|
|
||||||
"links": {
|
|
||||||
"self": "http://127.0.0.1:9001/v2/tsigkeys/f94d03ca-bd55-4321-8e93-8d363737ab5c"
|
|
||||||
},
|
|
||||||
"name": "Example key",
|
|
||||||
"algorithm": "hmac-sha256",
|
|
||||||
"resource_id": "5866274f-ee8d-42ee-94f9-29000f040949",
|
|
||||||
"created_at": "2016-04-19 18:52:54",
|
|
||||||
"updated_at": null,
|
|
||||||
"secret": "some secret key",
|
|
||||||
"scope": "POOL",
|
|
||||||
"id": "f94d03ca-bd55-4321-8e93-8d363737ab5c"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"links": {
|
|
||||||
"self": "http://127.0.0.1:9001/v2/tsigkeys/6bba6f00-dc33-4665-bb37-15f6188bb305"
|
|
||||||
},
|
|
||||||
"name": "Example key2",
|
|
||||||
"algorithm": "hmac-sha256",
|
|
||||||
"resource_id": "8a5ba22a-347e-4e92-9747-d2c3e67fbb45",
|
|
||||||
"created_at": "2016-05-19 02:17:54",
|
|
||||||
"updated_at": null,
|
|
||||||
"secret": "SomeSecretKey",
|
|
||||||
"scope": "POOL",
|
|
||||||
"id": "6bba6f00-dc33-4665-bb37-15f6188bb305"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"links": {
|
|
||||||
"self": "http://127.0.0.1:9001/v2/tsigkeys/c429b860-9f68-4e5f-a2ff-65760a64ceaa"
|
|
||||||
},
|
|
||||||
"name": "Example key3",
|
|
||||||
"algorithm": "hmac-sha256",
|
|
||||||
"resource_id": "d96851d0-765c-4ee9-bbdf-153345270bd3",
|
|
||||||
"created_at": "2016-05-19 05:52:45",
|
|
||||||
"updated_at": null,
|
|
||||||
"secret": "SomeSecretKey", "scope": "POOL",
|
|
||||||
"id": "c429b860-9f68-4e5f-a2ff-65760a64ceaa"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"links": {
|
|
||||||
"self": "http://127.0.0.1:9001/v2/tsigkeys"
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,13 +0,0 @@
|
||||||
{
|
|
||||||
"links": {
|
|
||||||
"self": "http://127.0.0.1:9001/v2/tsigkeys/c429b860-9f68-4e5f-a2ff-65760a64ceaa"
|
|
||||||
},
|
|
||||||
"name": "Example key",
|
|
||||||
"algorithm": "hmac-sha256",
|
|
||||||
"resource_id": "d96851d0-765c-4ee9-bbdf-153345270bd3",
|
|
||||||
"created_at": "2016-05-19 05:52:45",
|
|
||||||
"updated_at": null,
|
|
||||||
"secret": "SomeSecretKey",
|
|
||||||
"scope": "POOL",
|
|
||||||
"id": "c429b860-9f68-4e5f-a2ff-65760a64ceaa"
|
|
||||||
}
|
|
|
@ -1,4 +0,0 @@
|
||||||
{
|
|
||||||
"name": "example_tsigkey",
|
|
||||||
"scope": "ZONE"
|
|
||||||
}
|
|
|
@ -1,13 +0,0 @@
|
||||||
{
|
|
||||||
"links": {
|
|
||||||
"self": "http://127.0.0.1:9001/v2/tsigkeys/c429b860-9f68-4e5f-a2ff-65760a64ceaa"
|
|
||||||
},
|
|
||||||
"name": "example_tsigkey",
|
|
||||||
"algorithm": "hmac-sha256",
|
|
||||||
"resource_id": "d96851d0-765c-4ee9-bbdf-153345270bd3",
|
|
||||||
"created_at": "2016-05-19 05:52:45",
|
|
||||||
"updated_at": "2016-05-19 06:29:14",
|
|
||||||
"secret": "SomeSecretKey",
|
|
||||||
"scope": "ZONE",
|
|
||||||
"id": "c429b860-9f68-4e5f-a2ff-65760a64ceaa"
|
|
||||||
}
|
|
|
@ -1,26 +0,0 @@
|
||||||
{
|
|
||||||
"versions": {
|
|
||||||
"values": [
|
|
||||||
{
|
|
||||||
"id": "v1",
|
|
||||||
"links": [
|
|
||||||
{
|
|
||||||
"href": "http://127.0.0.1:9001/v1",
|
|
||||||
"rel": "self"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"status": "DEPRECATED"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "v2",
|
|
||||||
"links": [
|
|
||||||
{
|
|
||||||
"href": "http://127.0.0.1:9001/v2",
|
|
||||||
"rel": "self"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"status": "CURRENT"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,14 +0,0 @@
|
||||||
{
|
|
||||||
"status": "PENDING",
|
|
||||||
"zone_id": "074e805e-fe87-4cbb-b10b-21a06e215d41",
|
|
||||||
"links": {
|
|
||||||
"self": "http://127.0.0.1:9001/v2/zones/tasks/exports/8ec17fe1-d1f9-41b4-aa98-4eeb4c27b720"
|
|
||||||
},
|
|
||||||
"created_at": "2015-08-27T20:57:03.000000",
|
|
||||||
"updated_at": null,
|
|
||||||
"version": 1,
|
|
||||||
"location": null,
|
|
||||||
"message": null,
|
|
||||||
"project_id": "1",
|
|
||||||
"id": "8ec17fe1-d1f9-41b4-aa98-4eeb4c27b720"
|
|
||||||
}
|
|
|
@ -1,13 +0,0 @@
|
||||||
{
|
|
||||||
"status": "PENDING",
|
|
||||||
"zone_id": null,
|
|
||||||
"links": {
|
|
||||||
"self": "http://127.0.0.1:9001/v2/zones/tasks/imports/074e805e-fe87-4cbb-b10b-21a06e215d41"
|
|
||||||
},
|
|
||||||
"created_at": "2015-05-08T15:43:42.000000",
|
|
||||||
"updated_at": null,
|
|
||||||
"version": 1,
|
|
||||||
"message": null,
|
|
||||||
"project_id": "1",
|
|
||||||
"id": "074e805e-fe87-4cbb-b10b-21a06e215d41"
|
|
||||||
}
|
|
|
@ -1,7 +0,0 @@
|
||||||
{
|
|
||||||
"name": "example.org.",
|
|
||||||
"email": "joe@example.org",
|
|
||||||
"type": "PRIMARY",
|
|
||||||
"ttl": 7200,
|
|
||||||
"description": "This is an example zone."
|
|
||||||
}
|
|
|
@ -1,4 +0,0 @@
|
||||||
{
|
|
||||||
"key":"FUGXMZ5N",
|
|
||||||
"zone_transfer_request_id":"794fdf58-6e1d-41da-8b2d-16b6d10c8827"
|
|
||||||
}
|
|
|
@ -1,14 +0,0 @@
|
||||||
{
|
|
||||||
"status": "COMPLETE",
|
|
||||||
"zone_id": "b4542f5a-f1ea-4ec1-b850-52db9dc3f465",
|
|
||||||
"links": {
|
|
||||||
"self": "http://10.0.4.46:9001/v2/zones/tasks/transfer_accepts/fe8c30f5-42f6-4af1-8cbf-e31a810d8c33",
|
|
||||||
"zone": "http://10.0.4.46:9001/v2/zones/b4542f5a-f1ea-4ec1-b850-52db9dc3f465"
|
|
||||||
},
|
|
||||||
"created_at": "2016-06-22 06:13:55",
|
|
||||||
"updated_at": "null",
|
|
||||||
"key": "FUGXMZ5N",
|
|
||||||
"project_id": "2e43de7ce3504a8fb90a45382532c37e",
|
|
||||||
"id": "fe8c30f5-42f6-4af1-8cbf-e31a810d8c33",
|
|
||||||
"zone_transfer_request_id": "794fdf58-6e1d-41da-8b2d-16b6d10c8827"
|
|
||||||
}
|
|
|
@ -1,3 +0,0 @@
|
||||||
{
|
|
||||||
"project_id": "1"
|
|
||||||
}
|
|
|
@ -1,15 +0,0 @@
|
||||||
{
|
|
||||||
"created_at": "2014-07-17T20:34:40.882579",
|
|
||||||
"description": null,
|
|
||||||
"id": "f2ad17b5-807a-423f-a991-e06236c247be",
|
|
||||||
"key": "9Z2R50Y0",
|
|
||||||
"project_id": "1",
|
|
||||||
"status": "ACTIVE",
|
|
||||||
"target_project_id": "123456",
|
|
||||||
"updated_at": null,
|
|
||||||
"zone_id": "6b78734a-aef1-45cd-9708-8eb3c2d26ff8",
|
|
||||||
"zone_name": "qa.dev.example.com.",
|
|
||||||
"links": {
|
|
||||||
"self": "http://127.0.0.1:9001/v2/zones/tasks/transfer_requests/f2ad17b5-807a-423f-a991-e06236c247be"
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,21 +0,0 @@
|
||||||
{
|
|
||||||
"id": "a86dba58-0043-4cc6-a1bb-69d5e86f3ca3",
|
|
||||||
"pool_id": "572ba08c-d929-4c70-8e42-03824bb24ca2",
|
|
||||||
"project_id": "4335d1f0-f793-11e2-b778-0800200c9a66",
|
|
||||||
"name": "example.org.",
|
|
||||||
"email": "joe@example.org",
|
|
||||||
"ttl": 600,
|
|
||||||
"serial": 1404757531,
|
|
||||||
"status": "PENDING",
|
|
||||||
"action": "DELETE",
|
|
||||||
"description": "Updated Description",
|
|
||||||
"masters": [],
|
|
||||||
"type": "PRIMARY",
|
|
||||||
"transferred_at": null,
|
|
||||||
"version": 1,
|
|
||||||
"created_at": "2014-07-07T18:25:31.275934",
|
|
||||||
"updated_at": null,
|
|
||||||
"links": {
|
|
||||||
"self": "https://127.0.0.1:9001/v2/zones/a86dba58-0043-4cc6-a1bb-69d5e86f3ca3"
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,26 +0,0 @@
|
||||||
{
|
|
||||||
|
|
||||||
"exports": [
|
|
||||||
{
|
|
||||||
"status": "COMPLETE",
|
|
||||||
"zone_id": "17a8d6b3-6ace-4857-b113-a707c5f975b1",
|
|
||||||
"links": {
|
|
||||||
"self": "http://127.0.0.1:9001/v2/zones/tasks/exports/204be410-0a9c-44b8-839e-bc4df3bb0d9a",
|
|
||||||
"export": "http://127.0.0.1:9001/v2/zones/tasks/exports/204be410-0a9c-44b8-839e-bc4df3bb0d9a/export"
|
|
||||||
},
|
|
||||||
"created_at": "2016-04-04T01:53:29.000000",
|
|
||||||
"updated_at": "2016-04-04T01:53:29.000000",
|
|
||||||
"version": 2,
|
|
||||||
"location": "designate://v2/zones/tasks/exports/204be410-0a9c-44b8-839e-bc4df3bb0d9a/export",
|
|
||||||
"message": null,
|
|
||||||
"project_id": "1de6e2fdc22342d3bef6340c7b70f497",
|
|
||||||
"id": "204be410-0a9c-44b8-839e-bc4df3bb0d9a"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"links": {
|
|
||||||
"self": "http://127.0.0.1:9001/v2/zones/tasks/exports"
|
|
||||||
},
|
|
||||||
"metadata": {
|
|
||||||
"total_count": 1
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,38 +0,0 @@
|
||||||
{
|
|
||||||
"imports": [
|
|
||||||
{
|
|
||||||
"status": "COMPLETE",
|
|
||||||
"zone_id": "047888ee-e9dd-4c08-8b44-ab2e879e01bd",
|
|
||||||
"links": {
|
|
||||||
"self": "http://127.0.0.1:9001/v2/zones/tasks/imports/0436a86e-ffc1-4d38-82a7-d75170fcd2a9",
|
|
||||||
"href": "http://127.0.0.1:9001/v2/zones/047888ee-e9dd-4c08-8b44-ab2e879e01bd"
|
|
||||||
},
|
|
||||||
"created_at": "2016-04-05T06:03:06.000000",
|
|
||||||
"updated_at": "2016-04-05T06:03:06.000000",
|
|
||||||
"version": 2,
|
|
||||||
"message": "example.com. imported",
|
|
||||||
"project_id": "1de6e2fdc22342d3bef6340c7b70f497",
|
|
||||||
"id": "0436a86e-ffc1-4d38-82a7-d75170fcd2a9"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"status": "COMPLETE",
|
|
||||||
"zone_id": "68a17870-7f81-470a-b5e9-2753460fd6dc",
|
|
||||||
"links": {
|
|
||||||
"self": "http://127.0.0.1:9001/v2/zones/tasks/imports/f0aa4ac1-f975-46a4-b417-339acd1ea8e3",
|
|
||||||
"href": "http://127.0.0.1:9001/v2/zones/68a17870-7f81-470a-b5e9-2753460fd6dc"
|
|
||||||
},
|
|
||||||
"created_at": "2016-04-05T06:06:26.000000",
|
|
||||||
"updated_at": "2016-04-05T06:06:26.000000",
|
|
||||||
"version": 2,
|
|
||||||
"message": "temp.org. imported",
|
|
||||||
"project_id": "1de6e2fdc22342d3bef6340c7b70f497",
|
|
||||||
"id": "f0aa4ac1-f975-46a4-b417-339acd1ea8e3"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"links": {
|
|
||||||
"self": "http://127.0.0.1:9001/v2/zones/tasks/imports"
|
|
||||||
},
|
|
||||||
"metadata": {
|
|
||||||
"total_count": 2
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,37 +0,0 @@
|
||||||
{
|
|
||||||
"metadata": {
|
|
||||||
"total_count": 2
|
|
||||||
},
|
|
||||||
"links": {
|
|
||||||
"self": "http://127.0.0.1:9001/v2/zones/tasks/transfer_accepts"
|
|
||||||
},
|
|
||||||
"transfer_accepts": [{
|
|
||||||
"status": "COMPLETE",
|
|
||||||
"zone_id": "8db93d1a-59e3-4143-a393-5821abea0a46",
|
|
||||||
"links": {
|
|
||||||
"self": "http://127.0.0.1:9001/v2/zones/tasks/transfer_accepts/afb4222b-18b3-44b3-9f54-e0dfdba1be44",
|
|
||||||
"zone": "http://127.0.0.1:9001/v2/zones/8db93d1a-59e3-4143-a393-5821abea0a46"
|
|
||||||
},
|
|
||||||
"created_at": "2016-06-01 05:35:35",
|
|
||||||
"updated_at": "2016-06-01 05:35:35",
|
|
||||||
"key": null,
|
|
||||||
"project_id": "85604ecfb5334b50bd40ca53fc1d710f",
|
|
||||||
"id": "afb4222b-18b3-44b3-9f54-e0dfdba1be44",
|
|
||||||
"zone_transfer_request_id": "d223f7ef-77a6-459e-abd3-b4dbc97338e7"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"status": "COMPLETE",
|
|
||||||
"zone_id": "925bfc45-8901-4aca-aa12-18afaf0879e2",
|
|
||||||
"links": {
|
|
||||||
"self": "http://127.0.0.1:9001/v2/zones/tasks/transfer_accepts/ecbc7091-c498-4ec4-9893-68b06297fe50",
|
|
||||||
"zone": "http://127.0.0.1:9001/v2/zones/925bfc45-8901-4aca-aa12-18afaf0879e2"
|
|
||||||
},
|
|
||||||
"created_at": "2016-06-01 10:06:36",
|
|
||||||
"updated_at": "2016-06-01 10:06:37",
|
|
||||||
"key": null,
|
|
||||||
"project_id": "85604ecfb5334b50bd40ca53fc1d710f",
|
|
||||||
"id": "ecbc7091-c498-4ec4-9893-68b06297fe50",
|
|
||||||
"zone_transfer_request_id": "94cf9bd3-4137-430b-bf75-4e690430258c"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
|
@ -1,32 +0,0 @@
|
||||||
{
|
|
||||||
"transfer_requests": [
|
|
||||||
{
|
|
||||||
"created_at": "2014-07-17T20:34:40.882579",
|
|
||||||
"description": "This was created by the requesting project",
|
|
||||||
"id": "f2ad17b5-807a-423f-a991-e06236c247be",
|
|
||||||
"key": "9Z2R50Y0",
|
|
||||||
"project_id": "1",
|
|
||||||
"status": "ACTIVE",
|
|
||||||
"target_project_id": "123456",
|
|
||||||
"updated_at": null,
|
|
||||||
"zone_id": "6b78734a-aef1-45cd-9708-8eb3c2d26ff8",
|
|
||||||
"zone_name": "qa.dev.example.com.",
|
|
||||||
"links": {
|
|
||||||
"self": "http://127.0.0.1:9001/v2/zones/tasks/transfer_requests/f2ad17b5-807a-423f-a991-e06236c247be"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"description": "This is scoped to the requesting project",
|
|
||||||
"id": "efd2d720-b0c4-43d4-99f7-d9b53e08860d",
|
|
||||||
"zone_id": "2c4d5e37-f823-4bee-9859-031cb44f80e7",
|
|
||||||
"zone_name": "subdomain.example.com.",
|
|
||||||
"status": "ACTIVE",
|
|
||||||
"links": {
|
|
||||||
"self": "http://127.0.0.1:9001/v2/zones/tasks/transfer_requests/efd2d720-b0c4-43d4-99f7-d9b53e08860d"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"links": {
|
|
||||||
"self": "http://127.0.0.1:9001/v2/zones/tasks/transfer_requests"
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,32 +0,0 @@
|
||||||
{
|
|
||||||
"zones": [
|
|
||||||
{
|
|
||||||
"id": "a86dba58-0043-4cc6-a1bb-69d5e86f3ca3",
|
|
||||||
"pool_id": "572ba08c-d929-4c70-8e42-03824bb24ca2",
|
|
||||||
"project_id": "4335d1f0-f793-11e2-b778-0800200c9a66",
|
|
||||||
"name": "example.org.",
|
|
||||||
"email": "joe@example.org",
|
|
||||||
"ttl": 7200,
|
|
||||||
"serial": 1404757531,
|
|
||||||
"status": "ACTIVE",
|
|
||||||
"action": "CREATE",
|
|
||||||
"description": "This is an example zone.",
|
|
||||||
"masters": [],
|
|
||||||
"type": "PRIMARY",
|
|
||||||
"transferred_at": null,
|
|
||||||
"version": 1,
|
|
||||||
"created_at": "2014-07-07T18:25:31.275934",
|
|
||||||
"updated_at": null,
|
|
||||||
"links": {
|
|
||||||
"self": "https://127.0.0.1:9001/v2/zones/a86dba58-0043-4cc6-a1bb-69d5e86f3ca3"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"links": {
|
|
||||||
"self": "http://127.0.0.1:9001/v2/zones?limit=1",
|
|
||||||
"next": "http://127.0.0.1:9001/v2/zones?limit=1&marker=45fd892d-7a67-4f65-9df0-87273f228d6c"
|
|
||||||
},
|
|
||||||
"metadata": {
|
|
||||||
"total_count": 2
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,18 +0,0 @@
|
||||||
$ORIGIN example.com.
|
|
||||||
$TTL 42
|
|
||||||
|
|
||||||
example.com. IN SOA ns.designate.com. nsadmin.example.com. (
|
|
||||||
1394213803 ; serial
|
|
||||||
3600 ; refresh
|
|
||||||
600 ; retry
|
|
||||||
86400 ; expire
|
|
||||||
3600 ; minimum
|
|
||||||
)
|
|
||||||
|
|
||||||
|
|
||||||
example.com. IN NS ns.designate.com.
|
|
||||||
|
|
||||||
|
|
||||||
example.com. IN MX 10 mail.example.com.
|
|
||||||
ns.example.com. IN A 10.0.0.1
|
|
||||||
mail.example.com. IN A 10.0.0.2
|
|
|
@ -1,15 +0,0 @@
|
||||||
{
|
|
||||||
"status": "COMPLETE",
|
|
||||||
"zone_id": "6625198b-d67d-47dc-8d29-f90bd60f3ac4",
|
|
||||||
"links": {
|
|
||||||
"self": "http://127.0.0.1:9001/v2/zones/tasks/exports/8ec17fe1-d1f9-41b4-aa98-4eeb4c27b720",
|
|
||||||
"export": "http://127.0.0.1:9001/v2/zones/tasks/exports/8ec17fe1-d1f9-41b4-aa98-4eeb4c27b720/export"
|
|
||||||
},
|
|
||||||
"created_at": "2015-08-27T20:57:03.000000",
|
|
||||||
"updated_at": "2015-08-27T20:57:03.000000",
|
|
||||||
"version": 2,
|
|
||||||
"location": "designate://v2/zones/tasks/exports/8ec17fe1-d1f9-41b4-aa98-4eeb4c27b720/export",
|
|
||||||
"message": null,
|
|
||||||
"project_id": "noauth-project",
|
|
||||||
"id": "8ec17fe1-d1f9-41b4-aa98-4eeb4c27b720"
|
|
||||||
}
|
|
|
@ -1,14 +0,0 @@
|
||||||
{
|
|
||||||
"status": "COMPLETE",
|
|
||||||
"zone_id": "6625198b-d67d-47dc-8d29-f90bd60f3ac4",
|
|
||||||
"links": {
|
|
||||||
"self": "http://127.0.0.1:9001/v2/zones/tasks/imports/074e805e-fe87-4cbb-b10b-21a06e215d41",
|
|
||||||
"href": "http://127.0.0.1:9001/v2/zones/6625198b-d67d-47dc-8d29-f90bd60f3ac4"
|
|
||||||
},
|
|
||||||
"created_at": "2015-05-08T15:43:42.000000",
|
|
||||||
"updated_at": "2015-05-08T15:43:42.000000",
|
|
||||||
"version": 2,
|
|
||||||
"message": "example.com. imported",
|
|
||||||
"project_id": "noauth-project",
|
|
||||||
"id": "074e805e-fe87-4cbb-b10b-21a06e215d41"
|
|
||||||
}
|
|
|
@ -1,8 +0,0 @@
|
||||||
{
|
|
||||||
"nameservers": [
|
|
||||||
{
|
|
||||||
"hostname": "ns1.example.com.",
|
|
||||||
"priority": 10
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
|
@ -1,10 +0,0 @@
|
||||||
{
|
|
||||||
"description": "This is scoped to the requesting project",
|
|
||||||
"id": "efd2d720-b0c4-43d4-99f7-d9b53e08860d",
|
|
||||||
"zone_id": "2c4d5e37-f823-4bee-9859-031cb44f80e7",
|
|
||||||
"zone_name": "subdomain.example.com.",
|
|
||||||
"status": "ACTIVE",
|
|
||||||
"links": {
|
|
||||||
"self": "http://127.0.0.1:9001/v2/zones/tasks/transfer_requests/efd2d720-b0c4-43d4-99f7-d9b53e08860d"
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,4 +0,0 @@
|
||||||
{
|
|
||||||
"ttl": 600,
|
|
||||||
"description": "Updated Description"
|
|
||||||
}
|
|
|
@ -1,21 +0,0 @@
|
||||||
{
|
|
||||||
"id": "a86dba58-0043-4cc6-a1bb-69d5e86f3ca3",
|
|
||||||
"pool_id": "572ba08c-d929-4c70-8e42-03824bb24ca2",
|
|
||||||
"project_id": "4335d1f0-f793-11e2-b778-0800200c9a66",
|
|
||||||
"name": "example.org.",
|
|
||||||
"email": "joe@example.org",
|
|
||||||
"ttl": 600,
|
|
||||||
"serial": 1404757531,
|
|
||||||
"status": "PENDING",
|
|
||||||
"action": "UPDATE",
|
|
||||||
"description": "Updated Description",
|
|
||||||
"masters": [],
|
|
||||||
"type": "PRIMARY",
|
|
||||||
"transferred_at": null,
|
|
||||||
"version": 1,
|
|
||||||
"created_at": "2014-07-07T18:25:31.275934",
|
|
||||||
"updated_at": null,
|
|
||||||
"links": {
|
|
||||||
"self": "https://127.0.0.1:9001/v2/zones/a86dba58-0043-4cc6-a1bb-69d5e86f3ca3"
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,4 +0,0 @@
|
||||||
{
|
|
||||||
"description": "This is scoped to the new project",
|
|
||||||
"target_project_id": "987654"
|
|
||||||
}
|
|
|
@ -1,11 +0,0 @@
|
||||||
{
|
|
||||||
"description": "This is scoped to the new project",
|
|
||||||
"target_project_id": "987654",
|
|
||||||
"id": "efd2d720-b0c4-43d4-99f7-d9b53e08860d",
|
|
||||||
"zone_id": "2c4d5e37-f823-4bee-9859-031cb44f80e7",
|
|
||||||
"zone_name": "subdomain.example.com.",
|
|
||||||
"status": "ACTIVE",
|
|
||||||
"links": {
|
|
||||||
"self": "http://127.0.0.1:9001/v2/zones/tasks/transfer_requests/efd2d720-b0c4-43d4-99f7-d9b53e08860d"
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,21 +0,0 @@
|
||||||
{
|
|
||||||
"id": "a86dba58-0043-4cc6-a1bb-69d5e86f3ca3",
|
|
||||||
"pool_id": "572ba08c-d929-4c70-8e42-03824bb24ca2",
|
|
||||||
"project_id": "4335d1f0-f793-11e2-b778-0800200c9a66",
|
|
||||||
"name": "example.org.",
|
|
||||||
"email": "joe@example.org",
|
|
||||||
"ttl": 7200,
|
|
||||||
"serial": 1404757531,
|
|
||||||
"status": "ACTIVE",
|
|
||||||
"action": "CREATE",
|
|
||||||
"description": "This is an example zone.",
|
|
||||||
"masters": [],
|
|
||||||
"type": "PRIMARY",
|
|
||||||
"transferred_at": null,
|
|
||||||
"version": 1,
|
|
||||||
"created_at": "2014-07-07T18:25:31.275934",
|
|
||||||
"updated_at": null,
|
|
||||||
"links": {
|
|
||||||
"self": "https://127.0.0.1:9001/v2/zones/a86dba58-0043-4cc6-a1bb-69d5e86f3ca3"
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,56 +0,0 @@
|
||||||
200:
|
|
||||||
default: |
|
|
||||||
Request was successful.
|
|
||||||
image-data-200: |
|
|
||||||
The service lists the image data in the response body.
|
|
||||||
201:
|
|
||||||
default: |
|
|
||||||
Request has been fulfilled and new resource created.
|
|
||||||
202:
|
|
||||||
default: |
|
|
||||||
Request is accepted, but processing may take some time.
|
|
||||||
203:
|
|
||||||
default: |
|
|
||||||
Returned information is not full set, but a subset.
|
|
||||||
204:
|
|
||||||
default: |
|
|
||||||
Request fulfilled but service does not return anything.
|
|
||||||
300:
|
|
||||||
default: |
|
|
||||||
The resource corresponds to more than one representation.
|
|
||||||
400:
|
|
||||||
default: |
|
|
||||||
Some content in the request was invalid.
|
|
||||||
401:
|
|
||||||
default: |
|
|
||||||
User must authenticate before making a request.
|
|
||||||
403:
|
|
||||||
default: |
|
|
||||||
Policy does not allow current user to do this operation.
|
|
||||||
404:
|
|
||||||
default: |
|
|
||||||
The requested resource could not be found.
|
|
||||||
405:
|
|
||||||
default: |
|
|
||||||
Method is not valid for this endpoint and resource.
|
|
||||||
409:
|
|
||||||
default: |
|
|
||||||
This resource has an action in progress that would conflict with this request.
|
|
||||||
413:
|
|
||||||
default: |
|
|
||||||
This operation cannot be completed.
|
|
||||||
415:
|
|
||||||
default: |
|
|
||||||
The entity of the request is in a format not supported by the requested
|
|
||||||
resource for the method.
|
|
||||||
500:
|
|
||||||
default: |
|
|
||||||
Something went wrong with the service which prevents it from fulfilling
|
|
||||||
the request.
|
|
||||||
501:
|
|
||||||
default: |
|
|
||||||
The service does not have the functionality required to fulfill this
|
|
||||||
request.
|
|
||||||
503:
|
|
||||||
default: |
|
|
||||||
The service cannot handle the request right now.
|
|
|
@ -1,432 +0,0 @@
|
||||||
# Copyright 2014 Red Hat, Inc.
|
|
||||||
#
|
|
||||||
# Author: Rich Megginson <rmeggins@redhat.com>
|
|
||||||
#
|
|
||||||
# Licensed under the Apache License, Version 2.0 (the "License"); you may
|
|
||||||
# not use this file except in compliance with the License. You may obtain
|
|
||||||
# a copy of the License at
|
|
||||||
#
|
|
||||||
# http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
#
|
|
||||||
# Unless required by applicable law or agreed to in writing, software
|
|
||||||
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
|
||||||
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
|
||||||
# License for the specific language governing permissions and limitations
|
|
||||||
# under the License.
|
|
||||||
import pprint
|
|
||||||
import time
|
|
||||||
|
|
||||||
import requests
|
|
||||||
from oslo_config import cfg
|
|
||||||
from oslo_log import log as logging
|
|
||||||
from oslo_serialization import jsonutils as json
|
|
||||||
from oslo_utils import importutils
|
|
||||||
|
|
||||||
from designate import exceptions
|
|
||||||
from designate.backend import base
|
|
||||||
from designate.i18n import _LE
|
|
||||||
|
|
||||||
|
|
||||||
LOG = logging.getLogger(__name__)
|
|
||||||
|
|
||||||
IPA_DEFAULT_PORT = 443
|
|
||||||
|
|
||||||
|
|
||||||
class IPABaseError(exceptions.Backend):
|
|
||||||
error_code = 500
|
|
||||||
error_type = 'unknown_ipa_error'
|
|
||||||
|
|
||||||
|
|
||||||
class IPAAuthError(IPABaseError):
|
|
||||||
error_type = 'authentication_error'
|
|
||||||
|
|
||||||
|
|
||||||
# map of designate domain parameters to the corresponding
|
|
||||||
# ipa parameter
|
|
||||||
# NOTE: ipa manages serial, and does not honor
|
|
||||||
# increment_serial=False - this means the designate serial
|
|
||||||
# and the ipa serial will diverge if updates are made
|
|
||||||
# using increment_serial=False
|
|
||||||
domain2ipa = {'ttl': 'dnsttl', 'email': 'idnssoarname',
|
|
||||||
'serial': 'idnssoaserial', 'expire': 'idnssoaexpire',
|
|
||||||
'minimum': 'idnssoaminimum', 'refresh': 'idnssoarefresh',
|
|
||||||
'retry': 'idnssoaretry'}
|
|
||||||
|
|
||||||
# map of designate record types to ipa
|
|
||||||
rectype2iparectype = {'A': ('arecord', '%(data)s'),
|
|
||||||
'AAAA': ('aaaarecord', '%(data)s'),
|
|
||||||
'MX': ('mxrecord', '%(data)s'),
|
|
||||||
'CNAME': ('cnamerecord', '%(data)s'),
|
|
||||||
'TXT': ('txtrecord', '%(data)s'),
|
|
||||||
'SRV': ('srvrecord', '%(data)s'),
|
|
||||||
'NS': ('nsrecord', '%(data)s'),
|
|
||||||
'PTR': ('ptrrecord', '%(data)s'),
|
|
||||||
'SPF': ('spfrecord', '%(data)s'),
|
|
||||||
'SSHFP': ('sshfprecord', '%(data)s')}
|
|
||||||
|
|
||||||
IPA_INVALID_DATA = 3009
|
|
||||||
IPA_NOT_FOUND = 4001
|
|
||||||
IPA_DUPLICATE = 4002
|
|
||||||
IPA_NO_CHANGES = 4202
|
|
||||||
|
|
||||||
|
|
||||||
class IPAUnknownError(IPABaseError):
|
|
||||||
pass
|
|
||||||
|
|
||||||
|
|
||||||
class IPACommunicationFailure(IPABaseError):
|
|
||||||
error_type = 'communication_failure'
|
|
||||||
pass
|
|
||||||
|
|
||||||
|
|
||||||
class IPAInvalidData(IPABaseError):
|
|
||||||
error_type = 'invalid_data'
|
|
||||||
pass
|
|
||||||
|
|
||||||
|
|
||||||
class IPADomainNotFound(IPABaseError):
|
|
||||||
error_type = 'domain_not_found'
|
|
||||||
pass
|
|
||||||
|
|
||||||
|
|
||||||
class IPARecordNotFound(IPABaseError):
|
|
||||||
error_type = 'record_not_found'
|
|
||||||
pass
|
|
||||||
|
|
||||||
|
|
||||||
class IPADuplicateDomain(IPABaseError):
|
|
||||||
error_type = 'duplicate_domain'
|
|
||||||
pass
|
|
||||||
|
|
||||||
|
|
||||||
class IPADuplicateRecord(IPABaseError):
|
|
||||||
error_type = 'duplicate_record'
|
|
||||||
pass
|
|
||||||
|
|
||||||
|
|
||||||
ipaerror2exception = {
|
|
||||||
IPA_INVALID_DATA: {
|
|
||||||
'dnszone': IPAInvalidData,
|
|
||||||
'dnsrecord': IPAInvalidData
|
|
||||||
},
|
|
||||||
IPA_NOT_FOUND: {
|
|
||||||
'dnszone': IPADomainNotFound,
|
|
||||||
'dnsrecord': IPARecordNotFound
|
|
||||||
},
|
|
||||||
IPA_DUPLICATE: {
|
|
||||||
'dnszone': IPADuplicateDomain,
|
|
||||||
'dnsrecord': IPADuplicateRecord
|
|
||||||
},
|
|
||||||
# NOTE: Designate will send updates with all fields
|
|
||||||
# even if they have not changed value. If none of
|
|
||||||
# the given values has changed, IPA will return
|
|
||||||
# this error code - this can be ignored
|
|
||||||
IPA_NO_CHANGES: {
|
|
||||||
'dnszone': None,
|
|
||||||
'dnsrecord': None
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
def abs2rel_name(domain, rsetname):
|
|
||||||
"""convert rsetname from absolute form foo.bar.tld. to the name
|
|
||||||
relative to the domain. For IPA, if domain is rsetname, then use
|
|
||||||
"@" as the relative name. If rsetname does not end with a subset
|
|
||||||
of the domain, the just return the raw rsetname
|
|
||||||
"""
|
|
||||||
if rsetname.endswith(domain):
|
|
||||||
idx = rsetname.rfind(domain)
|
|
||||||
if idx == 0:
|
|
||||||
rsetname = "@"
|
|
||||||
elif idx > 0:
|
|
||||||
rsetname = rsetname[:idx].rstrip(".")
|
|
||||||
return rsetname
|
|
||||||
|
|
||||||
|
|
||||||
class IPABackend(base.Backend):
|
|
||||||
__plugin_name__ = 'ipa'
|
|
||||||
|
|
||||||
@classmethod
|
|
||||||
def get_cfg_opts(cls):
|
|
||||||
group = cfg.OptGroup(
|
|
||||||
name='backend:ipa', title="Configuration for IPA Backend"
|
|
||||||
)
|
|
||||||
|
|
||||||
opts = [
|
|
||||||
cfg.StrOpt('ipa-host', default='localhost.localdomain',
|
|
||||||
help='IPA RPC listener host - must be FQDN'),
|
|
||||||
cfg.IntOpt('ipa-port', default=IPA_DEFAULT_PORT,
|
|
||||||
help='IPA RPC listener port'),
|
|
||||||
cfg.StrOpt('ipa-client-keytab',
|
|
||||||
help='Kerberos client keytab file'),
|
|
||||||
cfg.StrOpt('ipa-auth-driver-class',
|
|
||||||
default='designate.backend.impl_ipa.auth.IPAAuth',
|
|
||||||
help='Class that implements the authentication '
|
|
||||||
'driver for IPA'),
|
|
||||||
cfg.StrOpt('ipa-ca-cert',
|
|
||||||
help='CA certificate for use with https to IPA'),
|
|
||||||
cfg.StrOpt('ipa-base-url', default='/ipa',
|
|
||||||
help='Base URL for IPA RPC, relative to host[:port]'),
|
|
||||||
cfg.StrOpt('ipa-json-url',
|
|
||||||
default='/json',
|
|
||||||
help='URL for IPA JSON RPC, relative to IPA base URL'),
|
|
||||||
cfg.IntOpt('ipa-connect-retries', default=1,
|
|
||||||
help='How many times Designate will attempt to retry '
|
|
||||||
'the connection to IPA before giving up'),
|
|
||||||
cfg.BoolOpt('ipa-force-ns-use', default=False,
|
|
||||||
help='IPA requires that a specified '
|
|
||||||
'name server or SOA MNAME is resolvable - if this '
|
|
||||||
'option is set, Designate will force IPA to use a '
|
|
||||||
'given name server even if it is not resolvable'),
|
|
||||||
cfg.StrOpt('ipa-version', default='2.65',
|
|
||||||
help='IPA RPC JSON version')
|
|
||||||
]
|
|
||||||
|
|
||||||
return [(group, opts)]
|
|
||||||
|
|
||||||
def start(self):
|
|
||||||
LOG.debug('IPABackend start')
|
|
||||||
self.request = requests.Session()
|
|
||||||
authclassname = cfg.CONF[self.name].ipa_auth_driver_class
|
|
||||||
authclass = importutils.import_class(authclassname)
|
|
||||||
self.request.auth = \
|
|
||||||
authclass(cfg.CONF[self.name].ipa_client_keytab,
|
|
||||||
cfg.CONF[self.name].ipa_host)
|
|
||||||
ipa_base_url = cfg.CONF[self.name].ipa_base_url
|
|
||||||
if ipa_base_url.startswith("http"): # full URL
|
|
||||||
self.baseurl = ipa_base_url
|
|
||||||
else: # assume relative to https://host[:port]
|
|
||||||
self.baseurl = "https://" + cfg.CONF[self.name].ipa_host
|
|
||||||
ipa_port = cfg.CONF[self.name].ipa_port
|
|
||||||
if ipa_port != IPA_DEFAULT_PORT:
|
|
||||||
self.baseurl += ":" + str(ipa_port)
|
|
||||||
self.baseurl += ipa_base_url
|
|
||||||
ipa_json_url = cfg.CONF[self.name].ipa_json_url
|
|
||||||
if ipa_json_url.startswith("http"): # full URL
|
|
||||||
self.jsonurl = ipa_json_url
|
|
||||||
else: # assume relative to https://host[:port]
|
|
||||||
self.jsonurl = self.baseurl + ipa_json_url
|
|
||||||
xtra_hdrs = {'Content-Type': 'application/json',
|
|
||||||
'Referer': self.baseurl}
|
|
||||||
self.request.headers.update(xtra_hdrs)
|
|
||||||
self.request.verify = cfg.CONF[self.name].ipa_ca_cert
|
|
||||||
self.ntries = cfg.CONF[self.name].ipa_connect_retries
|
|
||||||
self.force = cfg.CONF[self.name].ipa_force_ns_use
|
|
||||||
|
|
||||||
def create_zone(self, context, zone):
|
|
||||||
LOG.debug('Create Zone %r' % zone)
|
|
||||||
ipareq = {'method': 'dnszone_add', 'id': 0}
|
|
||||||
params = [zone['name']]
|
|
||||||
servers = self.central_service.get_zone_ns_records(self.admin_context)
|
|
||||||
# just use the first one for zone creation - add the others
|
|
||||||
# later, below - use force because designate assumes the NS
|
|
||||||
# already exists somewhere, is resolvable, and already has
|
|
||||||
# an A/AAAA record
|
|
||||||
args = {'idnssoamname': servers[0]['name']}
|
|
||||||
if self.force:
|
|
||||||
args['force'] = True
|
|
||||||
for dkey, ipakey in list(domain2ipa.items()):
|
|
||||||
if dkey in zone:
|
|
||||||
args[ipakey] = zone[dkey]
|
|
||||||
ipareq['params'] = [params, args]
|
|
||||||
self._call_and_handle_error(ipareq)
|
|
||||||
# add NS records for all of the other servers
|
|
||||||
if len(servers) > 1:
|
|
||||||
ipareq = {'method': 'dnsrecord_add', 'id': 0}
|
|
||||||
params = [zone['name'], "@"]
|
|
||||||
args = {'nsrecord': servers[1:]}
|
|
||||||
if self.force:
|
|
||||||
args['force'] = True
|
|
||||||
ipareq['params'] = [params, args]
|
|
||||||
self._call_and_handle_error(ipareq)
|
|
||||||
|
|
||||||
def update_zone(self, context, zone):
|
|
||||||
LOG.debug('Update Zone %r' % zone)
|
|
||||||
ipareq = {'method': 'dnszone_mod', 'id': 0}
|
|
||||||
params = [zone['name']]
|
|
||||||
args = {}
|
|
||||||
for dkey, ipakey in list(domain2ipa.items()):
|
|
||||||
if dkey in zone:
|
|
||||||
args[ipakey] = zone[dkey]
|
|
||||||
ipareq['params'] = [params, args]
|
|
||||||
self._call_and_handle_error(ipareq)
|
|
||||||
|
|
||||||
def delete_zone(self, context, zone):
|
|
||||||
LOG.debug('Delete Zone %r' % zone)
|
|
||||||
ipareq = {'method': 'dnszone_del', 'id': 0}
|
|
||||||
params = [zone['name']]
|
|
||||||
args = {}
|
|
||||||
ipareq['params'] = [params, args]
|
|
||||||
self._call_and_handle_error(ipareq)
|
|
||||||
|
|
||||||
def create_recordset(self, context, domain, recordset):
|
|
||||||
LOG.debug('Discarding create_recordset call, not-applicable')
|
|
||||||
|
|
||||||
def update_recordset(self, context, domain, recordset):
|
|
||||||
LOG.debug('Update RecordSet %r / %r' % (domain, recordset))
|
|
||||||
# designate allows to update a recordset if there are no
|
|
||||||
# records in it - we should ignore this case
|
|
||||||
if not self._recset_has_records(context, recordset):
|
|
||||||
LOG.debug('No records in %r / %r - skipping' % (domain, recordset))
|
|
||||||
return
|
|
||||||
# The only thing IPA allows is to change the ttl, since that is
|
|
||||||
# stored "per recordset"
|
|
||||||
if 'ttl' not in recordset:
|
|
||||||
return
|
|
||||||
ipareq = {'method': 'dnsrecord_mod', 'id': 0}
|
|
||||||
dname = domain['name']
|
|
||||||
rsetname = abs2rel_name(dname, recordset['name'])
|
|
||||||
params = [domain['name'], rsetname]
|
|
||||||
args = {'dnsttl': recordset['ttl']}
|
|
||||||
ipareq['params'] = [params, args]
|
|
||||||
self._call_and_handle_error(ipareq)
|
|
||||||
|
|
||||||
def delete_recordset(self, context, domain, recordset):
|
|
||||||
LOG.debug('Delete RecordSet %r / %r' % (domain, recordset))
|
|
||||||
# designate allows to delete a recordset if there are no
|
|
||||||
# records in it - we should ignore this case
|
|
||||||
if not self._recset_has_records(context, recordset):
|
|
||||||
LOG.debug('No records in %r / %r - skipping' % (domain, recordset))
|
|
||||||
return
|
|
||||||
ipareq = {'method': 'dnsrecord_mod', 'id': 0}
|
|
||||||
dname = domain['name']
|
|
||||||
rsetname = abs2rel_name(dname, recordset['name'])
|
|
||||||
params = [domain['name'], rsetname]
|
|
||||||
rsettype = rectype2iparectype[recordset['type']][0]
|
|
||||||
args = {rsettype: None}
|
|
||||||
ipareq['params'] = [params, args]
|
|
||||||
self._call_and_handle_error(ipareq)
|
|
||||||
|
|
||||||
def create_record(self, context, domain, recordset, record):
|
|
||||||
LOG.debug('Create Record %r / %r / %r' % (domain, recordset, record))
|
|
||||||
ipareq = {'method': 'dnsrecord_add', 'id': 0}
|
|
||||||
params, args = self._rec_to_ipa_rec(domain, recordset, [record])
|
|
||||||
ipareq['params'] = [params, args]
|
|
||||||
self._call_and_handle_error(ipareq)
|
|
||||||
|
|
||||||
def update_record(self, context, domain, recordset, record):
|
|
||||||
LOG.debug('Update Record %r / %r / %r' % (domain, recordset, record))
|
|
||||||
# for modify operations - IPA does not support a way to change
|
|
||||||
# a particular field in a given record - e.g. for an MX record
|
|
||||||
# with several values, IPA stores them like this:
|
|
||||||
# name: "server1.local."
|
|
||||||
# data: ["10 mx1.server1.local.", "20 mx2.server1.local."]
|
|
||||||
# we could do a search of IPA, compare the values in the
|
|
||||||
# returned array - but that adds an additional round trip
|
|
||||||
# and is error prone
|
|
||||||
# instead, we just get all of the current values and send
|
|
||||||
# them in one big modify
|
|
||||||
criteria = {'recordset_id': record['recordset_id']}
|
|
||||||
reclist = self.central_service.find_records(self.admin_context,
|
|
||||||
criteria)
|
|
||||||
ipareq = {'method': 'dnsrecord_mod', 'id': 0}
|
|
||||||
params, args = self._rec_to_ipa_rec(domain, recordset, reclist)
|
|
||||||
ipareq['params'] = [params, args]
|
|
||||||
self._call_and_handle_error(ipareq)
|
|
||||||
|
|
||||||
def delete_record(self, context, domain, recordset, record):
|
|
||||||
LOG.debug('Delete Record %r / %r / %r' % (domain, recordset, record))
|
|
||||||
ipareq = {'method': 'dnsrecord_del', 'id': 0}
|
|
||||||
params, args = self._rec_to_ipa_rec(domain, recordset, [record])
|
|
||||||
args['del_all'] = 0
|
|
||||||
ipareq['params'] = [params, args]
|
|
||||||
self._call_and_handle_error(ipareq)
|
|
||||||
|
|
||||||
def ping(self, context):
|
|
||||||
LOG.debug('Ping')
|
|
||||||
# NOTE: This call will cause ipa to issue an error, but
|
|
||||||
# 1) it should not throw an exception
|
|
||||||
# 2) the response will indicate ipa is running
|
|
||||||
# 3) the bandwidth usage is minimal
|
|
||||||
ipareq = {'method': 'dnszone_show', 'id': 0}
|
|
||||||
params = ['@']
|
|
||||||
args = {}
|
|
||||||
ipareq['params'] = [params, args]
|
|
||||||
retval = {'result': True}
|
|
||||||
try:
|
|
||||||
self._call_and_handle_error(ipareq)
|
|
||||||
except Exception as e:
|
|
||||||
retval = {'result': False, 'reason': str(e)}
|
|
||||||
return retval
|
|
||||||
|
|
||||||
def _rec_to_ipa_rec(self, domain, recordset, reclist):
|
|
||||||
dname = domain['name']
|
|
||||||
rsetname = abs2rel_name(dname, recordset['name'])
|
|
||||||
params = [dname, rsetname]
|
|
||||||
rectype = recordset['type']
|
|
||||||
vals = []
|
|
||||||
for record in reclist:
|
|
||||||
vals.append(rectype2iparectype[rectype][1] % record)
|
|
||||||
args = {rectype2iparectype[rectype][0]: vals}
|
|
||||||
ttl = recordset.get('ttl') or domain.get('ttl')
|
|
||||||
if ttl is not None:
|
|
||||||
args['dnsttl'] = ttl
|
|
||||||
return params, args
|
|
||||||
|
|
||||||
def _ipa_error_to_exception(self, resp, ipareq):
|
|
||||||
exc = None
|
|
||||||
if resp['error'] is None:
|
|
||||||
return exc
|
|
||||||
errcode = resp['error']['code']
|
|
||||||
method = ipareq['method']
|
|
||||||
methtype = method.split('_')[0]
|
|
||||||
exclass = ipaerror2exception.get(errcode, {}).get(methtype,
|
|
||||||
IPAUnknownError)
|
|
||||||
if exclass:
|
|
||||||
LOG.debug("Error: ipa command [%s] returned error [%s]" %
|
|
||||||
(pprint.pformat(ipareq), pprint.pformat(resp)))
|
|
||||||
elif errcode: # not mapped
|
|
||||||
LOG.debug("Ignoring IPA error code %d: %s" %
|
|
||||||
(errcode, pprint.pformat(resp)))
|
|
||||||
return exclass
|
|
||||||
|
|
||||||
def _call_and_handle_error(self, ipareq):
|
|
||||||
if 'version' not in ipareq['params'][1]:
|
|
||||||
ipareq['params'][1]['version'] = cfg.CONF[self.name].ipa_version
|
|
||||||
need_reauth = False
|
|
||||||
while True:
|
|
||||||
status_code = 200
|
|
||||||
try:
|
|
||||||
if need_reauth:
|
|
||||||
self.request.auth.refresh_auth()
|
|
||||||
rawresp = self.request.post(self.jsonurl,
|
|
||||||
data=json.dumps(ipareq))
|
|
||||||
status_code = rawresp.status_code
|
|
||||||
except IPAAuthError:
|
|
||||||
status_code = 401
|
|
||||||
if status_code == 401:
|
|
||||||
if self.ntries == 0:
|
|
||||||
# persistent inability to auth
|
|
||||||
LOG.error(_LE("Error: could not authenticate to IPA - "
|
|
||||||
"please check for correct keytab file"))
|
|
||||||
# reset for next time
|
|
||||||
self.ntries = cfg.CONF[self.name].ipa_connect_retries
|
|
||||||
raise IPACommunicationFailure()
|
|
||||||
else:
|
|
||||||
LOG.debug("Refresh authentication")
|
|
||||||
need_reauth = True
|
|
||||||
self.ntries -= 1
|
|
||||||
time.sleep(1)
|
|
||||||
else:
|
|
||||||
# successful - reset
|
|
||||||
self.ntries = cfg.CONF[self.name].ipa_connect_retries
|
|
||||||
break
|
|
||||||
try:
|
|
||||||
resp = json.loads(rawresp.text)
|
|
||||||
except ValueError:
|
|
||||||
# response was not json - some sort of error response
|
|
||||||
LOG.debug("Error: unknown error from IPA [%s]" % rawresp.text)
|
|
||||||
raise IPAUnknownError("unable to process response from IPA")
|
|
||||||
# raise the appropriate exception, if error
|
|
||||||
exclass = self._ipa_error_to_exception(resp, ipareq)
|
|
||||||
if exclass:
|
|
||||||
# could add additional info/message to exception here
|
|
||||||
raise exclass()
|
|
||||||
return resp
|
|
||||||
|
|
||||||
def _recset_has_records(self, context, recordset):
|
|
||||||
"""Return True if the recordset has records, False otherwise"""
|
|
||||||
criteria = {'recordset_id': recordset['id']}
|
|
||||||
num = self.central_service.count_records(self.admin_context,
|
|
||||||
criteria)
|
|
||||||
return num > 0
|
|
|
@ -1,62 +0,0 @@
|
||||||
# Copyright 2014 Red Hat, Inc.
|
|
||||||
#
|
|
||||||
# Author: Rich Megginson <rmeggins@redhat.com>
|
|
||||||
#
|
|
||||||
# Licensed under the Apache License, Version 2.0 (the "License"); you may
|
|
||||||
# not use this file except in compliance with the License. You may obtain
|
|
||||||
# a copy of the License at
|
|
||||||
#
|
|
||||||
# http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
#
|
|
||||||
# Unless required by applicable law or agreed to in writing, software
|
|
||||||
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
|
||||||
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
|
||||||
# License for the specific language governing permissions and limitations
|
|
||||||
# under the License.
|
|
||||||
import os
|
|
||||||
import logging
|
|
||||||
|
|
||||||
from requests import auth
|
|
||||||
import kerberos
|
|
||||||
|
|
||||||
from designate.utils import generate_uuid
|
|
||||||
from designate.backend.impl_ipa import IPAAuthError
|
|
||||||
from designate.i18n import _LW
|
|
||||||
from designate.i18n import _LE
|
|
||||||
|
|
||||||
|
|
||||||
LOG = logging.getLogger(__name__)
|
|
||||||
|
|
||||||
|
|
||||||
class IPAAuth(auth.AuthBase):
|
|
||||||
def __init__(self, keytab, hostname):
|
|
||||||
# store the kerberos credentials in memory rather than on disk
|
|
||||||
os.environ['KRB5CCNAME'] = "MEMORY:" + generate_uuid()
|
|
||||||
self.token = None
|
|
||||||
self.keytab = keytab
|
|
||||||
self.hostname = hostname
|
|
||||||
if self.keytab:
|
|
||||||
os.environ['KRB5_CLIENT_KTNAME'] = self.keytab
|
|
||||||
else:
|
|
||||||
LOG.warning(_LW('No IPA client kerberos keytab file given'))
|
|
||||||
|
|
||||||
def __call__(self, request):
|
|
||||||
if not self.token:
|
|
||||||
self.refresh_auth()
|
|
||||||
request.headers['Authorization'] = 'negotiate ' + self.token
|
|
||||||
return request
|
|
||||||
|
|
||||||
def refresh_auth(self):
|
|
||||||
service = "HTTP@" + self.hostname
|
|
||||||
flags = kerberos.GSS_C_MUTUAL_FLAG | kerberos.GSS_C_SEQUENCE_FLAG
|
|
||||||
try:
|
|
||||||
(_, vc) = kerberos.authGSSClientInit(service, flags)
|
|
||||||
except kerberos.GSSError as e:
|
|
||||||
LOG.error(_LE("caught kerberos exception %r") % e)
|
|
||||||
raise IPAAuthError(str(e))
|
|
||||||
try:
|
|
||||||
kerberos.authGSSClientStep(vc, "")
|
|
||||||
except kerberos.GSSError as e:
|
|
||||||
LOG.error(_LE("caught kerberos exception %r") % e)
|
|
||||||
raise IPAAuthError(str(e))
|
|
||||||
self.token = kerberos.authGSSClientResponse(vc)
|
|
|
@ -1,153 +0,0 @@
|
||||||
# Copyright (C) 2013 eNovance SAS <licensing@enovance.com>
|
|
||||||
#
|
|
||||||
# Author: Artom Lifshitz <artom.lifshitz@enovance.com>
|
|
||||||
#
|
|
||||||
# Licensed under the Apache License, Version 2.0 (the "License"); you may
|
|
||||||
# not use this file except in compliance with the License. You may obtain
|
|
||||||
# a copy of the License at
|
|
||||||
#
|
|
||||||
# http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
#
|
|
||||||
# Unless required by applicable law or agreed to in writing, software
|
|
||||||
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
|
||||||
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
|
||||||
# License for the specific language governing permissions and limitations
|
|
||||||
# under the License.
|
|
||||||
|
|
||||||
import logging
|
|
||||||
|
|
||||||
from oslo_config import cfg
|
|
||||||
from oslo_utils import excutils
|
|
||||||
|
|
||||||
from designate import backend
|
|
||||||
from designate.backend import base
|
|
||||||
|
|
||||||
|
|
||||||
LOG = logging.getLogger(__name__)
|
|
||||||
CFG_GROUP = 'backend:multi'
|
|
||||||
|
|
||||||
|
|
||||||
class MultiBackend(base.Backend):
|
|
||||||
"""
|
|
||||||
Multi-backend backend
|
|
||||||
|
|
||||||
This backend dispatches calls to a master backend and a slave backend.
|
|
||||||
It enforces master/slave ordering semantics as follows:
|
|
||||||
|
|
||||||
Creates for tsigkeys, servers and domains are done on the master first,
|
|
||||||
then on the slave.
|
|
||||||
|
|
||||||
Updates for tsigkeys, servers and domains and all operations on records
|
|
||||||
are done on the master only. It's assumed masters and slaves use an
|
|
||||||
external mechanism to sync existing domains, most likely XFR.
|
|
||||||
|
|
||||||
Deletes are done on the slave first, then on the master.
|
|
||||||
|
|
||||||
If the create on the slave fails, the domain/tsigkey/server is deleted from
|
|
||||||
the master. If delete on the master fails, the domain/tdigkey/server is
|
|
||||||
recreated on the slave.
|
|
||||||
"""
|
|
||||||
__plugin_name__ = 'multi'
|
|
||||||
|
|
||||||
@classmethod
|
|
||||||
def get_cfg_opts(cls):
|
|
||||||
group = cfg.OptGroup(
|
|
||||||
name=CFG_GROUP, title="Configuration for multi-backend Backend"
|
|
||||||
)
|
|
||||||
|
|
||||||
opts = [
|
|
||||||
cfg.StrOpt('master', default='fake', help='Master backend'),
|
|
||||||
cfg.StrOpt('slave', default='fake', help='Slave backend'),
|
|
||||||
]
|
|
||||||
|
|
||||||
return [(group, opts)]
|
|
||||||
|
|
||||||
def __init__(self, central_service):
|
|
||||||
super(MultiBackend, self).__init__(central_service)
|
|
||||||
self.central = central_service
|
|
||||||
self.master = backend.get_backend(cfg.CONF[CFG_GROUP].master,
|
|
||||||
central_service)
|
|
||||||
self.slave = backend.get_backend(cfg.CONF[CFG_GROUP].slave,
|
|
||||||
central_service)
|
|
||||||
|
|
||||||
def start(self):
|
|
||||||
self.master.start()
|
|
||||||
self.slave.start()
|
|
||||||
|
|
||||||
def stop(self):
|
|
||||||
self.slave.stop()
|
|
||||||
self.master.stop()
|
|
||||||
|
|
||||||
def create_tsigkey(self, context, tsigkey):
|
|
||||||
self.master.create_tsigkey(context, tsigkey)
|
|
||||||
try:
|
|
||||||
self.slave.create_tsigkey(context, tsigkey)
|
|
||||||
except Exception:
|
|
||||||
with excutils.save_and_reraise_exception():
|
|
||||||
self.master.delete_tsigkey(context, tsigkey)
|
|
||||||
|
|
||||||
def update_tsigkey(self, context, tsigkey):
|
|
||||||
self.master.update_tsigkey(context, tsigkey)
|
|
||||||
|
|
||||||
def delete_tsigkey(self, context, tsigkey):
|
|
||||||
self.slave.delete_tsigkey(context, tsigkey)
|
|
||||||
try:
|
|
||||||
self.master.delete_tsigkey(context, tsigkey)
|
|
||||||
except Exception:
|
|
||||||
with excutils.save_and_reraise_exception():
|
|
||||||
self.slave.create_tsigkey(context, tsigkey)
|
|
||||||
|
|
||||||
def create_zone(self, context, zone):
|
|
||||||
self.master.create_zone(context, zone)
|
|
||||||
try:
|
|
||||||
self.slave.create_zone(context, zone)
|
|
||||||
except Exception:
|
|
||||||
with excutils.save_and_reraise_exception():
|
|
||||||
self.master.delete_zone(context, zone)
|
|
||||||
|
|
||||||
def update_zone(self, context, zone):
|
|
||||||
self.master.update_zone(context, zone)
|
|
||||||
|
|
||||||
def delete_zone(self, context, zone):
|
|
||||||
# Fetch the full zone from Central first, as we may
|
|
||||||
# have to recreate it on slave if delete on master fails
|
|
||||||
deleted_context = context.deepcopy()
|
|
||||||
deleted_context.show_deleted = True
|
|
||||||
|
|
||||||
full_domain = self.central.find_zone(
|
|
||||||
deleted_context, {'id': zone['id']})
|
|
||||||
|
|
||||||
self.slave.delete_zone(context, zone)
|
|
||||||
try:
|
|
||||||
self.master.delete_zone(context, zone)
|
|
||||||
except Exception:
|
|
||||||
with excutils.save_and_reraise_exception():
|
|
||||||
self.slave.create_zone(context, zone)
|
|
||||||
|
|
||||||
[self.slave.create_record(context, zone, record)
|
|
||||||
for record in self.central.find_records(
|
|
||||||
context, {'domain_id': full_domain['id']})]
|
|
||||||
|
|
||||||
def create_recordset(self, context, zone, recordset):
|
|
||||||
self.master.create_recordset(context, zone, recordset)
|
|
||||||
|
|
||||||
def update_recordset(self, context, zone, recordset):
|
|
||||||
self.master.update_recordset(context, zone, recordset)
|
|
||||||
|
|
||||||
def delete_recordset(self, context, zone, recordset):
|
|
||||||
self.master.delete_recordset(context, zone, recordset)
|
|
||||||
|
|
||||||
def create_record(self, context, zone, recordset, record):
|
|
||||||
self.master.create_record(context, zone, recordset, record)
|
|
||||||
|
|
||||||
def update_record(self, context, zone, recordset, record):
|
|
||||||
self.master.update_record(context, zone, recordset, record)
|
|
||||||
|
|
||||||
def delete_record(self, context, zone, recordset, record):
|
|
||||||
self.master.delete_record(context, zone, recordset, record)
|
|
||||||
|
|
||||||
def ping(self, context):
|
|
||||||
return {
|
|
||||||
'master': self.master.ping(context),
|
|
||||||
'slave': self.slave.ping(context)
|
|
||||||
}
|
|
|
@ -1,39 +0,0 @@
|
||||||
# Copyright 2016 Rackspace, Inc.
|
|
||||||
#
|
|
||||||
# Author: Tim Simmons <tim.simmons@rackspace.com>
|
|
||||||
#
|
|
||||||
# Licensed under the Apache License, Version 2.0 (the "License"); you may
|
|
||||||
# not use this file except in compliance with the License. You may obtain
|
|
||||||
# a copy of the License at
|
|
||||||
#
|
|
||||||
# http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
#
|
|
||||||
# Unless required by applicable law or agreed to in writing, software
|
|
||||||
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
|
||||||
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
|
||||||
# License for the specific language governing permissions and limitations
|
|
||||||
# under the License.
|
|
||||||
"""
|
|
||||||
This dumb script allows you to see what's being dumped onto
|
|
||||||
the notifications.info queue
|
|
||||||
|
|
||||||
nabbed from:
|
|
||||||
https://pika.readthedocs.io/en/latest/examples/blocking_consume.html
|
|
||||||
"""
|
|
||||||
import pika
|
|
||||||
|
|
||||||
|
|
||||||
def on_message(channel, method_frame, header_frame, body):
|
|
||||||
print(method_frame.delivery_tag)
|
|
||||||
print(body)
|
|
||||||
channel.basic_ack(delivery_tag=method_frame.delivery_tag)
|
|
||||||
|
|
||||||
|
|
||||||
connection = pika.BlockingConnection()
|
|
||||||
channel = connection.channel()
|
|
||||||
channel.basic_consume(on_message, 'notifications.info')
|
|
||||||
try:
|
|
||||||
channel.start_consuming()
|
|
||||||
except KeyboardInterrupt:
|
|
||||||
channel.stop_consuming()
|
|
||||||
connection.close()
|
|
|
@ -1,22 +0,0 @@
|
||||||
*.pyc
|
|
||||||
*.dat
|
|
||||||
TAGS
|
|
||||||
*.egg
|
|
||||||
*.egg-info
|
|
||||||
build
|
|
||||||
.coverage
|
|
||||||
.tox
|
|
||||||
cover
|
|
||||||
venv
|
|
||||||
.venv
|
|
||||||
*.sublime-workspace
|
|
||||||
*.sqlite
|
|
||||||
var/*
|
|
||||||
etc/*.conf
|
|
||||||
etc/*.ini
|
|
||||||
AUTHORS
|
|
||||||
ChangeLog
|
|
||||||
doc/source/api/*
|
|
||||||
doc/build/*
|
|
||||||
dist
|
|
||||||
designate_ext_samplehandler/versioninfo
|
|
|
@ -1,11 +0,0 @@
|
||||||
include AUTHORS
|
|
||||||
include ChangeLog
|
|
||||||
include designate_ext_samplehandler/versioninfo
|
|
||||||
include *.txt *.ini *.cfg *.rst *.md
|
|
||||||
|
|
||||||
exclude .gitignore
|
|
||||||
exclude .gitreview
|
|
||||||
exclude *.sublime-project
|
|
||||||
|
|
||||||
global-exclude *.pyc
|
|
||||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue