<spanid="pylorax-api-cmdline-module"></span><h2>pylorax.api.cmdline module<aclass="headerlink"href="#module-pylorax.api.cmdline"title="Permalink to this headline">¶</a></h2>
<codeclass="sig-prename descclassname">pylorax.api.cmdline.</code><codeclass="sig-name descname">lorax_composer_parser</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/cmdline.html#lorax_composer_parser"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.cmdline.lorax_composer_parser"title="Permalink to this definition">¶</a></dt>
<spanid="pylorax-api-compose-module"></span><h2>pylorax.api.compose module<aclass="headerlink"href="#module-pylorax.api.compose"title="Permalink to this headline">¶</a></h2>
<p>Setup for composing an image</p>
<divclass="section"id="adding-new-output-types">
<h3>Adding New Output Types<aclass="headerlink"href="#adding-new-output-types"title="Permalink to this headline">¶</a></h3>
<p>The new output type must add a kickstart template to ./share/composer/ where the
name of the kickstart (without the trailing .ks) matches the entry in compose_args.</p>
<p>The kickstart should not have any url or repo entries, these will be added at build
time. The %packages section should be the last thing, and while it can contain mandatory
packages required by the output type, it should not have the trailing %end because the
package NEVRAs will be appended to it at build time.</p>
<p>compose_args should have a name matching the kickstart, and it should set the novirt_install
parameters needed to generate the desired output. Other types should be set to False.</p>
<codeclass="sig-prename descclassname">pylorax.api.compose.</code><codeclass="sig-name descname">add_customizations</code><spanclass="sig-paren">(</span><emclass="sig-param">f</em>, <emclass="sig-param">recipe</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/compose.html#add_customizations"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.compose.add_customizations"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-prename descclassname">pylorax.api.compose.</code><codeclass="sig-name descname">bootloader_append</code><spanclass="sig-paren">(</span><emclass="sig-param">line</em>, <emclass="sig-param">kernel_append</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/compose.html#bootloader_append"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.compose.bootloader_append"title="Permalink to this definition">¶</a></dt>
<li><p><strong>line</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#str"title="(in Python v3.8)"><em>str</em></a>) – The bootloader … line</p></li>
<li><p><strong>kernel_append</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#str"title="(in Python v3.8)"><em>str</em></a>) – The arguments to append to the –append section</p></li>
<codeclass="sig-prename descclassname">pylorax.api.compose.</code><codeclass="sig-name descname">compose_args</code><spanclass="sig-paren">(</span><emclass="sig-param">compose_type</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/compose.html#compose_args"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.compose.compose_args"title="Permalink to this definition">¶</a></dt>
<ddclass="field-odd"><p><strong>compose_type</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#str"title="(in Python v3.8)"><em>str</em></a>) – The type of compose to create, from <cite>compose_types()</cite></p>
<codeclass="sig-prename descclassname">pylorax.api.compose.</code><codeclass="sig-name descname">compose_types</code><spanclass="sig-paren">(</span><emclass="sig-param">share_dir</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/compose.html#compose_types"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.compose.compose_types"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-prename descclassname">pylorax.api.compose.</code><codeclass="sig-name descname">customize_ks_template</code><spanclass="sig-paren">(</span><emclass="sig-param">ks_template</em>, <emclass="sig-param">recipe</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/compose.html#customize_ks_template"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.compose.customize_ks_template"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-prename descclassname">pylorax.api.compose.</code><codeclass="sig-name descname">firewall_cmd</code><spanclass="sig-paren">(</span><emclass="sig-param">line</em>, <emclass="sig-param">settings</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/compose.html#firewall_cmd"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.compose.firewall_cmd"title="Permalink to this definition">¶</a></dt>
<li><p><strong>line</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#str"title="(in Python v3.8)"><em>str</em></a>) – The firewall … line</p></li>
<li><p><strong>settings</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#dict"title="(in Python v3.8)"><em>dict</em></a>) – A dict with the list of services and ports to enable and disable</p></li>
<codeclass="sig-prename descclassname">pylorax.api.compose.</code><codeclass="sig-name descname">get_default_services</code><spanclass="sig-paren">(</span><emclass="sig-param">recipe</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/compose.html#get_default_services"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.compose.get_default_services"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-prename descclassname">pylorax.api.compose.</code><codeclass="sig-name descname">get_extra_pkgs</code><spanclass="sig-paren">(</span><emclass="sig-param">dbo</em>, <emclass="sig-param">share_dir</em>, <emclass="sig-param">compose_type</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/compose.html#get_extra_pkgs"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.compose.get_extra_pkgs"title="Permalink to this definition">¶</a></dt>
<li><p><strong>dbo</strong> (<em>dnf.Base</em>) – dnf base object</p></li>
<li><p><strong>share_dir</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#str"title="(in Python v3.8)"><em>str</em></a>) – Path to the top level share directory</p></li>
<li><p><strong>compose_type</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#str"title="(in Python v3.8)"><em>str</em></a>) – The type of output to create from the recipe</p></li>
</ul>
</dd>
<dtclass="field-even">Returns</dt>
<ddclass="field-even"><p>List of package names (name only, not NEVRA)</p>
<codeclass="sig-prename descclassname">pylorax.api.compose.</code><codeclass="sig-name descname">get_firewall_settings</code><spanclass="sig-paren">(</span><emclass="sig-param">recipe</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/compose.html#get_firewall_settings"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.compose.get_firewall_settings"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-prename descclassname">pylorax.api.compose.</code><codeclass="sig-name descname">get_kernel_append</code><spanclass="sig-paren">(</span><emclass="sig-param">recipe</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/compose.html#get_kernel_append"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.compose.get_kernel_append"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-prename descclassname">pylorax.api.compose.</code><codeclass="sig-name descname">get_keyboard_layout</code><spanclass="sig-paren">(</span><emclass="sig-param">recipe</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/compose.html#get_keyboard_layout"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.compose.get_keyboard_layout"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-prename descclassname">pylorax.api.compose.</code><codeclass="sig-name descname">get_languages</code><spanclass="sig-paren">(</span><emclass="sig-param">recipe</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/compose.html#get_languages"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.compose.get_languages"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-prename descclassname">pylorax.api.compose.</code><codeclass="sig-name descname">get_services</code><spanclass="sig-paren">(</span><emclass="sig-param">recipe</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/compose.html#get_services"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.compose.get_services"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-prename descclassname">pylorax.api.compose.</code><codeclass="sig-name descname">get_timezone_settings</code><spanclass="sig-paren">(</span><emclass="sig-param">recipe</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/compose.html#get_timezone_settings"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.compose.get_timezone_settings"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-prename descclassname">pylorax.api.compose.</code><codeclass="sig-name descname">keyboard_cmd</code><spanclass="sig-paren">(</span><emclass="sig-param">line</em>, <emclass="sig-param">layout</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/compose.html#keyboard_cmd"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.compose.keyboard_cmd"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-prename descclassname">pylorax.api.compose.</code><codeclass="sig-name descname">lang_cmd</code><spanclass="sig-paren">(</span><emclass="sig-param">line</em>, <emclass="sig-param">languages</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/compose.html#lang_cmd"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.compose.lang_cmd"title="Permalink to this definition">¶</a></dt>
<li><p><strong>line</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#str"title="(in Python v3.8)"><em>str</em></a>) – The lang … line</p></li>
<li><p><strong>settings</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#list"title="(in Python v3.8)"><em>list</em></a>) – The list of languages</p></li>
<codeclass="sig-prename descclassname">pylorax.api.compose.</code><codeclass="sig-name descname">move_compose_results</code><spanclass="sig-paren">(</span><emclass="sig-param">cfg</em>, <emclass="sig-param">results_dir</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/compose.html#move_compose_results"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.compose.move_compose_results"title="Permalink to this definition">¶</a></dt>
<li><p><strong>results_dir</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#str"title="(in Python v3.8)"><em>str</em></a>) – Directory to put the results into</p></li>
<codeclass="sig-prename descclassname">pylorax.api.compose.</code><codeclass="sig-name descname">repo_to_ks</code><spanclass="sig-paren">(</span><emclass="sig-param">r</em>, <emclass="sig-param">url='url'</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/compose.html#repo_to_ks"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.compose.repo_to_ks"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-prename descclassname">pylorax.api.compose.</code><codeclass="sig-name descname">services_cmd</code><spanclass="sig-paren">(</span><emclass="sig-param">line</em>, <emclass="sig-param">settings</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/compose.html#services_cmd"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.compose.services_cmd"title="Permalink to this definition">¶</a></dt>
<li><p><strong>line</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#str"title="(in Python v3.8)"><em>str</em></a>) – The services … line</p></li>
<li><p><strong>settings</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#dict"title="(in Python v3.8)"><em>dict</em></a>) – A dict with the list of services to enable and disable</p></li>
<li><p><strong>dnflock</strong> (<em>YumLock</em>) – Lock and YumBase for depsolving</p></li>
<li><p><strong>recipe</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#str"title="(in Python v3.8)"><em>str</em></a>) – The recipe to build</p></li>
<li><p><strong>compose_type</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#str"title="(in Python v3.8)"><em>str</em></a>) – The type of output to create from the recipe</p></li>
</ul>
</dd>
<dtclass="field-even">Returns</dt>
<ddclass="field-even"><p>Unique ID for the build that can be used to track its status</p>
<codeclass="sig-prename descclassname">pylorax.api.compose.</code><codeclass="sig-name descname">test_templates</code><spanclass="sig-paren">(</span><emclass="sig-param">dbo</em>, <emclass="sig-param">share_dir</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/compose.html#test_templates"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.compose.test_templates"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-prename descclassname">pylorax.api.compose.</code><codeclass="sig-name descname">timezone_cmd</code><spanclass="sig-paren">(</span><emclass="sig-param">line</em>, <emclass="sig-param">settings</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/compose.html#timezone_cmd"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.compose.timezone_cmd"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-prename descclassname">pylorax.api.compose.</code><codeclass="sig-name descname">write_ks_group</code><spanclass="sig-paren">(</span><emclass="sig-param">f</em>, <emclass="sig-param">group</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/compose.html#write_ks_group"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.compose.write_ks_group"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-prename descclassname">pylorax.api.compose.</code><codeclass="sig-name descname">write_ks_root</code><spanclass="sig-paren">(</span><emclass="sig-param">f</em>, <emclass="sig-param">user</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/compose.html#write_ks_root"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.compose.write_ks_root"title="Permalink to this definition">¶</a></dt>
<li><p><strong>user</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#dict"title="(in Python v3.8)"><em>dict</em></a>) – A blueprint user dictionary</p></li>
</ul>
</dd>
<dtclass="field-even">Returns</dt>
<ddclass="field-even"><p>True if it wrote a rootpw command to the kickstart</p>
<codeclass="sig-prename descclassname">pylorax.api.compose.</code><codeclass="sig-name descname">write_ks_user</code><spanclass="sig-paren">(</span><emclass="sig-param">f</em>, <emclass="sig-param">user</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/compose.html#write_ks_user"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.compose.write_ks_user"title="Permalink to this definition">¶</a></dt>
<li><p><strong>user</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#dict"title="(in Python v3.8)"><em>dict</em></a>) – A blueprint user dictionary</p></li>
<spanid="pylorax-api-config-module"></span><h2>pylorax.api.config module<aclass="headerlink"href="#module-pylorax.api.config"title="Permalink to this headline">¶</a></h2>
<emclass="property">class </em><codeclass="sig-prename descclassname">pylorax.api.config.</code><codeclass="sig-name descname">ComposerConfig</code><spanclass="sig-paren">(</span><emclass="sig-param">*args</em>, <emclass="sig-param">**kwargs</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/config.html#ComposerConfig"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.config.ComposerConfig"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">get_default</code><spanclass="sig-paren">(</span><emclass="sig-param">section</em>, <emclass="sig-param">option</em>, <emclass="sig-param">default</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/config.html#ComposerConfig.get_default"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.config.ComposerConfig.get_default"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-prename descclassname">pylorax.api.config.</code><codeclass="sig-name descname">configure</code><spanclass="sig-paren">(</span><emclass="sig-param">conf_file='/etc/lorax/composer.conf'</em>, <emclass="sig-param">root_dir='/'</em>, <emclass="sig-param">test_config=False</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/config.html#configure"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.config.configure"title="Permalink to this definition">¶</a></dt>
<li><p><strong>conf_file</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#str"title="(in Python v3.8)"><em>str</em></a>) – Path to the config file overriding the default settings</p></li>
<li><p><strong>root_dir</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#str"title="(in Python v3.8)"><em>str</em></a>) – Directory to prepend to paths, defaults to /</p></li>
<li><p><strong>test_config</strong> (<aclass="reference external"href="https://docs.python.org/3/library/functions.html#bool"title="(in Python v3.8)"><em>bool</em></a>) – Set to True to skip reading conf_file</p></li>
<codeclass="sig-prename descclassname">pylorax.api.config.</code><codeclass="sig-name descname">make_dnf_dirs</code><spanclass="sig-paren">(</span><emclass="sig-param">conf</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/config.html#make_dnf_dirs"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.config.make_dnf_dirs"title="Permalink to this definition">¶</a></dt>
<ddclass="field-odd"><p><strong>conf</strong> (<aclass="reference internal"href="#pylorax.api.config.ComposerConfig"title="pylorax.api.config.ComposerConfig"><em>ComposerConfig</em></a>) – The configuration to use</p>
<codeclass="sig-prename descclassname">pylorax.api.config.</code><codeclass="sig-name descname">make_queue_dirs</code><spanclass="sig-paren">(</span><emclass="sig-param">conf</em>, <emclass="sig-param">gid</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/config.html#make_queue_dirs"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.config.make_queue_dirs"title="Permalink to this definition">¶</a></dt>
<li><p><strong>conf</strong> (<aclass="reference internal"href="#pylorax.api.config.ComposerConfig"title="pylorax.api.config.ComposerConfig"><em>ComposerConfig</em></a>) – The configuration to use</p></li>
<li><p><strong>gid</strong> (<aclass="reference external"href="https://docs.python.org/3/library/functions.html#int"title="(in Python v3.8)"><em>int</em></a>) – Group ID that has access to the queue directories</p></li>
<spanid="pylorax-api-crossdomain-module"></span><h2>pylorax.api.crossdomain module<aclass="headerlink"href="#module-pylorax.api.crossdomain"title="Permalink to this headline">¶</a></h2>
<spanid="pylorax-api-projects-module"></span><h2>pylorax.api.projects module<aclass="headerlink"href="#module-pylorax.api.projects"title="Permalink to this headline">¶</a></h2>
<emclass="property">exception </em><codeclass="sig-prename descclassname">pylorax.api.projects.</code><codeclass="sig-name descname">ProjectsError</code><aclass="reference internal"href="_modules/pylorax/api/projects.html#ProjectsError"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.projects.ProjectsError"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-prename descclassname">pylorax.api.projects.</code><codeclass="sig-name descname">api_changelog</code><spanclass="sig-paren">(</span><emclass="sig-param">changelog</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/projects.html#api_changelog"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.projects.api_changelog"title="Permalink to this definition">¶</a></dt>
<ddclass="field-odd"><p><strong>changelog</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#tuple"title="(in Python v3.8)"><em>tuple</em></a>) – A list of time, author, string tuples.</p>
</dd>
<dtclass="field-even">Returns</dt>
<ddclass="field-even"><p>The most recent changelog text or “”</p>
<codeclass="sig-prename descclassname">pylorax.api.projects.</code><codeclass="sig-name descname">api_time</code><spanclass="sig-paren">(</span><emclass="sig-param">t</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/projects.html#api_time"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.projects.api_time"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-prename descclassname">pylorax.api.projects.</code><codeclass="sig-name descname">delete_repo_source</code><spanclass="sig-paren">(</span><emclass="sig-param">source_glob</em>, <emclass="sig-param">source_name</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/projects.html#delete_repo_source"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.projects.delete_repo_source"title="Permalink to this definition">¶</a></dt>
<ddclass="field-odd"><p><strong>source_glob</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#str"title="(in Python v3.8)"><em>str</em></a>) – A glob of the repo sources to search</p>
</dd>
<dtclass="field-even">Returns</dt>
<ddclass="field-even"><p>None</p>
</dd>
<dtclass="field-odd">Raises</dt>
<ddclass="field-odd"><p>ProjectsError if there was a problem</p>
<codeclass="sig-prename descclassname">pylorax.api.projects.</code><codeclass="sig-name descname">dep_evra</code><spanclass="sig-paren">(</span><emclass="sig-param">dep</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/projects.html#dep_evra"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.projects.dep_evra"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-prename descclassname">pylorax.api.projects.</code><codeclass="sig-name descname">dep_nevra</code><spanclass="sig-paren">(</span><emclass="sig-param">dep</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/projects.html#dep_nevra"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.projects.dep_nevra"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-prename descclassname">pylorax.api.projects.</code><codeclass="sig-name descname">dnf_repo_to_file_repo</code><spanclass="sig-paren">(</span><emclass="sig-param">repo</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/projects.html#dnf_repo_to_file_repo"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.projects.dnf_repo_to_file_repo"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-prename descclassname">pylorax.api.projects.</code><codeclass="sig-name descname">estimate_size</code><spanclass="sig-paren">(</span><emclass="sig-param">packages</em>, <emclass="sig-param">block_size=6144</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/projects.html#estimate_size"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.projects.estimate_size"title="Permalink to this definition">¶</a></dt>
<li><p><strong>packages</strong> (<em>list of hawkey.Package objects</em>) – The packages to be installed</p></li>
<li><p><strong>block_size</strong> (<aclass="reference external"href="https://docs.python.org/3/library/functions.html#int"title="(in Python v3.8)"><em>int</em></a>) – The block size to use for rounding up file sizes.</p></li>
</ul>
</dd>
<dtclass="field-even">Returns</dt>
<ddclass="field-even"><p>The estimated size of installed packages</p>
<codeclass="sig-prename descclassname">pylorax.api.projects.</code><codeclass="sig-name descname">get_repo_sources</code><spanclass="sig-paren">(</span><emclass="sig-param">source_glob</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/projects.html#get_repo_sources"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.projects.get_repo_sources"title="Permalink to this definition">¶</a></dt>
<ddclass="field-odd"><p><strong>source_glob</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#str"title="(in Python v3.8)"><em>str</em></a>) – A glob to use to match the source files, including full path</p>
</dd>
<dtclass="field-even">Returns</dt>
<ddclass="field-even"><p>A list of the source ids in all of the matching files</p>
<codeclass="sig-prename descclassname">pylorax.api.projects.</code><codeclass="sig-name descname">get_source_ids</code><spanclass="sig-paren">(</span><emclass="sig-param">source_path</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/projects.html#get_source_ids"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.projects.get_source_ids"title="Permalink to this definition">¶</a></dt>
<ddclass="field-odd"><p><strong>source_path</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#str"title="(in Python v3.8)"><em>str</em></a>) – Full path and filename of the source (yum repo) file</p>
</dd>
<dtclass="field-even">Returns</dt>
<ddclass="field-even"><p>A list of source id strings</p>
<codeclass="sig-prename descclassname">pylorax.api.projects.</code><codeclass="sig-name descname">modules_info</code><spanclass="sig-paren">(</span><emclass="sig-param">dbo</em>, <emclass="sig-param">module_names</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/projects.html#modules_info"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.projects.modules_info"title="Permalink to this definition">¶</a></dt>
<li><p><strong>dbo</strong> (<em>dnf.Base</em>) – dnf base object</p></li>
<li><p><strong>module_names</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#str"title="(in Python v3.8)"><em>str</em></a>) – Names of the modules to get info about</p></li>
</ul>
</dd>
<dtclass="field-even">Returns</dt>
<ddclass="field-even"><p>List of dicts with module details and dependencies.</p>
<codeclass="sig-prename descclassname">pylorax.api.projects.</code><codeclass="sig-name descname">modules_list</code><spanclass="sig-paren">(</span><emclass="sig-param">dbo</em>, <emclass="sig-param">module_names</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/projects.html#modules_list"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.projects.modules_list"title="Permalink to this definition">¶</a></dt>
<li><p><strong>dbo</strong> (<em>dnf.Base</em>) – dnf base object</p></li>
<li><p><strong>offset</strong>– Number of modules to skip</p></li>
<li><p><strong>limit</strong> (<aclass="reference external"href="https://docs.python.org/3/library/functions.html#int"title="(in Python v3.8)"><em>int</em></a>) – Maximum number of modules to return</p></li>
</ul>
</dd>
<dtclass="field-even">Returns</dt>
<ddclass="field-even"><p>List of module information and total count</p>
</dd>
<dtclass="field-odd">Return type</dt>
<ddclass="field-odd"><p>tuple of a list of dicts and an Int</p>
<codeclass="sig-prename descclassname">pylorax.api.projects.</code><codeclass="sig-name descname">pkg_to_build</code><spanclass="sig-paren">(</span><emclass="sig-param">pkg</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/projects.html#pkg_to_build"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.projects.pkg_to_build"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-prename descclassname">pylorax.api.projects.</code><codeclass="sig-name descname">pkg_to_dep</code><spanclass="sig-paren">(</span><emclass="sig-param">pkg</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/projects.html#pkg_to_dep"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.projects.pkg_to_dep"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-prename descclassname">pylorax.api.projects.</code><codeclass="sig-name descname">pkg_to_project</code><spanclass="sig-paren">(</span><emclass="sig-param">pkg</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/projects.html#pkg_to_project"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.projects.pkg_to_project"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-prename descclassname">pylorax.api.projects.</code><codeclass="sig-name descname">pkg_to_project_info</code><spanclass="sig-paren">(</span><emclass="sig-param">pkg</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/projects.html#pkg_to_project_info"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.projects.pkg_to_project_info"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-prename descclassname">pylorax.api.projects.</code><codeclass="sig-name descname">proj_to_module</code><spanclass="sig-paren">(</span><emclass="sig-param">proj</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/projects.html#proj_to_module"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.projects.proj_to_module"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-prename descclassname">pylorax.api.projects.</code><codeclass="sig-name descname">projects_depsolve</code><spanclass="sig-paren">(</span><emclass="sig-param">dbo</em>, <emclass="sig-param">projects</em>, <emclass="sig-param">groups</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/projects.html#projects_depsolve"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.projects.projects_depsolve"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-prename descclassname">pylorax.api.projects.</code><codeclass="sig-name descname">projects_depsolve_with_size</code><spanclass="sig-paren">(</span><emclass="sig-param">dbo</em>, <emclass="sig-param">projects</em>, <emclass="sig-param">groups</em>, <emclass="sig-param">with_core=True</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/projects.html#projects_depsolve_with_size"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.projects.projects_depsolve_with_size"title="Permalink to this definition">¶</a></dt>
<li><p><strong>dbo</strong> (<em>dnf.Base</em>) – dnf base object</p></li>
<li><p><strong>project_names</strong> (<em>List of Strings</em>) – The projects to find the dependencies for</p></li>
<li><p><strong>groups</strong> (<em>List of str</em>) – The groups to include in dependency solving</p></li>
</ul>
</dd>
<dtclass="field-even">Returns</dt>
<ddclass="field-even"><p>installed size and a list of NEVRA’s of the project and its dependencies</p>
</dd>
<dtclass="field-odd">Return type</dt>
<ddclass="field-odd"><p>tuple of (<aclass="reference external"href="https://docs.python.org/3/library/functions.html#int"title="(in Python v3.8)">int</a>, list of dicts)</p>
</dd>
<dtclass="field-even">Raises</dt>
<ddclass="field-even"><p>ProjectsError if there was a problem installing something</p>
<codeclass="sig-prename descclassname">pylorax.api.projects.</code><codeclass="sig-name descname">projects_info</code><spanclass="sig-paren">(</span><emclass="sig-param">dbo</em>, <emclass="sig-param">project_names</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/projects.html#projects_info"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.projects.projects_info"title="Permalink to this definition">¶</a></dt>
<li><p><strong>dbo</strong> (<em>dnf.Base</em>) – dnf base object</p></li>
<li><p><strong>project_names</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#str"title="(in Python v3.8)"><em>str</em></a>) – List of names of projects to get info about</p></li>
</ul>
</dd>
<dtclass="field-even">Returns</dt>
<ddclass="field-even"><p>List of project info dicts with pkg_to_project as well as epoch, version, release, etc.</p>
<codeclass="sig-prename descclassname">pylorax.api.projects.</code><codeclass="sig-name descname">projects_list</code><spanclass="sig-paren">(</span><emclass="sig-param">dbo</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/projects.html#projects_list"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.projects.projects_list"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-prename descclassname">pylorax.api.projects.</code><codeclass="sig-name descname">repo_to_source</code><spanclass="sig-paren">(</span><emclass="sig-param">repo</em>, <emclass="sig-param">system_source</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/projects.html#repo_to_source"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.projects.repo_to_source"title="Permalink to this definition">¶</a></dt>
<li><p><strong>system_source</strong> (<aclass="reference external"href="https://docs.python.org/3/library/functions.html#bool"title="(in Python v3.8)"><em>bool</em></a>) – True if this source is an immutable system source</p></li>
</ul>
</dd>
<dtclass="field-even">Returns</dt>
<ddclass="field-even"><p>A dict with Weldr Source fields filled in</p>
<codeclass="sig-prename descclassname">pylorax.api.projects.</code><codeclass="sig-name descname">source_to_repo</code><spanclass="sig-paren">(</span><emclass="sig-param">source</em>, <emclass="sig-param">dnf_conf</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/projects.html#source_to_repo"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.projects.source_to_repo"title="Permalink to this definition">¶</a></dt>
<spanid="pylorax-api-queue-module"></span><h2>pylorax.api.queue module<aclass="headerlink"href="#module-pylorax.api.queue"title="Permalink to this headline">¶</a></h2>
<p>Functions to monitor compose queue and run anaconda</p>
<codeclass="sig-prename descclassname">pylorax.api.queue.</code><codeclass="sig-name descname">build_status</code><spanclass="sig-paren">(</span><emclass="sig-param">cfg</em>, <emclass="sig-param">status_filter=None</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/queue.html#build_status"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.queue.build_status"title="Permalink to this definition">¶</a></dt>
<li><p><strong>status_filter</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#str"title="(in Python v3.8)"><em>str</em></a>) – What builds to return. None == all, “FINISHED”, or “FAILED”</p></li>
</ul>
</dd>
<dtclass="field-even">Returns</dt>
<ddclass="field-even"><p>A list of the build details (from compose_details)</p>
<codeclass="sig-prename descclassname">pylorax.api.queue.</code><codeclass="sig-name descname">check_queues</code><spanclass="sig-paren">(</span><emclass="sig-param">cfg</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/queue.html#check_queues"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.queue.check_queues"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-prename descclassname">pylorax.api.queue.</code><codeclass="sig-name descname">compose_detail</code><spanclass="sig-paren">(</span><emclass="sig-param">results_dir</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/queue.html#compose_detail"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.queue.compose_detail"title="Permalink to this definition">¶</a></dt>
<ddclass="field-odd"><p><strong>results_dir</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#str"title="(in Python v3.8)"><em>str</em></a>) – The directory containing the metadata and results for the build</p>
</dd>
<dtclass="field-even">Returns</dt>
<ddclass="field-even"><p>A dictionary with details about the compose</p>
<codeclass="sig-prename descclassname">pylorax.api.queue.</code><codeclass="sig-name descname">get_compose_type</code><spanclass="sig-paren">(</span><emclass="sig-param">results_dir</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/queue.html#get_compose_type"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.queue.get_compose_type"title="Permalink to this definition">¶</a></dt>
<ddclass="field-odd"><p><strong>results_dir</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#str"title="(in Python v3.8)"><em>str</em></a>) – The directory containing the metadata and results for the build</p>
</dd>
<dtclass="field-even">Returns</dt>
<ddclass="field-even"><p>The type of compose (eg. ‘tar’)</p>
<codeclass="sig-prename descclassname">pylorax.api.queue.</code><codeclass="sig-name descname">get_image_name</code><spanclass="sig-paren">(</span><emclass="sig-param">uuid_dir</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/queue.html#get_image_name"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.queue.get_image_name"title="Permalink to this definition">¶</a></dt>
<ddclass="field-odd"><p><strong>uuid</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#str"title="(in Python v3.8)"><em>str</em></a>) – The UUID of the build</p>
</dd>
<dtclass="field-even">Returns</dt>
<ddclass="field-even"><p>The image filename and full path</p>
</dd>
<dtclass="field-odd">Return type</dt>
<ddclass="field-odd"><p>tuple of strings</p>
</dd>
<dtclass="field-even">Raises</dt>
<ddclass="field-even"><p>RuntimeError if there was a problem (eg. invalid uuid, missing config file)</p>
<codeclass="sig-prename descclassname">pylorax.api.queue.</code><codeclass="sig-name descname">make_compose</code><spanclass="sig-paren">(</span><emclass="sig-param">cfg</em>, <emclass="sig-param">results_dir</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/queue.html#make_compose"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.queue.make_compose"title="Permalink to this definition">¶</a></dt>
<li><p><strong>results_dir</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#str"title="(in Python v3.8)"><em>str</em></a>) – The directory containing the metadata and results for the build</p></li>
</ul>
</dd>
<dtclass="field-even">Returns</dt>
<ddclass="field-even"><p>Nothing</p>
</dd>
<dtclass="field-odd">Raises</dt>
<ddclass="field-odd"><p>May raise various exceptions</p>
<codeclass="sig-prename descclassname">pylorax.api.queue.</code><codeclass="sig-name descname">monitor</code><spanclass="sig-paren">(</span><emclass="sig-param">cfg</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/queue.html#monitor"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.queue.monitor"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-prename descclassname">pylorax.api.queue.</code><codeclass="sig-name descname">queue_status</code><spanclass="sig-paren">(</span><emclass="sig-param">cfg</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/queue.html#queue_status"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.queue.queue_status"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-prename descclassname">pylorax.api.queue.</code><codeclass="sig-name descname">start_queue_monitor</code><spanclass="sig-paren">(</span><emclass="sig-param">cfg</em>, <emclass="sig-param">uid</em>, <emclass="sig-param">gid</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/queue.html#start_queue_monitor"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.queue.start_queue_monitor"title="Permalink to this definition">¶</a></dt>
<li><p><strong>uid</strong> (<aclass="reference external"href="https://docs.python.org/3/library/functions.html#int"title="(in Python v3.8)"><em>int</em></a>) – User ID that owns the queue</p></li>
<li><p><strong>gid</strong> (<aclass="reference external"href="https://docs.python.org/3/library/functions.html#int"title="(in Python v3.8)"><em>int</em></a>) – Group ID that owns the queue</p></li>
<codeclass="sig-prename descclassname">pylorax.api.queue.</code><codeclass="sig-name descname">uuid_cancel</code><spanclass="sig-paren">(</span><emclass="sig-param">cfg</em>, <emclass="sig-param">uuid</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/queue.html#uuid_cancel"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.queue.uuid_cancel"title="Permalink to this definition">¶</a></dt>
<li><p><strong>uuid</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#str"title="(in Python v3.8)"><em>str</em></a>) – The UUID of the build</p></li>
</ul>
</dd>
<dtclass="field-even">Returns</dt>
<ddclass="field-even"><p>True if it was canceled and deleted</p>
<codeclass="sig-prename descclassname">pylorax.api.queue.</code><codeclass="sig-name descname">uuid_delete</code><spanclass="sig-paren">(</span><emclass="sig-param">cfg</em>, <emclass="sig-param">uuid</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/queue.html#uuid_delete"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.queue.uuid_delete"title="Permalink to this definition">¶</a></dt>
<li><p><strong>uuid</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#str"title="(in Python v3.8)"><em>str</em></a>) – The UUID of the build</p></li>
</ul>
</dd>
<dtclass="field-even">Returns</dt>
<ddclass="field-even"><p>True if it was deleted</p>
<codeclass="sig-prename descclassname">pylorax.api.queue.</code><codeclass="sig-name descname">uuid_image</code><spanclass="sig-paren">(</span><emclass="sig-param">cfg</em>, <emclass="sig-param">uuid</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/queue.html#uuid_image"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.queue.uuid_image"title="Permalink to this definition">¶</a></dt>
<li><p><strong>uuid</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#str"title="(in Python v3.8)"><em>str</em></a>) – The UUID of the build</p></li>
</ul>
</dd>
<dtclass="field-even">Returns</dt>
<ddclass="field-even"><p>The image filename and full path</p>
</dd>
<dtclass="field-odd">Return type</dt>
<ddclass="field-odd"><p>tuple of strings</p>
</dd>
<dtclass="field-even">Raises</dt>
<ddclass="field-even"><p>RuntimeError if there was a problem (eg. invalid uuid, missing config file)</p>
<codeclass="sig-prename descclassname">pylorax.api.queue.</code><codeclass="sig-name descname">uuid_info</code><spanclass="sig-paren">(</span><emclass="sig-param">cfg</em>, <emclass="sig-param">uuid</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/queue.html#uuid_info"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.queue.uuid_info"title="Permalink to this definition">¶</a></dt>
<li><p><strong>uuid</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#str"title="(in Python v3.8)"><em>str</em></a>) – The UUID of the build</p></li>
</ul>
</dd>
<dtclass="field-even">Returns</dt>
<ddclass="field-even"><p>dictionary of information about the composition or None</p>
<codeclass="sig-prename descclassname">pylorax.api.queue.</code><codeclass="sig-name descname">uuid_log</code><spanclass="sig-paren">(</span><emclass="sig-param">cfg</em>, <emclass="sig-param">uuid</em>, <emclass="sig-param">size=1024</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/queue.html#uuid_log"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.queue.uuid_log"title="Permalink to this definition">¶</a></dt>
<li><p><strong>uuid</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#str"title="(in Python v3.8)"><em>str</em></a>) – The UUID of the build</p></li>
<li><p><strong>size</strong> (<aclass="reference external"href="https://docs.python.org/3/library/functions.html#int"title="(in Python v3.8)"><em>int</em></a>) – Number of kbytes to read. Default is 1024</p></li>
</ul>
</dd>
<dtclass="field-even">Returns</dt>
<ddclass="field-even"><p>Up to <cite>size</cite> kbytes from the end of the log</p>
<codeclass="sig-prename descclassname">pylorax.api.queue.</code><codeclass="sig-name descname">uuid_status</code><spanclass="sig-paren">(</span><emclass="sig-param">cfg</em>, <emclass="sig-param">uuid</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/queue.html#uuid_status"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.queue.uuid_status"title="Permalink to this definition">¶</a></dt>
<li><p><strong>uuid</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#str"title="(in Python v3.8)"><em>str</em></a>) – The UUID of the build</p></li>
</ul>
</dd>
<dtclass="field-even">Returns</dt>
<ddclass="field-even"><p>Details about the build</p>
</dd>
<dtclass="field-odd">Return type</dt>
<ddclass="field-odd"><p><aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#dict"title="(in Python v3.8)">dict</a> or <aclass="reference external"href="https://docs.python.org/3/library/constants.html#None"title="(in Python v3.8)">None</a></p>
<li><p><strong>uuid</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#str"title="(in Python v3.8)"><em>str</em></a>) – The UUID of the build</p></li>
<li><p><strong>metadata</strong> (<aclass="reference external"href="https://docs.python.org/3/library/functions.html#bool"title="(in Python v3.8)"><em>bool</em></a>) – Set to true to include all the metadata needed to reproduce the build</p></li>
<li><p><strong>image</strong> (<aclass="reference external"href="https://docs.python.org/3/library/functions.html#bool"title="(in Python v3.8)"><em>bool</em></a>) – Set to true to include the output image</p></li>
<li><p><strong>logs</strong> (<aclass="reference external"href="https://docs.python.org/3/library/functions.html#bool"title="(in Python v3.8)"><em>bool</em></a>) – Set to true to include the logs from the build</p></li>
</ul>
</dd>
<dtclass="field-even">Returns</dt>
<ddclass="field-even"><p>A stream of bytes from tar</p>
</dd>
<dtclass="field-odd">Return type</dt>
<ddclass="field-odd"><p>A generator</p>
</dd>
<dtclass="field-even">Raises</dt>
<ddclass="field-even"><p>RuntimeError if there was a problem (eg. missing config file)</p>
<spanid="pylorax-api-recipes-module"></span><h2>pylorax.api.recipes module<aclass="headerlink"href="#module-pylorax.api.recipes"title="Permalink to this headline">¶</a></h2>
<emclass="property">exception </em><codeclass="sig-prename descclassname">pylorax.api.recipes.</code><codeclass="sig-name descname">CommitTimeValError</code><aclass="reference internal"href="_modules/pylorax/api/recipes.html#CommitTimeValError"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.recipes.CommitTimeValError"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-prename descclassname">pylorax.api.recipes.</code><codeclass="sig-name descname">NewRecipeGit</code><spanclass="sig-paren">(</span><emclass="sig-param">toml_dict</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/recipes.html#NewRecipeGit"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.recipes.NewRecipeGit"title="Permalink to this definition">¶</a></dt>
<li><p><strong>rpmname</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#str"title="(in Python v3.8)"><em>str</em></a>) – Name of the rpm to create, also used as the prefix name in the tar archive</p></li>
<li><p><strong>rpmversion</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#str"title="(in Python v3.8)"><em>str</em></a>) – Version of the rpm, eg. “1.0.0”</p></li>
<li><p><strong>rpmrelease</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#str"title="(in Python v3.8)"><em>str</em></a>) – Release of the rpm, eg. “1”</p></li>
<li><p><strong>summary</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#str"title="(in Python v3.8)"><em>str</em></a>) – Summary string for the rpm</p></li>
<li><p><strong>repo</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#str"title="(in Python v3.8)"><em>str</em></a>) – URL of the get repo to clone and create the archive from</p></li>
<li><p><strong>ref</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#str"title="(in Python v3.8)"><em>str</em></a>) – Git reference to check out. eg. origin/branch-name, git tag, or git commit hash</p></li>
<li><p><strong>destination</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#str"title="(in Python v3.8)"><em>str</em></a>) – Path to install the / of the git repo at when installing the rpm</p></li>
<codeclass="sig-name descname">bump_version</code><spanclass="sig-paren">(</span><emclass="sig-param">old_version=None</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/recipes.html#Recipe.bump_version"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.recipes.Recipe.bump_version"title="Permalink to this definition">¶</a></dt>
<ddclass="field-odd"><p><strong>old_version</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#str"title="(in Python v3.8)"><em>str</em></a>) – An optional old version number</p>
</dd>
<dtclass="field-even">Returns</dt>
<ddclass="field-even"><p>The new version number or None</p>
<emclass="property">property </em><codeclass="sig-name descname">filename</code><aclass="headerlink"href="#pylorax.api.recipes.Recipe.filename"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">freeze</code><spanclass="sig-paren">(</span><emclass="sig-param">deps</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/recipes.html#Recipe.freeze"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.recipes.Recipe.freeze"title="Permalink to this definition">¶</a></dt>
<ddclass="field-odd"><p><strong>deps</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#list"title="(in Python v3.8)"><em>list</em></a><em>(</em>) – A list of dependency NEVRA to use to fill in the modules and packages</p>
<emclass="property">property </em><codeclass="sig-name descname">group_names</code><aclass="headerlink"href="#pylorax.api.recipes.Recipe.group_names"title="Permalink to this definition">¶</a></dt>
<emclass="property">property </em><codeclass="sig-name descname">module_names</code><aclass="headerlink"href="#pylorax.api.recipes.Recipe.module_names"title="Permalink to this definition">¶</a></dt>
<emclass="property">property </em><codeclass="sig-name descname">module_nver</code><aclass="headerlink"href="#pylorax.api.recipes.Recipe.module_nver"title="Permalink to this definition">¶</a></dt>
<emclass="property">property </em><codeclass="sig-name descname">package_names</code><aclass="headerlink"href="#pylorax.api.recipes.Recipe.package_names"title="Permalink to this definition">¶</a></dt>
<emclass="property">property </em><codeclass="sig-name descname">package_nver</code><aclass="headerlink"href="#pylorax.api.recipes.Recipe.package_nver"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">toml</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/recipes.html#Recipe.toml"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.recipes.Recipe.toml"title="Permalink to this definition">¶</a></dt>
<emclass="property">exception </em><codeclass="sig-prename descclassname">pylorax.api.recipes.</code><codeclass="sig-name descname">RecipeError</code><aclass="reference internal"href="_modules/pylorax/api/recipes.html#RecipeError"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.recipes.RecipeError"title="Permalink to this definition">¶</a></dt>
<emclass="property">exception </em><codeclass="sig-prename descclassname">pylorax.api.recipes.</code><codeclass="sig-name descname">RecipeFileError</code><aclass="reference internal"href="_modules/pylorax/api/recipes.html#RecipeFileError"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.recipes.RecipeFileError"title="Permalink to this definition">¶</a></dt>
<emclass="property">class </em><codeclass="sig-prename descclassname">pylorax.api.recipes.</code><codeclass="sig-name descname">RecipeGroup</code><spanclass="sig-paren">(</span><emclass="sig-param">name</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/recipes.html#RecipeGroup"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.recipes.RecipeGroup"title="Permalink to this definition">¶</a></dt>
<emclass="property">class </em><codeclass="sig-prename descclassname">pylorax.api.recipes.</code><codeclass="sig-name descname">RecipeModule</code><spanclass="sig-paren">(</span><emclass="sig-param">name</em>, <emclass="sig-param">version</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/recipes.html#RecipeModule"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.recipes.RecipeModule"title="Permalink to this definition">¶</a></dt>
<emclass="property">class </em><codeclass="sig-prename descclassname">pylorax.api.recipes.</code><codeclass="sig-name descname">RecipePackage</code><spanclass="sig-paren">(</span><emclass="sig-param">name</em>, <emclass="sig-param">version</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/recipes.html#RecipePackage"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.recipes.RecipePackage"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-prename descclassname">pylorax.api.recipes.</code><codeclass="sig-name descname">check_list_case</code><spanclass="sig-paren">(</span><emclass="sig-param">expected_keys</em>, <emclass="sig-param">recipe_keys</em>, <emclass="sig-param">prefix=''</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/recipes.html#check_list_case"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.recipes.check_list_case"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-prename descclassname">pylorax.api.recipes.</code><codeclass="sig-name descname">check_recipe_dict</code><spanclass="sig-paren">(</span><emclass="sig-param">recipe_dict</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/recipes.html#check_recipe_dict"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.recipes.check_recipe_dict"title="Permalink to this definition">¶</a></dt>
<ddclass="field-odd"><p><strong>recipe_dict</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#dict"title="(in Python v3.8)"><em>dict</em></a>) – A plain dict of the recipe</p>
<codeclass="sig-prename descclassname">pylorax.api.recipes.</code><codeclass="sig-name descname">check_required_list</code><spanclass="sig-paren">(</span><emclass="sig-param">lst</em>, <emclass="sig-param">fields</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/recipes.html#check_required_list"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.recipes.check_required_list"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-prename descclassname">pylorax.api.recipes.</code><codeclass="sig-name descname">commit_recipe</code><spanclass="sig-paren">(</span><emclass="sig-param">repo</em>, <emclass="sig-param">branch</em>, <emclass="sig-param">recipe</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/recipes.html#commit_recipe"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.recipes.commit_recipe"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-prename descclassname">pylorax.api.recipes.</code><codeclass="sig-name descname">commit_recipe_directory</code><spanclass="sig-paren">(</span><emclass="sig-param">repo</em>, <emclass="sig-param">branch</em>, <emclass="sig-param">directory</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/recipes.html#commit_recipe_directory"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.recipes.commit_recipe_directory"title="Permalink to this definition">¶</a></dt>
<li><p><strong>directory</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#str"title="(in Python v3.8)"><em>str</em></a>) – The directory of *.toml recipes to commit</p></li>
</ul>
</dd>
<dtclass="field-even">Returns</dt>
<ddclass="field-even"><p>None</p>
</dd>
<dtclass="field-odd">Raises</dt>
<ddclass="field-odd"><p>Can raise errors from Ggit or RecipeFileError</p>
<codeclass="sig-prename descclassname">pylorax.api.recipes.</code><codeclass="sig-name descname">commit_recipe_file</code><spanclass="sig-paren">(</span><emclass="sig-param">repo</em>, <emclass="sig-param">branch</em>, <emclass="sig-param">filename</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/recipes.html#commit_recipe_file"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.recipes.commit_recipe_file"title="Permalink to this definition">¶</a></dt>
<li><p><strong>filename</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#str"title="(in Python v3.8)"><em>str</em></a>) – Path to the recipe file to commit</p></li>
</ul>
</dd>
<dtclass="field-even">Returns</dt>
<ddclass="field-even"><p>OId of the new commit</p>
</dd>
<dtclass="field-odd">Return type</dt>
<ddclass="field-odd"><p>Git.OId</p>
</dd>
<dtclass="field-even">Raises</dt>
<ddclass="field-even"><p>Can raise errors from Ggit or RecipeFileError</p>
<codeclass="sig-prename descclassname">pylorax.api.recipes.</code><codeclass="sig-name descname">customizations_diff</code><spanclass="sig-paren">(</span><emclass="sig-param">old_recipe</em>, <emclass="sig-param">new_recipe</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/recipes.html#customizations_diff"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.recipes.customizations_diff"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-prename descclassname">pylorax.api.recipes.</code><codeclass="sig-name descname">delete_file</code><spanclass="sig-paren">(</span><emclass="sig-param">repo</em>, <emclass="sig-param">branch</em>, <emclass="sig-param">filename</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/recipes.html#delete_file"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.recipes.delete_file"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-prename descclassname">pylorax.api.recipes.</code><codeclass="sig-name descname">delete_recipe</code><spanclass="sig-paren">(</span><emclass="sig-param">repo</em>, <emclass="sig-param">branch</em>, <emclass="sig-param">recipe_name</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/recipes.html#delete_recipe"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.recipes.delete_recipe"title="Permalink to this definition">¶</a></dt>
<li><p><strong>recipe_name</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#str"title="(in Python v3.8)"><em>str</em></a>) – Recipe name to delete</p></li>
</ul>
</dd>
<dtclass="field-even">Returns</dt>
<ddclass="field-even"><p>OId of the new commit</p>
</dd>
<dtclass="field-odd">Return type</dt>
<ddclass="field-odd"><p>Git.OId</p>
</dd>
<dtclass="field-even">Raises</dt>
<ddclass="field-even"><p>Can raise errors from Ggit</p>
<codeclass="sig-prename descclassname">pylorax.api.recipes.</code><codeclass="sig-name descname">diff_lists</code><spanclass="sig-paren">(</span><emclass="sig-param">title</em>, <emclass="sig-param">field</em>, <emclass="sig-param">old_items</em>, <emclass="sig-param">new_items</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/recipes.html#diff_lists"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.recipes.diff_lists"title="Permalink to this definition">¶</a></dt>
<li><p><strong>title</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#str"title="(in Python v3.8)"><em>str</em></a>) – Title of the entry</p></li>
<li><p><strong>field</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#str"title="(in Python v3.8)"><em>str</em></a>) – Field to use as the key for comparisons</p></li>
<li><p><strong>old_items</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#list"title="(in Python v3.8)"><em>list</em></a><em>(</em><aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#dict"title="(in Python v3.8)"><em>dict</em></a><em>)</em>) – List of item dicts with “name” field</p></li>
<li><p><strong>new_items</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#list"title="(in Python v3.8)"><em>list</em></a><em>(</em><aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#dict"title="(in Python v3.8)"><em>dict</em></a><em>)</em>) – List of item dicts with “name” field</p></li>
</ul>
</dd>
<dtclass="field-even">Returns</dt>
<ddclass="field-even"><p>List of diff dicts with old/new entries</p>
<codeclass="sig-prename descclassname">pylorax.api.recipes.</code><codeclass="sig-name descname">find_commit_tag</code><spanclass="sig-paren">(</span><emclass="sig-param">repo</em>, <emclass="sig-param">branch</em>, <emclass="sig-param">filename</em>, <emclass="sig-param">commit_id</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/recipes.html#find_commit_tag"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.recipes.find_commit_tag"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-prename descclassname">pylorax.api.recipes.</code><codeclass="sig-name descname">find_field_value</code><spanclass="sig-paren">(</span><emclass="sig-param">field</em>, <emclass="sig-param">value</em>, <emclass="sig-param">lst</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/recipes.html#find_field_value"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.recipes.find_field_value"title="Permalink to this definition">¶</a></dt>
<li><p><strong>field</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#str"title="(in Python v3.8)"><em>str</em></a>) – field to search for</p></li>
<li><p><strong>value</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#str"title="(in Python v3.8)"><em>str</em></a>) – value to match in the field</p></li>
<li><p><strong>lst</strong> (<em>list of dict</em>) – List of dict’s with field</p></li>
</ul>
</dd>
<dtclass="field-even">Returns</dt>
<ddclass="field-even"><p>First dict with matching field:value, or None</p>
</dd>
<dtclass="field-odd">Return type</dt>
<ddclass="field-odd"><p><aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#dict"title="(in Python v3.8)">dict</a> or <aclass="reference external"href="https://docs.python.org/3/library/constants.html#None"title="(in Python v3.8)">None</a></p>
<codeclass="sig-prename descclassname">pylorax.api.recipes.</code><codeclass="sig-name descname">find_name</code><spanclass="sig-paren">(</span><emclass="sig-param">name</em>, <emclass="sig-param">lst</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/recipes.html#find_name"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.recipes.find_name"title="Permalink to this definition">¶</a></dt>
<li><p><strong>name</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#str"title="(in Python v3.8)"><em>str</em></a>) – Name to search for</p></li>
<li><p><strong>lst</strong> (<em>list of dict</em>) – List of dict’s with “name” field</p></li>
</ul>
</dd>
<dtclass="field-even">Returns</dt>
<ddclass="field-even"><p>First dict with matching name, or None</p>
</dd>
<dtclass="field-odd">Return type</dt>
<ddclass="field-odd"><p><aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#dict"title="(in Python v3.8)">dict</a> or <aclass="reference external"href="https://docs.python.org/3/library/constants.html#None"title="(in Python v3.8)">None</a></p>
<codeclass="sig-prename descclassname">pylorax.api.recipes.</code><codeclass="sig-name descname">find_recipe_obj</code><spanclass="sig-paren">(</span><emclass="sig-param">path</em>, <emclass="sig-param">recipe</em>, <emclass="sig-param">default=None</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/recipes.html#find_recipe_obj"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.recipes.find_recipe_obj"title="Permalink to this definition">¶</a></dt>
<li><p><strong>path</strong> (<em>list of str</em>) – A list of dict field names</p></li>
<li><p><strong>recipe</strong> (<aclass="reference internal"href="#pylorax.api.recipes.Recipe"title="pylorax.api.recipes.Recipe"><em>Recipe</em></a>) – The recipe to search</p></li>
<li><p><strong>default</strong> (<em>Any</em>) – The value to return if it is not found</p></li>
<codeclass="sig-prename descclassname">pylorax.api.recipes.</code><codeclass="sig-name descname">get_commit_details</code><spanclass="sig-paren">(</span><emclass="sig-param">commit</em>, <emclass="sig-param">revision=None</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/recipes.html#get_commit_details"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.recipes.get_commit_details"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-prename descclassname">pylorax.api.recipes.</code><codeclass="sig-name descname">get_revision_from_tag</code><spanclass="sig-paren">(</span><emclass="sig-param">tag</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/recipes.html#get_revision_from_tag"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.recipes.get_revision_from_tag"title="Permalink to this definition">¶</a></dt>
<ddclass="field-odd"><p><strong>tag</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#str"title="(in Python v3.8)"><em>str</em></a>) – The tag to exract the revision from</p>
</dd>
<dtclass="field-even">Returns</dt>
<ddclass="field-even"><p>The integer revision or None</p>
</dd>
<dtclass="field-odd">Return type</dt>
<ddclass="field-odd"><p><aclass="reference external"href="https://docs.python.org/3/library/functions.html#int"title="(in Python v3.8)">int</a> or <aclass="reference external"href="https://docs.python.org/3/library/constants.html#None"title="(in Python v3.8)">None</a></p>
<codeclass="sig-prename descclassname">pylorax.api.recipes.</code><codeclass="sig-name descname">gfile</code><spanclass="sig-paren">(</span><emclass="sig-param">path</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/recipes.html#gfile"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.recipes.gfile"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-prename descclassname">pylorax.api.recipes.</code><codeclass="sig-name descname">head_commit</code><spanclass="sig-paren">(</span><emclass="sig-param">repo</em>, <emclass="sig-param">branch</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/recipes.html#head_commit"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.recipes.head_commit"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-prename descclassname">pylorax.api.recipes.</code><codeclass="sig-name descname">is_commit_tag</code><spanclass="sig-paren">(</span><emclass="sig-param">repo</em>, <emclass="sig-param">commit_id</em>, <emclass="sig-param">tag</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/recipes.html#is_commit_tag"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.recipes.is_commit_tag"title="Permalink to this definition">¶</a></dt>
<li><p><strong>repo</strong> (<em>Git.Repository</em>) – Open repository</p></li>
<li><p><strong>commit_id</strong> (<em>Git.OId</em>) – The commit id to check</p></li>
<li><p><strong>tag</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#str"title="(in Python v3.8)"><em>str</em></a>) – The tag to check</p></li>
</ul>
</dd>
<dtclass="field-even">Returns</dt>
<ddclass="field-even"><p>True if the tag points to the commit, False otherwise</p>
<codeclass="sig-prename descclassname">pylorax.api.recipes.</code><codeclass="sig-name descname">is_parent_diff</code><spanclass="sig-paren">(</span><emclass="sig-param">repo</em>, <emclass="sig-param">filename</em>, <emclass="sig-param">tree</em>, <emclass="sig-param">parent</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/recipes.html#is_parent_diff"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.recipes.is_parent_diff"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-prename descclassname">pylorax.api.recipes.</code><codeclass="sig-name descname">list_branch_files</code><spanclass="sig-paren">(</span><emclass="sig-param">repo</em>, <emclass="sig-param">branch</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/recipes.html#list_branch_files"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.recipes.list_branch_files"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-prename descclassname">pylorax.api.recipes.</code><codeclass="sig-name descname">list_commit_files</code><spanclass="sig-paren">(</span><emclass="sig-param">repo</em>, <emclass="sig-param">commit</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/recipes.html#list_commit_files"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.recipes.list_commit_files"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-prename descclassname">pylorax.api.recipes.</code><codeclass="sig-name descname">list_commits</code><spanclass="sig-paren">(</span><emclass="sig-param">repo</em>, <emclass="sig-param">branch</em>, <emclass="sig-param">filename</em>, <emclass="sig-param">limit=0</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/recipes.html#list_commits"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.recipes.list_commits"title="Permalink to this definition">¶</a></dt>
<li><p><strong>filename</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#str"title="(in Python v3.8)"><em>str</em></a>) – filename to revert</p></li>
<li><p><strong>limit</strong> (<aclass="reference external"href="https://docs.python.org/3/library/functions.html#int"title="(in Python v3.8)"><em>int</em></a>) – Number of commits to return (0=all)</p></li>
</ul>
</dd>
<dtclass="field-even">Returns</dt>
<ddclass="field-even"><p>A list of commit details</p>
<codeclass="sig-prename descclassname">pylorax.api.recipes.</code><codeclass="sig-name descname">open_or_create_repo</code><spanclass="sig-paren">(</span><emclass="sig-param">path</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/recipes.html#open_or_create_repo"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.recipes.open_or_create_repo"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-prename descclassname">pylorax.api.recipes.</code><codeclass="sig-name descname">prepare_commit</code><spanclass="sig-paren">(</span><emclass="sig-param">repo</em>, <emclass="sig-param">branch</em>, <emclass="sig-param">builder</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/recipes.html#prepare_commit"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.recipes.prepare_commit"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-prename descclassname">pylorax.api.recipes.</code><codeclass="sig-name descname">read_commit</code><spanclass="sig-paren">(</span><emclass="sig-param">repo</em>, <emclass="sig-param">branch</em>, <emclass="sig-param">filename</em>, <emclass="sig-param">commit=None</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/recipes.html#read_commit"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.recipes.read_commit"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-prename descclassname">pylorax.api.recipes.</code><codeclass="sig-name descname">read_commit_spec</code><spanclass="sig-paren">(</span><emclass="sig-param">repo</em>, <emclass="sig-param">spec</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/recipes.html#read_commit_spec"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.recipes.read_commit_spec"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-prename descclassname">pylorax.api.recipes.</code><codeclass="sig-name descname">read_recipe_and_id</code><spanclass="sig-paren">(</span><emclass="sig-param">repo</em>, <emclass="sig-param">branch</em>, <emclass="sig-param">recipe_name</em>, <emclass="sig-param">commit=None</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/recipes.html#read_recipe_and_id"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.recipes.read_recipe_and_id"title="Permalink to this definition">¶</a></dt>
<li><p><strong>recipe_name</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#str"title="(in Python v3.8)"><em>str</em></a>) – Recipe name to read</p></li>
<codeclass="sig-prename descclassname">pylorax.api.recipes.</code><codeclass="sig-name descname">read_recipe_commit</code><spanclass="sig-paren">(</span><emclass="sig-param">repo</em>, <emclass="sig-param">branch</em>, <emclass="sig-param">recipe_name</em>, <emclass="sig-param">commit=None</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/recipes.html#read_recipe_commit"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.recipes.read_recipe_commit"title="Permalink to this definition">¶</a></dt>
<li><p><strong>recipe_name</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#str"title="(in Python v3.8)"><em>str</em></a>) – Recipe name to read</p></li>
<codeclass="sig-prename descclassname">pylorax.api.recipes.</code><codeclass="sig-name descname">recipe_diff</code><spanclass="sig-paren">(</span><emclass="sig-param">old_recipe</em>, <emclass="sig-param">new_recipe</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/recipes.html#recipe_diff"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.recipes.recipe_diff"title="Permalink to this definition">¶</a></dt>
<li><p><strong>old_recipe</strong> (<aclass="reference internal"href="#pylorax.api.recipes.Recipe"title="pylorax.api.recipes.Recipe"><em>Recipe</em></a>) – The old version of the recipe</p></li>
<li><p><strong>new_recipe</strong> (<aclass="reference internal"href="#pylorax.api.recipes.Recipe"title="pylorax.api.recipes.Recipe"><em>Recipe</em></a>) – The new version of the recipe</p></li>
</ul>
</dd>
<dtclass="field-even">Returns</dt>
<ddclass="field-even"><p>A list of diff dict entries with old/new</p>
<codeclass="sig-prename descclassname">pylorax.api.recipes.</code><codeclass="sig-name descname">recipe_filename</code><spanclass="sig-paren">(</span><emclass="sig-param">name</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/recipes.html#recipe_filename"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.recipes.recipe_filename"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-prename descclassname">pylorax.api.recipes.</code><codeclass="sig-name descname">recipe_from_dict</code><spanclass="sig-paren">(</span><emclass="sig-param">recipe_dict</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/recipes.html#recipe_from_dict"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.recipes.recipe_from_dict"title="Permalink to this definition">¶</a></dt>
<ddclass="field-odd"><p><strong>recipe_dict</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#dict"title="(in Python v3.8)"><em>dict</em></a>) – A plain dict of the recipe</p>
<codeclass="sig-prename descclassname">pylorax.api.recipes.</code><codeclass="sig-name descname">recipe_from_file</code><spanclass="sig-paren">(</span><emclass="sig-param">recipe_path</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/recipes.html#recipe_from_file"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.recipes.recipe_from_file"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-prename descclassname">pylorax.api.recipes.</code><codeclass="sig-name descname">recipe_from_toml</code><spanclass="sig-paren">(</span><emclass="sig-param">recipe_str</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/recipes.html#recipe_from_toml"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.recipes.recipe_from_toml"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-prename descclassname">pylorax.api.recipes.</code><codeclass="sig-name descname">repo_file_exists</code><spanclass="sig-paren">(</span><emclass="sig-param">repo</em>, <emclass="sig-param">branch</em>, <emclass="sig-param">filename</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/recipes.html#repo_file_exists"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.recipes.repo_file_exists"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-prename descclassname">pylorax.api.recipes.</code><codeclass="sig-name descname">revert_file</code><spanclass="sig-paren">(</span><emclass="sig-param">repo</em>, <emclass="sig-param">branch</em>, <emclass="sig-param">filename</em>, <emclass="sig-param">commit</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/recipes.html#revert_file"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.recipes.revert_file"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-prename descclassname">pylorax.api.recipes.</code><codeclass="sig-name descname">revert_recipe</code><spanclass="sig-paren">(</span><emclass="sig-param">repo</em>, <emclass="sig-param">branch</em>, <emclass="sig-param">recipe_name</em>, <emclass="sig-param">commit</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/recipes.html#revert_recipe"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.recipes.revert_recipe"title="Permalink to this definition">¶</a></dt>
<li><p><strong>recipe_name</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#str"title="(in Python v3.8)"><em>str</em></a>) – Recipe name to revert</p></li>
<codeclass="sig-prename descclassname">pylorax.api.recipes.</code><codeclass="sig-name descname">tag_file_commit</code><spanclass="sig-paren">(</span><emclass="sig-param">repo</em>, <emclass="sig-param">branch</em>, <emclass="sig-param">filename</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/recipes.html#tag_file_commit"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.recipes.tag_file_commit"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-prename descclassname">pylorax.api.recipes.</code><codeclass="sig-name descname">tag_recipe_commit</code><spanclass="sig-paren">(</span><emclass="sig-param">repo</em>, <emclass="sig-param">branch</em>, <emclass="sig-param">recipe_name</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/recipes.html#tag_recipe_commit"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.recipes.tag_recipe_commit"title="Permalink to this definition">¶</a></dt>
<li><p><strong>recipe_name</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#str"title="(in Python v3.8)"><em>str</em></a>) – Recipe name to tag</p></li>
</ul>
</dd>
<dtclass="field-even">Returns</dt>
<ddclass="field-even"><p>Tag id or None if it failed.</p>
</dd>
<dtclass="field-odd">Return type</dt>
<ddclass="field-odd"><p>Git.OId</p>
</dd>
<dtclass="field-even">Raises</dt>
<ddclass="field-even"><p>Can raise errors from Ggit</p>
<li><p><strong>filename</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#str"title="(in Python v3.8)"><em>str</em></a>) – full path of the file to add</p></li>
<li><p><strong>message</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#str"title="(in Python v3.8)"><em>str</em></a>) – The commit message</p></li>
<li><p><strong>content</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#str"title="(in Python v3.8)"><em>str</em></a>) – The data to write</p></li>
</ul>
</dd>
<dtclass="field-even">Returns</dt>
<ddclass="field-even"><p>OId of the new commit</p>
</dd>
<dtclass="field-odd">Return type</dt>
<ddclass="field-odd"><p>Git.OId</p>
</dd>
<dtclass="field-even">Raises</dt>
<ddclass="field-even"><p>Can raise errors from Ggit</p>
<spanid="pylorax-api-server-module"></span><h2>pylorax.api.server module<aclass="headerlink"href="#module-pylorax.api.server"title="Permalink to this headline">¶</a></h2>
<emclass="property">class </em><codeclass="sig-prename descclassname">pylorax.api.server.</code><codeclass="sig-name descname">GitLock</code><spanclass="sig-paren">(</span><emclass="sig-param">repo</em>, <emclass="sig-param">lock</em>, <emclass="sig-param">dir</em><spanclass="sig-paren">)</span><aclass="headerlink"href="#pylorax.api.server.GitLock"title="Permalink to this definition">¶</a></dt>
<emclass="property">property </em><codeclass="sig-name descname">dir</code><aclass="headerlink"href="#pylorax.api.server.GitLock.dir"title="Permalink to this definition">¶</a></dt>
<emclass="property">property </em><codeclass="sig-name descname">lock</code><aclass="headerlink"href="#pylorax.api.server.GitLock.lock"title="Permalink to this definition">¶</a></dt>
<emclass="property">property </em><codeclass="sig-name descname">repo</code><aclass="headerlink"href="#pylorax.api.server.GitLock.repo"title="Permalink to this definition">¶</a></dt>
<spanid="pylorax-api-v0-module"></span><h2>pylorax.api.v0 module<aclass="headerlink"href="#module-pylorax.api.v0"title="Permalink to this headline">¶</a></h2>
<p>Setup v0 of the API server</p>
<p>v0_api() must be called to setup the API routes for Flask</p>
<divclass="section"id="status-responses">
<h3>Status Responses<aclass="headerlink"href="#status-responses"title="Permalink to this headline">¶</a></h3>
<p>Some requests only return a status/error response.</p>
<blockquote>
<div><p>The response will be a status response with <cite>status</cite> set to true, or an
error response with it set to false and an error message included.</p>
<spanclass="s2">"errors"</span><spanclass="p">:</span><spanclass="p">[</span><spanclass="s2">"ggit-error: Failed to remove entry. File isn't in the tree - jboss.toml (-1)"</span><spanclass="p">]</span>
<h4><cite>/api/v0/blueprints/info/<blueprint_names>[?format=<json|toml>]</cite><aclass="headerlink"href="#api-v0-blueprints-info-blueprint-names-format-json-toml"title="Permalink to this headline">¶</a></h4>
<blockquote>
<div><p>Return the JSON representation of the blueprint. This includes 3 top level
objects. <cite>changes</cite> which lists whether or not the workspace is different from
the most recent commit. <cite>blueprints</cite> which lists the JSON representation of the
blueprint, and <cite>errors</cite> which will list any errors, like non-existant blueprints.</p>
<p>By default the response is JSON, but if <cite>?format=toml</cite> is included in the URL’s
arguments it will return the response as the blueprint’s raw TOML content.
<em>Unless</em> there is an error which will only return a 400 and a standard error
<spanclass="s2">"description"</span><spanclass="p">:</span><spanclass="s2">"An example GlusterFS server with samba"</span><spanclass="p">,</span>
<spanclass="s2">"errors"</span><spanclass="p">:</span><spanclass="p">[</span><spanclass="s2">"ggit-error: the path 'missing.toml' does not exist in the given tree (-3)"</span><spanclass="p">]</span>
<h4><cite>/api/v0/blueprints/changes/<blueprint_names>[?offset=0&limit=20]</cite><aclass="headerlink"href="#api-v0-blueprints-changes-blueprint-names-offset-0-limit-20"title="Permalink to this headline">¶</a></h4>
<blockquote>
<div><p>Return the commits to a blueprint. By default it returns the first 20 commits, this
can be changed by passing <cite>offset</cite> and/or <cite>limit</cite>. The response will include the
commit hash, summary, timestamp, and optionally the revision number. The commit
hash can be passed to <cite>/api/v0/blueprints/diff/</cite> to retrieve the exact changes.</p>
<spanclass="s2">"message"</span><spanclass="p">:</span><spanclass="s2">"blueprint glusterfs, version 0.0.6 saved."</span><spanclass="p">,</span>
<spanclass="s2">"message"</span><spanclass="p">:</span><spanclass="s2">"blueprint glusterfs, version 0.0.5 saved."</span><spanclass="p">,</span>
<spanclass="s2">"message"</span><spanclass="p">:</span><spanclass="s2">"blueprint glusterfs, version 0.0.4 saved."</span><spanclass="p">,</span>
<spanclass="s2">"message"</span><spanclass="p">:</span><spanclass="s2">"blueprint glusterfs, version 0.0.3 saved."</span><spanclass="p">,</span>
<spanclass="s2">"message"</span><spanclass="p">:</span><spanclass="s2">"blueprint glusterfs, version 0.0.2 saved."</span><spanclass="p">,</span>
<spanclass="s2">"message"</span><spanclass="p">:</span><spanclass="s2">"blueprint glusterfs, version 0.0.1 saved."</span><spanclass="p">,</span>
<h4>DELETE <cite>/api/v0/blueprints/delete/<blueprint_name></cite><aclass="headerlink"href="#delete-api-v0-blueprints-delete-blueprint-name"title="Permalink to this headline">¶</a></h4>
<blockquote>
<div><p>Delete a blueprint. The blueprint is deleted from the branch, and will no longer
be listed by the <cite>list</cite> route. A blueprint can be undeleted using the <cite>undo</cite> route
to revert to a previous commit. This will also delete the workspace copy of the
blueprint.</p>
<p>The response will be a status response with <cite>status</cite> set to true, or an
error response with it set to false and an error message included.</p>
<h4>POST <cite>/api/v0/blueprints/workspace</cite><aclass="headerlink"href="#post-api-v0-blueprints-workspace"title="Permalink to this headline">¶</a></h4>
<blockquote>
<div><p>Write a blueprint to the temporary workspace. This works exactly the same as <cite>new</cite> except
that it does not create a commit. JSON and TOML bodies are supported.</p>
<p>The workspace is meant to be used as a temporary blueprint storage for clients.
It will be read by the <cite>info</cite> and <cite>diff</cite> routes if it is different from the
most recent commit.</p>
<p>The response will be a status response with <cite>status</cite> set to true, or an
error response with it set to false and an error message included.</p>
<h4>DELETE <cite>/api/v0/blueprints/workspace/<blueprint_name></cite><aclass="headerlink"href="#delete-api-v0-blueprints-workspace-blueprint-name"title="Permalink to this headline">¶</a></h4>
<blockquote>
<div><p>Remove the temporary workspace copy of a blueprint. The <cite>info</cite> route will now
return the most recent commit of the blueprint. Any changes that were in the
workspace will be lost.</p>
<p>The response will be a status response with <cite>status</cite> set to true, or an
error response with it set to false and an error message included.</p>
<h4>POST <cite>/api/v0/blueprints/undo/<blueprint_name>/<commit></cite><aclass="headerlink"href="#post-api-v0-blueprints-undo-blueprint-name-commit"title="Permalink to this headline">¶</a></h4>
<blockquote>
<div><p>This will revert the blueprint to a previous commit. The commit hash from the <cite>changes</cite>
route can be used in this request.</p>
<p>The response will be a status response with <cite>status</cite> set to true, or an
error response with it set to false and an error message included.</p>
<h4>POST <cite>/api/v0/blueprints/tag/<blueprint_name></cite><aclass="headerlink"href="#post-api-v0-blueprints-tag-blueprint-name"title="Permalink to this headline">¶</a></h4>
<blockquote>
<div><p>Tag a blueprint as a new release. This uses git tags with a special format.
<cite>refs/tags/<branch>/<filename>/r<revision></cite>. Only the most recent blueprint commit
can be tagged. Revisions start at 1 and increment for each new tag
(per-blueprint). If the commit has already been tagged it will return false.</p>
<p>The response will be a status response with <cite>status</cite> set to true, or an
error response with it set to false and an error message included.</p>
<h4><cite>/api/v0/blueprints/diff/<blueprint_name>/<from_commit>/<to_commit></cite><aclass="headerlink"href="#api-v0-blueprints-diff-blueprint-name-from-commit-to-commit"title="Permalink to this headline">¶</a></h4>
<blockquote>
<div><p>Return the differences between two commits, or the workspace. The commit hash
from the <cite>changes</cite> response can be used here, or several special strings:</p>
<h4><cite>/api/v0/blueprints/freeze/<blueprint_names></cite><aclass="headerlink"href="#api-v0-blueprints-freeze-blueprint-names"title="Permalink to this headline">¶</a></h4>
<blockquote>
<div><p>Return a JSON representation of the blueprint with the package and module versions set
to the exact versions chosen by depsolving the blueprint.</p>
<spanclass="s2">"description"</span><spanclass="p">:</span><spanclass="s2">"An example GlusterFS server with samba"</span><spanclass="p">,</span>
<h4><cite>/api/v0/blueprints/depsolve/<blueprint_names></cite><aclass="headerlink"href="#api-v0-blueprints-depsolve-blueprint-names"title="Permalink to this headline">¶</a></h4>
<blockquote>
<div><p>Depsolve the blueprint using yum, return the blueprint used, and the NEVRAs of the packages
chosen to satisfy the blueprint’s requirements. The response will include a list of results,
with the full dependency list in <cite>dependencies</cite>, the NEVRAs for the blueprint’s direct modules
and packages in <cite>modules</cite>, and any error will be in <cite>errors</cite>.</p>
<spanclass="s2">"description"</span><spanclass="p">:</span><spanclass="s2">"An example GlusterFS server with samba"</span><spanclass="p">,</span>
<h4><cite>/api/v0/projects/list[?offset=0&limit=20]</cite><aclass="headerlink"href="#api-v0-projects-list-offset-0-limit-20"title="Permalink to this headline">¶</a></h4>
<blockquote>
<div><p>List all of the available projects. By default this returns the first 20 items,
but this can be changed by setting the <cite>offset</cite> and <cite>limit</cite> arguments.</p>
<spanclass="s2">"description"</span><spanclass="p">:</span><spanclass="s2">"0 A.D. (pronounced "</span><spanclass="n">zero</span><spanclass="n">ey</span><spanclass="o">-</span><spanclass="n">dee</span><spanclass="s2">") is a ..."</span><spanclass="p">,</span>
<spanclass="s2">"summary"</span><spanclass="p">:</span><spanclass="s2">"Cross-Platform RTS Game of Ancient Warfare"</span><spanclass="p">,</span>
<h4><cite>/api/v0/projects/info/<project_names></cite><aclass="headerlink"href="#api-v0-projects-info-project-names"title="Permalink to this headline">¶</a></h4>
<blockquote>
<div><p>Return information about the comma-separated list of projects. It includes the description
of the package along with the list of available builds.</p>
<spanclass="s2">"description"</span><spanclass="p">:</span><spanclass="s2">"The GNU tar program saves many ..."</span><spanclass="p">,</span>
<spanclass="s2">"summary"</span><spanclass="p">:</span><spanclass="s2">"A GNU file archiving program"</span><spanclass="p">,</span>
<h4><cite>/api/v0/projects/depsolve/<project_names></cite><aclass="headerlink"href="#api-v0-projects-depsolve-project-names"title="Permalink to this headline">¶</a></h4>
<blockquote>
<div><p>Depsolve the comma-separated list of projects and return the list of NEVRAs needed
<h4><cite>/api/v0/projects/source/info/<source-names></cite><aclass="headerlink"href="#api-v0-projects-source-info-source-names"title="Permalink to this headline">¶</a></h4>
<blockquote>
<div><p>Return information about the comma-separated list of source names. Or all of the
sources if ‘*’ is passed. Note that general globbing is not supported, only ‘*’.</p>
<p>immutable system sources will have the “system” field set to true. User added sources
will have it set to false. System sources cannot be changed or deleted.</p>
<h4>POST <cite>/api/v0/projects/source/new</cite><aclass="headerlink"href="#post-api-v0-projects-source-new"title="Permalink to this headline">¶</a></h4>
<blockquote>
<div><p>Add (or change) a source for use when depsolving blueprints and composing images.</p>
<p>The <codeclass="docutils literal notranslate"><spanclass="pre">proxy</span></code> and <codeclass="docutils literal notranslate"><spanclass="pre">gpgkey_urls</span></code> entries are optional. All of the others are required. The supported
<p>If <codeclass="docutils literal notranslate"><spanclass="pre">check_ssl</span></code> is true the https certificates must be valid. If they are self-signed you can either set
this to false, or add your Certificate Authority to the host system.</p>
<p>If <codeclass="docutils literal notranslate"><spanclass="pre">check_gpg</span></code> is true the GPG key must either be installed on the host system, or <codeclass="docutils literal notranslate"><spanclass="pre">gpgkey_urls</span></code>
should point to it.</p>
<p>You can edit an existing source (other than system sources), by doing a POST
of the new version of the source. It will overwrite the previous one.</p>
<h4>DELETE <cite>/api/v0/projects/source/delete/<source-name></cite><aclass="headerlink"href="#delete-api-v0-projects-source-delete-source-name"title="Permalink to this headline">¶</a></h4>
<blockquote>
<div><p>Delete a user added source. This will fail if a system source is passed to
it.</p>
<p>The response will be a status response with <cite>status</cite> set to true, or an
error response with it set to false and an error message included.</p>
<h4><cite>/api/v0/modules/list[?offset=0&limit=20]</cite><aclass="headerlink"href="#api-v0-modules-list-offset-0-limit-20"title="Permalink to this headline">¶</a></h4>
<blockquote>
<div><p>Return a list of all of the available modules. This includes the name and the
group_type, which is always “rpm” for lorax-composer. By default this returns
the first 20 items. This can be changed by setting the <cite>offset</cite> and <cite>limit</cite>
<h4><cite>/api/v0/modules/list/<module_names>[?offset=0&limit=20]</cite><aclass="headerlink"href="#api-v0-modules-list-module-names-offset-0-limit-20"title="Permalink to this headline">¶</a></h4>
<blockquote>
<div><p>Return the list of comma-separated modules. Output is the same as <cite>/modules/list</cite></p>
<h4><cite>/api/v0/modules/info/<module_names></cite><aclass="headerlink"href="#api-v0-modules-info-module-names"title="Permalink to this headline">¶</a></h4>
<blockquote>
<div><p>Return the module’s dependencies, and the information about the module.</p>
<spanclass="s2">"description"</span><spanclass="p">:</span><spanclass="s2">"The GNU tar program saves ..."</span><spanclass="p">,</span>
<spanclass="s2">"summary"</span><spanclass="p">:</span><spanclass="s2">"A GNU file archiving program"</span><spanclass="p">,</span>
<h4><cite>/api/v0/compose/status/<uuids>[?blueprint=<blueprint_name>&status=<compose_status>&type=<compose_type>]</cite><aclass="headerlink"href="#api-v0-compose-status-uuids-blueprint-blueprint-name-status-compose-status-type-compose-type"title="Permalink to this headline">¶</a></h4>
<blockquote>
<div><p>Return the details for each of the comma-separated list of uuids. A uuid of ‘*’ will return
<h4>DELETE <cite>/api/v0/compose/cancel/<uuid></cite><aclass="headerlink"href="#delete-api-v0-compose-cancel-uuid"title="Permalink to this headline">¶</a></h4>
<blockquote>
<div><p>Cancel the build, if it is not finished, and delete the results. It will return a
<h4>DELETE <cite>/api/v0/compose/delete/<uuids></cite><aclass="headerlink"href="#delete-api-v0-compose-delete-uuids"title="Permalink to this headline">¶</a></h4>
<blockquote>
<div><p>Delete the list of comma-separated uuids from the compose results.</p>
<spanclass="s2">"description"</span><spanclass="p">:</span><spanclass="s2">"An example kubernetes master"</span><spanclass="p">,</span>
<h4><cite>/api/v0/compose/metadata/<uuid></cite><aclass="headerlink"href="#api-v0-compose-metadata-uuid"title="Permalink to this headline">¶</a></h4>
<blockquote>
<div><p>Returns a .tar of the metadata used for the build. This includes all the
information needed to reproduce the build, including the final kickstart
populated with repository and package NEVRA.</p>
<p>The mime type is set to ‘application/x-tar’ and the filename is set to
UUID-metadata.tar</p>
<p>The .tar is uncompressed, but is not large.</p>
<h4><cite>/api/v0/compose/results/<uuid></cite><aclass="headerlink"href="#api-v0-compose-results-uuid"title="Permalink to this headline">¶</a></h4>
<blockquote>
<div><p>Returns a .tar of the metadata, logs, and output image of the build. This
includes all the information needed to reproduce the build, including the
final kickstart populated with repository and package NEVRA. The output image
is already in compressed form so the returned tar is not compressed.</p>
<p>The mime type is set to ‘application/x-tar’ and the filename is set to
UUID.tar</p>
</div></blockquote>
</div>
<divclass="section"id="api-v0-compose-logs-uuid">
<h4><cite>/api/v0/compose/logs/<uuid></cite><aclass="headerlink"href="#api-v0-compose-logs-uuid"title="Permalink to this headline">¶</a></h4>
<blockquote>
<div><p>Returns a .tar of the anaconda build logs. The tar is not compressed, but is
not large.</p>
<p>The mime type is set to ‘application/x-tar’ and the filename is set to
<h4><cite>/api/v0/compose/log/<uuid>[?size=kbytes]</cite><aclass="headerlink"href="#api-v0-compose-log-uuid-size-kbytes"title="Permalink to this headline">¶</a></h4>
<blockquote>
<div><p>Returns the end of the anaconda.log. The size parameter is optional and defaults to 1Mbytes
if it is not included. The returned data is raw text from the end of the logfile, starting on
<codeclass="sig-prename descclassname">pylorax.api.v0.</code><codeclass="sig-name descname">blueprint_exists</code><spanclass="sig-paren">(</span><emclass="sig-param">api</em>, <emclass="sig-param">branch</em>, <emclass="sig-param">blueprint_name</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/v0.html#blueprint_exists"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.v0.blueprint_exists"title="Permalink to this definition">¶</a></dt>
<li><p><strong>recipe_name</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#str"title="(in Python v3.8)"><em>str</em></a>) – Recipe name to read</p></li>
<codeclass="sig-prename descclassname">pylorax.api.v0.</code><codeclass="sig-name descname">take_limits</code><spanclass="sig-paren">(</span><emclass="sig-param">iterable</em>, <emclass="sig-param">offset</em>, <emclass="sig-param">limit</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/v0.html#take_limits"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.v0.take_limits"title="Permalink to this definition">¶</a></dt>
<li><p><strong>iterable</strong> (<em>iter</em>) – The object to limit</p></li>
<li><p><strong>offset</strong> (<aclass="reference external"href="https://docs.python.org/3/library/functions.html#int"title="(in Python v3.8)"><em>int</em></a>) – The number of items to skip</p></li>
<li><p><strong>limit</strong> (<aclass="reference external"href="https://docs.python.org/3/library/functions.html#int"title="(in Python v3.8)"><em>int</em></a>) – The total number of items to return</p></li>
<codeclass="sig-prename descclassname">pylorax.api.v0.</code><codeclass="sig-name descname">v0_api</code><spanclass="sig-paren">(</span><emclass="sig-param">api</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/v0.html#v0_api"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.v0.v0_api"title="Permalink to this definition">¶</a></dt>
<spanid="pylorax-api-workspace-module"></span><h2>pylorax.api.workspace module<aclass="headerlink"href="#module-pylorax.api.workspace"title="Permalink to this headline">¶</a></h2>
<codeclass="sig-prename descclassname">pylorax.api.workspace.</code><codeclass="sig-name descname">workspace_delete</code><spanclass="sig-paren">(</span><emclass="sig-param">repo</em>, <emclass="sig-param">branch</em>, <emclass="sig-param">recipe_name</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/workspace.html#workspace_delete"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.workspace.workspace_delete"title="Permalink to this definition">¶</a></dt>
<li><p><strong>recipe_name</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#str"title="(in Python v3.8)"><em>str</em></a>) – The name of the recipe</p></li>
<codeclass="sig-prename descclassname">pylorax.api.workspace.</code><codeclass="sig-name descname">workspace_dir</code><spanclass="sig-paren">(</span><emclass="sig-param">repo</em>, <emclass="sig-param">branch</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/workspace.html#workspace_dir"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.workspace.workspace_dir"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-prename descclassname">pylorax.api.workspace.</code><codeclass="sig-name descname">workspace_read</code><spanclass="sig-paren">(</span><emclass="sig-param">repo</em>, <emclass="sig-param">branch</em>, <emclass="sig-param">recipe_name</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/workspace.html#workspace_read"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.workspace.workspace_read"title="Permalink to this definition">¶</a></dt>
<li><p><strong>recipe_name</strong> (<aclass="reference external"href="https://docs.python.org/3/library/stdtypes.html#str"title="(in Python v3.8)"><em>str</em></a>) – The name of the recipe</p></li>
</ul>
</dd>
<dtclass="field-even">Returns</dt>
<ddclass="field-even"><p>The workspace copy of the recipe, or None if it doesn’t exist</p>
</dd>
<dtclass="field-odd">Return type</dt>
<ddclass="field-odd"><p><aclass="reference internal"href="#pylorax.api.recipes.Recipe"title="pylorax.api.recipes.Recipe">Recipe</a> or <aclass="reference external"href="https://docs.python.org/3/library/constants.html#None"title="(in Python v3.8)">None</a></p>
<codeclass="sig-prename descclassname">pylorax.api.workspace.</code><codeclass="sig-name descname">workspace_write</code><spanclass="sig-paren">(</span><emclass="sig-param">repo</em>, <emclass="sig-param">branch</em>, <emclass="sig-param">recipe</em><spanclass="sig-paren">)</span><aclass="reference internal"href="_modules/pylorax/api/workspace.html#workspace_write"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#pylorax.api.workspace.workspace_write"title="Permalink to this definition">¶</a></dt>
<li><p><strong>recipe</strong> (<aclass="reference internal"href="#pylorax.api.recipes.Recipe"title="pylorax.api.recipes.Recipe"><em>Recipe</em></a>) – The recipe to write to the workspace</p></li>
Built with <ahref="http://sphinx-doc.org/">Sphinx</a> using a <ahref="https://github.com/rtfd/sphinx_rtd_theme">theme</a> provided by <ahref="https://readthedocs.org">Read the Docs</a>.