diff --git a/cinder/tests/tempest/README.rst b/cinder/tests/tempest/README.rst
index 47ed98e..71248f4 100644
--- a/cinder/tests/tempest/README.rst
+++ b/cinder/tests/tempest/README.rst
@@ -5,7 +5,7 @@
 This directory contains additional Cinder tempest tests.
 
 See the tempest plugin docs for information on using it:
-http://docs.openstack.org/developer/tempest/plugin.html#using-plugins
+https://docs.openstack.org/tempest/latest/plugin.html#using-plugins
 
 To run all tests from this plugin, install cinder into your environment. Then
 from the tempest directory run::
diff --git a/doc/source/admin/index.rst b/doc/source/admin/index.rst
deleted file mode 100644
index 37ec8e5..0000000
--- a/doc/source/admin/index.rst
+++ /dev/null
@@ -1,5 +0,0 @@
-====================
-Administrators guide
-====================
-
-Administrators guide of cinder_tempest_plugin.
diff --git a/doc/source/cli/index.rst b/doc/source/cli/index.rst
deleted file mode 100644
index e10dc82..0000000
--- a/doc/source/cli/index.rst
+++ /dev/null
@@ -1,5 +0,0 @@
-================================
-Command line interface reference
-================================
-
-CLI reference of cinder_tempest_plugin.
diff --git a/doc/source/conf.py b/doc/source/conf.py
deleted file mode 100755
index b5ee58b..0000000
--- a/doc/source/conf.py
+++ /dev/null
@@ -1,81 +0,0 @@
-# -*- coding: utf-8 -*-
-# 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 sys
-
-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.
-extensions = [
-    'sphinx.ext.autodoc',
-    'openstackdocstheme',
-    #'sphinx.ext.intersphinx',
-]
-
-# autodoc generation is a bit aggressive and a nuisance when doing heavy
-# text edit cycles.
-# execute "export SPHINX_DEBUG=1" in your terminal to disable
-
-# The suffix of source filenames.
-source_suffix = '.rst'
-
-# The master toctree document.
-master_doc = 'index'
-
-# General information about the project.
-project = u'cinder-tempest-plugin'
-copyright = u'2017, OpenStack Developers'
-
-# openstackdocstheme options
-repository_name = 'cinder_tempest_plugin/cinder_tempest_plugin'
-bug_project = 'cinder_tempest_plugin'
-bug_tag = ''
-
-# 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 = True
-
-# The name of the Pygments (syntax highlighting) style to use.
-pygments_style = 'sphinx'
-
-# -- 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'
-# html_static_path = ['static']
-html_theme = 'openstackdocs'
-
-# Output file base name for HTML help builder.
-htmlhelp_basename = '%sdoc' % project
-
-# Grouping the document tree into LaTeX files. List of tuples
-# (source start file, target name, title, author, documentclass
-# [howto/manual]).
-latex_documents = [
-    ('index',
-     '%s.tex' % project,
-     u'%s Documentation' % project,
-     u'OpenStack Developers', 'manual'),
-]
-
-# Example configuration for intersphinx: refer to the Python standard library.
-#intersphinx_mapping = {'http://docs.python.org/': None}
diff --git a/doc/source/configuration/index.rst b/doc/source/configuration/index.rst
deleted file mode 100644
index 074b9c7..0000000
--- a/doc/source/configuration/index.rst
+++ /dev/null
@@ -1,5 +0,0 @@
-=============
-Configuration
-=============
-
-Configuration of cinder_tempest_plugin.
diff --git a/doc/source/contributor/contributing.rst b/doc/source/contributor/contributing.rst
deleted file mode 100644
index 2aa0707..0000000
--- a/doc/source/contributor/contributing.rst
+++ /dev/null
@@ -1,4 +0,0 @@
-============
-Contributing
-============
-.. include:: ../../../CONTRIBUTING.rst
diff --git a/doc/source/contributor/index.rst b/doc/source/contributor/index.rst
deleted file mode 100644
index 036e449..0000000
--- a/doc/source/contributor/index.rst
+++ /dev/null
@@ -1,9 +0,0 @@
-===========================
- Contributor Documentation
-===========================
-
-.. toctree::
-   :maxdepth: 2
-
-   contributing
-
diff --git a/doc/source/index.rst b/doc/source/index.rst
deleted file mode 100644
index 0c9ae83..0000000
--- a/doc/source/index.rst
+++ /dev/null
@@ -1,30 +0,0 @@
-.. cinder_tempest_plugin documentation master file, created by
-   sphinx-quickstart on Tue Jul  9 22:26:36 2013.
-   You can adapt this file completely to your liking, but it should at least
-   contain the root `toctree` directive.
-
-=====================================================
-Welcome to the documentation of cinder_tempest_plugin
-=====================================================
-
-Contents:
-
-.. toctree::
-   :maxdepth: 2
-
-   readme
-   install/index
-   library/index
-   contributor/index
-   configuration/index
-   cli/index
-   user/index
-   admin/index
-   reference/index
-
-Indices and tables
-==================
-
-* :ref:`genindex`
-* :ref:`modindex`
-* :ref:`search`
diff --git a/doc/source/install/common_configure.rst b/doc/source/install/common_configure.rst
deleted file mode 100644
index 59ee597..0000000
--- a/doc/source/install/common_configure.rst
+++ /dev/null
@@ -1,10 +0,0 @@
-2. Edit the ``/etc/cinder_tempest_plugin/cinder_tempest_plugin.conf`` file and complete the following
-   actions:
-
-   * In the ``[database]`` section, configure database access:
-
-     .. code-block:: ini
-
-        [database]
-        ...
-        connection = mysql+pymysql://cinder_tempest_plugin:CINDER_TEMPEST_PLUGIN_DBPASS@controller/cinder_tempest_plugin
diff --git a/doc/source/install/common_prerequisites.rst b/doc/source/install/common_prerequisites.rst
deleted file mode 100644
index 45be927..0000000
--- a/doc/source/install/common_prerequisites.rst
+++ /dev/null
@@ -1,75 +0,0 @@
-Prerequisites
--------------
-
-Before you install and configure the volume service,
-you must create a database, service credentials, and API endpoints.
-
-#. To create the database, complete these steps:
-
-   * Use the database access client to connect to the database
-     server as the ``root`` user:
-
-     .. code-block:: console
-
-        $ mysql -u root -p
-
-   * Create the ``cinder_tempest_plugin`` database:
-
-     .. code-block:: none
-
-        CREATE DATABASE cinder_tempest_plugin;
-
-   * Grant proper access to the ``cinder_tempest_plugin`` database:
-
-     .. code-block:: none
-
-        GRANT ALL PRIVILEGES ON cinder_tempest_plugin.* TO 'cinder_tempest_plugin'@'localhost' \
-          IDENTIFIED BY 'CINDER_TEMPEST_PLUGIN_DBPASS';
-        GRANT ALL PRIVILEGES ON cinder_tempest_plugin.* TO 'cinder_tempest_plugin'@'%' \
-          IDENTIFIED BY 'CINDER_TEMPEST_PLUGIN_DBPASS';
-
-     Replace ``CINDER_TEMPEST_PLUGIN_DBPASS`` with a suitable password.
-
-   * Exit the database access client.
-
-     .. code-block:: none
-
-        exit;
-
-#. Source the ``admin`` credentials to gain access to
-   admin-only CLI commands:
-
-   .. code-block:: console
-
-      $ . admin-openrc
-
-#. To create the service credentials, complete these steps:
-
-   * Create the ``cinder_tempest_plugin`` user:
-
-     .. code-block:: console
-
-        $ openstack user create --domain default --password-prompt cinder_tempest_plugin
-
-   * Add the ``admin`` role to the ``cinder_tempest_plugin`` user:
-
-     .. code-block:: console
-
-        $ openstack role add --project service --user cinder_tempest_plugin admin
-
-   * Create the cinder_tempest_plugin service entities:
-
-     .. code-block:: console
-
-        $ openstack service create --name cinder_tempest_plugin --description "volume" volume
-
-#. Create the volume service API endpoints:
-
-   .. code-block:: console
-
-      $ openstack endpoint create --region RegionOne \
-        volume public http://controller:XXXX/vY/%\(tenant_id\)s
-      $ openstack endpoint create --region RegionOne \
-        volume internal http://controller:XXXX/vY/%\(tenant_id\)s
-      $ openstack endpoint create --region RegionOne \
-        volume admin http://controller:XXXX/vY/%\(tenant_id\)s
diff --git a/doc/source/install/get_started.rst b/doc/source/install/get_started.rst
deleted file mode 100644
index 7a7dac4..0000000
--- a/doc/source/install/get_started.rst
+++ /dev/null
@@ -1,9 +0,0 @@
-=======================
-volume service overview
-=======================
-The volume service provides...
-
-The volume service consists of the following components:
-
-``cinder_tempest_plugin-api`` service
-  Accepts and responds to end user compute API calls...
diff --git a/doc/source/install/index.rst b/doc/source/install/index.rst
deleted file mode 100644
index 79839c8..0000000
--- a/doc/source/install/index.rst
+++ /dev/null
@@ -1,17 +0,0 @@
-=================================
-volume service installation guide
-=================================
-
-.. toctree::
-   :maxdepth: 2
-
-   get_started.rst
-   install.rst
-   verify.rst
-   next-steps.rst
-
-The volume service (cinder_tempest_plugin) provides...
-
-This chapter assumes a working setup of OpenStack following the
-`OpenStack Installation Tutorial
-<https://docs.openstack.org/project-install-guide/ocata/>`_.
diff --git a/doc/source/install/install-obs.rst b/doc/source/install/install-obs.rst
deleted file mode 100644
index 7fc0227..0000000
--- a/doc/source/install/install-obs.rst
+++ /dev/null
@@ -1,34 +0,0 @@
-.. _install-obs:
-
-
-Install and configure for openSUSE and SUSE Linux Enterprise
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-This section describes how to install and configure the volume service
-for openSUSE Leap 42.1 and SUSE Linux Enterprise Server 12 SP1.
-
-.. include:: common_prerequisites.rst
-
-Install and configure components
---------------------------------
-
-#. Install the packages:
-
-   .. code-block:: console
-
-      # zypper --quiet --non-interactive install
-
-.. include:: common_configure.rst
-
-
-Finalize installation
----------------------
-
-Start the volume services and configure them to start when
-the system boots:
-
-.. code-block:: console
-
-   # systemctl enable openstack-cinder_tempest_plugin-api.service
-
-   # systemctl start openstack-cinder_tempest_plugin-api.service
diff --git a/doc/source/install/install-rdo.rst b/doc/source/install/install-rdo.rst
deleted file mode 100644
index 85740b1..0000000
--- a/doc/source/install/install-rdo.rst
+++ /dev/null
@@ -1,33 +0,0 @@
-.. _install-rdo:
-
-Install and configure for Red Hat Enterprise Linux and CentOS
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-
-This section describes how to install and configure the volume service
-for Red Hat Enterprise Linux 7 and CentOS 7.
-
-.. include:: common_prerequisites.rst
-
-Install and configure components
---------------------------------
-
-#. Install the packages:
-
-   .. code-block:: console
-
-      # yum install
-
-.. include:: common_configure.rst
-
-Finalize installation
----------------------
-
-Start the volume services and configure them to start when
-the system boots:
-
-.. code-block:: console
-
-   # systemctl enable openstack-cinder_tempest_plugin-api.service
-
-   # systemctl start openstack-cinder_tempest_plugin-api.service
diff --git a/doc/source/install/install-ubuntu.rst b/doc/source/install/install-ubuntu.rst
deleted file mode 100644
index d5e59df..0000000
--- a/doc/source/install/install-ubuntu.rst
+++ /dev/null
@@ -1,31 +0,0 @@
-.. _install-ubuntu:
-
-Install and configure for Ubuntu
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-This section describes how to install and configure the volume
-service for Ubuntu 14.04 (LTS).
-
-.. include:: common_prerequisites.rst
-
-Install and configure components
---------------------------------
-
-#. Install the packages:
-
-   .. code-block:: console
-
-      # apt-get update
-
-      # apt-get install
-
-.. include:: common_configure.rst
-
-Finalize installation
----------------------
-
-Restart the volume services:
-
-.. code-block:: console
-
-   # service openstack-cinder_tempest_plugin-api restart
diff --git a/doc/source/install/install.rst b/doc/source/install/install.rst
deleted file mode 100644
index 3c79c4d..0000000
--- a/doc/source/install/install.rst
+++ /dev/null
@@ -1,20 +0,0 @@
-.. _install:
-
-Install and configure
-~~~~~~~~~~~~~~~~~~~~~
-
-This section describes how to install and configure the
-volume service, code-named cinder_tempest_plugin, on the controller node.
-
-This section assumes that you already have a working OpenStack
-environment with at least the following components installed:
-.. (add the appropriate services here and further notes)
-
-Note that installation and configuration vary by distribution.
-
-.. toctree::
-   :maxdepth: 2
-
-   install-obs.rst
-   install-rdo.rst
-   install-ubuntu.rst
diff --git a/doc/source/install/next-steps.rst b/doc/source/install/next-steps.rst
deleted file mode 100644
index b18fab2..0000000
--- a/doc/source/install/next-steps.rst
+++ /dev/null
@@ -1,9 +0,0 @@
-.. _next-steps:
-
-Next steps
-~~~~~~~~~~
-
-Your OpenStack environment now includes the cinder_tempest_plugin service.
-
-To add additional services, see
-https://docs.openstack.org/project-install-guide/ocata/.
diff --git a/doc/source/install/verify.rst b/doc/source/install/verify.rst
deleted file mode 100644
index da5cd25..0000000
--- a/doc/source/install/verify.rst
+++ /dev/null
@@ -1,24 +0,0 @@
-.. _verify:
-
-Verify operation
-~~~~~~~~~~~~~~~~
-
-Verify operation of the volume service.
-
-.. note::
-
-   Perform these commands on the controller node.
-
-#. Source the ``admin`` project credentials to gain access to
-   admin-only CLI commands:
-
-   .. code-block:: console
-
-      $ . admin-openrc
-
-#. List service components to verify successful launch and registration
-   of each process:
-
-   .. code-block:: console
-
-      $ openstack volume service list
diff --git a/doc/source/library/index.rst b/doc/source/library/index.rst
deleted file mode 100644
index 274ba2a..0000000
--- a/doc/source/library/index.rst
+++ /dev/null
@@ -1,7 +0,0 @@
-========
-Usage
-========
-
-To use cinder_tempest_plugin in a project::
-
-    import cinder_tempest_plugin
diff --git a/doc/source/readme.rst b/doc/source/readme.rst
deleted file mode 100644
index a6210d3..0000000
--- a/doc/source/readme.rst
+++ /dev/null
@@ -1 +0,0 @@
-.. include:: ../../README.rst
diff --git a/doc/source/reference/index.rst b/doc/source/reference/index.rst
deleted file mode 100644
index c08ed8d..0000000
--- a/doc/source/reference/index.rst
+++ /dev/null
@@ -1,5 +0,0 @@
-==========
-References
-==========
-
-References of cinder_tempest_plugin.
diff --git a/doc/source/user/index.rst b/doc/source/user/index.rst
deleted file mode 100644
index b1d3cb0..0000000
--- a/doc/source/user/index.rst
+++ /dev/null
@@ -1,5 +0,0 @@
-===========
-Users guide
-===========
-
-Users guide of cinder_tempest_plugin.
