From efaab7304b36ca4dab9ca08e2df7d2ffd75d5d3b Mon Sep 17 00:00:00 2001 From: Ramana Juvvadi Date: Thu, 12 May 2011 09:00:36 -0500 Subject: Modified the README and README.md --- README | 59 ++++++++++++++++---------------- README.md | 113 -------------------------------------------------------------- 2 files changed, 30 insertions(+), 142 deletions(-) delete mode 100644 README.md diff --git a/README b/README index 2dd74d01..e5e99288 100644 --- a/README +++ b/README @@ -24,44 +24,46 @@ Also included: * RemoteAuth - WSGI middleware that can be used in services (like Swift, Nova, and Glance) when Auth middleware is running remotely -DEPENDENCIES: -------------- +ENVIRONMENT & DEPENDENCIES: +--------------------------- +see pip-requires for dependency list +Setup: +Install http://pypi.python.org/pypi/setuptools + sudo easy_install pip + sudo pip install -r pip-requires -* bottle -* eventlet -* lxml -* Paste -* PasteDeploy -* PasteScript -* SQLAlchemy -* SQLite3 -* webob +RUNNING KEYSTONE: +----------------- +During development, you can simply run -SETUP: ------- + $ bin/keystone-auth -Install http://pypi.python.org/pypi/setuptools +It dumps stdout and stderr onto the terminal. - sudo easy_install bottle - sudo easy_install eventlet - sudo easy_install lxml - sudo easy_install paste - sudo easy_install pastedeploy - sudo easy_install pastescript - sudo easy_install pysqlite - sudo easy_install sqlalchemy - sudo easy_install webob -Or using pip: +RUNNING KEYSOTNE IN AS ROOT IN PRODUCTION +--------------------------------------------- +In production, stdout and stderr need to be closed and all theoutput needs tobe redirected to a log file. +Once the package is installed through setup tools, RPM, deb, or ebuild keystone-control is installed +as /usr/sbin/keystone-control. Typically, it will be started a script in /etc/init.d/keystoned - sudo pip install -r pip-requires +keystone-control can invoke keystone-auth and start the keystone daemon with + $ /usr/sbin/keystone-control auth start -RUNNING KEYSTONE: ------------------ +It writes the process id of the daemon into /var/run/keystone/keystine-auth.pid. he daemon can be stopped with + + $ /usr/sbin/keystone-control auth stop + +keystone-control has the infrastructure to start and stop multiple servers keystone-xxx -From the topdir +DEVELOPMENT OF keystone-control +------------------------------- + +During the development of keystone-control can be started as a user instead of root + +From the topdir $ bin/keystone-control --pid-file pidfile auth @@ -79,7 +81,6 @@ Also, keystone-control calls keystone-auth and it need to be in the PATH $ export PATH=/bin:$PATH - RUNNING TEST SERVICE: --------------------- diff --git a/README.md b/README.md deleted file mode 100644 index 0fb7c64e..00000000 --- a/README.md +++ /dev/null @@ -1,113 +0,0 @@ -Keystone: Identity Service -========================== - -Keystone is a proposed independent authentication service for [OpenStack](http://www.openstack.org). - -This initial proof of concept aims to address the current use cases in Swift and Nova which are: - -* REST-based, token auth for Swift -* many-to-many relationship between identity and tenant for Nova. - - -SERVICES: ---------- - -* Keystone - authentication service -* Auth_Token - WSGI middleware that can be used to handle token auth protocol (WSGI or remote proxy) -* Echo - A sample service that responds by returning call details - -Also included: - -* Auth_Basic - Stub for WSGI middleware that will be used to handle basic auth -* Auth_OpenID - Stub for WSGI middleware that will be used to handle openid auth protocol -* RemoteAuth - WSGI middleware that can be used in services (like Swift, Nova, and Glance) when Auth middleware is running remotely - - -ENVIRONMENT & DEPENDENCIES: ---------------------------- -see pip-requires for dependency list -Setup: -Install http://pypi.python.org/pypi/setuptools - sudo easy_install pip - sudo pip install -r pip-requires - - -RUNNING KEYSTONE: ------------------ - - $ cd bin - $ ./keystoned - - -RUNNING TEST SERVICE: ---------------------- - - Standalone stack (with Auth_Token) - $ cd echo/bin - $ ./echod - - Distributed stack (with RemoteAuth local and Auth_Token remote) - $ cd echo/bon - $ ./echod --remote - - in separate session - $ cd keystone/auth_protocols - $ python auth_token.py --remote - - -DEMO CLIENT: ---------------------- - $ cd echo/echo - $ python echo_client.py - Note: this requires tests data. See section TESTING for initializing data - - -TESTING -------- - -After starting keystone a keystone.db sqlite database should be created in the keystone folder. - -Add test data to the database: - - $ sqlite3 keystone/keystone.db < test/test_setup.sql - -To clean the test database - - $ sqlite3 keystone/keystone.db < test/kill.sql - -To run unit tests: - - $ python test/unit/test_identity.py - -To run client demo (with all auth middleware running locally on sample service): - - $ ./echo/bin/echod - $ python echo/echo/echo_client.py - - -To perform contract validation and load testing, use SoapUI (for now). - -Using SOAPUI: - -Download [SOAPUI](http://sourceforge.net/projects/soapui/files/): - -To Test Keystone Service: - -* File->Import Project -* Select tests/IdentitySOAPUI.xml -* Double click on "Keystone Tests" and press the green play (>) button - - -Unit Test on Identity Services ------------------------------- -In order to run the unit test on identity services: -* start the keystone server -* cat test_setup.sql |sqlite ../../keystone/keystone.db -* go to unit test/unit directory -* python test_identity.py - -For more on unit testing please refer - - python test_identity --help - - -- cgit