legionio 0.3.1 → 0.3.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/Gemfile +0 -11
- data/README.md +4 -1
- data/bin/legion +6 -47
- data/docs/Makefile +20 -0
- data/docs/_build/doctrees/environment.pickle +0 -0
- data/docs/_build/doctrees/index.doctree +0 -0
- data/docs/_build/doctrees/overview.doctree +0 -0
- data/docs/_build/html/.buildinfo +4 -0
- data/docs/_build/html/_sources/index.rst.txt +28 -0
- data/docs/_build/html/_sources/overview.rst.txt +0 -0
- data/docs/_build/html/_static/alabaster.css +701 -0
- data/docs/_build/html/_static/basic.css +855 -0
- data/docs/_build/html/_static/custom.css +1 -0
- data/docs/_build/html/_static/doctools.js +315 -0
- data/docs/_build/html/_static/documentation_options.js +12 -0
- data/docs/_build/html/_static/file.png +0 -0
- data/docs/_build/html/_static/jquery-3.5.1.js +10872 -0
- data/docs/_build/html/_static/jquery.js +2 -0
- data/docs/_build/html/_static/language_data.js +297 -0
- data/docs/_build/html/_static/minus.png +0 -0
- data/docs/_build/html/_static/plus.png +0 -0
- data/docs/_build/html/_static/pygments.css +82 -0
- data/docs/_build/html/_static/searchtools.js +514 -0
- data/docs/_build/html/_static/underscore-1.3.1.js +999 -0
- data/docs/_build/html/_static/underscore.js +31 -0
- data/docs/_build/html/genindex.html +101 -0
- data/docs/_build/html/index.html +117 -0
- data/docs/_build/html/objects.inv +6 -0
- data/docs/_build/html/overview.html +98 -0
- data/docs/_build/html/search.html +110 -0
- data/docs/_build/html/searchindex.js +1 -0
- data/docs/conf.py +54 -0
- data/docs/index.rst +28 -0
- data/docs/make.bat +35 -0
- data/exe/legion +6 -4
- data/lib/legion/extensions.rb +23 -62
- data/lib/legion/extensions/builders/runners.rb +5 -0
- data/lib/legion/extensions/helpers/lex.rb +29 -1
- data/lib/legion/extensions/transport.rb +9 -7
- data/lib/legion/service.rb +23 -3
- data/lib/legion/version.rb +1 -1
- metadata +34 -3
- data/settings/client.json +0 -25
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 5a64a174cc967d97433e0fa569c4da77213fc776846b5bfc6c46d4e6887f42c5
|
4
|
+
data.tar.gz: b0cbf64bf7f4139ac878a5bb8ffdab0cead2066eb647ebac1d04e3c0ce7b2fa8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a83de46e58e9cfa4afb709bfdaa68f906afe107285b98ca5e925b8f34674fa58380b18a64d3b8fb73b208f52e8801739032bbf878c28142c378a3450e941379b
|
7
|
+
data.tar.gz: b7d79b0bb560f7d87a724958ad681688a60e7141579fce3618401af8934a6927ea9199905a272e337da4598a53eabab49b1057c3444147f9dd762cc3bb37f80f
|
data/Gemfile
CHANGED
@@ -1,14 +1,3 @@
|
|
1
1
|
source 'https://rubygems.org'
|
2
2
|
|
3
3
|
gemspec
|
4
|
-
|
5
|
-
gem 'lex-conditioner'
|
6
|
-
gem 'lex-esphome'
|
7
|
-
gem 'lex-health'
|
8
|
-
gem 'lex-http'
|
9
|
-
gem 'lex-influxdb'
|
10
|
-
gem 'lex-lex'
|
11
|
-
gem 'lex-log'
|
12
|
-
gem 'lex-scheduler', path: '../../lex/lex-scheduler'
|
13
|
-
gem 'lex-tasker'
|
14
|
-
gem 'lex-transformer'
|
data/README.md
CHANGED
data/bin/legion
CHANGED
@@ -4,60 +4,19 @@
|
|
4
4
|
require 'optparse'
|
5
5
|
require 'etc'
|
6
6
|
|
7
|
-
options = { action: :run }
|
8
|
-
|
9
|
-
daemonize_help = 'run daemonized in the background (default: false)'
|
10
|
-
pidfile_help = 'the pid filename'
|
11
|
-
logfile_help = 'the log filename'
|
12
|
-
include_help = 'an additional $LOAD_PATH (may be used more than once)'
|
13
|
-
debug_help = 'set $DEBUG to true'
|
14
|
-
warn_help = 'enable warnings'
|
15
|
-
time_help = 'only run legion for X seconds'
|
16
|
-
|
17
|
-
op = OptionParser.new
|
18
|
-
op.banner = 'An example of how to daemonize a long running Ruby process.'
|
19
|
-
op.separator ''
|
20
|
-
op.separator 'Usage: server [options]'
|
21
|
-
op.separator ''
|
22
|
-
|
23
|
-
op.separator ''
|
24
|
-
op.separator 'Process options:'
|
25
|
-
op.on('-d', '--daemonize', daemonize_help) { options[:daemonize] = true }
|
26
|
-
op.on('-p', '--pid PIDFILE', pidfile_help) { |value| options[:pidfile] = value }
|
27
|
-
op.on('-l', '--log LOGFILE', logfile_help) { |value| options[:logfile] = value }
|
28
|
-
op.on('-t', '--time 10', time_help) { |value| options[:time_limit] = value }
|
29
|
-
|
30
|
-
op.separator ''
|
31
|
-
op.separator 'Ruby options:'
|
32
|
-
op.on('-I', '--include PATH', include_help) do |value|
|
33
|
-
$LOAD_PATH.unshift(*value.split(':').map do |v|
|
34
|
-
File.expand_path(v)
|
35
|
-
end)
|
36
|
-
end
|
37
|
-
op.on('--debug', debug_help) { $DEBUG = true }
|
38
|
-
op.on('--warn', warn_help) { $-w = true }
|
39
|
-
|
40
|
-
op.separator ''
|
41
|
-
op.separator 'Common options:'
|
42
|
-
op.on('-h', '--help') { options[:action] = :help }
|
43
|
-
op.on('-v', '--version') { options[:action] = :version }
|
44
|
-
|
45
|
-
op.separator ''
|
46
|
-
op.parse!(ARGV)
|
47
|
-
|
48
7
|
@children = []
|
49
8
|
children = 5
|
50
9
|
if children == 1
|
51
|
-
require
|
52
|
-
require
|
10
|
+
require 'legion'
|
11
|
+
require 'legion/process'
|
53
12
|
Legion.start
|
54
13
|
Legion::Process.new(options).run!
|
55
14
|
else
|
56
15
|
children.times do
|
57
16
|
@children.push(
|
58
17
|
Process.fork do
|
59
|
-
require
|
60
|
-
require
|
18
|
+
require 'legion'
|
19
|
+
require 'legion/process'
|
61
20
|
|
62
21
|
Legion.start
|
63
22
|
sleep(1)
|
@@ -73,7 +32,7 @@ else
|
|
73
32
|
@children.each do |child|
|
74
33
|
Process.kill('SIGINT', child)
|
75
34
|
end
|
76
|
-
sleep(5)
|
35
|
+
sleep(0.5)
|
77
36
|
end
|
78
37
|
|
79
38
|
trap('SIGTERM') do
|
@@ -81,7 +40,7 @@ else
|
|
81
40
|
Process.kill('SIGTERM', child)
|
82
41
|
end
|
83
42
|
|
84
|
-
sleep(
|
43
|
+
sleep(1)
|
85
44
|
end
|
86
45
|
|
87
46
|
sleep(1) until @quit
|
data/docs/Makefile
ADDED
@@ -0,0 +1,20 @@
|
|
1
|
+
# Minimal makefile for Sphinx documentation
|
2
|
+
#
|
3
|
+
|
4
|
+
# You can set these variables from the command line, and also
|
5
|
+
# from the environment for the first two.
|
6
|
+
SPHINXOPTS ?=
|
7
|
+
SPHINXBUILD ?= sphinx-build
|
8
|
+
SOURCEDIR = .
|
9
|
+
BUILDDIR = _build
|
10
|
+
|
11
|
+
# Put it first so that "make" without argument is like "make help".
|
12
|
+
help:
|
13
|
+
@$(SPHINXBUILD) -M help "$(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)
|
Binary file
|
Binary file
|
Binary file
|
@@ -0,0 +1,28 @@
|
|
1
|
+
.. LegionIO documentation master file, created by
|
2
|
+
sphinx-quickstart on Thu Oct 15 08:16:27 2020.
|
3
|
+
You can adapt this file completely to your liking, but it should at least
|
4
|
+
contain the root `toctree` directive.
|
5
|
+
|
6
|
+
LegionIO Overview
|
7
|
+
==============================
|
8
|
+
|
9
|
+
About
|
10
|
+
------------
|
11
|
+
LegionIO is a platform designed for connecting things. You install a LEX(Legion Extension)
|
12
|
+
which adds functionality to your Legion service?project?cluster? Whatever it's called.
|
13
|
+
|
14
|
+
A LEX contains 1 or more runners. Think of them as classes
|
15
|
+
A runner contains 1 or more functions. These are the things you can call and make relationships out of
|
16
|
+
Example
|
17
|
+
|
18
|
+
* Lex: pagerduty
|
19
|
+
|
20
|
+
* Runners: incident, user, service
|
21
|
+
|
22
|
+
* Functions within the incident runner: trigger, acknowledge, resolve, merge
|
23
|
+
|
24
|
+
* Functions within the services runner: create, delete, update, list, get
|
25
|
+
|
26
|
+
Any function can be a trigger or an action(the input or output in the relationship).
|
27
|
+
|
28
|
+
Legion works by creating chains of relationships to make make a complex workflow without complex yaml
|
File without changes
|
@@ -0,0 +1,701 @@
|
|
1
|
+
@import url("basic.css");
|
2
|
+
|
3
|
+
/* -- page layout ----------------------------------------------------------- */
|
4
|
+
|
5
|
+
body {
|
6
|
+
font-family: Georgia, serif;
|
7
|
+
font-size: 17px;
|
8
|
+
background-color: #fff;
|
9
|
+
color: #000;
|
10
|
+
margin: 0;
|
11
|
+
padding: 0;
|
12
|
+
}
|
13
|
+
|
14
|
+
|
15
|
+
div.document {
|
16
|
+
width: 940px;
|
17
|
+
margin: 30px auto 0 auto;
|
18
|
+
}
|
19
|
+
|
20
|
+
div.documentwrapper {
|
21
|
+
float: left;
|
22
|
+
width: 100%;
|
23
|
+
}
|
24
|
+
|
25
|
+
div.bodywrapper {
|
26
|
+
margin: 0 0 0 220px;
|
27
|
+
}
|
28
|
+
|
29
|
+
div.sphinxsidebar {
|
30
|
+
width: 220px;
|
31
|
+
font-size: 14px;
|
32
|
+
line-height: 1.5;
|
33
|
+
}
|
34
|
+
|
35
|
+
hr {
|
36
|
+
border: 1px solid #B1B4B6;
|
37
|
+
}
|
38
|
+
|
39
|
+
div.body {
|
40
|
+
background-color: #fff;
|
41
|
+
color: #3E4349;
|
42
|
+
padding: 0 30px 0 30px;
|
43
|
+
}
|
44
|
+
|
45
|
+
div.body > .section {
|
46
|
+
text-align: left;
|
47
|
+
}
|
48
|
+
|
49
|
+
div.footer {
|
50
|
+
width: 940px;
|
51
|
+
margin: 20px auto 30px auto;
|
52
|
+
font-size: 14px;
|
53
|
+
color: #888;
|
54
|
+
text-align: right;
|
55
|
+
}
|
56
|
+
|
57
|
+
div.footer a {
|
58
|
+
color: #888;
|
59
|
+
}
|
60
|
+
|
61
|
+
p.caption {
|
62
|
+
font-family: inherit;
|
63
|
+
font-size: inherit;
|
64
|
+
}
|
65
|
+
|
66
|
+
|
67
|
+
div.relations {
|
68
|
+
display: none;
|
69
|
+
}
|
70
|
+
|
71
|
+
|
72
|
+
div.sphinxsidebar a {
|
73
|
+
color: #444;
|
74
|
+
text-decoration: none;
|
75
|
+
border-bottom: 1px dotted #999;
|
76
|
+
}
|
77
|
+
|
78
|
+
div.sphinxsidebar a:hover {
|
79
|
+
border-bottom: 1px solid #999;
|
80
|
+
}
|
81
|
+
|
82
|
+
div.sphinxsidebarwrapper {
|
83
|
+
padding: 18px 10px;
|
84
|
+
}
|
85
|
+
|
86
|
+
div.sphinxsidebarwrapper p.logo {
|
87
|
+
padding: 0;
|
88
|
+
margin: -10px 0 0 0px;
|
89
|
+
text-align: center;
|
90
|
+
}
|
91
|
+
|
92
|
+
div.sphinxsidebarwrapper h1.logo {
|
93
|
+
margin-top: -10px;
|
94
|
+
text-align: center;
|
95
|
+
margin-bottom: 5px;
|
96
|
+
text-align: left;
|
97
|
+
}
|
98
|
+
|
99
|
+
div.sphinxsidebarwrapper h1.logo-name {
|
100
|
+
margin-top: 0px;
|
101
|
+
}
|
102
|
+
|
103
|
+
div.sphinxsidebarwrapper p.blurb {
|
104
|
+
margin-top: 0;
|
105
|
+
font-style: normal;
|
106
|
+
}
|
107
|
+
|
108
|
+
div.sphinxsidebar h3,
|
109
|
+
div.sphinxsidebar h4 {
|
110
|
+
font-family: Georgia, serif;
|
111
|
+
color: #444;
|
112
|
+
font-size: 24px;
|
113
|
+
font-weight: normal;
|
114
|
+
margin: 0 0 5px 0;
|
115
|
+
padding: 0;
|
116
|
+
}
|
117
|
+
|
118
|
+
div.sphinxsidebar h4 {
|
119
|
+
font-size: 20px;
|
120
|
+
}
|
121
|
+
|
122
|
+
div.sphinxsidebar h3 a {
|
123
|
+
color: #444;
|
124
|
+
}
|
125
|
+
|
126
|
+
div.sphinxsidebar p.logo a,
|
127
|
+
div.sphinxsidebar h3 a,
|
128
|
+
div.sphinxsidebar p.logo a:hover,
|
129
|
+
div.sphinxsidebar h3 a:hover {
|
130
|
+
border: none;
|
131
|
+
}
|
132
|
+
|
133
|
+
div.sphinxsidebar p {
|
134
|
+
color: #555;
|
135
|
+
margin: 10px 0;
|
136
|
+
}
|
137
|
+
|
138
|
+
div.sphinxsidebar ul {
|
139
|
+
margin: 10px 0;
|
140
|
+
padding: 0;
|
141
|
+
color: #000;
|
142
|
+
}
|
143
|
+
|
144
|
+
div.sphinxsidebar ul li.toctree-l1 > a {
|
145
|
+
font-size: 120%;
|
146
|
+
}
|
147
|
+
|
148
|
+
div.sphinxsidebar ul li.toctree-l2 > a {
|
149
|
+
font-size: 110%;
|
150
|
+
}
|
151
|
+
|
152
|
+
div.sphinxsidebar input {
|
153
|
+
border: 1px solid #CCC;
|
154
|
+
font-family: Georgia, serif;
|
155
|
+
font-size: 1em;
|
156
|
+
}
|
157
|
+
|
158
|
+
div.sphinxsidebar hr {
|
159
|
+
border: none;
|
160
|
+
height: 1px;
|
161
|
+
color: #AAA;
|
162
|
+
background: #AAA;
|
163
|
+
|
164
|
+
text-align: left;
|
165
|
+
margin-left: 0;
|
166
|
+
width: 50%;
|
167
|
+
}
|
168
|
+
|
169
|
+
div.sphinxsidebar .badge {
|
170
|
+
border-bottom: none;
|
171
|
+
}
|
172
|
+
|
173
|
+
div.sphinxsidebar .badge:hover {
|
174
|
+
border-bottom: none;
|
175
|
+
}
|
176
|
+
|
177
|
+
/* To address an issue with donation coming after search */
|
178
|
+
div.sphinxsidebar h3.donation {
|
179
|
+
margin-top: 10px;
|
180
|
+
}
|
181
|
+
|
182
|
+
/* -- body styles ----------------------------------------------------------- */
|
183
|
+
|
184
|
+
a {
|
185
|
+
color: #004B6B;
|
186
|
+
text-decoration: underline;
|
187
|
+
}
|
188
|
+
|
189
|
+
a:hover {
|
190
|
+
color: #6D4100;
|
191
|
+
text-decoration: underline;
|
192
|
+
}
|
193
|
+
|
194
|
+
div.body h1,
|
195
|
+
div.body h2,
|
196
|
+
div.body h3,
|
197
|
+
div.body h4,
|
198
|
+
div.body h5,
|
199
|
+
div.body h6 {
|
200
|
+
font-family: Georgia, serif;
|
201
|
+
font-weight: normal;
|
202
|
+
margin: 30px 0px 10px 0px;
|
203
|
+
padding: 0;
|
204
|
+
}
|
205
|
+
|
206
|
+
div.body h1 { margin-top: 0; padding-top: 0; font-size: 240%; }
|
207
|
+
div.body h2 { font-size: 180%; }
|
208
|
+
div.body h3 { font-size: 150%; }
|
209
|
+
div.body h4 { font-size: 130%; }
|
210
|
+
div.body h5 { font-size: 100%; }
|
211
|
+
div.body h6 { font-size: 100%; }
|
212
|
+
|
213
|
+
a.headerlink {
|
214
|
+
color: #DDD;
|
215
|
+
padding: 0 4px;
|
216
|
+
text-decoration: none;
|
217
|
+
}
|
218
|
+
|
219
|
+
a.headerlink:hover {
|
220
|
+
color: #444;
|
221
|
+
background: #EAEAEA;
|
222
|
+
}
|
223
|
+
|
224
|
+
div.body p, div.body dd, div.body li {
|
225
|
+
line-height: 1.4em;
|
226
|
+
}
|
227
|
+
|
228
|
+
div.admonition {
|
229
|
+
margin: 20px 0px;
|
230
|
+
padding: 10px 30px;
|
231
|
+
background-color: #EEE;
|
232
|
+
border: 1px solid #CCC;
|
233
|
+
}
|
234
|
+
|
235
|
+
div.admonition tt.xref, div.admonition code.xref, div.admonition a tt {
|
236
|
+
background-color: #FBFBFB;
|
237
|
+
border-bottom: 1px solid #fafafa;
|
238
|
+
}
|
239
|
+
|
240
|
+
div.admonition p.admonition-title {
|
241
|
+
font-family: Georgia, serif;
|
242
|
+
font-weight: normal;
|
243
|
+
font-size: 24px;
|
244
|
+
margin: 0 0 10px 0;
|
245
|
+
padding: 0;
|
246
|
+
line-height: 1;
|
247
|
+
}
|
248
|
+
|
249
|
+
div.admonition p.last {
|
250
|
+
margin-bottom: 0;
|
251
|
+
}
|
252
|
+
|
253
|
+
div.highlight {
|
254
|
+
background-color: #fff;
|
255
|
+
}
|
256
|
+
|
257
|
+
dt:target, .highlight {
|
258
|
+
background: #FAF3E8;
|
259
|
+
}
|
260
|
+
|
261
|
+
div.warning {
|
262
|
+
background-color: #FCC;
|
263
|
+
border: 1px solid #FAA;
|
264
|
+
}
|
265
|
+
|
266
|
+
div.danger {
|
267
|
+
background-color: #FCC;
|
268
|
+
border: 1px solid #FAA;
|
269
|
+
-moz-box-shadow: 2px 2px 4px #D52C2C;
|
270
|
+
-webkit-box-shadow: 2px 2px 4px #D52C2C;
|
271
|
+
box-shadow: 2px 2px 4px #D52C2C;
|
272
|
+
}
|
273
|
+
|
274
|
+
div.error {
|
275
|
+
background-color: #FCC;
|
276
|
+
border: 1px solid #FAA;
|
277
|
+
-moz-box-shadow: 2px 2px 4px #D52C2C;
|
278
|
+
-webkit-box-shadow: 2px 2px 4px #D52C2C;
|
279
|
+
box-shadow: 2px 2px 4px #D52C2C;
|
280
|
+
}
|
281
|
+
|
282
|
+
div.caution {
|
283
|
+
background-color: #FCC;
|
284
|
+
border: 1px solid #FAA;
|
285
|
+
}
|
286
|
+
|
287
|
+
div.attention {
|
288
|
+
background-color: #FCC;
|
289
|
+
border: 1px solid #FAA;
|
290
|
+
}
|
291
|
+
|
292
|
+
div.important {
|
293
|
+
background-color: #EEE;
|
294
|
+
border: 1px solid #CCC;
|
295
|
+
}
|
296
|
+
|
297
|
+
div.note {
|
298
|
+
background-color: #EEE;
|
299
|
+
border: 1px solid #CCC;
|
300
|
+
}
|
301
|
+
|
302
|
+
div.tip {
|
303
|
+
background-color: #EEE;
|
304
|
+
border: 1px solid #CCC;
|
305
|
+
}
|
306
|
+
|
307
|
+
div.hint {
|
308
|
+
background-color: #EEE;
|
309
|
+
border: 1px solid #CCC;
|
310
|
+
}
|
311
|
+
|
312
|
+
div.seealso {
|
313
|
+
background-color: #EEE;
|
314
|
+
border: 1px solid #CCC;
|
315
|
+
}
|
316
|
+
|
317
|
+
div.topic {
|
318
|
+
background-color: #EEE;
|
319
|
+
}
|
320
|
+
|
321
|
+
p.admonition-title {
|
322
|
+
display: inline;
|
323
|
+
}
|
324
|
+
|
325
|
+
p.admonition-title:after {
|
326
|
+
content: ":";
|
327
|
+
}
|
328
|
+
|
329
|
+
pre, tt, code {
|
330
|
+
font-family: 'Consolas', 'Menlo', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', monospace;
|
331
|
+
font-size: 0.9em;
|
332
|
+
}
|
333
|
+
|
334
|
+
.hll {
|
335
|
+
background-color: #FFC;
|
336
|
+
margin: 0 -12px;
|
337
|
+
padding: 0 12px;
|
338
|
+
display: block;
|
339
|
+
}
|
340
|
+
|
341
|
+
img.screenshot {
|
342
|
+
}
|
343
|
+
|
344
|
+
tt.descname, tt.descclassname, code.descname, code.descclassname {
|
345
|
+
font-size: 0.95em;
|
346
|
+
}
|
347
|
+
|
348
|
+
tt.descname, code.descname {
|
349
|
+
padding-right: 0.08em;
|
350
|
+
}
|
351
|
+
|
352
|
+
img.screenshot {
|
353
|
+
-moz-box-shadow: 2px 2px 4px #EEE;
|
354
|
+
-webkit-box-shadow: 2px 2px 4px #EEE;
|
355
|
+
box-shadow: 2px 2px 4px #EEE;
|
356
|
+
}
|
357
|
+
|
358
|
+
table.docutils {
|
359
|
+
border: 1px solid #888;
|
360
|
+
-moz-box-shadow: 2px 2px 4px #EEE;
|
361
|
+
-webkit-box-shadow: 2px 2px 4px #EEE;
|
362
|
+
box-shadow: 2px 2px 4px #EEE;
|
363
|
+
}
|
364
|
+
|
365
|
+
table.docutils td, table.docutils th {
|
366
|
+
border: 1px solid #888;
|
367
|
+
padding: 0.25em 0.7em;
|
368
|
+
}
|
369
|
+
|
370
|
+
table.field-list, table.footnote {
|
371
|
+
border: none;
|
372
|
+
-moz-box-shadow: none;
|
373
|
+
-webkit-box-shadow: none;
|
374
|
+
box-shadow: none;
|
375
|
+
}
|
376
|
+
|
377
|
+
table.footnote {
|
378
|
+
margin: 15px 0;
|
379
|
+
width: 100%;
|
380
|
+
border: 1px solid #EEE;
|
381
|
+
background: #FDFDFD;
|
382
|
+
font-size: 0.9em;
|
383
|
+
}
|
384
|
+
|
385
|
+
table.footnote + table.footnote {
|
386
|
+
margin-top: -15px;
|
387
|
+
border-top: none;
|
388
|
+
}
|
389
|
+
|
390
|
+
table.field-list th {
|
391
|
+
padding: 0 0.8em 0 0;
|
392
|
+
}
|
393
|
+
|
394
|
+
table.field-list td {
|
395
|
+
padding: 0;
|
396
|
+
}
|
397
|
+
|
398
|
+
table.field-list p {
|
399
|
+
margin-bottom: 0.8em;
|
400
|
+
}
|
401
|
+
|
402
|
+
/* Cloned from
|
403
|
+
* https://github.com/sphinx-doc/sphinx/commit/ef60dbfce09286b20b7385333d63a60321784e68
|
404
|
+
*/
|
405
|
+
.field-name {
|
406
|
+
-moz-hyphens: manual;
|
407
|
+
-ms-hyphens: manual;
|
408
|
+
-webkit-hyphens: manual;
|
409
|
+
hyphens: manual;
|
410
|
+
}
|
411
|
+
|
412
|
+
table.footnote td.label {
|
413
|
+
width: .1px;
|
414
|
+
padding: 0.3em 0 0.3em 0.5em;
|
415
|
+
}
|
416
|
+
|
417
|
+
table.footnote td {
|
418
|
+
padding: 0.3em 0.5em;
|
419
|
+
}
|
420
|
+
|
421
|
+
dl {
|
422
|
+
margin: 0;
|
423
|
+
padding: 0;
|
424
|
+
}
|
425
|
+
|
426
|
+
dl dd {
|
427
|
+
margin-left: 30px;
|
428
|
+
}
|
429
|
+
|
430
|
+
blockquote {
|
431
|
+
margin: 0 0 0 30px;
|
432
|
+
padding: 0;
|
433
|
+
}
|
434
|
+
|
435
|
+
ul, ol {
|
436
|
+
/* Matches the 30px from the narrow-screen "li > ul" selector below */
|
437
|
+
margin: 10px 0 10px 30px;
|
438
|
+
padding: 0;
|
439
|
+
}
|
440
|
+
|
441
|
+
pre {
|
442
|
+
background: #EEE;
|
443
|
+
padding: 7px 30px;
|
444
|
+
margin: 15px 0px;
|
445
|
+
line-height: 1.3em;
|
446
|
+
}
|
447
|
+
|
448
|
+
div.viewcode-block:target {
|
449
|
+
background: #ffd;
|
450
|
+
}
|
451
|
+
|
452
|
+
dl pre, blockquote pre, li pre {
|
453
|
+
margin-left: 0;
|
454
|
+
padding-left: 30px;
|
455
|
+
}
|
456
|
+
|
457
|
+
tt, code {
|
458
|
+
background-color: #ecf0f3;
|
459
|
+
color: #222;
|
460
|
+
/* padding: 1px 2px; */
|
461
|
+
}
|
462
|
+
|
463
|
+
tt.xref, code.xref, a tt {
|
464
|
+
background-color: #FBFBFB;
|
465
|
+
border-bottom: 1px solid #fff;
|
466
|
+
}
|
467
|
+
|
468
|
+
a.reference {
|
469
|
+
text-decoration: none;
|
470
|
+
border-bottom: 1px dotted #004B6B;
|
471
|
+
}
|
472
|
+
|
473
|
+
/* Don't put an underline on images */
|
474
|
+
a.image-reference, a.image-reference:hover {
|
475
|
+
border-bottom: none;
|
476
|
+
}
|
477
|
+
|
478
|
+
a.reference:hover {
|
479
|
+
border-bottom: 1px solid #6D4100;
|
480
|
+
}
|
481
|
+
|
482
|
+
a.footnote-reference {
|
483
|
+
text-decoration: none;
|
484
|
+
font-size: 0.7em;
|
485
|
+
vertical-align: top;
|
486
|
+
border-bottom: 1px dotted #004B6B;
|
487
|
+
}
|
488
|
+
|
489
|
+
a.footnote-reference:hover {
|
490
|
+
border-bottom: 1px solid #6D4100;
|
491
|
+
}
|
492
|
+
|
493
|
+
a:hover tt, a:hover code {
|
494
|
+
background: #EEE;
|
495
|
+
}
|
496
|
+
|
497
|
+
|
498
|
+
@media screen and (max-width: 870px) {
|
499
|
+
|
500
|
+
div.sphinxsidebar {
|
501
|
+
display: none;
|
502
|
+
}
|
503
|
+
|
504
|
+
div.document {
|
505
|
+
width: 100%;
|
506
|
+
|
507
|
+
}
|
508
|
+
|
509
|
+
div.documentwrapper {
|
510
|
+
margin-left: 0;
|
511
|
+
margin-top: 0;
|
512
|
+
margin-right: 0;
|
513
|
+
margin-bottom: 0;
|
514
|
+
}
|
515
|
+
|
516
|
+
div.bodywrapper {
|
517
|
+
margin-top: 0;
|
518
|
+
margin-right: 0;
|
519
|
+
margin-bottom: 0;
|
520
|
+
margin-left: 0;
|
521
|
+
}
|
522
|
+
|
523
|
+
ul {
|
524
|
+
margin-left: 0;
|
525
|
+
}
|
526
|
+
|
527
|
+
li > ul {
|
528
|
+
/* Matches the 30px from the "ul, ol" selector above */
|
529
|
+
margin-left: 30px;
|
530
|
+
}
|
531
|
+
|
532
|
+
.document {
|
533
|
+
width: auto;
|
534
|
+
}
|
535
|
+
|
536
|
+
.footer {
|
537
|
+
width: auto;
|
538
|
+
}
|
539
|
+
|
540
|
+
.bodywrapper {
|
541
|
+
margin: 0;
|
542
|
+
}
|
543
|
+
|
544
|
+
.footer {
|
545
|
+
width: auto;
|
546
|
+
}
|
547
|
+
|
548
|
+
.github {
|
549
|
+
display: none;
|
550
|
+
}
|
551
|
+
|
552
|
+
|
553
|
+
|
554
|
+
}
|
555
|
+
|
556
|
+
|
557
|
+
|
558
|
+
@media screen and (max-width: 875px) {
|
559
|
+
|
560
|
+
body {
|
561
|
+
margin: 0;
|
562
|
+
padding: 20px 30px;
|
563
|
+
}
|
564
|
+
|
565
|
+
div.documentwrapper {
|
566
|
+
float: none;
|
567
|
+
background: #fff;
|
568
|
+
}
|
569
|
+
|
570
|
+
div.sphinxsidebar {
|
571
|
+
display: block;
|
572
|
+
float: none;
|
573
|
+
width: 102.5%;
|
574
|
+
margin: 50px -30px -20px -30px;
|
575
|
+
padding: 10px 20px;
|
576
|
+
background: #333;
|
577
|
+
color: #FFF;
|
578
|
+
}
|
579
|
+
|
580
|
+
div.sphinxsidebar h3, div.sphinxsidebar h4, div.sphinxsidebar p,
|
581
|
+
div.sphinxsidebar h3 a {
|
582
|
+
color: #fff;
|
583
|
+
}
|
584
|
+
|
585
|
+
div.sphinxsidebar a {
|
586
|
+
color: #AAA;
|
587
|
+
}
|
588
|
+
|
589
|
+
div.sphinxsidebar p.logo {
|
590
|
+
display: none;
|
591
|
+
}
|
592
|
+
|
593
|
+
div.document {
|
594
|
+
width: 100%;
|
595
|
+
margin: 0;
|
596
|
+
}
|
597
|
+
|
598
|
+
div.footer {
|
599
|
+
display: none;
|
600
|
+
}
|
601
|
+
|
602
|
+
div.bodywrapper {
|
603
|
+
margin: 0;
|
604
|
+
}
|
605
|
+
|
606
|
+
div.body {
|
607
|
+
min-height: 0;
|
608
|
+
padding: 0;
|
609
|
+
}
|
610
|
+
|
611
|
+
.rtd_doc_footer {
|
612
|
+
display: none;
|
613
|
+
}
|
614
|
+
|
615
|
+
.document {
|
616
|
+
width: auto;
|
617
|
+
}
|
618
|
+
|
619
|
+
.footer {
|
620
|
+
width: auto;
|
621
|
+
}
|
622
|
+
|
623
|
+
.footer {
|
624
|
+
width: auto;
|
625
|
+
}
|
626
|
+
|
627
|
+
.github {
|
628
|
+
display: none;
|
629
|
+
}
|
630
|
+
}
|
631
|
+
|
632
|
+
|
633
|
+
/* misc. */
|
634
|
+
|
635
|
+
.revsys-inline {
|
636
|
+
display: none!important;
|
637
|
+
}
|
638
|
+
|
639
|
+
/* Make nested-list/multi-paragraph items look better in Releases changelog
|
640
|
+
* pages. Without this, docutils' magical list fuckery causes inconsistent
|
641
|
+
* formatting between different release sub-lists.
|
642
|
+
*/
|
643
|
+
div#changelog > div.section > ul > li > p:only-child {
|
644
|
+
margin-bottom: 0;
|
645
|
+
}
|
646
|
+
|
647
|
+
/* Hide fugly table cell borders in ..bibliography:: directive output */
|
648
|
+
table.docutils.citation, table.docutils.citation td, table.docutils.citation th {
|
649
|
+
border: none;
|
650
|
+
/* Below needed in some edge cases; if not applied, bottom shadows appear */
|
651
|
+
-moz-box-shadow: none;
|
652
|
+
-webkit-box-shadow: none;
|
653
|
+
box-shadow: none;
|
654
|
+
}
|
655
|
+
|
656
|
+
|
657
|
+
/* relbar */
|
658
|
+
|
659
|
+
.related {
|
660
|
+
line-height: 30px;
|
661
|
+
width: 100%;
|
662
|
+
font-size: 0.9rem;
|
663
|
+
}
|
664
|
+
|
665
|
+
.related.top {
|
666
|
+
border-bottom: 1px solid #EEE;
|
667
|
+
margin-bottom: 20px;
|
668
|
+
}
|
669
|
+
|
670
|
+
.related.bottom {
|
671
|
+
border-top: 1px solid #EEE;
|
672
|
+
}
|
673
|
+
|
674
|
+
.related ul {
|
675
|
+
padding: 0;
|
676
|
+
margin: 0;
|
677
|
+
list-style: none;
|
678
|
+
}
|
679
|
+
|
680
|
+
.related li {
|
681
|
+
display: inline;
|
682
|
+
}
|
683
|
+
|
684
|
+
nav#rellinks {
|
685
|
+
float: right;
|
686
|
+
}
|
687
|
+
|
688
|
+
nav#rellinks li+li:before {
|
689
|
+
content: "|";
|
690
|
+
}
|
691
|
+
|
692
|
+
nav#breadcrumbs li+li:before {
|
693
|
+
content: "\00BB";
|
694
|
+
}
|
695
|
+
|
696
|
+
/* Hide certain items when printing */
|
697
|
+
@media print {
|
698
|
+
div.related {
|
699
|
+
display: none;
|
700
|
+
}
|
701
|
+
}
|