Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit8bac32e

Browse files
committed
Sphinx configuration
1 parente3492bd commit8bac32e

File tree

6 files changed

+403
-0
lines changed

6 files changed

+403
-0
lines changed

‎.gitignore‎

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,8 @@
44
.eggs/
55
dist/
66
build/
7+
docs/build/
8+
docs/source/_*
79

810
env/
911
venv/

‎docs/Makefile‎

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
# Minimal makefile for Sphinx documentation
2+
#
3+
4+
# You can set these variables from the command line.
5+
SPHINXOPTS =
6+
SPHINXBUILD = sphinx-build
7+
SPHINXPROJ = testgres
8+
SOURCEDIR = source
9+
BUILDDIR = build
10+
11+
# Put it first so that "make" without argument is like "make help".
12+
help:
13+
@$(SPHINXBUILD) -Mhelp"$(SOURCEDIR)""$(BUILDDIR)"$(SPHINXOPTS)$(O)
14+
15+
.PHONY: help Makefile
16+
17+
# Catch-all target: route all unknown targets to Sphinx using the new
18+
# "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS).
19+
%: Makefile
20+
@$(SPHINXBUILD) -M$@"$(SOURCEDIR)""$(BUILDDIR)"$(SPHINXOPTS)$(O)

‎docs/source/conf.py‎

Lines changed: 161 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,161 @@
1+
# -*- coding: utf-8 -*-
2+
#
3+
# Configuration file for the Sphinx documentation builder.
4+
#
5+
# This file does only contain a selection of the most common options. For a
6+
# full list see the documentation:
7+
# http://www.sphinx-doc.org/en/stable/config
8+
9+
# -- Path setup --------------------------------------------------------------
10+
11+
# If extensions (or modules to document with autodoc) are in another directory,
12+
# add these directories to sys.path here. If the directory is relative to the
13+
# documentation root, use os.path.abspath to make it absolute, like shown here.
14+
#
15+
importos
16+
importsys
17+
sys.path.insert(0,os.path.abspath('../..'))
18+
19+
20+
# -- Project information -----------------------------------------------------
21+
22+
project=u'testgres'
23+
copyright=u'2016-2018, Postgres Professional'
24+
author=u'Postgres Professional'
25+
26+
# The short X.Y version
27+
version=u''
28+
# The full version, including alpha/beta/rc tags
29+
release=u'1.5'
30+
31+
32+
# -- General configuration ---------------------------------------------------
33+
34+
# If your documentation needs a minimal Sphinx version, state it here.
35+
#
36+
# needs_sphinx = '1.0'
37+
38+
# Add any Sphinx extension module names here, as strings. They can be
39+
# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
40+
# ones.
41+
#extensions = [
42+
# 'sphinx.ext.autodoc',
43+
#]
44+
45+
extensions= ['sphinx.ext.autodoc','sphinxcontrib.napoleon']
46+
47+
# Add any paths that contain templates here, relative to this directory.
48+
templates_path= ['_templates']
49+
50+
# The suffix(es) of source filenames.
51+
# You can specify multiple suffix as a list of string:
52+
#
53+
# source_suffix = ['.rst', '.md']
54+
source_suffix='.rst'
55+
56+
# The master toctree document.
57+
master_doc='index'
58+
59+
# The language for content autogenerated by Sphinx. Refer to documentation
60+
# for a list of supported languages.
61+
#
62+
# This is also used if you do content translation via gettext catalogs.
63+
# Usually you set "language" from the command line for these cases.
64+
language=None
65+
66+
# List of patterns, relative to source directory, that match files and
67+
# directories to ignore when looking for source files.
68+
# This pattern also affects html_static_path and html_extra_path .
69+
exclude_patterns= []
70+
71+
# The name of the Pygments (syntax highlighting) style to use.
72+
pygments_style='sphinx'
73+
74+
75+
# -- Options for HTML output -------------------------------------------------
76+
77+
# The theme to use for HTML and HTML Help pages. See the documentation for
78+
# a list of builtin themes.
79+
#
80+
html_theme='alabaster'
81+
82+
# Theme options are theme-specific and customize the look and feel of a theme
83+
# further. For a list of options available for each theme, see the
84+
# documentation.
85+
#
86+
# html_theme_options = {}
87+
88+
# Add any paths that contain custom static files (such as style sheets) here,
89+
# relative to this directory. They are copied after the builtin static files,
90+
# so a file named "default.css" will overwrite the builtin "default.css".
91+
html_static_path= ['_static']
92+
93+
# Custom sidebar templates, must be a dictionary that maps document names
94+
# to template names.
95+
#
96+
# The default sidebars (for documents that don't match any pattern) are
97+
# defined by theme itself. Builtin themes are using these templates by
98+
# default: ``['localtoc.html', 'relations.html', 'sourcelink.html',
99+
# 'searchbox.html']``.
100+
#
101+
# html_sidebars = {}
102+
103+
104+
# -- Options for HTMLHelp output ---------------------------------------------
105+
106+
# Output file base name for HTML help builder.
107+
htmlhelp_basename='testgresdoc'
108+
109+
110+
# -- Options for LaTeX output ------------------------------------------------
111+
112+
latex_elements= {
113+
# The paper size ('letterpaper' or 'a4paper').
114+
#
115+
# 'papersize': 'letterpaper',
116+
117+
# The font size ('10pt', '11pt' or '12pt').
118+
#
119+
# 'pointsize': '10pt',
120+
121+
# Additional stuff for the LaTeX preamble.
122+
#
123+
# 'preamble': '',
124+
125+
# Latex figure (float) alignment
126+
#
127+
# 'figure_align': 'htbp',
128+
}
129+
130+
# Grouping the document tree into LaTeX files. List of tuples
131+
# (source start file, target name, title,
132+
# author, documentclass [howto, manual, or own class]).
133+
latex_documents= [
134+
(master_doc,'testgres.tex',u'testgres Documentation',
135+
u'Postgres Professional','manual'),
136+
]
137+
138+
139+
# -- Options for manual page output ------------------------------------------
140+
141+
# One entry per manual page. List of tuples
142+
# (source start file, name, description, authors, manual section).
143+
man_pages= [
144+
(master_doc,'testgres',u'testgres Documentation',
145+
[author],1)
146+
]
147+
148+
149+
# -- Options for Texinfo output ----------------------------------------------
150+
151+
# Grouping the document tree into Texinfo files. List of tuples
152+
# (source start file, target name, title, author,
153+
# dir menu entry, description, category)
154+
texinfo_documents= [
155+
(master_doc,'testgres',u'testgres Documentation',
156+
author,'testgres','One line description of project.',
157+
'Miscellaneous'),
158+
]
159+
160+
161+
# -- Extension configuration -------------------------------------------------

