1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76
|
From: Federico Ceratto <federico@debian.org>
Date: Sun, 15 Dec 2013 18:07:11 +0000
Subject: Add CLI manpage
---
docs/cli.rst | 46 ++++++++++++++++++++++++++++++++++++++++++++++
docs/conf.py | 6 ++++++
2 files changed, 52 insertions(+)
create mode 100755 docs/cli.rst
diff --git a/docs/cli.rst b/docs/cli.rst
new file mode 100755
index 0000000..39e2d2c
--- /dev/null
+++ b/docs/cli.rst
@@ -0,0 +1,46 @@
+Command Line Interface
+--------------------------------------------------------------------------------
+
+.. versionadded: 0.10
+
+Starting with version 0.10 you can use bottle as a command-line tool:
+
+.. code-block:: console
+
+ $ python -m bottle
+
+ Usage: bottle.py [options] package.module:app
+
+ Options:
+ -h, --help show this help message and exit
+ --version show version number.
+ -b ADDRESS, --bind=ADDRESS
+ bind socket to ADDRESS.
+ -s SERVER, --server=SERVER
+ use SERVER as backend.
+ -p PLUGIN, --plugin=PLUGIN
+ install additional plugin/s.
+ --debug start server in debug mode.
+ --reload auto-reload on file changes.
+
+The `ADDRESS` field takes an IP address or an IP:PORT pair and defaults to ``localhost:8080``. The other parameters should be self-explanatory.
+
+Both plugins and applications are specified via import expressions. These consist of an import path (e.g. ``package.module``) and an expression to be evaluated in the namespace of that module, separated by a colon. See :func:`load` for details. Here are some examples:
+
+.. code-block:: console
+
+ # Grab the 'app' object from the 'myapp.controller' module and
+ # start a paste server on port 80 on all interfaces.
+ python -m bottle -server paste -bind 0.0.0.0:80 myapp.controller:app
+
+ # Start a self-reloading development server and serve the global
+ # default application. The routes are defined in 'test.py'
+ python -m bottle --debug --reload test
+
+ # Install a custom debug plugin with some parameters
+ python -m bottle --debug --reload --plugin 'utils:DebugPlugin(exc=True)'' test
+
+ # Serve an application that is created with 'myapp.controller.make_app()'
+ # on demand.
+ python -m bottle 'myapp.controller:make_app()''
+
diff --git a/docs/conf.py b/docs/conf.py
index 4ede58a..ded2274 100644
--- a/docs/conf.py
+++ b/docs/conf.py
@@ -20,3 +20,9 @@ intersphinx_mapping = {'python': ('http://docs.python.org/', None),
autodoc_member_order = 'bysource'
+man_pages = [
+ ('cli', 'bottle', u'command line interface', [
+ u'Marcel Hellkamp',
+ u'Federico Ceratto',
+ ], 1)
+]
|