From a2df32cdc89d4eef14187aa33302ece9e33f8e6d Mon Sep 17 00:00:00 2001 From: Markus Scheidgen <markus.scheidgen@gmail.com> Date: Thu, 2 Aug 2018 16:25:21 +0200 Subject: [PATCH] Added copyright & license. --- .gitignore | 3 +- LICENSE.txt | 202 ++++ build/docs/nomad/config.m.html | 1320 -------------------------- build/docs/nomad/files.m.html | 1443 ----------------------------- build/docs/nomad/index.html | 1037 --------------------- infrastructure/docker-compose.yml | 14 + nomad/__init__.py | 13 + nomad/config.py | 14 + nomad/files.py | 14 + nomad/processing.py | 14 + 10 files changed, 273 insertions(+), 3801 deletions(-) create mode 100644 LICENSE.txt delete mode 100644 build/docs/nomad/config.m.html delete mode 100644 build/docs/nomad/files.m.html delete mode 100644 build/docs/nomad/index.html diff --git a/.gitignore b/.gitignore index 94e6e306de..af3b3b472a 100644 --- a/.gitignore +++ b/.gitignore @@ -2,4 +2,5 @@ __pycache__ *.pyc *.egg-info/ -data \ No newline at end of file +data +build \ No newline at end of file diff --git a/LICENSE.txt b/LICENSE.txt new file mode 100644 index 0000000000..d645695673 --- /dev/null +++ b/LICENSE.txt @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/build/docs/nomad/config.m.html b/build/docs/nomad/config.m.html deleted file mode 100644 index 2af16fbef8..0000000000 --- a/build/docs/nomad/config.m.html +++ /dev/null @@ -1,1320 +0,0 @@ -<!doctype html> -<head> - <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> - <meta name="viewport" content="width=device-width, initial-scale=1, minimum-scale=1" /> - - <title>nomad.config API documentation</title> - <meta name="description" content="" /> - - <link href='http://fonts.googleapis.com/css?family=Source+Sans+Pro:400,300' rel='stylesheet' type='text/css'> - - <style type="text/css"> - -* { - box-sizing: border-box; -} -/*! normalize.css v1.1.1 | MIT License | git.io/normalize */ - -/* ========================================================================== - HTML5 display definitions - ========================================================================== */ - -/** - * Correct `block` display not defined in IE 6/7/8/9 and Firefox 3. - */ - -article, -aside, -details, -figcaption, -figure, -footer, -header, -hgroup, -main, -nav, -section, -summary { - display: block; -} - -/** - * Correct `inline-block` display not defined in IE 6/7/8/9 and Firefox 3. - */ - -audio, -canvas, -video { - display: inline-block; - *display: inline; - *zoom: 1; -} - -/** - * Prevent modern browsers from displaying `audio` without controls. - * Remove excess height in iOS 5 devices. - */ - -audio:not([controls]) { - display: none; - height: 0; -} - -/** - * Address styling not present in IE 7/8/9, Firefox 3, and Safari 4. - * Known issue: no IE 6 support. - */ - -[hidden] { - display: none; -} - -/* ========================================================================== - Base - ========================================================================== */ - -/** - * 1. Prevent system color scheme's background color being used in Firefox, IE, - * and Opera. - * 2. Prevent system color scheme's text color being used in Firefox, IE, and - * Opera. - * 3. Correct text resizing oddly in IE 6/7 when body `font-size` is set using - * `em` units. - * 4. Prevent iOS text size adjust after orientation change, without disabling - * user zoom. - */ - -html { - background: #fff; /* 1 */ - color: #000; /* 2 */ - font-size: 100%; /* 3 */ - -webkit-text-size-adjust: 100%; /* 4 */ - -ms-text-size-adjust: 100%; /* 4 */ -} - -/** - * Address `font-family` inconsistency between `textarea` and other form - * elements. - */ - -html, -button, -input, -select, -textarea { - font-family: sans-serif; -} - -/** - * Address margins handled incorrectly in IE 6/7. - */ - -body { - margin: 0; -} - -/* ========================================================================== - Links - ========================================================================== */ - -/** - * Address `outline` inconsistency between Chrome and other browsers. - */ - -a:focus { - outline: thin dotted; -} - -/** - * Improve readability when focused and also mouse hovered in all browsers. - */ - -a:active, -a:hover { - outline: 0; -} - -/* ========================================================================== - Typography - ========================================================================== */ - -/** - * Address font sizes and margins set differently in IE 6/7. - * Address font sizes within `section` and `article` in Firefox 4+, Safari 5, - * and Chrome. - */ - -h1 { - font-size: 2em; - margin: 0.67em 0; -} - -h2 { - font-size: 1.5em; - margin: 0.83em 0; -} - -h3 { - font-size: 1.17em; - margin: 1em 0; -} - -h4 { - font-size: 1em; - margin: 1.33em 0; -} - -h5 { - font-size: 0.83em; - margin: 1.67em 0; -} - -h6 { - font-size: 0.67em; - margin: 2.33em 0; -} - -/** - * Address styling not present in IE 7/8/9, Safari 5, and Chrome. - */ - -abbr[title] { - border-bottom: 1px dotted; -} - -/** - * Address style set to `bolder` in Firefox 3+, Safari 4/5, and Chrome. - */ - -b, -strong { - font-weight: bold; -} - -blockquote { - margin: 1em 40px; -} - -/** - * Address styling not present in Safari 5 and Chrome. - */ - -dfn { - font-style: italic; -} - -/** - * Address differences between Firefox and other browsers. - * Known issue: no IE 6/7 normalization. - */ - -hr { - -moz-box-sizing: content-box; - box-sizing: content-box; - height: 0; -} - -/** - * Address styling not present in IE 6/7/8/9. - */ - -mark { - background: #ff0; - color: #000; -} - -/** - * Address margins set differently in IE 6/7. - */ - -p, -pre { - margin: 1em 0; -} - -/** - * Correct font family set oddly in IE 6, Safari 4/5, and Chrome. - */ - -code, -kbd, -pre, -samp { - font-family: monospace, serif; - _font-family: 'courier new', monospace; - font-size: 1em; -} - -/** - * Improve readability of pre-formatted text in all browsers. - */ - -pre { - white-space: pre; - white-space: pre-wrap; - word-wrap: break-word; -} - -/** - * Address CSS quotes not supported in IE 6/7. - */ - -q { - quotes: none; -} - -/** - * Address `quotes` property not supported in Safari 4. - */ - -q:before, -q:after { - content: ''; - content: none; -} - -/** - * Address inconsistent and variable font size in all browsers. - */ - -small { - font-size: 80%; -} - -/** - * Prevent `sub` and `sup` affecting `line-height` in all browsers. - */ - -sub, -sup { - font-size: 75%; - line-height: 0; - position: relative; - vertical-align: baseline; -} - -sup { - top: -0.5em; -} - -sub { - bottom: -0.25em; -} - -/* ========================================================================== - Lists - ========================================================================== */ - -/** - * Address margins set differently in IE 6/7. - */ - -dl, -menu, -ol, -ul { - margin: 1em 0; -} - -dd { - margin: 0 0 0 40px; -} - -/** - * Address paddings set differently in IE 6/7. - */ - -menu, -ol, -ul { - padding: 0 0 0 40px; -} - -/** - * Correct list images handled incorrectly in IE 7. - */ - -nav ul, -nav ol { - list-style: none; - list-style-image: none; -} - -/* ========================================================================== - Embedded content - ========================================================================== */ - -/** - * 1. Remove border when inside `a` element in IE 6/7/8/9 and Firefox 3. - * 2. Improve image quality when scaled in IE 7. - */ - -img { - border: 0; /* 1 */ - -ms-interpolation-mode: bicubic; /* 2 */ -} - -/** - * Correct overflow displayed oddly in IE 9. - */ - -svg:not(:root) { - overflow: hidden; -} - -/* ========================================================================== - Figures - ========================================================================== */ - -/** - * Address margin not present in IE 6/7/8/9, Safari 5, and Opera 11. - */ - -figure { - margin: 0; -} - -/* ========================================================================== - Forms - ========================================================================== */ - -/** - * Correct margin displayed oddly in IE 6/7. - */ - -form { - margin: 0; -} - -/** - * Define consistent border, margin, and padding. - */ - -fieldset { - border: 1px solid #c0c0c0; - margin: 0 2px; - padding: 0.35em 0.625em 0.75em; -} - -/** - * 1. Correct color not being inherited in IE 6/7/8/9. - * 2. Correct text not wrapping in Firefox 3. - * 3. Correct alignment displayed oddly in IE 6/7. - */ - -legend { - border: 0; /* 1 */ - padding: 0; - white-space: normal; /* 2 */ - *margin-left: -7px; /* 3 */ -} - -/** - * 1. Correct font size not being inherited in all browsers. - * 2. Address margins set differently in IE 6/7, Firefox 3+, Safari 5, - * and Chrome. - * 3. Improve appearance and consistency in all browsers. - */ - -button, -input, -select, -textarea { - font-size: 100%; /* 1 */ - margin: 0; /* 2 */ - vertical-align: baseline; /* 3 */ - *vertical-align: middle; /* 3 */ -} - -/** - * Address Firefox 3+ setting `line-height` on `input` using `!important` in - * the UA stylesheet. - */ - -button, -input { - line-height: normal; -} - -/** - * Address inconsistent `text-transform` inheritance for `button` and `select`. - * All other form control elements do not inherit `text-transform` values. - * Correct `button` style inheritance in Chrome, Safari 5+, and IE 6+. - * Correct `select` style inheritance in Firefox 4+ and Opera. - */ - -button, -select { - text-transform: none; -} - -/** - * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio` - * and `video` controls. - * 2. Correct inability to style clickable `input` types in iOS. - * 3. Improve usability and consistency of cursor style between image-type - * `input` and others. - * 4. Remove inner spacing in IE 7 without affecting normal text inputs. - * Known issue: inner spacing remains in IE 6. - */ - -button, -html input[type="button"], /* 1 */ -input[type="reset"], -input[type="submit"] { - -webkit-appearance: button; /* 2 */ - cursor: pointer; /* 3 */ - *overflow: visible; /* 4 */ -} - -/** - * Re-set default cursor for disabled elements. - */ - -button[disabled], -html input[disabled] { - cursor: default; -} - -/** - * 1. Address box sizing set to content-box in IE 8/9. - * 2. Remove excess padding in IE 8/9. - * 3. Remove excess padding in IE 7. - * Known issue: excess padding remains in IE 6. - */ - -input[type="checkbox"], -input[type="radio"] { - box-sizing: border-box; /* 1 */ - padding: 0; /* 2 */ - *height: 13px; /* 3 */ - *width: 13px; /* 3 */ -} - -/** - * 1. Address `appearance` set to `searchfield` in Safari 5 and Chrome. - * 2. Address `box-sizing` set to `border-box` in Safari 5 and Chrome - * (include `-moz` to future-proof). - */ - -input[type="search"] { - -webkit-appearance: textfield; /* 1 */ - -moz-box-sizing: content-box; - -webkit-box-sizing: content-box; /* 2 */ - box-sizing: content-box; -} - -/** - * Remove inner padding and search cancel button in Safari 5 and Chrome - * on OS X. - */ - -input[type="search"]::-webkit-search-cancel-button, -input[type="search"]::-webkit-search-decoration { - -webkit-appearance: none; -} - -/** - * Remove inner padding and border in Firefox 3+. - */ - -button::-moz-focus-inner, -input::-moz-focus-inner { - border: 0; - padding: 0; -} - -/** - * 1. Remove default vertical scrollbar in IE 6/7/8/9. - * 2. Improve readability and alignment in all browsers. - */ - -textarea { - overflow: auto; /* 1 */ - vertical-align: top; /* 2 */ -} - -/* ========================================================================== - Tables - ========================================================================== */ - -/** - * Remove most spacing between table cells. - */ - -table { - border-collapse: collapse; - border-spacing: 0; -} - - </style> - - <style type="text/css"> - - html, body { - margin: 0; - padding: 0; - min-height: 100%; - } - body { - background: #fff; - font-family: "Source Sans Pro", "Helvetica Neueue", Helvetica, sans; - font-weight: 300; - font-size: 16px; - line-height: 1.6em; - } - #content { - width: 70%; - max-width: 850px; - float: left; - padding: 30px 60px; - border-left: 1px solid #ddd; - } - #sidebar { - width: 25%; - float: left; - padding: 30px; - overflow: hidden; - } - #nav { - font-size: 130%; - margin: 0 0 15px 0; - } - - #top { - display: block; - position: fixed; - bottom: 5px; - left: 5px; - font-size: .85em; - text-transform: uppercase; - } - - #footer { - font-size: .75em; - padding: 5px 30px; - border-top: 1px solid #ddd; - text-align: right; - } - #footer p { - margin: 0 0 0 30px; - display: inline-block; - } - - h1, h2, h3, h4, h5 { - font-weight: 300; - } - h1 { - font-size: 2.5em; - line-height: 1.1em; - margin: 0 0 .50em 0; - } - - h2 { - font-size: 1.75em; - margin: 1em 0 .50em 0; - } - - h3 { - margin: 25px 0 10px 0; - } - - h4 { - margin: 0; - font-size: 105%; - } - - a { - color: #058; - text-decoration: none; - transition: color .3s ease-in-out; - } - - a:hover { - color: #e08524; - transition: color .3s ease-in-out; - } - - pre, code, .mono, .name { - font-family: "Ubuntu Mono", "Cousine", "DejaVu Sans Mono", monospace; - } - - .title .name { - font-weight: bold; - } - .section-title { - margin-top: 2em; - } - .ident { - color: #900; - } - - code { - background: #f9f9f9; - } - - pre { - background: #fefefe; - border: 1px solid #ddd; - box-shadow: 2px 2px 0 #f3f3f3; - margin: 0 30px; - padding: 15px 30px; - } - - .codehilite { - margin: 0 30px 10px 30px; - } - - .codehilite pre { - margin: 0; - } - .codehilite .err { background: #ff3300; color: #fff !important; } - - table#module-list { - font-size: 110%; - } - - table#module-list tr td:first-child { - padding-right: 10px; - white-space: nowrap; - } - - table#module-list td { - vertical-align: top; - padding-bottom: 8px; - } - - table#module-list td p { - margin: 0 0 7px 0; - } - - .def { - display: table; - } - - .def p { - display: table-cell; - vertical-align: top; - text-align: left; - } - - .def p:first-child { - white-space: nowrap; - } - - .def p:last-child { - width: 100%; - } - - - #index { - list-style-type: none; - margin: 0; - padding: 0; - } - ul#index .class_name { - /* font-size: 110%; */ - font-weight: bold; - } - #index ul { - margin: 0; - } - - .item { - margin: 0 0 15px 0; - } - - .item .class { - margin: 0 0 25px 30px; - } - - .item .class ul.class_list { - margin: 0 0 20px 0; - } - - .item .name { - background: #fafafa; - margin: 0; - font-weight: bold; - padding: 5px 10px; - border-radius: 3px; - display: inline-block; - min-width: 40%; - } - .item .name:hover { - background: #f6f6f6; - } - - .item .empty_desc { - margin: 0 0 5px 0; - padding: 0; - } - - .item .inheritance { - margin: 3px 0 0 30px; - } - - .item .inherited { - color: #666; - } - - .item .desc { - padding: 0 8px; - margin: 0; - } - - .item .desc p { - margin: 0 0 10px 0; - } - - .source_cont { - margin: 0; - padding: 0; - } - - .source_link a { - background: #ffc300; - font-weight: 400; - font-size: .75em; - text-transform: uppercase; - color: #fff; - text-shadow: 1px 1px 0 #f4b700; - - padding: 3px 8px; - border-radius: 2px; - transition: background .3s ease-in-out; - } - .source_link a:hover { - background: #FF7200; - text-shadow: none; - transition: background .3s ease-in-out; - } - - .source { - display: none; - max-height: 600px; - overflow-y: scroll; - margin-bottom: 15px; - } - - .source .codehilite { - margin: 0; - } - - .desc h1, .desc h2, .desc h3 { - font-size: 100% !important; - } - .clear { - clear: both; - } - - @media all and (max-width: 950px) { - #sidebar { - width: 35%; - } - #content { - width: 65%; - } - } - @media all and (max-width: 650px) { - #top { - display: none; - } - #sidebar { - float: none; - width: auto; - } - #content { - float: none; - width: auto; - padding: 30px; - } - - #index ul { - padding: 0; - margin-bottom: 15px; - } - #index ul li { - display: inline-block; - margin-right: 30px; - } - #footer { - text-align: left; - } - #footer p { - display: block; - margin: inherit; - } - } - - /*****************************/ - - </style> - - - <style type="text/css"> - -/* ========================================================================== - EXAMPLE Media Queries for Responsive Design. - These examples override the primary ('mobile first') styles. - Modify as content requires. - ========================================================================== */ - -@media only screen and (min-width: 35em) { - /* Style adjustments for viewports that meet the condition */ -} - -@media print, - (-o-min-device-pixel-ratio: 5/4), - (-webkit-min-device-pixel-ratio: 1.25), - (min-resolution: 120dpi) { - /* Style adjustments for high resolution devices */ -} - -/* ========================================================================== - Print styles. - Inlined to avoid required HTTP connection: h5bp.com/r - ========================================================================== */ - -@media print { - * { - background: transparent !important; - color: #000 !important; /* Black prints faster: h5bp.com/s */ - box-shadow: none !important; - text-shadow: none !important; - } - - a, - a:visited { - text-decoration: underline; - } - - a[href]:after { - content: " (" attr(href) ")"; - } - - abbr[title]:after { - content: " (" attr(title) ")"; - } - - /* - * Don't show links for images, or javascript/internal links - */ - - .ir a:after, - a[href^="javascript:"]:after, - a[href^="#"]:after { - content: ""; - } - - pre, - blockquote { - border: 1px solid #999; - page-break-inside: avoid; - } - - thead { - display: table-header-group; /* h5bp.com/t */ - } - - tr, - img { - page-break-inside: avoid; - } - - img { - max-width: 100% !important; - } - - @page { - margin: 0.5cm; - } - - p, - h2, - h3 { - orphans: 3; - widows: 3; - } - - h2, - h3 { - page-break-after: avoid; - } -} - - </style> - - <script type="text/javascript"> - function toggle(id, $link) { - $node = document.getElementById(id); - if (!$node) - return; - if (!$node.style.display || $node.style.display == 'none') { - $node.style.display = 'block'; - $link.innerHTML = 'Hide source ≢'; - } else { - $node.style.display = 'none'; - $link.innerHTML = 'Show source ≡'; - } - } - </script> -</head> -<body> -<a href="#" id="top">Top</a> - -<div id="container"> - - - <div id="sidebar"> - <h1>Index</h1> - <ul id="index"> - <li class="set"><h3><a href="#header-variables">Module variables</a></h3> - - <ul> - <li class="mono"><a href="#nomad.config.fs">fs</a></li> - <li class="mono"><a href="#nomad.config.minio">minio</a></li> - <li class="mono"><a href="#nomad.config.rabbitmq">rabbitmq</a></li> - <li class="mono"><a href="#nomad.config.s3">s3</a></li> - </ul> - - </li> - - - <li class="set"><h3><a href="#header-classes">Classes</a></h3> - <ul> - <li class="mono"> - <span class="class_name"><a href="#nomad.config.FSConfig">FSConfig</a></span> - - </li> - <li class="mono"> - <span class="class_name"><a href="#nomad.config.Minio">MinioConfig</a></span> - - </li> - <li class="mono"> - <span class="class_name"><a href="#nomad.config.RabbitMQ">RabitMQConfig</a></span> - - </li> - <li class="mono"> - <span class="class_name"><a href="#nomad.config.S3">S3Config</a></span> - - </li> - </ul> - </li> - - </ul> - </div> - - <article id="content"> - - - - - - - <header id="section-intro"> - <h1 class="title"><span class="name">nomad.config</span> module</h1> - - - <p class="source_link"><a href="javascript:void(0);" onclick="toggle('source-nomad.config', this);">Show source ≡</a></p> - <div id="source-nomad.config" class="source"> - <pre><code>from collections import namedtuple - -S3Config = namedtuple('S3', ['uploads_bucket', 'repository_bucket', 'archive_bucket']) -RabitMQConfig = namedtuple('RabbitMQ', ['host', 'port', 'user', 'password']) -MinioConfig = namedtuple('Minio', ['host', 'port', 'accesskey', 'secret']) -FSConfig = namedtuple('FSConfig', ['tmp']) - -s3 = S3Config( - uploads_bucket='uploads', - repository_bucket='repository', - archive_bucket='archive' -) -rabbitmq = RabitMQConfig( - host = 'localhost', - port = None, - user = 'rabbitmq', - password = 'rabbitmq' -) -minio = MinioConfig( - host = 'localhost', - port = 9007, - accesskey = 'AKIAIOSFODNN7EXAMPLE', - secret = 'wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY' -) -fs = FSConfig( - tmp = './infrastructure/data/tmp' -) -</code></pre> - </div> - - </header> - - <section id="section-items"> - <h2 class="section-title" id="header-variables">Module variables</h2> - <div class="item"> - <p id="nomad.config.fs" class="name">var <span class="ident">fs</span></p> - - - <div class="source_cont"> -</div> - - </div> - <div class="item"> - <p id="nomad.config.minio" class="name">var <span class="ident">minio</span></p> - - - <div class="source_cont"> -</div> - - </div> - <div class="item"> - <p id="nomad.config.rabbitmq" class="name">var <span class="ident">rabbitmq</span></p> - - - <div class="source_cont"> -</div> - - </div> - <div class="item"> - <p id="nomad.config.s3" class="name">var <span class="ident">s3</span></p> - - - <div class="source_cont"> -</div> - - </div> - - - <h2 class="section-title" id="header-classes">Classes</h2> - - <div class="item"> - <p id="nomad.config.FSConfig" class="name">class <span class="ident">FSConfig</span></p> - - - <div class="desc"><p>FSConfig(tmp,)</p></div> - <div class="source_cont"> -</div> - - - <div class="class"> - <h3>Ancestors (in MRO)</h3> - <ul class="class_list"> - <li><a href="#nomad.config.FSConfig">FSConfig</a></li> - <li>builtins.tuple</li> - <li>builtins.object</li> - </ul> - <h3>Instance variables</h3> - <div class="item"> - <p id="nomad.config.FSConfig.tmp" class="name">var <span class="ident">tmp</span></p> - - - - - <div class="desc"><p>Alias for field number 0</p></div> - <div class="source_cont"> -</div> - - </div> - </div> - </div> - - <div class="item"> - <p id="nomad.config.Minio" class="name">class <span class="ident">MinioConfig</span></p> - - - <div class="desc"><p>Minio(host, port, accesskey, secret)</p></div> - <div class="source_cont"> -</div> - - - <div class="class"> - <h3>Ancestors (in MRO)</h3> - <ul class="class_list"> - <li><a href="#nomad.config.Minio">MinioConfig</a></li> - <li>builtins.tuple</li> - <li>builtins.object</li> - </ul> - <h3>Instance variables</h3> - <div class="item"> - <p id="nomad.config.Minio.accesskey" class="name">var <span class="ident">accesskey</span></p> - - - - - <div class="desc"><p>Alias for field number 2</p></div> - <div class="source_cont"> -</div> - - </div> - <div class="item"> - <p id="nomad.config.Minio.host" class="name">var <span class="ident">host</span></p> - - - - - <div class="desc"><p>Alias for field number 0</p></div> - <div class="source_cont"> -</div> - - </div> - <div class="item"> - <p id="nomad.config.Minio.port" class="name">var <span class="ident">port</span></p> - - - - - <div class="desc"><p>Alias for field number 1</p></div> - <div class="source_cont"> -</div> - - </div> - <div class="item"> - <p id="nomad.config.Minio.secret" class="name">var <span class="ident">secret</span></p> - - - - - <div class="desc"><p>Alias for field number 3</p></div> - <div class="source_cont"> -</div> - - </div> - </div> - </div> - - <div class="item"> - <p id="nomad.config.RabbitMQ" class="name">class <span class="ident">RabitMQConfig</span></p> - - - <div class="desc"><p>RabbitMQ(host, port, user, password)</p></div> - <div class="source_cont"> -</div> - - - <div class="class"> - <h3>Ancestors (in MRO)</h3> - <ul class="class_list"> - <li><a href="#nomad.config.RabbitMQ">RabitMQConfig</a></li> - <li>builtins.tuple</li> - <li>builtins.object</li> - </ul> - <h3>Instance variables</h3> - <div class="item"> - <p id="nomad.config.RabbitMQ.host" class="name">var <span class="ident">host</span></p> - - - - - <div class="desc"><p>Alias for field number 0</p></div> - <div class="source_cont"> -</div> - - </div> - <div class="item"> - <p id="nomad.config.RabbitMQ.password" class="name">var <span class="ident">password</span></p> - - - - - <div class="desc"><p>Alias for field number 3</p></div> - <div class="source_cont"> -</div> - - </div> - <div class="item"> - <p id="nomad.config.RabbitMQ.port" class="name">var <span class="ident">port</span></p> - - - - - <div class="desc"><p>Alias for field number 1</p></div> - <div class="source_cont"> -</div> - - </div> - <div class="item"> - <p id="nomad.config.RabbitMQ.user" class="name">var <span class="ident">user</span></p> - - - - - <div class="desc"><p>Alias for field number 2</p></div> - <div class="source_cont"> -</div> - - </div> - </div> - </div> - - <div class="item"> - <p id="nomad.config.S3" class="name">class <span class="ident">S3Config</span></p> - - - <div class="desc"><p>S3(uploads_bucket, repository_bucket, archive_bucket)</p></div> - <div class="source_cont"> -</div> - - - <div class="class"> - <h3>Ancestors (in MRO)</h3> - <ul class="class_list"> - <li><a href="#nomad.config.S3">S3Config</a></li> - <li>builtins.tuple</li> - <li>builtins.object</li> - </ul> - <h3>Instance variables</h3> - <div class="item"> - <p id="nomad.config.S3.archive_bucket" class="name">var <span class="ident">archive_bucket</span></p> - - - - - <div class="desc"><p>Alias for field number 2</p></div> - <div class="source_cont"> -</div> - - </div> - <div class="item"> - <p id="nomad.config.S3.repository_bucket" class="name">var <span class="ident">repository_bucket</span></p> - - - - - <div class="desc"><p>Alias for field number 1</p></div> - <div class="source_cont"> -</div> - - </div> - <div class="item"> - <p id="nomad.config.S3.uploads_bucket" class="name">var <span class="ident">uploads_bucket</span></p> - - - - - <div class="desc"><p>Alias for field number 0</p></div> - <div class="source_cont"> -</div> - - </div> - </div> - </div> - - </section> - - </article> - <div class="clear"> </div> - <footer id="footer"> - <p> - Documentation generated by - <a href="https://github.com/BurntSushi/pdoc">pdoc 0.3.2</a> - </p> - - <p>pdoc is in the public domain with the - <a href="http://unlicense.org">UNLICENSE</a></p> - - <p>Design by <a href="http://nadh.in">Kailash Nadh</a></p> - </footer> -</div> -</body> -</html> diff --git a/build/docs/nomad/files.m.html b/build/docs/nomad/files.m.html deleted file mode 100644 index 76b27ed870..0000000000 --- a/build/docs/nomad/files.m.html +++ /dev/null @@ -1,1443 +0,0 @@ -<!doctype html> -<head> - <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> - <meta name="viewport" content="width=device-width, initial-scale=1, minimum-scale=1" /> - - <title>nomad.files API documentation</title> - <meta name="description" content="" /> - - <link href='http://fonts.googleapis.com/css?family=Source+Sans+Pro:400,300' rel='stylesheet' type='text/css'> - - <style type="text/css"> - -* { - box-sizing: border-box; -} -/*! normalize.css v1.1.1 | MIT License | git.io/normalize */ - -/* ========================================================================== - HTML5 display definitions - ========================================================================== */ - -/** - * Correct `block` display not defined in IE 6/7/8/9 and Firefox 3. - */ - -article, -aside, -details, -figcaption, -figure, -footer, -header, -hgroup, -main, -nav, -section, -summary { - display: block; -} - -/** - * Correct `inline-block` display not defined in IE 6/7/8/9 and Firefox 3. - */ - -audio, -canvas, -video { - display: inline-block; - *display: inline; - *zoom: 1; -} - -/** - * Prevent modern browsers from displaying `audio` without controls. - * Remove excess height in iOS 5 devices. - */ - -audio:not([controls]) { - display: none; - height: 0; -} - -/** - * Address styling not present in IE 7/8/9, Firefox 3, and Safari 4. - * Known issue: no IE 6 support. - */ - -[hidden] { - display: none; -} - -/* ========================================================================== - Base - ========================================================================== */ - -/** - * 1. Prevent system color scheme's background color being used in Firefox, IE, - * and Opera. - * 2. Prevent system color scheme's text color being used in Firefox, IE, and - * Opera. - * 3. Correct text resizing oddly in IE 6/7 when body `font-size` is set using - * `em` units. - * 4. Prevent iOS text size adjust after orientation change, without disabling - * user zoom. - */ - -html { - background: #fff; /* 1 */ - color: #000; /* 2 */ - font-size: 100%; /* 3 */ - -webkit-text-size-adjust: 100%; /* 4 */ - -ms-text-size-adjust: 100%; /* 4 */ -} - -/** - * Address `font-family` inconsistency between `textarea` and other form - * elements. - */ - -html, -button, -input, -select, -textarea { - font-family: sans-serif; -} - -/** - * Address margins handled incorrectly in IE 6/7. - */ - -body { - margin: 0; -} - -/* ========================================================================== - Links - ========================================================================== */ - -/** - * Address `outline` inconsistency between Chrome and other browsers. - */ - -a:focus { - outline: thin dotted; -} - -/** - * Improve readability when focused and also mouse hovered in all browsers. - */ - -a:active, -a:hover { - outline: 0; -} - -/* ========================================================================== - Typography - ========================================================================== */ - -/** - * Address font sizes and margins set differently in IE 6/7. - * Address font sizes within `section` and `article` in Firefox 4+, Safari 5, - * and Chrome. - */ - -h1 { - font-size: 2em; - margin: 0.67em 0; -} - -h2 { - font-size: 1.5em; - margin: 0.83em 0; -} - -h3 { - font-size: 1.17em; - margin: 1em 0; -} - -h4 { - font-size: 1em; - margin: 1.33em 0; -} - -h5 { - font-size: 0.83em; - margin: 1.67em 0; -} - -h6 { - font-size: 0.67em; - margin: 2.33em 0; -} - -/** - * Address styling not present in IE 7/8/9, Safari 5, and Chrome. - */ - -abbr[title] { - border-bottom: 1px dotted; -} - -/** - * Address style set to `bolder` in Firefox 3+, Safari 4/5, and Chrome. - */ - -b, -strong { - font-weight: bold; -} - -blockquote { - margin: 1em 40px; -} - -/** - * Address styling not present in Safari 5 and Chrome. - */ - -dfn { - font-style: italic; -} - -/** - * Address differences between Firefox and other browsers. - * Known issue: no IE 6/7 normalization. - */ - -hr { - -moz-box-sizing: content-box; - box-sizing: content-box; - height: 0; -} - -/** - * Address styling not present in IE 6/7/8/9. - */ - -mark { - background: #ff0; - color: #000; -} - -/** - * Address margins set differently in IE 6/7. - */ - -p, -pre { - margin: 1em 0; -} - -/** - * Correct font family set oddly in IE 6, Safari 4/5, and Chrome. - */ - -code, -kbd, -pre, -samp { - font-family: monospace, serif; - _font-family: 'courier new', monospace; - font-size: 1em; -} - -/** - * Improve readability of pre-formatted text in all browsers. - */ - -pre { - white-space: pre; - white-space: pre-wrap; - word-wrap: break-word; -} - -/** - * Address CSS quotes not supported in IE 6/7. - */ - -q { - quotes: none; -} - -/** - * Address `quotes` property not supported in Safari 4. - */ - -q:before, -q:after { - content: ''; - content: none; -} - -/** - * Address inconsistent and variable font size in all browsers. - */ - -small { - font-size: 80%; -} - -/** - * Prevent `sub` and `sup` affecting `line-height` in all browsers. - */ - -sub, -sup { - font-size: 75%; - line-height: 0; - position: relative; - vertical-align: baseline; -} - -sup { - top: -0.5em; -} - -sub { - bottom: -0.25em; -} - -/* ========================================================================== - Lists - ========================================================================== */ - -/** - * Address margins set differently in IE 6/7. - */ - -dl, -menu, -ol, -ul { - margin: 1em 0; -} - -dd { - margin: 0 0 0 40px; -} - -/** - * Address paddings set differently in IE 6/7. - */ - -menu, -ol, -ul { - padding: 0 0 0 40px; -} - -/** - * Correct list images handled incorrectly in IE 7. - */ - -nav ul, -nav ol { - list-style: none; - list-style-image: none; -} - -/* ========================================================================== - Embedded content - ========================================================================== */ - -/** - * 1. Remove border when inside `a` element in IE 6/7/8/9 and Firefox 3. - * 2. Improve image quality when scaled in IE 7. - */ - -img { - border: 0; /* 1 */ - -ms-interpolation-mode: bicubic; /* 2 */ -} - -/** - * Correct overflow displayed oddly in IE 9. - */ - -svg:not(:root) { - overflow: hidden; -} - -/* ========================================================================== - Figures - ========================================================================== */ - -/** - * Address margin not present in IE 6/7/8/9, Safari 5, and Opera 11. - */ - -figure { - margin: 0; -} - -/* ========================================================================== - Forms - ========================================================================== */ - -/** - * Correct margin displayed oddly in IE 6/7. - */ - -form { - margin: 0; -} - -/** - * Define consistent border, margin, and padding. - */ - -fieldset { - border: 1px solid #c0c0c0; - margin: 0 2px; - padding: 0.35em 0.625em 0.75em; -} - -/** - * 1. Correct color not being inherited in IE 6/7/8/9. - * 2. Correct text not wrapping in Firefox 3. - * 3. Correct alignment displayed oddly in IE 6/7. - */ - -legend { - border: 0; /* 1 */ - padding: 0; - white-space: normal; /* 2 */ - *margin-left: -7px; /* 3 */ -} - -/** - * 1. Correct font size not being inherited in all browsers. - * 2. Address margins set differently in IE 6/7, Firefox 3+, Safari 5, - * and Chrome. - * 3. Improve appearance and consistency in all browsers. - */ - -button, -input, -select, -textarea { - font-size: 100%; /* 1 */ - margin: 0; /* 2 */ - vertical-align: baseline; /* 3 */ - *vertical-align: middle; /* 3 */ -} - -/** - * Address Firefox 3+ setting `line-height` on `input` using `!important` in - * the UA stylesheet. - */ - -button, -input { - line-height: normal; -} - -/** - * Address inconsistent `text-transform` inheritance for `button` and `select`. - * All other form control elements do not inherit `text-transform` values. - * Correct `button` style inheritance in Chrome, Safari 5+, and IE 6+. - * Correct `select` style inheritance in Firefox 4+ and Opera. - */ - -button, -select { - text-transform: none; -} - -/** - * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio` - * and `video` controls. - * 2. Correct inability to style clickable `input` types in iOS. - * 3. Improve usability and consistency of cursor style between image-type - * `input` and others. - * 4. Remove inner spacing in IE 7 without affecting normal text inputs. - * Known issue: inner spacing remains in IE 6. - */ - -button, -html input[type="button"], /* 1 */ -input[type="reset"], -input[type="submit"] { - -webkit-appearance: button; /* 2 */ - cursor: pointer; /* 3 */ - *overflow: visible; /* 4 */ -} - -/** - * Re-set default cursor for disabled elements. - */ - -button[disabled], -html input[disabled] { - cursor: default; -} - -/** - * 1. Address box sizing set to content-box in IE 8/9. - * 2. Remove excess padding in IE 8/9. - * 3. Remove excess padding in IE 7. - * Known issue: excess padding remains in IE 6. - */ - -input[type="checkbox"], -input[type="radio"] { - box-sizing: border-box; /* 1 */ - padding: 0; /* 2 */ - *height: 13px; /* 3 */ - *width: 13px; /* 3 */ -} - -/** - * 1. Address `appearance` set to `searchfield` in Safari 5 and Chrome. - * 2. Address `box-sizing` set to `border-box` in Safari 5 and Chrome - * (include `-moz` to future-proof). - */ - -input[type="search"] { - -webkit-appearance: textfield; /* 1 */ - -moz-box-sizing: content-box; - -webkit-box-sizing: content-box; /* 2 */ - box-sizing: content-box; -} - -/** - * Remove inner padding and search cancel button in Safari 5 and Chrome - * on OS X. - */ - -input[type="search"]::-webkit-search-cancel-button, -input[type="search"]::-webkit-search-decoration { - -webkit-appearance: none; -} - -/** - * Remove inner padding and border in Firefox 3+. - */ - -button::-moz-focus-inner, -input::-moz-focus-inner { - border: 0; - padding: 0; -} - -/** - * 1. Remove default vertical scrollbar in IE 6/7/8/9. - * 2. Improve readability and alignment in all browsers. - */ - -textarea { - overflow: auto; /* 1 */ - vertical-align: top; /* 2 */ -} - -/* ========================================================================== - Tables - ========================================================================== */ - -/** - * Remove most spacing between table cells. - */ - -table { - border-collapse: collapse; - border-spacing: 0; -} - - </style> - - <style type="text/css"> - - html, body { - margin: 0; - padding: 0; - min-height: 100%; - } - body { - background: #fff; - font-family: "Source Sans Pro", "Helvetica Neueue", Helvetica, sans; - font-weight: 300; - font-size: 16px; - line-height: 1.6em; - } - #content { - width: 70%; - max-width: 850px; - float: left; - padding: 30px 60px; - border-left: 1px solid #ddd; - } - #sidebar { - width: 25%; - float: left; - padding: 30px; - overflow: hidden; - } - #nav { - font-size: 130%; - margin: 0 0 15px 0; - } - - #top { - display: block; - position: fixed; - bottom: 5px; - left: 5px; - font-size: .85em; - text-transform: uppercase; - } - - #footer { - font-size: .75em; - padding: 5px 30px; - border-top: 1px solid #ddd; - text-align: right; - } - #footer p { - margin: 0 0 0 30px; - display: inline-block; - } - - h1, h2, h3, h4, h5 { - font-weight: 300; - } - h1 { - font-size: 2.5em; - line-height: 1.1em; - margin: 0 0 .50em 0; - } - - h2 { - font-size: 1.75em; - margin: 1em 0 .50em 0; - } - - h3 { - margin: 25px 0 10px 0; - } - - h4 { - margin: 0; - font-size: 105%; - } - - a { - color: #058; - text-decoration: none; - transition: color .3s ease-in-out; - } - - a:hover { - color: #e08524; - transition: color .3s ease-in-out; - } - - pre, code, .mono, .name { - font-family: "Ubuntu Mono", "Cousine", "DejaVu Sans Mono", monospace; - } - - .title .name { - font-weight: bold; - } - .section-title { - margin-top: 2em; - } - .ident { - color: #900; - } - - code { - background: #f9f9f9; - } - - pre { - background: #fefefe; - border: 1px solid #ddd; - box-shadow: 2px 2px 0 #f3f3f3; - margin: 0 30px; - padding: 15px 30px; - } - - .codehilite { - margin: 0 30px 10px 30px; - } - - .codehilite pre { - margin: 0; - } - .codehilite .err { background: #ff3300; color: #fff !important; } - - table#module-list { - font-size: 110%; - } - - table#module-list tr td:first-child { - padding-right: 10px; - white-space: nowrap; - } - - table#module-list td { - vertical-align: top; - padding-bottom: 8px; - } - - table#module-list td p { - margin: 0 0 7px 0; - } - - .def { - display: table; - } - - .def p { - display: table-cell; - vertical-align: top; - text-align: left; - } - - .def p:first-child { - white-space: nowrap; - } - - .def p:last-child { - width: 100%; - } - - - #index { - list-style-type: none; - margin: 0; - padding: 0; - } - ul#index .class_name { - /* font-size: 110%; */ - font-weight: bold; - } - #index ul { - margin: 0; - } - - .item { - margin: 0 0 15px 0; - } - - .item .class { - margin: 0 0 25px 30px; - } - - .item .class ul.class_list { - margin: 0 0 20px 0; - } - - .item .name { - background: #fafafa; - margin: 0; - font-weight: bold; - padding: 5px 10px; - border-radius: 3px; - display: inline-block; - min-width: 40%; - } - .item .name:hover { - background: #f6f6f6; - } - - .item .empty_desc { - margin: 0 0 5px 0; - padding: 0; - } - - .item .inheritance { - margin: 3px 0 0 30px; - } - - .item .inherited { - color: #666; - } - - .item .desc { - padding: 0 8px; - margin: 0; - } - - .item .desc p { - margin: 0 0 10px 0; - } - - .source_cont { - margin: 0; - padding: 0; - } - - .source_link a { - background: #ffc300; - font-weight: 400; - font-size: .75em; - text-transform: uppercase; - color: #fff; - text-shadow: 1px 1px 0 #f4b700; - - padding: 3px 8px; - border-radius: 2px; - transition: background .3s ease-in-out; - } - .source_link a:hover { - background: #FF7200; - text-shadow: none; - transition: background .3s ease-in-out; - } - - .source { - display: none; - max-height: 600px; - overflow-y: scroll; - margin-bottom: 15px; - } - - .source .codehilite { - margin: 0; - } - - .desc h1, .desc h2, .desc h3 { - font-size: 100% !important; - } - .clear { - clear: both; - } - - @media all and (max-width: 950px) { - #sidebar { - width: 35%; - } - #content { - width: 65%; - } - } - @media all and (max-width: 650px) { - #top { - display: none; - } - #sidebar { - float: none; - width: auto; - } - #content { - float: none; - width: auto; - padding: 30px; - } - - #index ul { - padding: 0; - margin-bottom: 15px; - } - #index ul li { - display: inline-block; - margin-right: 30px; - } - #footer { - text-align: left; - } - #footer p { - display: block; - margin: inherit; - } - } - - /*****************************/ - - </style> - - - <style type="text/css"> - -/* ========================================================================== - EXAMPLE Media Queries for Responsive Design. - These examples override the primary ('mobile first') styles. - Modify as content requires. - ========================================================================== */ - -@media only screen and (min-width: 35em) { - /* Style adjustments for viewports that meet the condition */ -} - -@media print, - (-o-min-device-pixel-ratio: 5/4), - (-webkit-min-device-pixel-ratio: 1.25), - (min-resolution: 120dpi) { - /* Style adjustments for high resolution devices */ -} - -/* ========================================================================== - Print styles. - Inlined to avoid required HTTP connection: h5bp.com/r - ========================================================================== */ - -@media print { - * { - background: transparent !important; - color: #000 !important; /* Black prints faster: h5bp.com/s */ - box-shadow: none !important; - text-shadow: none !important; - } - - a, - a:visited { - text-decoration: underline; - } - - a[href]:after { - content: " (" attr(href) ")"; - } - - abbr[title]:after { - content: " (" attr(title) ")"; - } - - /* - * Don't show links for images, or javascript/internal links - */ - - .ir a:after, - a[href^="javascript:"]:after, - a[href^="#"]:after { - content: ""; - } - - pre, - blockquote { - border: 1px solid #999; - page-break-inside: avoid; - } - - thead { - display: table-header-group; /* h5bp.com/t */ - } - - tr, - img { - page-break-inside: avoid; - } - - img { - max-width: 100% !important; - } - - @page { - margin: 0.5cm; - } - - p, - h2, - h3 { - orphans: 3; - widows: 3; - } - - h2, - h3 { - page-break-after: avoid; - } -} - - </style> - - <script type="text/javascript"> - function toggle(id, $link) { - $node = document.getElementById(id); - if (!$node) - return; - if (!$node.style.display || $node.style.display == 'none') { - $node.style.display = 'block'; - $link.innerHTML = 'Hide source ≢'; - } else { - $node.style.display = 'none'; - $link.innerHTML = 'Show source ≡'; - } - } - </script> -</head> -<body> -<a href="#" id="top">Top</a> - -<div id="container"> - - - <div id="sidebar"> - <h1>Index</h1> - <ul id="index"> - <li class="set"><h3><a href="#header-variables">Module variables</a></h3> - - <ul> - <li class="mono"><a href="#nomad.files.logger">logger</a></li> - </ul> - - </li> - - - <li class="set"><h3><a href="#header-classes">Classes</a></h3> - <ul> - <li class="mono"> - <span class="class_name"><a href="#nomad.files.Files">Files</a></span> - - - <ul> - <li class="mono"><a href="#nomad.files.Files.__init__">__init__</a></li> - <li class="mono"><a href="#nomad.files.Files.create_curl_upload_cmd">create_curl_upload_cmd</a></li> - <li class="mono"><a href="#nomad.files.Files.get_presigned_upload_url">get_presigned_upload_url</a></li> - <li class="mono"><a href="#nomad.files.Files.upload">upload</a></li> - <li class="mono"><a href="#nomad.files.Files.upload_put_handler">upload_put_handler</a></li> - </ul> - - </li> - <li class="mono"> - <span class="class_name"><a href="#nomad.files.Upload">Upload</a></span> - - - <ul> - <li class="mono"><a href="#nomad.files.Upload.__init__">__init__</a></li> - </ul> - - </li> - </ul> - </li> - - </ul> - </div> - - <article id="content"> - - - - - - - <header id="section-intro"> - <h1 class="title"><span class="name">nomad.files</span> module</h1> - - - <p class="source_link"><a href="javascript:void(0);" onclick="toggle('source-nomad.files', this);">Show source ≡</a></p> - <div id="source-nomad.files" class="source"> - <pre><code>import pika -import os -from zipfile import ZipFile -from minio import Minio -from minio.error import BucketAlreadyOwnedByYou -import logging - -import nomad.config as config - -logger = logging.getLogger(__name__) - - -class Files(): - """ - Singleton class that represents the interface to NOMADs file storage. - Responsibilities: create, access files; create, receive, notify on, and access uploads. - """ - def __init__(self): - super().__init__() - self._client = Minio('%s:%s' % (config.minio.host, config.minio.port), - access_key=config.minio.accesskey, - secret_key=config.minio.secret, - secure=False) - - self._ensure_buckets_exist() - - def _ensure_buckets_exist(self): - try: - self._client.make_bucket(bucket_name=config.s3.uploads_bucket) - logger.info("Created uploads bucket with name %s." % config.s3.uploads_bucket) - except BucketAlreadyOwnedByYou: - logger.debug("Uploads bucket with name %s already existed." % config.s3.uploads_bucket) - - def get_presigned_upload_url(self, upload_id): - return self._client.presigned_put_object(config.s3.uploads_bucket, upload_id) - - @staticmethod - def create_curl_upload_cmd(presigned_url): - return "curl -X PUT \"{}\" -F file=@<ZIPFILE>" % presigned_url - - def upload(self, upload_id): - return Upload(self._client, upload_id) - - def upload_put_handler(self, func): - def wrapper(*args, **kwargs): - logger.info("Start listening to uploads notifications.") - events = self._client.listen_bucket_notification(config.s3.uploads_bucket) - for event in events: - for notification in event['Records']: - event_name = notification['eventName'] - if event_name == 's3:ObjectCreated:Put': - upload_id = notification['s3']['object']['key'] - try: - func(upload_id) - except Exception as e: - logger.error("Unexpected exception in uploads notification handler for notification: %s." % notification, exc_info=e) - else: - logger.debug("Unhandled bucket event of type %s." % event_name) - - return wrapper - - -class Upload(): - def __init__(self, minio_client, upload_id): - self._client = minio_client - self.upload_id = upload_id - self.upload_file = '%s/uploads/%s.zip' % (config.fs.tmp, upload_id) - self._zipFile = None - - def __enter__(self): - self._client.fget_object(config.s3.uploads_bucket, self.upload_id, self.upload_file) - self._zipFile = ZipFile(self.upload_file) - return self - - def __exit__(self, exc_type, exc, exc_tb): - self._zipFile.close() - os.remove(self.upload_file) - - @property - def filelist(self): - return self._zipFile.filelist - - -if __name__ == '__main__': - logging.basicConfig(level=logging.DEBUG) - files = Files() - - @files.upload_put_handler - def handle_upload_put(upload_id): - with files.upload(upload_id) as upload: - for file in upload.filelist: - print(file) - - handle_upload_put(upload_id='provided by decorator') -</code></pre> - </div> - - </header> - - <section id="section-items"> - <h2 class="section-title" id="header-variables">Module variables</h2> - <div class="item"> - <p id="nomad.files.logger" class="name">var <span class="ident">logger</span></p> - - - <div class="source_cont"> -</div> - - </div> - - - <h2 class="section-title" id="header-classes">Classes</h2> - - <div class="item"> - <p id="nomad.files.Files" class="name">class <span class="ident">Files</span></p> - - - <div class="desc"><p>Singleton class that represents the interface to NOMADs file storage. -Responsibilities: create, access files; create, receive, notify on, and access uploads.</p></div> - <div class="source_cont"> - <p class="source_link"><a href="javascript:void(0);" onclick="toggle('source-nomad.files.Files', this);">Show source ≡</a></p> - <div id="source-nomad.files.Files" class="source"> - <pre><code>class Files(): - """ - Singleton class that represents the interface to NOMADs file storage. - Responsibilities: create, access files; create, receive, notify on, and access uploads. - """ - def __init__(self): - super().__init__() - self._client = Minio('%s:%s' % (config.minio.host, config.minio.port), - access_key=config.minio.accesskey, - secret_key=config.minio.secret, - secure=False) - - self._ensure_buckets_exist() - - def _ensure_buckets_exist(self): - try: - self._client.make_bucket(bucket_name=config.s3.uploads_bucket) - logger.info("Created uploads bucket with name %s." % config.s3.uploads_bucket) - except BucketAlreadyOwnedByYou: - logger.debug("Uploads bucket with name %s already existed." % config.s3.uploads_bucket) - - def get_presigned_upload_url(self, upload_id): - return self._client.presigned_put_object(config.s3.uploads_bucket, upload_id) - - @staticmethod - def create_curl_upload_cmd(presigned_url): - return "curl -X PUT \"{}\" -F file=@<ZIPFILE>" % presigned_url - - def upload(self, upload_id): - return Upload(self._client, upload_id) - - def upload_put_handler(self, func): - def wrapper(*args, **kwargs): - logger.info("Start listening to uploads notifications.") - events = self._client.listen_bucket_notification(config.s3.uploads_bucket) - for event in events: - for notification in event['Records']: - event_name = notification['eventName'] - if event_name == 's3:ObjectCreated:Put': - upload_id = notification['s3']['object']['key'] - try: - func(upload_id) - except Exception as e: - logger.error("Unexpected exception in uploads notification handler for notification: %s." % notification, exc_info=e) - else: - logger.debug("Unhandled bucket event of type %s." % event_name) - - return wrapper -</code></pre> - </div> -</div> - - - <div class="class"> - <h3>Ancestors (in MRO)</h3> - <ul class="class_list"> - <li><a href="#nomad.files.Files">Files</a></li> - <li>builtins.object</li> - </ul> - <h3>Static methods</h3> - - <div class="item"> - <div class="name def" id="nomad.files.Files.__init__"> - <p>def <span class="ident">__init__</span>(</p><p>self)</p> - </div> - - - - - <div class="desc"><p>Initialize self. See help(type(self)) for accurate signature.</p></div> - <div class="source_cont"> - <p class="source_link"><a href="javascript:void(0);" onclick="toggle('source-nomad.files.Files.__init__', this);">Show source ≡</a></p> - <div id="source-nomad.files.Files.__init__" class="source"> - <pre><code>def __init__(self): - super().__init__() - self._client = Minio('%s:%s' % (config.minio.host, config.minio.port), - access_key=config.minio.accesskey, - secret_key=config.minio.secret, - secure=False) - self._ensure_buckets_exist() -</code></pre> - </div> -</div> - - </div> - - - <div class="item"> - <div class="name def" id="nomad.files.Files.create_curl_upload_cmd"> - <p>def <span class="ident">create_curl_upload_cmd</span>(</p><p>presigned_url)</p> - </div> - - - - - <div class="source_cont"> - <p class="source_link"><a href="javascript:void(0);" onclick="toggle('source-nomad.files.Files.create_curl_upload_cmd', this);">Show source ≡</a></p> - <div id="source-nomad.files.Files.create_curl_upload_cmd" class="source"> - <pre><code>@staticmethod -def create_curl_upload_cmd(presigned_url): - return "curl -X PUT \"{}\" -F file=@<ZIPFILE>" % presigned_url -</code></pre> - </div> -</div> - - </div> - - - <div class="item"> - <div class="name def" id="nomad.files.Files.get_presigned_upload_url"> - <p>def <span class="ident">get_presigned_upload_url</span>(</p><p>self, upload_id)</p> - </div> - - - - - <div class="source_cont"> - <p class="source_link"><a href="javascript:void(0);" onclick="toggle('source-nomad.files.Files.get_presigned_upload_url', this);">Show source ≡</a></p> - <div id="source-nomad.files.Files.get_presigned_upload_url" class="source"> - <pre><code>def get_presigned_upload_url(self, upload_id): - return self._client.presigned_put_object(config.s3.uploads_bucket, upload_id) -</code></pre> - </div> -</div> - - </div> - - - <div class="item"> - <div class="name def" id="nomad.files.Files.upload"> - <p>def <span class="ident">upload</span>(</p><p>self, upload_id)</p> - </div> - - - - - <div class="source_cont"> - <p class="source_link"><a href="javascript:void(0);" onclick="toggle('source-nomad.files.Files.upload', this);">Show source ≡</a></p> - <div id="source-nomad.files.Files.upload" class="source"> - <pre><code>def upload(self, upload_id): - return Upload(self._client, upload_id) -</code></pre> - </div> -</div> - - </div> - - - <div class="item"> - <div class="name def" id="nomad.files.Files.upload_put_handler"> - <p>def <span class="ident">upload_put_handler</span>(</p><p>self, func)</p> - </div> - - - - - <div class="source_cont"> - <p class="source_link"><a href="javascript:void(0);" onclick="toggle('source-nomad.files.Files.upload_put_handler', this);">Show source ≡</a></p> - <div id="source-nomad.files.Files.upload_put_handler" class="source"> - <pre><code>def upload_put_handler(self, func): - def wrapper(*args, **kwargs): - logger.info("Start listening to uploads notifications.") - events = self._client.listen_bucket_notification(config.s3.uploads_bucket) - for event in events: - for notification in event['Records']: - event_name = notification['eventName'] - if event_name == 's3:ObjectCreated:Put': - upload_id = notification['s3']['object']['key'] - try: - func(upload_id) - except Exception as e: - logger.error("Unexpected exception in uploads notification handler for notification: %s." % notification, exc_info=e) - else: - logger.debug("Unhandled bucket event of type %s." % event_name) - return wrapper -</code></pre> - </div> -</div> - - </div> - - </div> - </div> - - <div class="item"> - <p id="nomad.files.Upload" class="name">class <span class="ident">Upload</span></p> - - - <div class="source_cont"> - <p class="source_link"><a href="javascript:void(0);" onclick="toggle('source-nomad.files.Upload', this);">Show source ≡</a></p> - <div id="source-nomad.files.Upload" class="source"> - <pre><code>class Upload(): - def __init__(self, minio_client, upload_id): - self._client = minio_client - self.upload_id = upload_id - self.upload_file = '%s/uploads/%s.zip' % (config.fs.tmp, upload_id) - self._zipFile = None - - def __enter__(self): - self._client.fget_object(config.s3.uploads_bucket, self.upload_id, self.upload_file) - self._zipFile = ZipFile(self.upload_file) - return self - - def __exit__(self, exc_type, exc, exc_tb): - self._zipFile.close() - os.remove(self.upload_file) - - @property - def filelist(self): - return self._zipFile.filelist -</code></pre> - </div> -</div> - - - <div class="class"> - <h3>Ancestors (in MRO)</h3> - <ul class="class_list"> - <li><a href="#nomad.files.Upload">Upload</a></li> - <li>builtins.object</li> - </ul> - <h3>Static methods</h3> - - <div class="item"> - <div class="name def" id="nomad.files.Upload.__init__"> - <p>def <span class="ident">__init__</span>(</p><p>self, minio_client, upload_id)</p> - </div> - - - - - <div class="desc"><p>Initialize self. See help(type(self)) for accurate signature.</p></div> - <div class="source_cont"> - <p class="source_link"><a href="javascript:void(0);" onclick="toggle('source-nomad.files.Upload.__init__', this);">Show source ≡</a></p> - <div id="source-nomad.files.Upload.__init__" class="source"> - <pre><code>def __init__(self, minio_client, upload_id): - self._client = minio_client - self.upload_id = upload_id - self.upload_file = '%s/uploads/%s.zip' % (config.fs.tmp, upload_id) - self._zipFile = None -</code></pre> - </div> -</div> - - </div> - - <h3>Instance variables</h3> - <div class="item"> - <p id="nomad.files.Upload.filelist" class="name">var <span class="ident">filelist</span></p> - - - - - <div class="source_cont"> -</div> - - </div> - <div class="item"> - <p id="nomad.files.Upload.upload_file" class="name">var <span class="ident">upload_file</span></p> - - - - - <div class="source_cont"> -</div> - - </div> - <div class="item"> - <p id="nomad.files.Upload.upload_id" class="name">var <span class="ident">upload_id</span></p> - - - - - <div class="source_cont"> -</div> - - </div> - </div> - </div> - - </section> - - </article> - <div class="clear"> </div> - <footer id="footer"> - <p> - Documentation generated by - <a href="https://github.com/BurntSushi/pdoc">pdoc 0.3.2</a> - </p> - - <p>pdoc is in the public domain with the - <a href="http://unlicense.org">UNLICENSE</a></p> - - <p>Design by <a href="http://nadh.in">Kailash Nadh</a></p> - </footer> -</div> -</body> -</html> diff --git a/build/docs/nomad/index.html b/build/docs/nomad/index.html deleted file mode 100644 index 417f2ea1ab..0000000000 --- a/build/docs/nomad/index.html +++ /dev/null @@ -1,1037 +0,0 @@ -<!doctype html> -<head> - <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> - <meta name="viewport" content="width=device-width, initial-scale=1, minimum-scale=1" /> - - <title>nomad API documentation</title> - <meta name="description" content="" /> - - <link href='http://fonts.googleapis.com/css?family=Source+Sans+Pro:400,300' rel='stylesheet' type='text/css'> - - <style type="text/css"> - -* { - box-sizing: border-box; -} -/*! normalize.css v1.1.1 | MIT License | git.io/normalize */ - -/* ========================================================================== - HTML5 display definitions - ========================================================================== */ - -/** - * Correct `block` display not defined in IE 6/7/8/9 and Firefox 3. - */ - -article, -aside, -details, -figcaption, -figure, -footer, -header, -hgroup, -main, -nav, -section, -summary { - display: block; -} - -/** - * Correct `inline-block` display not defined in IE 6/7/8/9 and Firefox 3. - */ - -audio, -canvas, -video { - display: inline-block; - *display: inline; - *zoom: 1; -} - -/** - * Prevent modern browsers from displaying `audio` without controls. - * Remove excess height in iOS 5 devices. - */ - -audio:not([controls]) { - display: none; - height: 0; -} - -/** - * Address styling not present in IE 7/8/9, Firefox 3, and Safari 4. - * Known issue: no IE 6 support. - */ - -[hidden] { - display: none; -} - -/* ========================================================================== - Base - ========================================================================== */ - -/** - * 1. Prevent system color scheme's background color being used in Firefox, IE, - * and Opera. - * 2. Prevent system color scheme's text color being used in Firefox, IE, and - * Opera. - * 3. Correct text resizing oddly in IE 6/7 when body `font-size` is set using - * `em` units. - * 4. Prevent iOS text size adjust after orientation change, without disabling - * user zoom. - */ - -html { - background: #fff; /* 1 */ - color: #000; /* 2 */ - font-size: 100%; /* 3 */ - -webkit-text-size-adjust: 100%; /* 4 */ - -ms-text-size-adjust: 100%; /* 4 */ -} - -/** - * Address `font-family` inconsistency between `textarea` and other form - * elements. - */ - -html, -button, -input, -select, -textarea { - font-family: sans-serif; -} - -/** - * Address margins handled incorrectly in IE 6/7. - */ - -body { - margin: 0; -} - -/* ========================================================================== - Links - ========================================================================== */ - -/** - * Address `outline` inconsistency between Chrome and other browsers. - */ - -a:focus { - outline: thin dotted; -} - -/** - * Improve readability when focused and also mouse hovered in all browsers. - */ - -a:active, -a:hover { - outline: 0; -} - -/* ========================================================================== - Typography - ========================================================================== */ - -/** - * Address font sizes and margins set differently in IE 6/7. - * Address font sizes within `section` and `article` in Firefox 4+, Safari 5, - * and Chrome. - */ - -h1 { - font-size: 2em; - margin: 0.67em 0; -} - -h2 { - font-size: 1.5em; - margin: 0.83em 0; -} - -h3 { - font-size: 1.17em; - margin: 1em 0; -} - -h4 { - font-size: 1em; - margin: 1.33em 0; -} - -h5 { - font-size: 0.83em; - margin: 1.67em 0; -} - -h6 { - font-size: 0.67em; - margin: 2.33em 0; -} - -/** - * Address styling not present in IE 7/8/9, Safari 5, and Chrome. - */ - -abbr[title] { - border-bottom: 1px dotted; -} - -/** - * Address style set to `bolder` in Firefox 3+, Safari 4/5, and Chrome. - */ - -b, -strong { - font-weight: bold; -} - -blockquote { - margin: 1em 40px; -} - -/** - * Address styling not present in Safari 5 and Chrome. - */ - -dfn { - font-style: italic; -} - -/** - * Address differences between Firefox and other browsers. - * Known issue: no IE 6/7 normalization. - */ - -hr { - -moz-box-sizing: content-box; - box-sizing: content-box; - height: 0; -} - -/** - * Address styling not present in IE 6/7/8/9. - */ - -mark { - background: #ff0; - color: #000; -} - -/** - * Address margins set differently in IE 6/7. - */ - -p, -pre { - margin: 1em 0; -} - -/** - * Correct font family set oddly in IE 6, Safari 4/5, and Chrome. - */ - -code, -kbd, -pre, -samp { - font-family: monospace, serif; - _font-family: 'courier new', monospace; - font-size: 1em; -} - -/** - * Improve readability of pre-formatted text in all browsers. - */ - -pre { - white-space: pre; - white-space: pre-wrap; - word-wrap: break-word; -} - -/** - * Address CSS quotes not supported in IE 6/7. - */ - -q { - quotes: none; -} - -/** - * Address `quotes` property not supported in Safari 4. - */ - -q:before, -q:after { - content: ''; - content: none; -} - -/** - * Address inconsistent and variable font size in all browsers. - */ - -small { - font-size: 80%; -} - -/** - * Prevent `sub` and `sup` affecting `line-height` in all browsers. - */ - -sub, -sup { - font-size: 75%; - line-height: 0; - position: relative; - vertical-align: baseline; -} - -sup { - top: -0.5em; -} - -sub { - bottom: -0.25em; -} - -/* ========================================================================== - Lists - ========================================================================== */ - -/** - * Address margins set differently in IE 6/7. - */ - -dl, -menu, -ol, -ul { - margin: 1em 0; -} - -dd { - margin: 0 0 0 40px; -} - -/** - * Address paddings set differently in IE 6/7. - */ - -menu, -ol, -ul { - padding: 0 0 0 40px; -} - -/** - * Correct list images handled incorrectly in IE 7. - */ - -nav ul, -nav ol { - list-style: none; - list-style-image: none; -} - -/* ========================================================================== - Embedded content - ========================================================================== */ - -/** - * 1. Remove border when inside `a` element in IE 6/7/8/9 and Firefox 3. - * 2. Improve image quality when scaled in IE 7. - */ - -img { - border: 0; /* 1 */ - -ms-interpolation-mode: bicubic; /* 2 */ -} - -/** - * Correct overflow displayed oddly in IE 9. - */ - -svg:not(:root) { - overflow: hidden; -} - -/* ========================================================================== - Figures - ========================================================================== */ - -/** - * Address margin not present in IE 6/7/8/9, Safari 5, and Opera 11. - */ - -figure { - margin: 0; -} - -/* ========================================================================== - Forms - ========================================================================== */ - -/** - * Correct margin displayed oddly in IE 6/7. - */ - -form { - margin: 0; -} - -/** - * Define consistent border, margin, and padding. - */ - -fieldset { - border: 1px solid #c0c0c0; - margin: 0 2px; - padding: 0.35em 0.625em 0.75em; -} - -/** - * 1. Correct color not being inherited in IE 6/7/8/9. - * 2. Correct text not wrapping in Firefox 3. - * 3. Correct alignment displayed oddly in IE 6/7. - */ - -legend { - border: 0; /* 1 */ - padding: 0; - white-space: normal; /* 2 */ - *margin-left: -7px; /* 3 */ -} - -/** - * 1. Correct font size not being inherited in all browsers. - * 2. Address margins set differently in IE 6/7, Firefox 3+, Safari 5, - * and Chrome. - * 3. Improve appearance and consistency in all browsers. - */ - -button, -input, -select, -textarea { - font-size: 100%; /* 1 */ - margin: 0; /* 2 */ - vertical-align: baseline; /* 3 */ - *vertical-align: middle; /* 3 */ -} - -/** - * Address Firefox 3+ setting `line-height` on `input` using `!important` in - * the UA stylesheet. - */ - -button, -input { - line-height: normal; -} - -/** - * Address inconsistent `text-transform` inheritance for `button` and `select`. - * All other form control elements do not inherit `text-transform` values. - * Correct `button` style inheritance in Chrome, Safari 5+, and IE 6+. - * Correct `select` style inheritance in Firefox 4+ and Opera. - */ - -button, -select { - text-transform: none; -} - -/** - * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio` - * and `video` controls. - * 2. Correct inability to style clickable `input` types in iOS. - * 3. Improve usability and consistency of cursor style between image-type - * `input` and others. - * 4. Remove inner spacing in IE 7 without affecting normal text inputs. - * Known issue: inner spacing remains in IE 6. - */ - -button, -html input[type="button"], /* 1 */ -input[type="reset"], -input[type="submit"] { - -webkit-appearance: button; /* 2 */ - cursor: pointer; /* 3 */ - *overflow: visible; /* 4 */ -} - -/** - * Re-set default cursor for disabled elements. - */ - -button[disabled], -html input[disabled] { - cursor: default; -} - -/** - * 1. Address box sizing set to content-box in IE 8/9. - * 2. Remove excess padding in IE 8/9. - * 3. Remove excess padding in IE 7. - * Known issue: excess padding remains in IE 6. - */ - -input[type="checkbox"], -input[type="radio"] { - box-sizing: border-box; /* 1 */ - padding: 0; /* 2 */ - *height: 13px; /* 3 */ - *width: 13px; /* 3 */ -} - -/** - * 1. Address `appearance` set to `searchfield` in Safari 5 and Chrome. - * 2. Address `box-sizing` set to `border-box` in Safari 5 and Chrome - * (include `-moz` to future-proof). - */ - -input[type="search"] { - -webkit-appearance: textfield; /* 1 */ - -moz-box-sizing: content-box; - -webkit-box-sizing: content-box; /* 2 */ - box-sizing: content-box; -} - -/** - * Remove inner padding and search cancel button in Safari 5 and Chrome - * on OS X. - */ - -input[type="search"]::-webkit-search-cancel-button, -input[type="search"]::-webkit-search-decoration { - -webkit-appearance: none; -} - -/** - * Remove inner padding and border in Firefox 3+. - */ - -button::-moz-focus-inner, -input::-moz-focus-inner { - border: 0; - padding: 0; -} - -/** - * 1. Remove default vertical scrollbar in IE 6/7/8/9. - * 2. Improve readability and alignment in all browsers. - */ - -textarea { - overflow: auto; /* 1 */ - vertical-align: top; /* 2 */ -} - -/* ========================================================================== - Tables - ========================================================================== */ - -/** - * Remove most spacing between table cells. - */ - -table { - border-collapse: collapse; - border-spacing: 0; -} - - </style> - - <style type="text/css"> - - html, body { - margin: 0; - padding: 0; - min-height: 100%; - } - body { - background: #fff; - font-family: "Source Sans Pro", "Helvetica Neueue", Helvetica, sans; - font-weight: 300; - font-size: 16px; - line-height: 1.6em; - } - #content { - width: 70%; - max-width: 850px; - float: left; - padding: 30px 60px; - border-left: 1px solid #ddd; - } - #sidebar { - width: 25%; - float: left; - padding: 30px; - overflow: hidden; - } - #nav { - font-size: 130%; - margin: 0 0 15px 0; - } - - #top { - display: block; - position: fixed; - bottom: 5px; - left: 5px; - font-size: .85em; - text-transform: uppercase; - } - - #footer { - font-size: .75em; - padding: 5px 30px; - border-top: 1px solid #ddd; - text-align: right; - } - #footer p { - margin: 0 0 0 30px; - display: inline-block; - } - - h1, h2, h3, h4, h5 { - font-weight: 300; - } - h1 { - font-size: 2.5em; - line-height: 1.1em; - margin: 0 0 .50em 0; - } - - h2 { - font-size: 1.75em; - margin: 1em 0 .50em 0; - } - - h3 { - margin: 25px 0 10px 0; - } - - h4 { - margin: 0; - font-size: 105%; - } - - a { - color: #058; - text-decoration: none; - transition: color .3s ease-in-out; - } - - a:hover { - color: #e08524; - transition: color .3s ease-in-out; - } - - pre, code, .mono, .name { - font-family: "Ubuntu Mono", "Cousine", "DejaVu Sans Mono", monospace; - } - - .title .name { - font-weight: bold; - } - .section-title { - margin-top: 2em; - } - .ident { - color: #900; - } - - code { - background: #f9f9f9; - } - - pre { - background: #fefefe; - border: 1px solid #ddd; - box-shadow: 2px 2px 0 #f3f3f3; - margin: 0 30px; - padding: 15px 30px; - } - - .codehilite { - margin: 0 30px 10px 30px; - } - - .codehilite pre { - margin: 0; - } - .codehilite .err { background: #ff3300; color: #fff !important; } - - table#module-list { - font-size: 110%; - } - - table#module-list tr td:first-child { - padding-right: 10px; - white-space: nowrap; - } - - table#module-list td { - vertical-align: top; - padding-bottom: 8px; - } - - table#module-list td p { - margin: 0 0 7px 0; - } - - .def { - display: table; - } - - .def p { - display: table-cell; - vertical-align: top; - text-align: left; - } - - .def p:first-child { - white-space: nowrap; - } - - .def p:last-child { - width: 100%; - } - - - #index { - list-style-type: none; - margin: 0; - padding: 0; - } - ul#index .class_name { - /* font-size: 110%; */ - font-weight: bold; - } - #index ul { - margin: 0; - } - - .item { - margin: 0 0 15px 0; - } - - .item .class { - margin: 0 0 25px 30px; - } - - .item .class ul.class_list { - margin: 0 0 20px 0; - } - - .item .name { - background: #fafafa; - margin: 0; - font-weight: bold; - padding: 5px 10px; - border-radius: 3px; - display: inline-block; - min-width: 40%; - } - .item .name:hover { - background: #f6f6f6; - } - - .item .empty_desc { - margin: 0 0 5px 0; - padding: 0; - } - - .item .inheritance { - margin: 3px 0 0 30px; - } - - .item .inherited { - color: #666; - } - - .item .desc { - padding: 0 8px; - margin: 0; - } - - .item .desc p { - margin: 0 0 10px 0; - } - - .source_cont { - margin: 0; - padding: 0; - } - - .source_link a { - background: #ffc300; - font-weight: 400; - font-size: .75em; - text-transform: uppercase; - color: #fff; - text-shadow: 1px 1px 0 #f4b700; - - padding: 3px 8px; - border-radius: 2px; - transition: background .3s ease-in-out; - } - .source_link a:hover { - background: #FF7200; - text-shadow: none; - transition: background .3s ease-in-out; - } - - .source { - display: none; - max-height: 600px; - overflow-y: scroll; - margin-bottom: 15px; - } - - .source .codehilite { - margin: 0; - } - - .desc h1, .desc h2, .desc h3 { - font-size: 100% !important; - } - .clear { - clear: both; - } - - @media all and (max-width: 950px) { - #sidebar { - width: 35%; - } - #content { - width: 65%; - } - } - @media all and (max-width: 650px) { - #top { - display: none; - } - #sidebar { - float: none; - width: auto; - } - #content { - float: none; - width: auto; - padding: 30px; - } - - #index ul { - padding: 0; - margin-bottom: 15px; - } - #index ul li { - display: inline-block; - margin-right: 30px; - } - #footer { - text-align: left; - } - #footer p { - display: block; - margin: inherit; - } - } - - /*****************************/ - - </style> - - - <style type="text/css"> - -/* ========================================================================== - EXAMPLE Media Queries for Responsive Design. - These examples override the primary ('mobile first') styles. - Modify as content requires. - ========================================================================== */ - -@media only screen and (min-width: 35em) { - /* Style adjustments for viewports that meet the condition */ -} - -@media print, - (-o-min-device-pixel-ratio: 5/4), - (-webkit-min-device-pixel-ratio: 1.25), - (min-resolution: 120dpi) { - /* Style adjustments for high resolution devices */ -} - -/* ========================================================================== - Print styles. - Inlined to avoid required HTTP connection: h5bp.com/r - ========================================================================== */ - -@media print { - * { - background: transparent !important; - color: #000 !important; /* Black prints faster: h5bp.com/s */ - box-shadow: none !important; - text-shadow: none !important; - } - - a, - a:visited { - text-decoration: underline; - } - - a[href]:after { - content: " (" attr(href) ")"; - } - - abbr[title]:after { - content: " (" attr(title) ")"; - } - - /* - * Don't show links for images, or javascript/internal links - */ - - .ir a:after, - a[href^="javascript:"]:after, - a[href^="#"]:after { - content: ""; - } - - pre, - blockquote { - border: 1px solid #999; - page-break-inside: avoid; - } - - thead { - display: table-header-group; /* h5bp.com/t */ - } - - tr, - img { - page-break-inside: avoid; - } - - img { - max-width: 100% !important; - } - - @page { - margin: 0.5cm; - } - - p, - h2, - h3 { - orphans: 3; - widows: 3; - } - - h2, - h3 { - page-break-after: avoid; - } -} - - </style> - - <script type="text/javascript"> - function toggle(id, $link) { - $node = document.getElementById(id); - if (!$node) - return; - if (!$node.style.display || $node.style.display == 'none') { - $node.style.display = 'block'; - $link.innerHTML = 'Hide source ≢'; - } else { - $node.style.display = 'none'; - $link.innerHTML = 'Show source ≡'; - } - } - </script> -</head> -<body> -<a href="#" id="top">Top</a> - -<div id="container"> - - - <div id="sidebar"> - <h1>Index</h1> - <ul id="index"> - - - - <li class="set"><h3><a href="#header-submodules">Sub-modules</a></h3> - <ul> - <li class="mono"><a href="config.m.html">nomad.config</a></li> - <li class="mono"><a href="files.m.html">nomad.files</a></li> - </ul> - </li> - </ul> - </div> - - <article id="content"> - - - - - - - <header id="section-intro"> - <h1 class="title"><span class="name">nomad</span> module</h1> - - - <p class="source_link"><a href="javascript:void(0);" onclick="toggle('source-nomad', this);">Show source ≡</a></p> - <div id="source-nomad" class="source"> - <pre><code>from nomad.files import Files -</code></pre> - </div> - - </header> - - <section id="section-items"> - - - - <h2 class="section-title" id="header-submodules">Sub-modules</h2> - <div class="item"> - <p class="name"><a href="config.m.html">nomad.config</a></p> - - - - </div> - <div class="item"> - <p class="name"><a href="files.m.html">nomad.files</a></p> - - - - </div> - </section> - - </article> - <div class="clear"> </div> - <footer id="footer"> - <p> - Documentation generated by - <a href="https://github.com/BurntSushi/pdoc">pdoc 0.3.2</a> - </p> - - <p>pdoc is in the public domain with the - <a href="http://unlicense.org">UNLICENSE</a></p> - - <p>Design by <a href="http://nadh.in">Kailash Nadh</a></p> - </footer> -</div> -</body> -</html> diff --git a/infrastructure/docker-compose.yml b/infrastructure/docker-compose.yml index a4f0f1fc52..5824a9a0bd 100644 --- a/infrastructure/docker-compose.yml +++ b/infrastructure/docker-compose.yml @@ -1,3 +1,17 @@ +# Copyright 2018 Markus Scheidgen +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an"AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + version: '3' services: diff --git a/nomad/__init__.py b/nomad/__init__.py index e69de29bb2..a377deae24 100644 --- a/nomad/__init__.py +++ b/nomad/__init__.py @@ -0,0 +1,13 @@ +# Copyright 2018 Markus Scheidgen +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an"AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. \ No newline at end of file diff --git a/nomad/config.py b/nomad/config.py index 63152d0e3e..0ff96460d0 100644 --- a/nomad/config.py +++ b/nomad/config.py @@ -1,3 +1,17 @@ +# Copyright 2018 Markus Scheidgen +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an"AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + from collections import namedtuple S3Config = namedtuple('S3', ['uploads_bucket', 'repository_bucket', 'archive_bucket']) diff --git a/nomad/files.py b/nomad/files.py index 8f811ae0ac..ae45f3a496 100644 --- a/nomad/files.py +++ b/nomad/files.py @@ -1,3 +1,17 @@ +# Copyright 2018 Markus Scheidgen +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an"AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + """ This module (and its main class :class:`Files`) represents an abstraction for NOMAD file storage system. Responsibilities: create, access files; create, receive, notify on, and access uploads. diff --git a/nomad/processing.py b/nomad/processing.py index 08ba0b5fa8..8b73c23ca8 100644 --- a/nomad/processing.py +++ b/nomad/processing.py @@ -1,3 +1,17 @@ +# Copyright 2018 Markus Scheidgen +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an"AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + from celery import Celery, chain, chord, group import nomad.config as config import nomad.files as files -- GitLab