..
      Copyright 2010 OpenStack Foundation
      All Rights Reserved.

      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.

Welcome to Searchlight's documentation!
=======================================

The Searchlight project provides indexing and search capabilities across
OpenStack resources. Its goal is to achieve high performance and flexible
querying combined with near real-time indexing. It uses
`Elasticsearch <http://http://www.elasticsearch.org/>`_, a real-time
distributed indexing and search engine built on Apache Lucene, but adds
OpenStack authentication and Role Based Access Control to provide appropriate
protection of data.

Searchlight, as with all OpenStack projects, is written with the following design
guidelines in mind:

* **Microservice based architecture**: Quickly add new behaviors
* **Highly available**: Scale to very serious workloads
* **Fault tolerant**: Isolated processes avoid cascading failures
* **Recoverable**: Failures should be easy to diagnose, debug, and rectify
* **Open standards**: Be a reference implementation for a community-driven api

This documentation is generated by the Sphinx toolkit using `tox -e docs` and
lives in the source tree.

Additional documentation on Searchlight can be found on the `OpenStack wiki`_.

.. _`OpenStack wiki`: https://wiki.openstack.org/wiki/Searchlight

Indexes
-------
.. toctree::
   :maxdepth: 2

   user/index
   admin/index
   install/index
   configuration/index
   contributor/index
   cli/index


Contributing
------------

.. toctree::
   :maxdepth: 2

   contributor/feature-requests-bugs
   contributor/authoring-plugins

Overview
--------

.. toctree::
   :maxdepth: 2

   admin/architecture
   user/searchlightapi
   admin/indexingservice
   configuration/authentication

Client and UI
^^^^^^^^^^^^^

* `Horizon UI Plugin`_
* `OpenStack Client Plugin`_

.. _`Horizon UI Plugin`: https://git.openstack.org/cgit/openstack/searchlight-ui
.. _`OpenStack Client Plugin`: https://git.openstack.org/cgit/openstack/python-searchlightclient

Search plugins
--------------

The search service determines the type of information that is indexed and
searchable via a plugin mechanism.

.. toctree::
   :maxdepth: 2

   configuration/plugins
   contributor/authoring-plugins

See each plugin below for detailed information about specific plugins:

.. toctree::
   :maxdepth: 2
   :glob:

   admin/plugins/*

Installation and Setup
----------------------
.. toctree::
   :maxdepth: 2

   install/dev-environment
   install/elasticsearch
   install/uwsgi
