cdist-web/src/extra/manual/2.3.5/man7/cdist-stages.html

28 lines
6.8 KiB
HTML
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>cdist-stages(7)</title><link rel="stylesheet" type="text/css" href="docbook-xsl.css" /><meta name="generator" content="DocBook XSL Stylesheets V1.78.1" /></head><body><div xml:lang="en" class="article" lang="en"><div class="titlepage"><div><div><h2 class="title"><a id="idm140554107627664"></a>cdist-stages(7)</h2></div><div><div class="author"><h3 class="author"><span class="firstname">Nico</span> <span class="surname">Schottelius</span></h3><code class="email">&lt;<a class="email" href="mailto:nico-cdist--@--schottelius.org">nico-cdist--@--schottelius.org</a>&gt;</code></div></div></div><hr /></div><div class="toc"><p><strong>Table of Contents</strong></p><dl class="toc"><dt><span class="section"><a href="#_name">1. NAME</a></span></dt><dt><span class="section"><a href="#_description">2. DESCRIPTION</a></span></dt><dt><span class="section"><a href="#_stage_1_target_information_retrieval">3. STAGE 1: TARGET INFORMATION RETRIEVAL</a></span></dt><dt><span class="section"><a href="#_stage_2_run_the_initial_manifest">4. STAGE 2: RUN THE INITIAL MANIFEST</a></span></dt><dt><span class="section"><a href="#_stage_3_object_information_retrieval">5. STAGE 3: OBJECT INFORMATION RETRIEVAL</a></span></dt><dt><span class="section"><a href="#_stage_4_run_the_object_manifest">6. STAGE 4: RUN THE OBJECT MANIFEST</a></span></dt><dt><span class="section"><a href="#_stage_5_code_generation">7. STAGE 5: CODE GENERATION</a></span></dt><dt><span class="section"><a href="#_stage_6_code_execution">8. STAGE 6: CODE EXECUTION</a></span></dt><dt><span class="section"><a href="#_stage_7_cache">9. STAGE 7: CACHE</a></span></dt><dt><span class="section"><a href="#_summary">10. SUMMARY</a></span></dt><dt><span class="section"><a href="#_see_also">11. SEE ALSO</a></span></dt><dt><span class="section"><a href="#_copying">12. COPYING</a></span></dt></dl></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_name"></a>1. NAME</h2></div></div></div><p>cdist-stages - Stages used during configuration deployment</p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_description"></a>2. DESCRIPTION</h2></div></div></div><p>Starting the execution of deployment with cdist, cdist passes
through different stages.</p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_stage_1_target_information_retrieval"></a>3. STAGE 1: TARGET INFORMATION RETRIEVAL</h2></div></div></div><p>In this stage information is collected about the target host using so called
explorers. Every existing explorer is run on the target and the output of all
explorers are copied back into the local cache. The results can be used by
manifests and types.</p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_stage_2_run_the_initial_manifest"></a>4. STAGE 2: RUN THE INITIAL MANIFEST</h2></div></div></div><p>The initial manifest, which should be used for mappings of hosts to types,
is executed. This stage creates objects in a cconfig database that contains
the objects as defined in the manifest for the specific host. In this stage,
no conflicts may occur, i.e. no object of the same type with the same id may
be created, if it has different parameters.</p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_stage_3_object_information_retrieval"></a>5. STAGE 3: OBJECT INFORMATION RETRIEVAL</h2></div></div></div><p>Every object is checked whether its type has explorers and if so, these are
executed on the target host. The results are transferred back
and can be used in the following stages to decide what changes need to be made
on the target to implement the desired state.</p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_stage_4_run_the_object_manifest"></a>6. STAGE 4: RUN THE OBJECT MANIFEST</h2></div></div></div><p>Every object is checked whether its type has a executable manifest. The
manifest script may generate and change the created objects. In other words,
one type can reuse other types.</p><p>For instance the object <span class="emphasis"><em>apache/www.example.org is of type </em></span>apache, which may
contain a manifest script, which creates new objects of type __file.</p><p>The newly created objects are merged back into the existing tree. No conflicts
may occur during the merge. A conflict would mean that two different objects
try to create the same object, which indicates a broken configuration.</p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_stage_5_code_generation"></a>7. STAGE 5: CODE GENERATION</h2></div></div></div><p>In this stage for every created object its type is checked for executable
gencode scripts. The gencode scripts generate the code to be executed on the
target on stdout. If the gencode executables fail, they must print diagnostic
messages on stderr and exit non-zero.</p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_stage_6_code_execution"></a>8. STAGE 6: CODE EXECUTION</h2></div></div></div><p>For every object the resulting code from the previous stage is transferred to
the target host and executed there to apply the configuration changes.</p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_stage_7_cache"></a>9. STAGE 7: CACHE</h2></div></div></div><p>The cache stores the information from the current run for later use.</p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_summary"></a>10. SUMMARY</h2></div></div></div><p>If, and only if, all the stages complete without an errors, the configuration
will be applied to the target.</p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_see_also"></a>11. SEE ALSO</h2></div></div></div><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
cdist(1)
</li><li class="listitem">
cdist-reference(7)
</li></ul></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_copying"></a>12. COPYING</h2></div></div></div><p>Copyright (C) 2010-2012 Nico Schottelius, Steven Armstrong. Free use of this software is
granted under the terms of the GNU General Public License version 3 (GPLv3).</p></div></div></body></html>