Showing
7 changed files
with
913 additions
and
0 deletions
docs/Makefile
0 → 100644
1 | +# Makefile for Sphinx documentation | ||
2 | +# | ||
3 | + | ||
4 | +# You can set these variables from the command line. | ||
5 | +SPHINXOPTS = | ||
6 | +SPHINXBUILD = sphinx-build | ||
7 | +PAPER = | ||
8 | +BUILDDIR = _build | ||
9 | + | ||
10 | +# User-friendly check for sphinx-build | ||
11 | +ifeq ($(shell which $(SPHINXBUILD) >/dev/null 2>&1; echo $$?), 1) | ||
12 | +$(error The '$(SPHINXBUILD)' command was not found. Make sure you have Sphinx installed, then set the SPHINXBUILD environment variable to point to the full path of the '$(SPHINXBUILD)' executable. Alternatively you can add the directory with the executable to your PATH. If you don't have Sphinx installed, grab it from http://sphinx-doc.org/) | ||
13 | +endif | ||
14 | + | ||
15 | +# Internal variables. | ||
16 | +PAPEROPT_a4 = -D latex_paper_size=a4 | ||
17 | +PAPEROPT_letter = -D latex_paper_size=letter | ||
18 | +ALLSPHINXOPTS = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) . | ||
19 | +# the i18n builder cannot share the environment and doctrees with the others | ||
20 | +I18NSPHINXOPTS = $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) . | ||
21 | + | ||
22 | +.PHONY: help clean html dirhtml singlehtml pickle json htmlhelp qthelp devhelp epub latex latexpdf text man changes linkcheck doctest coverage gettext | ||
23 | + | ||
24 | +help: | ||
25 | + @echo "Please use \`make <target>' where <target> is one of" | ||
26 | + @echo " html to make standalone HTML files" | ||
27 | + @echo " dirhtml to make HTML files named index.html in directories" | ||
28 | + @echo " singlehtml to make a single large HTML file" | ||
29 | + @echo " pickle to make pickle files" | ||
30 | + @echo " json to make JSON files" | ||
31 | + @echo " htmlhelp to make HTML files and a HTML help project" | ||
32 | + @echo " qthelp to make HTML files and a qthelp project" | ||
33 | + @echo " applehelp to make an Apple Help Book" | ||
34 | + @echo " devhelp to make HTML files and a Devhelp project" | ||
35 | + @echo " epub to make an epub" | ||
36 | + @echo " latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter" | ||
37 | + @echo " latexpdf to make LaTeX files and run them through pdflatex" | ||
38 | + @echo " latexpdfja to make LaTeX files and run them through platex/dvipdfmx" | ||
39 | + @echo " text to make text files" | ||
40 | + @echo " man to make manual pages" | ||
41 | + @echo " texinfo to make Texinfo files" | ||
42 | + @echo " info to make Texinfo files and run them through makeinfo" | ||
43 | + @echo " gettext to make PO message catalogs" | ||
44 | + @echo " changes to make an overview of all changed/added/deprecated items" | ||
45 | + @echo " xml to make Docutils-native XML files" | ||
46 | + @echo " pseudoxml to make pseudoxml-XML files for display purposes" | ||
47 | + @echo " linkcheck to check all external links for integrity" | ||
48 | + @echo " doctest to run all doctests embedded in the documentation (if enabled)" | ||
49 | + @echo " coverage to run coverage check of the documentation (if enabled)" | ||
50 | + | ||
51 | +clean: | ||
52 | + rm -rf $(BUILDDIR)/* | ||
53 | + | ||
54 | +html: | ||
55 | + $(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html | ||
56 | + @echo | ||
57 | + @echo "Build finished. The HTML pages are in $(BUILDDIR)/html." | ||
58 | + | ||
59 | +dirhtml: | ||
60 | + $(SPHINXBUILD) -b dirhtml $(ALLSPHINXOPTS) $(BUILDDIR)/dirhtml | ||
61 | + @echo | ||
62 | + @echo "Build finished. The HTML pages are in $(BUILDDIR)/dirhtml." | ||
63 | + | ||
64 | +singlehtml: | ||
65 | + $(SPHINXBUILD) -b singlehtml $(ALLSPHINXOPTS) $(BUILDDIR)/singlehtml | ||
66 | + @echo | ||
67 | + @echo "Build finished. The HTML page is in $(BUILDDIR)/singlehtml." | ||
68 | + | ||
69 | +pickle: | ||
70 | + $(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) $(BUILDDIR)/pickle | ||
71 | + @echo | ||
72 | + @echo "Build finished; now you can process the pickle files." | ||
73 | + | ||
74 | +json: | ||
75 | + $(SPHINXBUILD) -b json $(ALLSPHINXOPTS) $(BUILDDIR)/json | ||
76 | + @echo | ||
77 | + @echo "Build finished; now you can process the JSON files." | ||
78 | + | ||
79 | +htmlhelp: | ||
80 | + $(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) $(BUILDDIR)/htmlhelp | ||
81 | + @echo | ||
82 | + @echo "Build finished; now you can run HTML Help Workshop with the" \ | ||
83 | + ".hhp project file in $(BUILDDIR)/htmlhelp." | ||
84 | + | ||
85 | +qthelp: | ||
86 | + $(SPHINXBUILD) -b qthelp $(ALLSPHINXOPTS) $(BUILDDIR)/qthelp | ||
87 | + @echo | ||
88 | + @echo "Build finished; now you can run "qcollectiongenerator" with the" \ | ||
89 | + ".qhcp project file in $(BUILDDIR)/qthelp, like this:" | ||
90 | + @echo "# qcollectiongenerator $(BUILDDIR)/qthelp/kappa.qhcp" | ||
91 | + @echo "To view the help file:" | ||
92 | + @echo "# assistant -collectionFile $(BUILDDIR)/qthelp/kappa.qhc" | ||
93 | + | ||
94 | +applehelp: | ||
95 | + $(SPHINXBUILD) -b applehelp $(ALLSPHINXOPTS) $(BUILDDIR)/applehelp | ||
96 | + @echo | ||
97 | + @echo "Build finished. The help book is in $(BUILDDIR)/applehelp." | ||
98 | + @echo "N.B. You won't be able to view it unless you put it in" \ | ||
99 | + "~/Library/Documentation/Help or install it in your application" \ | ||
100 | + "bundle." | ||
101 | + | ||
102 | +devhelp: | ||
103 | + $(SPHINXBUILD) -b devhelp $(ALLSPHINXOPTS) $(BUILDDIR)/devhelp | ||
104 | + @echo | ||
105 | + @echo "Build finished." | ||
106 | + @echo "To view the help file:" | ||
107 | + @echo "# mkdir -p $$HOME/.local/share/devhelp/kappa" | ||
108 | + @echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/kappa" | ||
109 | + @echo "# devhelp" | ||
110 | + | ||
111 | +epub: | ||
112 | + $(SPHINXBUILD) -b epub $(ALLSPHINXOPTS) $(BUILDDIR)/epub | ||
113 | + @echo | ||
114 | + @echo "Build finished. The epub file is in $(BUILDDIR)/epub." | ||
115 | + | ||
116 | +latex: | ||
117 | + $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex | ||
118 | + @echo | ||
119 | + @echo "Build finished; the LaTeX files are in $(BUILDDIR)/latex." | ||
120 | + @echo "Run \`make' in that directory to run these through (pdf)latex" \ | ||
121 | + "(use \`make latexpdf' here to do that automatically)." | ||
122 | + | ||
123 | +latexpdf: | ||
124 | + $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex | ||
125 | + @echo "Running LaTeX files through pdflatex..." | ||
126 | + $(MAKE) -C $(BUILDDIR)/latex all-pdf | ||
127 | + @echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex." | ||
128 | + | ||
129 | +latexpdfja: | ||
130 | + $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex | ||
131 | + @echo "Running LaTeX files through platex and dvipdfmx..." | ||
132 | + $(MAKE) -C $(BUILDDIR)/latex all-pdf-ja | ||
133 | + @echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex." | ||
134 | + | ||
135 | +text: | ||
136 | + $(SPHINXBUILD) -b text $(ALLSPHINXOPTS) $(BUILDDIR)/text | ||
137 | + @echo | ||
138 | + @echo "Build finished. The text files are in $(BUILDDIR)/text." | ||
139 | + | ||
140 | +man: | ||
141 | + $(SPHINXBUILD) -b man $(ALLSPHINXOPTS) $(BUILDDIR)/man | ||
142 | + @echo | ||
143 | + @echo "Build finished. The manual pages are in $(BUILDDIR)/man." | ||
144 | + | ||
145 | +texinfo: | ||
146 | + $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo | ||
147 | + @echo | ||
148 | + @echo "Build finished. The Texinfo files are in $(BUILDDIR)/texinfo." | ||
149 | + @echo "Run \`make' in that directory to run these through makeinfo" \ | ||
150 | + "(use \`make info' here to do that automatically)." | ||
151 | + | ||
152 | +info: | ||
153 | + $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo | ||
154 | + @echo "Running Texinfo files through makeinfo..." | ||
155 | + make -C $(BUILDDIR)/texinfo info | ||
156 | + @echo "makeinfo finished; the Info files are in $(BUILDDIR)/texinfo." | ||
157 | + | ||
158 | +gettext: | ||
159 | + $(SPHINXBUILD) -b gettext $(I18NSPHINXOPTS) $(BUILDDIR)/locale | ||
160 | + @echo | ||
161 | + @echo "Build finished. The message catalogs are in $(BUILDDIR)/locale." | ||
162 | + | ||
163 | +changes: | ||
164 | + $(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) $(BUILDDIR)/changes | ||
165 | + @echo | ||
166 | + @echo "The overview file is in $(BUILDDIR)/changes." | ||
167 | + | ||
168 | +linkcheck: | ||
169 | + $(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) $(BUILDDIR)/linkcheck | ||
170 | + @echo | ||
171 | + @echo "Link check complete; look for any errors in the above output " \ | ||
172 | + "or in $(BUILDDIR)/linkcheck/output.txt." | ||
173 | + | ||
174 | +doctest: | ||
175 | + $(SPHINXBUILD) -b doctest $(ALLSPHINXOPTS) $(BUILDDIR)/doctest | ||
176 | + @echo "Testing of doctests in the sources finished, look at the " \ | ||
177 | + "results in $(BUILDDIR)/doctest/output.txt." | ||
178 | + | ||
179 | +coverage: | ||
180 | + $(SPHINXBUILD) -b coverage $(ALLSPHINXOPTS) $(BUILDDIR)/coverage | ||
181 | + @echo "Testing of coverage in the sources finished, look at the " \ | ||
182 | + "results in $(BUILDDIR)/coverage/python.txt." | ||
183 | + | ||
184 | +xml: | ||
185 | + $(SPHINXBUILD) -b xml $(ALLSPHINXOPTS) $(BUILDDIR)/xml | ||
186 | + @echo | ||
187 | + @echo "Build finished. The XML files are in $(BUILDDIR)/xml." | ||
188 | + | ||
189 | +pseudoxml: | ||
190 | + $(SPHINXBUILD) -b pseudoxml $(ALLSPHINXOPTS) $(BUILDDIR)/pseudoxml | ||
191 | + @echo | ||
192 | + @echo "Build finished. The pseudo-XML files are in $(BUILDDIR)/pseudoxml." |
docs/commands.rst
0 → 100644
1 | +Commands | ||
2 | +======== | ||
3 | + | ||
4 | +Kappa is a command line tool. The basic command format is: | ||
5 | + | ||
6 | +``kappa [options] <command> [optional command args]`` | ||
7 | + | ||
8 | +Available ``options`` are: | ||
9 | + | ||
10 | +* --config <config_file> to specify where to find the kappa config file. The | ||
11 | + default is to look in ``kappa.yml``. | ||
12 | +* --env <environment> to specify which environment in your config file you are | ||
13 | + using. The default is ``dev``. | ||
14 | +* --debug/--no-debug to turn on/off the debug logging. | ||
15 | +* --help to access command line help. | ||
16 | + | ||
17 | +And ``command`` is one of: | ||
18 | + | ||
19 | +* deploy | ||
20 | +* delete | ||
21 | +* invoke | ||
22 | +* tag | ||
23 | +* tail | ||
24 | +* event_sources | ||
25 | +* status | ||
26 | + | ||
27 | +Details of each command are provided below. | ||
28 | + | ||
29 | +deploy | ||
30 | +------ | ||
31 | + | ||
32 | +The ``deploy`` command does whatever is required to deploy the | ||
33 | +current version of your Lambda function such as creating/updating policies and | ||
34 | +roles and creating or updating the function itself. | ||
35 | + | ||
36 | +When the command is run the first time, it creates all of the relevant | ||
37 | +resources required. On subsequent invocations, it will attempt to determine | ||
38 | +what, if anything, has changed in the project and only update those resources. | ||
39 | + | ||
40 | +delete | ||
41 | +------ | ||
42 | + | ||
43 | +The ``delete`` command deletes the Lambda function, remove any event sources, | ||
44 | +delete the IAM policy and role. | ||
45 | + | ||
46 | +invoke | ||
47 | +------ | ||
48 | + | ||
49 | +The ``invoke`` command makes a synchronous call to your Lambda function, | ||
50 | +passing test data and display the resulting log data and any response returned | ||
51 | +from your Lambda function. | ||
52 | + | ||
53 | +tag | ||
54 | +--- | ||
55 | + | ||
56 | +The ``tag`` command tags the current version of the Lambda function with a | ||
57 | +symbolic tag. In Lambda terms, this creates an ``alias``. | ||
58 | + | ||
59 | +The ``tag`` command requires two additional positional arguments: | ||
60 | + | ||
61 | +* name - the name of tag or alias | ||
62 | +* description - the description of the alias | ||
63 | + | ||
64 | +tail | ||
65 | +---- | ||
66 | + | ||
67 | +The ``tail`` command displays the most recent log events for the function | ||
68 | +(remember that it can take several minutes before log events are available from CloudWatch) | ||
69 | + | ||
70 | +test | ||
71 | +---- | ||
72 | + | ||
73 | +The ``test`` command provides a way to run unit tests of code in your Lambda | ||
74 | +function. By default, it uses the ``nose`` Python testrunner but this can be | ||
75 | +overridden my specifying an alternative value using the ``unit_test_runner`` | ||
76 | +attribute in the kappa config file. | ||
77 | + | ||
78 | +When using nose, it expects to find standard Python unit tests in the | ||
79 | +``_tests/unit`` directory of your project. It will then run those tests in an | ||
80 | +environment that also makes any python modules in your ``_src`` directory | ||
81 | +available to the tests. | ||
82 | + | ||
83 | +event_sources | ||
84 | +------------- | ||
85 | + | ||
86 | +The ``event_sources`` command provides access the commands available for | ||
87 | +dealing with event sources. This command has an additional option: | ||
88 | + | ||
89 | +* --command - the command to run (add|update|enable|disable) | ||
90 | + | ||
91 | +status | ||
92 | +------ | ||
93 | + | ||
94 | +The ``status`` command displays summary information about functions, stacks, | ||
95 | +and event sources related to your project. |
docs/conf.py
0 → 100644
1 | +# -*- coding: utf-8 -*- | ||
2 | +# | ||
3 | +# kappa documentation build configuration file, created by | ||
4 | +# sphinx-quickstart on Tue Oct 13 12:59:27 2015. | ||
5 | +# | ||
6 | +# This file is execfile()d with the current directory set to its | ||
7 | +# containing dir. | ||
8 | +# | ||
9 | +# Note that not all possible configuration values are present in this | ||
10 | +# autogenerated file. | ||
11 | +# | ||
12 | +# All configuration values have a default; values that are commented out | ||
13 | +# serve to show the default. | ||
14 | + | ||
15 | +import sys | ||
16 | +import os | ||
17 | +import shlex | ||
18 | + | ||
19 | +# If extensions (or modules to document with autodoc) are in another directory, | ||
20 | +# add these directories to sys.path here. If the directory is relative to the | ||
21 | +# documentation root, use os.path.abspath to make it absolute, like shown here. | ||
22 | +#sys.path.insert(0, os.path.abspath('.')) | ||
23 | + | ||
24 | +# -- General configuration ------------------------------------------------ | ||
25 | + | ||
26 | +# If your documentation needs a minimal Sphinx version, state it here. | ||
27 | +#needs_sphinx = '1.0' | ||
28 | + | ||
29 | +# Add any Sphinx extension module names here, as strings. They can be | ||
30 | +# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom | ||
31 | +# ones. | ||
32 | +extensions = [ | ||
33 | + 'sphinx.ext.autodoc', | ||
34 | +] | ||
35 | + | ||
36 | +# Add any paths that contain templates here, relative to this directory. | ||
37 | +templates_path = ['_templates'] | ||
38 | + | ||
39 | +# The suffix(es) of source filenames. | ||
40 | +# You can specify multiple suffix as a list of string: | ||
41 | +# source_suffix = ['.rst', '.md'] | ||
42 | +source_suffix = '.rst' | ||
43 | + | ||
44 | +# The encoding of source files. | ||
45 | +#source_encoding = 'utf-8-sig' | ||
46 | + | ||
47 | +# The master toctree document. | ||
48 | +master_doc = 'index' | ||
49 | + | ||
50 | +# General information about the project. | ||
51 | +project = u'kappa' | ||
52 | +copyright = u'2015, Mitch Garnaat' | ||
53 | +author = u'Mitch Garnaat' | ||
54 | + | ||
55 | +# The version info for the project you're documenting, acts as replacement for | ||
56 | +# |version| and |release|, also used in various other places throughout the | ||
57 | +# built documents. | ||
58 | +# | ||
59 | +# The short X.Y version. | ||
60 | +version = '0.4.0' | ||
61 | +# The full version, including alpha/beta/rc tags. | ||
62 | +release = '0.4.0' | ||
63 | + | ||
64 | +# The language for content autogenerated by Sphinx. Refer to documentation | ||
65 | +# for a list of supported languages. | ||
66 | +# | ||
67 | +# This is also used if you do content translation via gettext catalogs. | ||
68 | +# Usually you set "language" from the command line for these cases. | ||
69 | +language = None | ||
70 | + | ||
71 | +# There are two options for replacing |today|: either, you set today to some | ||
72 | +# non-false value, then it is used: | ||
73 | +#today = '' | ||
74 | +# Else, today_fmt is used as the format for a strftime call. | ||
75 | +#today_fmt = '%B %d, %Y' | ||
76 | + | ||
77 | +# List of patterns, relative to source directory, that match files and | ||
78 | +# directories to ignore when looking for source files. | ||
79 | +exclude_patterns = ['_build'] | ||
80 | + | ||
81 | +# The reST default role (used for this markup: `text`) to use for all | ||
82 | +# documents. | ||
83 | +#default_role = None | ||
84 | + | ||
85 | +# If true, '()' will be appended to :func: etc. cross-reference text. | ||
86 | +#add_function_parentheses = True | ||
87 | + | ||
88 | +# If true, the current module name will be prepended to all description | ||
89 | +# unit titles (such as .. function::). | ||
90 | +#add_module_names = True | ||
91 | + | ||
92 | +# If true, sectionauthor and moduleauthor directives will be shown in the | ||
93 | +# output. They are ignored by default. | ||
94 | +#show_authors = False | ||
95 | + | ||
96 | +# The name of the Pygments (syntax highlighting) style to use. | ||
97 | +pygments_style = 'sphinx' | ||
98 | + | ||
99 | +# A list of ignored prefixes for module index sorting. | ||
100 | +#modindex_common_prefix = [] | ||
101 | + | ||
102 | +# If true, keep warnings as "system message" paragraphs in the built documents. | ||
103 | +#keep_warnings = False | ||
104 | + | ||
105 | +# If true, `todo` and `todoList` produce output, else they produce nothing. | ||
106 | +todo_include_todos = False | ||
107 | + | ||
108 | + | ||
109 | +# -- Options for HTML output ---------------------------------------------- | ||
110 | + | ||
111 | +# The theme to use for HTML and HTML Help pages. See the documentation for | ||
112 | +# a list of builtin themes. | ||
113 | +html_theme = 'alabaster' | ||
114 | + | ||
115 | +# Theme options are theme-specific and customize the look and feel of a theme | ||
116 | +# further. For a list of options available for each theme, see the | ||
117 | +# documentation. | ||
118 | +#html_theme_options = {} | ||
119 | + | ||
120 | +# Add any paths that contain custom themes here, relative to this directory. | ||
121 | +#html_theme_path = [] | ||
122 | + | ||
123 | +# The name for this set of Sphinx documents. If None, it defaults to | ||
124 | +# "<project> v<release> documentation". | ||
125 | +#html_title = None | ||
126 | + | ||
127 | +# A shorter title for the navigation bar. Default is the same as html_title. | ||
128 | +#html_short_title = None | ||
129 | + | ||
130 | +# The name of an image file (relative to this directory) to place at the top | ||
131 | +# of the sidebar. | ||
132 | +#html_logo = None | ||
133 | + | ||
134 | +# The name of an image file (within the static path) to use as favicon of the | ||
135 | +# docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32 | ||
136 | +# pixels large. | ||
137 | +#html_favicon = None | ||
138 | + | ||
139 | +# Add any paths that contain custom static files (such as style sheets) here, | ||
140 | +# relative to this directory. They are copied after the builtin static files, | ||
141 | +# so a file named "default.css" will overwrite the builtin "default.css". | ||
142 | +html_static_path = ['_static'] | ||
143 | + | ||
144 | +# Add any extra paths that contain custom files (such as robots.txt or | ||
145 | +# .htaccess) here, relative to this directory. These files are copied | ||
146 | +# directly to the root of the documentation. | ||
147 | +#html_extra_path = [] | ||
148 | + | ||
149 | +# If not '', a 'Last updated on:' timestamp is inserted at every page bottom, | ||
150 | +# using the given strftime format. | ||
151 | +#html_last_updated_fmt = '%b %d, %Y' | ||
152 | + | ||
153 | +# If true, SmartyPants will be used to convert quotes and dashes to | ||
154 | +# typographically correct entities. | ||
155 | +#html_use_smartypants = True | ||
156 | + | ||
157 | +# Custom sidebar templates, maps document names to template names. | ||
158 | +#html_sidebars = {} | ||
159 | + | ||
160 | +# Additional templates that should be rendered to pages, maps page names to | ||
161 | +# template names. | ||
162 | +#html_additional_pages = {} | ||
163 | + | ||
164 | +# If false, no module index is generated. | ||
165 | +#html_domain_indices = True | ||
166 | + | ||
167 | +# If false, no index is generated. | ||
168 | +#html_use_index = True | ||
169 | + | ||
170 | +# If true, the index is split into individual pages for each letter. | ||
171 | +#html_split_index = False | ||
172 | + | ||
173 | +# If true, links to the reST sources are added to the pages. | ||
174 | +#html_show_sourcelink = True | ||
175 | + | ||
176 | +# If true, "Created using Sphinx" is shown in the HTML footer. Default is True. | ||
177 | +#html_show_sphinx = True | ||
178 | + | ||
179 | +# If true, "(C) Copyright ..." is shown in the HTML footer. Default is True. | ||
180 | +#html_show_copyright = True | ||
181 | + | ||
182 | +# If true, an OpenSearch description file will be output, and all pages will | ||
183 | +# contain a <link> tag referring to it. The value of this option must be the | ||
184 | +# base URL from which the finished HTML is served. | ||
185 | +#html_use_opensearch = '' | ||
186 | + | ||
187 | +# This is the file name suffix for HTML files (e.g. ".xhtml"). | ||
188 | +#html_file_suffix = None | ||
189 | + | ||
190 | +# Language to be used for generating the HTML full-text search index. | ||
191 | +# Sphinx supports the following languages: | ||
192 | +# 'da', 'de', 'en', 'es', 'fi', 'fr', 'hu', 'it', 'ja' | ||
193 | +# 'nl', 'no', 'pt', 'ro', 'ru', 'sv', 'tr' | ||
194 | +#html_search_language = 'en' | ||
195 | + | ||
196 | +# A dictionary with options for the search language support, empty by default. | ||
197 | +# Now only 'ja' uses this config value | ||
198 | +#html_search_options = {'type': 'default'} | ||
199 | + | ||
200 | +# The name of a javascript file (relative to the configuration directory) that | ||
201 | +# implements a search results scorer. If empty, the default will be used. | ||
202 | +#html_search_scorer = 'scorer.js' | ||
203 | + | ||
204 | +# Output file base name for HTML help builder. | ||
205 | +htmlhelp_basename = 'kappadoc' | ||
206 | + | ||
207 | +# -- Options for LaTeX output --------------------------------------------- | ||
208 | + | ||
209 | +latex_elements = { | ||
210 | +# The paper size ('letterpaper' or 'a4paper'). | ||
211 | +#'papersize': 'letterpaper', | ||
212 | + | ||
213 | +# The font size ('10pt', '11pt' or '12pt'). | ||
214 | +#'pointsize': '10pt', | ||
215 | + | ||
216 | +# Additional stuff for the LaTeX preamble. | ||
217 | +#'preamble': '', | ||
218 | + | ||
219 | +# Latex figure (float) alignment | ||
220 | +#'figure_align': 'htbp', | ||
221 | +} | ||
222 | + | ||
223 | +# Grouping the document tree into LaTeX files. List of tuples | ||
224 | +# (source start file, target name, title, | ||
225 | +# author, documentclass [howto, manual, or own class]). | ||
226 | +latex_documents = [ | ||
227 | + (master_doc, 'kappa.tex', u'kappa Documentation', | ||
228 | + u'Mitch Garnaat', 'manual'), | ||
229 | +] | ||
230 | + | ||
231 | +# The name of an image file (relative to this directory) to place at the top of | ||
232 | +# the title page. | ||
233 | +#latex_logo = None | ||
234 | + | ||
235 | +# For "manual" documents, if this is true, then toplevel headings are parts, | ||
236 | +# not chapters. | ||
237 | +#latex_use_parts = False | ||
238 | + | ||
239 | +# If true, show page references after internal links. | ||
240 | +#latex_show_pagerefs = False | ||
241 | + | ||
242 | +# If true, show URL addresses after external links. | ||
243 | +#latex_show_urls = False | ||
244 | + | ||
245 | +# Documents to append as an appendix to all manuals. | ||
246 | +#latex_appendices = [] | ||
247 | + | ||
248 | +# If false, no module index is generated. | ||
249 | +#latex_domain_indices = True | ||
250 | + | ||
251 | + | ||
252 | +# -- Options for manual page output --------------------------------------- | ||
253 | + | ||
254 | +# One entry per manual page. List of tuples | ||
255 | +# (source start file, name, description, authors, manual section). | ||
256 | +man_pages = [ | ||
257 | + (master_doc, 'kappa', u'kappa Documentation', | ||
258 | + [author], 1) | ||
259 | +] | ||
260 | + | ||
261 | +# If true, show URL addresses after external links. | ||
262 | +#man_show_urls = False | ||
263 | + | ||
264 | + | ||
265 | +# -- Options for Texinfo output ------------------------------------------- | ||
266 | + | ||
267 | +# Grouping the document tree into Texinfo files. List of tuples | ||
268 | +# (source start file, target name, title, author, | ||
269 | +# dir menu entry, description, category) | ||
270 | +texinfo_documents = [ | ||
271 | + (master_doc, 'kappa', u'kappa Documentation', | ||
272 | + author, 'kappa', 'One line description of project.', | ||
273 | + 'Miscellaneous'), | ||
274 | +] | ||
275 | + | ||
276 | +# Documents to append as an appendix to all manuals. | ||
277 | +#texinfo_appendices = [] | ||
278 | + | ||
279 | +# If false, no module index is generated. | ||
280 | +#texinfo_domain_indices = True | ||
281 | + | ||
282 | +# How to display URL addresses: 'footnote', 'no', or 'inline'. | ||
283 | +#texinfo_show_urls = 'footnote' | ||
284 | + | ||
285 | +# If true, do not generate a @detailmenu in the "Top" node's menu. | ||
286 | +#texinfo_no_detailmenu = False |
docs/config_file.rst
0 → 100644
1 | +The Config File | ||
2 | +=============== | ||
3 | + | ||
4 | +The config file is at the heart of kappa. It is what describes your functions | ||
5 | +and drives your deployments. This section provides a reference for all of the | ||
6 | +elements of the kappa config file. | ||
7 | + | ||
8 | +Example | ||
9 | +------- | ||
10 | + | ||
11 | +Here is a simple example config file from the sample/simple directory:: | ||
12 | + | ||
13 | + --- | ||
14 | + name: foobar | ||
15 | + environments: | ||
16 | + dev: | ||
17 | + profile: fiebaz-dev | ||
18 | + region: us-west-2 | ||
19 | + policy: | ||
20 | + arn: arn:aws:iam::aws:policy/service-role/AWSLambdaRole | ||
21 | + prod: | ||
22 | + profile: fiebaz-prod | ||
23 | + region: us-west-2 | ||
24 | + policy: | ||
25 | + arn: arn:aws:iam::aws:policy/service-role/AWSLambdaRole | ||
26 | + lambda: | ||
27 | + description: A simple Python Lambda example | ||
28 | + path: code/ | ||
29 | + handler: foobar.handler | ||
30 | + runtime: python2.7 | ||
31 | + memory_size: 256 | ||
32 | + timeout: 3 | ||
33 | + test_data: input.json | ||
34 | + | ||
35 | +This config file is defining | ||
36 | + |
docs/index.rst
0 → 100644
1 | +.. kappa documentation master file, created by | ||
2 | + sphinx-quickstart on Tue Oct 13 12:59:27 2015. | ||
3 | + You can adapt this file completely to your liking, but it should at least | ||
4 | + contain the root `toctree` directive. | ||
5 | + | ||
6 | +Welcome to kappa's documentation! | ||
7 | +================================= | ||
8 | + | ||
9 | +Contents: | ||
10 | + | ||
11 | +.. toctree:: | ||
12 | + :maxdepth: 2 | ||
13 | + | ||
14 | + why | ||
15 | + config_file | ||
16 | + commands | ||
17 | + | ||
18 | + | ||
19 | + | ||
20 | +Indices and tables | ||
21 | +================== | ||
22 | + | ||
23 | +* :ref:`genindex` | ||
24 | +* :ref:`modindex` | ||
25 | +* :ref:`search` | ||
26 | + |
docs/make.bat
0 → 100644
1 | +@ECHO OFF | ||
2 | + | ||
3 | +REM Command file for Sphinx documentation | ||
4 | + | ||
5 | +if "%SPHINXBUILD%" == "" ( | ||
6 | + set SPHINXBUILD=sphinx-build | ||
7 | +) | ||
8 | +set BUILDDIR=_build | ||
9 | +set ALLSPHINXOPTS=-d %BUILDDIR%/doctrees %SPHINXOPTS% . | ||
10 | +set I18NSPHINXOPTS=%SPHINXOPTS% . | ||
11 | +if NOT "%PAPER%" == "" ( | ||
12 | + set ALLSPHINXOPTS=-D latex_paper_size=%PAPER% %ALLSPHINXOPTS% | ||
13 | + set I18NSPHINXOPTS=-D latex_paper_size=%PAPER% %I18NSPHINXOPTS% | ||
14 | +) | ||
15 | + | ||
16 | +if "%1" == "" goto help | ||
17 | + | ||
18 | +if "%1" == "help" ( | ||
19 | + :help | ||
20 | + echo.Please use `make ^<target^>` where ^<target^> is one of | ||
21 | + echo. html to make standalone HTML files | ||
22 | + echo. dirhtml to make HTML files named index.html in directories | ||
23 | + echo. singlehtml to make a single large HTML file | ||
24 | + echo. pickle to make pickle files | ||
25 | + echo. json to make JSON files | ||
26 | + echo. htmlhelp to make HTML files and a HTML help project | ||
27 | + echo. qthelp to make HTML files and a qthelp project | ||
28 | + echo. devhelp to make HTML files and a Devhelp project | ||
29 | + echo. epub to make an epub | ||
30 | + echo. latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter | ||
31 | + echo. text to make text files | ||
32 | + echo. man to make manual pages | ||
33 | + echo. texinfo to make Texinfo files | ||
34 | + echo. gettext to make PO message catalogs | ||
35 | + echo. changes to make an overview over all changed/added/deprecated items | ||
36 | + echo. xml to make Docutils-native XML files | ||
37 | + echo. pseudoxml to make pseudoxml-XML files for display purposes | ||
38 | + echo. linkcheck to check all external links for integrity | ||
39 | + echo. doctest to run all doctests embedded in the documentation if enabled | ||
40 | + echo. coverage to run coverage check of the documentation if enabled | ||
41 | + goto end | ||
42 | +) | ||
43 | + | ||
44 | +if "%1" == "clean" ( | ||
45 | + for /d %%i in (%BUILDDIR%\*) do rmdir /q /s %%i | ||
46 | + del /q /s %BUILDDIR%\* | ||
47 | + goto end | ||
48 | +) | ||
49 | + | ||
50 | + | ||
51 | +REM Check if sphinx-build is available and fallback to Python version if any | ||
52 | +%SPHINXBUILD% 2> nul | ||
53 | +if errorlevel 9009 goto sphinx_python | ||
54 | +goto sphinx_ok | ||
55 | + | ||
56 | +:sphinx_python | ||
57 | + | ||
58 | +set SPHINXBUILD=python -m sphinx.__init__ | ||
59 | +%SPHINXBUILD% 2> nul | ||
60 | +if errorlevel 9009 ( | ||
61 | + echo. | ||
62 | + echo.The 'sphinx-build' command was not found. Make sure you have Sphinx | ||
63 | + echo.installed, then set the SPHINXBUILD environment variable to point | ||
64 | + echo.to the full path of the 'sphinx-build' executable. Alternatively you | ||
65 | + echo.may add the Sphinx directory to PATH. | ||
66 | + echo. | ||
67 | + echo.If you don't have Sphinx installed, grab it from | ||
68 | + echo.http://sphinx-doc.org/ | ||
69 | + exit /b 1 | ||
70 | +) | ||
71 | + | ||
72 | +:sphinx_ok | ||
73 | + | ||
74 | + | ||
75 | +if "%1" == "html" ( | ||
76 | + %SPHINXBUILD% -b html %ALLSPHINXOPTS% %BUILDDIR%/html | ||
77 | + if errorlevel 1 exit /b 1 | ||
78 | + echo. | ||
79 | + echo.Build finished. The HTML pages are in %BUILDDIR%/html. | ||
80 | + goto end | ||
81 | +) | ||
82 | + | ||
83 | +if "%1" == "dirhtml" ( | ||
84 | + %SPHINXBUILD% -b dirhtml %ALLSPHINXOPTS% %BUILDDIR%/dirhtml | ||
85 | + if errorlevel 1 exit /b 1 | ||
86 | + echo. | ||
87 | + echo.Build finished. The HTML pages are in %BUILDDIR%/dirhtml. | ||
88 | + goto end | ||
89 | +) | ||
90 | + | ||
91 | +if "%1" == "singlehtml" ( | ||
92 | + %SPHINXBUILD% -b singlehtml %ALLSPHINXOPTS% %BUILDDIR%/singlehtml | ||
93 | + if errorlevel 1 exit /b 1 | ||
94 | + echo. | ||
95 | + echo.Build finished. The HTML pages are in %BUILDDIR%/singlehtml. | ||
96 | + goto end | ||
97 | +) | ||
98 | + | ||
99 | +if "%1" == "pickle" ( | ||
100 | + %SPHINXBUILD% -b pickle %ALLSPHINXOPTS% %BUILDDIR%/pickle | ||
101 | + if errorlevel 1 exit /b 1 | ||
102 | + echo. | ||
103 | + echo.Build finished; now you can process the pickle files. | ||
104 | + goto end | ||
105 | +) | ||
106 | + | ||
107 | +if "%1" == "json" ( | ||
108 | + %SPHINXBUILD% -b json %ALLSPHINXOPTS% %BUILDDIR%/json | ||
109 | + if errorlevel 1 exit /b 1 | ||
110 | + echo. | ||
111 | + echo.Build finished; now you can process the JSON files. | ||
112 | + goto end | ||
113 | +) | ||
114 | + | ||
115 | +if "%1" == "htmlhelp" ( | ||
116 | + %SPHINXBUILD% -b htmlhelp %ALLSPHINXOPTS% %BUILDDIR%/htmlhelp | ||
117 | + if errorlevel 1 exit /b 1 | ||
118 | + echo. | ||
119 | + echo.Build finished; now you can run HTML Help Workshop with the ^ | ||
120 | +.hhp project file in %BUILDDIR%/htmlhelp. | ||
121 | + goto end | ||
122 | +) | ||
123 | + | ||
124 | +if "%1" == "qthelp" ( | ||
125 | + %SPHINXBUILD% -b qthelp %ALLSPHINXOPTS% %BUILDDIR%/qthelp | ||
126 | + if errorlevel 1 exit /b 1 | ||
127 | + echo. | ||
128 | + echo.Build finished; now you can run "qcollectiongenerator" with the ^ | ||
129 | +.qhcp project file in %BUILDDIR%/qthelp, like this: | ||
130 | + echo.^> qcollectiongenerator %BUILDDIR%\qthelp\kappa.qhcp | ||
131 | + echo.To view the help file: | ||
132 | + echo.^> assistant -collectionFile %BUILDDIR%\qthelp\kappa.ghc | ||
133 | + goto end | ||
134 | +) | ||
135 | + | ||
136 | +if "%1" == "devhelp" ( | ||
137 | + %SPHINXBUILD% -b devhelp %ALLSPHINXOPTS% %BUILDDIR%/devhelp | ||
138 | + if errorlevel 1 exit /b 1 | ||
139 | + echo. | ||
140 | + echo.Build finished. | ||
141 | + goto end | ||
142 | +) | ||
143 | + | ||
144 | +if "%1" == "epub" ( | ||
145 | + %SPHINXBUILD% -b epub %ALLSPHINXOPTS% %BUILDDIR%/epub | ||
146 | + if errorlevel 1 exit /b 1 | ||
147 | + echo. | ||
148 | + echo.Build finished. The epub file is in %BUILDDIR%/epub. | ||
149 | + goto end | ||
150 | +) | ||
151 | + | ||
152 | +if "%1" == "latex" ( | ||
153 | + %SPHINXBUILD% -b latex %ALLSPHINXOPTS% %BUILDDIR%/latex | ||
154 | + if errorlevel 1 exit /b 1 | ||
155 | + echo. | ||
156 | + echo.Build finished; the LaTeX files are in %BUILDDIR%/latex. | ||
157 | + goto end | ||
158 | +) | ||
159 | + | ||
160 | +if "%1" == "latexpdf" ( | ||
161 | + %SPHINXBUILD% -b latex %ALLSPHINXOPTS% %BUILDDIR%/latex | ||
162 | + cd %BUILDDIR%/latex | ||
163 | + make all-pdf | ||
164 | + cd %~dp0 | ||
165 | + echo. | ||
166 | + echo.Build finished; the PDF files are in %BUILDDIR%/latex. | ||
167 | + goto end | ||
168 | +) | ||
169 | + | ||
170 | +if "%1" == "latexpdfja" ( | ||
171 | + %SPHINXBUILD% -b latex %ALLSPHINXOPTS% %BUILDDIR%/latex | ||
172 | + cd %BUILDDIR%/latex | ||
173 | + make all-pdf-ja | ||
174 | + cd %~dp0 | ||
175 | + echo. | ||
176 | + echo.Build finished; the PDF files are in %BUILDDIR%/latex. | ||
177 | + goto end | ||
178 | +) | ||
179 | + | ||
180 | +if "%1" == "text" ( | ||
181 | + %SPHINXBUILD% -b text %ALLSPHINXOPTS% %BUILDDIR%/text | ||
182 | + if errorlevel 1 exit /b 1 | ||
183 | + echo. | ||
184 | + echo.Build finished. The text files are in %BUILDDIR%/text. | ||
185 | + goto end | ||
186 | +) | ||
187 | + | ||
188 | +if "%1" == "man" ( | ||
189 | + %SPHINXBUILD% -b man %ALLSPHINXOPTS% %BUILDDIR%/man | ||
190 | + if errorlevel 1 exit /b 1 | ||
191 | + echo. | ||
192 | + echo.Build finished. The manual pages are in %BUILDDIR%/man. | ||
193 | + goto end | ||
194 | +) | ||
195 | + | ||
196 | +if "%1" == "texinfo" ( | ||
197 | + %SPHINXBUILD% -b texinfo %ALLSPHINXOPTS% %BUILDDIR%/texinfo | ||
198 | + if errorlevel 1 exit /b 1 | ||
199 | + echo. | ||
200 | + echo.Build finished. The Texinfo files are in %BUILDDIR%/texinfo. | ||
201 | + goto end | ||
202 | +) | ||
203 | + | ||
204 | +if "%1" == "gettext" ( | ||
205 | + %SPHINXBUILD% -b gettext %I18NSPHINXOPTS% %BUILDDIR%/locale | ||
206 | + if errorlevel 1 exit /b 1 | ||
207 | + echo. | ||
208 | + echo.Build finished. The message catalogs are in %BUILDDIR%/locale. | ||
209 | + goto end | ||
210 | +) | ||
211 | + | ||
212 | +if "%1" == "changes" ( | ||
213 | + %SPHINXBUILD% -b changes %ALLSPHINXOPTS% %BUILDDIR%/changes | ||
214 | + if errorlevel 1 exit /b 1 | ||
215 | + echo. | ||
216 | + echo.The overview file is in %BUILDDIR%/changes. | ||
217 | + goto end | ||
218 | +) | ||
219 | + | ||
220 | +if "%1" == "linkcheck" ( | ||
221 | + %SPHINXBUILD% -b linkcheck %ALLSPHINXOPTS% %BUILDDIR%/linkcheck | ||
222 | + if errorlevel 1 exit /b 1 | ||
223 | + echo. | ||
224 | + echo.Link check complete; look for any errors in the above output ^ | ||
225 | +or in %BUILDDIR%/linkcheck/output.txt. | ||
226 | + goto end | ||
227 | +) | ||
228 | + | ||
229 | +if "%1" == "doctest" ( | ||
230 | + %SPHINXBUILD% -b doctest %ALLSPHINXOPTS% %BUILDDIR%/doctest | ||
231 | + if errorlevel 1 exit /b 1 | ||
232 | + echo. | ||
233 | + echo.Testing of doctests in the sources finished, look at the ^ | ||
234 | +results in %BUILDDIR%/doctest/output.txt. | ||
235 | + goto end | ||
236 | +) | ||
237 | + | ||
238 | +if "%1" == "coverage" ( | ||
239 | + %SPHINXBUILD% -b coverage %ALLSPHINXOPTS% %BUILDDIR%/coverage | ||
240 | + if errorlevel 1 exit /b 1 | ||
241 | + echo. | ||
242 | + echo.Testing of coverage in the sources finished, look at the ^ | ||
243 | +results in %BUILDDIR%/coverage/python.txt. | ||
244 | + goto end | ||
245 | +) | ||
246 | + | ||
247 | +if "%1" == "xml" ( | ||
248 | + %SPHINXBUILD% -b xml %ALLSPHINXOPTS% %BUILDDIR%/xml | ||
249 | + if errorlevel 1 exit /b 1 | ||
250 | + echo. | ||
251 | + echo.Build finished. The XML files are in %BUILDDIR%/xml. | ||
252 | + goto end | ||
253 | +) | ||
254 | + | ||
255 | +if "%1" == "pseudoxml" ( | ||
256 | + %SPHINXBUILD% -b pseudoxml %ALLSPHINXOPTS% %BUILDDIR%/pseudoxml | ||
257 | + if errorlevel 1 exit /b 1 | ||
258 | + echo. | ||
259 | + echo.Build finished. The pseudo-XML files are in %BUILDDIR%/pseudoxml. | ||
260 | + goto end | ||
261 | +) | ||
262 | + | ||
263 | +:end |
docs/why.rst
0 → 100644
1 | +Why kappa? | ||
2 | +========== | ||
3 | + | ||
4 | +You can do everything kappa does by using the AWS Management Console so why use | ||
5 | +kappa? Basically, because using GUI interfaces to drive your production | ||
6 | +environment is a really bad idea. You can't really automate GUI interfaces, | ||
7 | +you can't debug GUI interfaces, and you can't easily share techniques and best | ||
8 | +practices with a GUI. | ||
9 | + | ||
10 | +The goal of kappa is to put everything about your AWS Lambda function into | ||
11 | +files on a filesystem which can be easily versioned and shared. Once your | ||
12 | +files are in git, people on your team can create pull requests to merge new | ||
13 | +changes in and those pull requests can be reviewed, commented on, and | ||
14 | +eventually approved. This is a tried and true approach that has worked for | ||
15 | +more traditional deployment methodologies and will also work for AWS Lambda. |
-
Please register or login to post a comment