Commits

Lars Holm Nielsen committed 51e4233

Updated documentation and submitted package to PyPI.

  • Participants
  • Parent commits 1d8d069

Comments (0)

Files changed (2)

+About
+-----
+``invenio-devserver'' is an HTTP server for Invenio with automatic code reloading,
+useful when developing for [[http://invenio-software.org/][Invenio]]. It also 
+includes a mail debug server which prints all incoming emails to the console.
+
+Invenio is a free software suite enabling you to run your own digital library 
+or document repository on the web. See more on http://invenio-software.org/.
+
+Installation
+------------
+You can install invenio-devserver with ``pip install invenio-devserver``, or you
+can use ``easy_install``.
+
 Requirements
 ------------
- * Werkzeug
-pip install werkzeug
- * Mock (optional): to intercept errors and display them on stdout
-pip install mock
-
-Options to set before use
--------------------------
- * Invenio repository path (eventually Inspire too)
- SRC_PATH = [
-    "/Users/osso/src/invenio",
-    "/Users/osso/src/inspire",
-]
- * Invenio install path
-INSTALL_PATH = "/opt/invenio"
-
-How to use it
+ * `Invenio <http://invenio-software.org/wiki/Installation>`_
+ * ``Werkzeug''
+ * ``mock'' (optional): to intercept errors and display them on stdout
+
+Both ``Werkzeug'' and ``mock'' will be automatically installed when using PIP.  
+
+Configuration
 -------------
+You need to tell ``invenio-devserver'' where your Invenio source code and 
+installation lives. Add config_local.py to your site-packages directory with 
+the following::
+
+	SRC_PATH = [
+	    "~/src/invenio",
+	    "~/src/inspire", # (only needed if you have several project)
+	]
+	INSTALL_PATH = "/opt/invenio"
+
+If you don't specify ``SRC_PATH'' or ``INSTALL_PATH'' they will be guessed:
+
+  * If you are in an activated virtualenv the ``INSTALL_PATH'' is set to 
+    ``VIRTUAL_ENV'' environment variable. 
+  * ``SRC_PATH'' defaults to ``~/src/invenio/''.
+  * If you are using ``invenio-devscripts'', ``SRC_PATH'' and ``INSTALL_PATH'' 
+    will be set to the environment variables ``CFG_INVENIO_SRC'' and 
+    ``CFG_INVENIO_PREFIX' respectively.
+
+Please see ``src/invenio_devserver/config.py'' for further possible settings.
+
+Usage ``serve''
+---------------
+If the Invenio installation is in a virtualenv, activate it and run::
+
+	$ serve
+	HTTP Server mode with reload mode
+	 * Running on http://localhost:4000/
+	 * Spawning worker
+	 * Ready
+
+If the Invenio installation is under your user run::
+
+	$ python serve.py
+
+If the Invenio installation is under another user (e.g wwww), you can use
+	
+	$ sudo -u www python serve.py
+
+The following options for ``serve'' are available::
+
+	$ serve --help
+	Usage: python serve.py [-bp]
+	
+	Invenio web server for development
+	
+	Options:
+	  -h, --help       show this help message and exit
+	  -b BIND_ADDRESS  Address to bind to
+	  -p BIND_PORT     Port to bind to
+	  --no-reload      Disable automatic reloading when a source file is changed
+	  --no-http        Disable http server, only update invenio install
+	  --buffer-output  Buffer output to display to display debug pages
+	  --pdb            Drop to python debugger on errors
+	  -s SRC_PATH      Source folder (one or more)
+	  -o INSTALL_PATH  Path to Invenio installation.
+
+
+Usage ``mailserve''
+-------------------
+If the Invenio installation is in a virtualenv, activate it and run::
+
+	$ mailserve
+	Remember to set the two following settings in invenio-local.conf:
+	
+	CFG_MISCUTIL_SMTP_HOST=127.0.0.1
+	CFG_MISCUTIL_SMTP_PORT=1025
+	
+	Now accepting mail at 127.0.0.1:1025 (hit CONTROL-C to stop)
 
-If the invenio install is under your user, it is as simple as
-$ python serve.py
 
-If the invenio install is under another user (e.g wwww), you can use
-$ sudo -u www python serve.py
+The following options for ``mailserve'' are available::
+	Usage: mailserve [-bp]
+	
+	Invenio mail server for development
+	
+	Options:
+	  -h, --help       show this help message and exit
+	  -b BIND_ADDRESS  Address to bind to
+	  -p BIND_PORT     Port to bind to
 # -*- coding: utf-8 -*-
 
+import os
 from setuptools import setup, find_packages
 
+def read(fname):
+    return open(os.path.join(os.path.dirname(__file__), fname)).read()
+
 setup(
     name='invenio-devserver',
     version='0.1',
             'mailserve = invenio_devserver.mailserve:main',
         ],
     },
-)
+
+    # PyPI metadata
+    author="Alessio Deiana",
+    author_email="alessio.deiana@cern.ch",
+    description=("An HTTP server for Invenio with automatic code reloading"),
+    long_description=read('README'),
+    license="GPL",
+    keywords="invenio http server",
+    url="https://bitbucket.org/osso/invenio-devserver",
+    classifiers=[
+        "Development Status :: 3 - Alpha",
+        "Intended Audience :: Developers",
+        "Topic :: Utilities",
+        "Topic :: Internet :: WWW/HTTP :: HTTP Servers",
+        "Topic :: Internet :: WWW/HTTP :: WSGI :: Server",
+        "License :: OSI Approved :: GNU General Public License (GPL)",
+    ],
+)