‎docs/source/index.rst‎

Lines changed: 95 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,95 @@
1+
2+
Testgres documentation
3+
======================
4+
5+
Testgres is a PostgreSQL testing utility
6+
7+
Installation
8+
============
9+
10+
To install testgres, run:
11+
12+
..code-block::bash
13+
14+
pip install testgres
15+
16+
We encourage you to use ``virtualenv`` for your testing environment.
17+
18+
Usage
19+
=====
20+
21+
Environment
22+
-----------
23+
24+
Note: by default testgres runs ``initdb``, ``pg_ctl``, ``psql`` provided by ``PATH``.
25+
26+
There are several ways to specify a custom postgres installation:
27+
28+
- export ``PG_CONFIG`` environment variable pointing to the ``pg_config`` executable;
29+
- export ``PG_BIN`` environment variable pointing to the directory with executable files.
30+
31+
Example:
32+
33+
..code-block::bash
34+
35+
export PG_BIN=$HOME/pg_10/bin
36+
python my_tests.py
37+
38+
Examples
39+
--------
40+
41+
Here is an example of what you can do with ``testgres``:
42+
43+
..code-block::python
44+
45+
# create a node with random name, port, etc
46+
with testgres.get_new_node()as node:
47+
48+
# run inidb
49+
node.init()
50+
51+
# start PostgreSQL
52+
node.start()
53+
54+
# execute a query in a default DB
55+
print(node.execute('select 1'))
56+
57+
# ... node stops and its files are about to be removed
58+
59+
Backup & replication
60+
--------------------
61+
62+
It's quite easy to create a backup and start a new replica:
63+
64+
..code-block::python
65+
66+
with testgres.get_new_node('master')as master:
67+
master.init().start()
68+
69+
# create a backup
70+
with master.backup()as backup:
71+
72+
# create and start a new replica
73+
replica= backup.spawn_replica('replica').start()
74+
75+
# catch up with master node
76+
replica.catchup()
77+
78+
# execute a dummy query
79+
print(replica.execute('postgres','select 1'))
80+
81+
Modules
82+
=======
83+
84+
..toctree::
85+
:maxdepth:2
86+
87+
testgres
88+
89+
90+
.. Indices and tables
91+
.. ==================
92+
93+
.. * :ref:`genindex`
94+
.. * :ref:`modindex`
95+
.. * :ref:`search`

‎docs/source/modules.rst‎

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
testgres
2+
========
3+
4+
..toctree::
5+
:maxdepth:4
6+
7+
testgres

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp