summaryrefslogtreecommitdiff
path: root/README.rst
diff options
context:
space:
mode:
authorTin Lam <tl3438@att.com>2016-04-08 18:17:44 -0500
committerTin Lam <tl3438@att.com>2016-04-12 17:46:56 -0500
commit0e7fca576cee81dd6ca8774760cb880c3fff9c1c (patch)
tree988995b35d376753235bbe12c3dc83bbe0546689 /README.rst
parent572be24cae23e6ea23e92c700e31c90f80b8a115 (diff)
downloadswift-0e7fca576cee81dd6ca8774760cb880c3fff9c1c.tar.gz
Convert README.md to README.rst
Change-Id: I223890bd4ffe469becc2127f9362243cdb52bc08 Closes-Bug: #1567026
Diffstat (limited to 'README.rst')
-rw-r--r--README.rst100
1 files changed, 100 insertions, 0 deletions
diff --git a/README.rst b/README.rst
new file mode 100644
index 000000000..aba20cb90
--- /dev/null
+++ b/README.rst
@@ -0,0 +1,100 @@
+Swift
+=====
+
+A distributed object storage system designed to scale from a single
+machine to thousands of servers. Swift is optimized for multi-tenancy
+and high concurrency. Swift is ideal for backups, web and mobile
+content, and any other unstructured data that can grow without bound.
+
+Swift provides a simple, REST-based API fully documented at
+http://docs.openstack.org/.
+
+Swift was originally developed as the basis for Rackspace's Cloud Files
+and was open-sourced in 2010 as part of the OpenStack project. It has
+since grown to include contributions from many companies and has spawned
+a thriving ecosystem of 3rd party tools. Swift's contributors are listed
+in the AUTHORS file.
+
+Docs
+----
+
+To build documentation install sphinx (``pip install sphinx``), run
+``python setup.py build_sphinx``, and then browse to
+/doc/build/html/index.html. These docs are auto-generated after every
+commit and available online at
+http://docs.openstack.org/developer/swift/.
+
+For Developers
+--------------
+
+The best place to get started is the `"SAIO - Swift All In
+One" <http://docs.openstack.org/developer/swift/development_saio.html>`__.
+This document will walk you through setting up a development cluster of
+Swift in a VM. The SAIO environment is ideal for running small-scale
+tests against swift and trying out new features and bug fixes.
+
+You can run unit tests with ``.unittests`` and functional tests with
+``.functests``.
+
+If you would like to start contributing, check out these
+`notes <CONTRIBUTING.md>`__ to help you get started.
+
+Code Organization
+~~~~~~~~~~~~~~~~~
+
+- bin/: Executable scripts that are the processes run by the deployer
+- doc/: Documentation
+- etc/: Sample config files
+- swift/: Core code
+
+ - account/: account server
+ - common/: code shared by different modules
+
+ - middleware/: "standard", officially-supported middleware
+ - ring/: code implementing Swift's ring
+
+ - container/: container server
+ - obj/: object server
+ - proxy/: proxy server
+
+- test/: Unit and functional tests
+
+Data Flow
+~~~~~~~~~
+
+Swift is a WSGI application and uses eventlet's WSGI server. After the
+processes are running, the entry point for new requests is the
+``Application`` class in ``swift/proxy/server.py``. From there, a
+controller is chosen, and the request is processed. The proxy may choose
+to forward the request to a back- end server. For example, the entry
+point for requests to the object server is the ``ObjectController``
+class in ``swift/obj/server.py``.
+
+For Deployers
+-------------
+
+Deployer docs are also available at
+http://docs.openstack.org/developer/swift/. A good starting point is at
+http://docs.openstack.org/developer/swift/deployment\_guide.html
+
+You can run functional tests against a swift cluster with
+``.functests``. These functional tests require ``/etc/swift/test.conf``
+to run. A sample config file can be found in this source tree in
+``test/sample.conf``.
+
+For Client Apps
+---------------
+
+For client applications, official Python language bindings are provided
+at http://github.com/openstack/python-swiftclient.
+
+Complete API documentation at
+http://docs.openstack.org/api/openstack-object-storage/1.0/content/
+
+--------------
+
+For more information come hang out in #openstack-swift on freenode.
+
+Thanks,
+
+The Swift Development Team