<!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>Testing — Bcfg2 1.3.0 documentation</title> <link rel="stylesheet" href="../_static/default.css" type="text/css" /> <link rel="stylesheet" href="../_static/pygments.css" type="text/css" /> <script type="text/javascript"> var DOCUMENTATION_OPTIONS = { URL_ROOT: '../', VERSION: '1.3.0', COLLAPSE_INDEX: false, FILE_SUFFIX: '.html', HAS_SOURCE: true }; </script> <script type="text/javascript" src="../_static/jquery.js"></script> <script type="text/javascript" src="../_static/underscore.js"></script> <script type="text/javascript" src="../_static/doctools.js"></script> <script type="text/javascript" src="../_static/sidebar.js"></script> <link rel="shortcut icon" href="../_static/favicon.ico"/> <link rel="top" title="Bcfg2 1.3.0 documentation" href="../index.html" /> <link rel="up" title="Bcfg2 Development" href="index.html" /> <link rel="next" title="Tips for Bcfg2 Development" href="tips.html" /> <link rel="prev" title="Environment setup for development" href="setup.html" /> <link rel="stylesheet" href="../_static/bcfg2.css" type=""/> </head> <body> <div style="text-align: left; padding: 10px 10px 15px 15px"> <a href="../index.html"><img src="../_static/bcfg2_logo.png" border="0" alt="sampledoc"/></a> </div> <div class="related"> <h3>Navigation</h3> <ul> <li class="right" style="margin-right: 10px"> <a href="../genindex.html" title="General Index" accesskey="I">index</a></li> <li class="right" > <a href="../py-modindex.html" title="Python Module Index" >modules</a> |</li> <li class="right" > <a href="tips.html" title="Tips for Bcfg2 Development" accesskey="N">next</a> |</li> <li class="right" > <a href="setup.html" title="Environment setup for development" accesskey="P">previous</a> |</li> <li><a href="../index.html">home</a> | </li> <!--<li><a href="../search.html">search</a> | </li>--> <li><a href="../help/index.html">help</a> | </li> <li><a href="../contents.html">documentation </a> »</li> <li><a href="../contents.html" >Bcfg2 documentation 1.3.0</a> »</li> <li><a href="index.html" accesskey="U">Bcfg2 Development</a> »</li> </ul> </div> <div class="document"> <div class="documentwrapper"> <div class="bodywrapper"> <div class="body"> <div class="section" id="testing"> <span id="development-testing"></span><h1>Testing<a class="headerlink" href="#testing" title="Permalink to this headline">¶</a></h1> <div class="section" id="testing-prereleases"> <h2>Testing Prereleases<a class="headerlink" href="#testing-prereleases" title="Permalink to this headline">¶</a></h2> <p>Before each release, several prereleases will be tagged. It is helpful to have users test these releases (when feasible) because it is hard to replicate the full range of potential reconfiguration situations; between different operating systems, system management tools, and configuration specification variation, there can be large differences between sites.</p> <p>For more details please visit <a class="reference external" href="http://trac.mcs.anl.gov/projects/bcfg2/wiki/TrackingDevelopmentTrunk">Tracking Development Releases of Bcfg2</a> .</p> </div> <div class="section" id="upgrade-testing"> <h2>Upgrade Testing<a class="headerlink" href="#upgrade-testing" title="Permalink to this headline">¶</a></h2> <p>This section describes upgrade procedures to completely test the client and server. These procedures can be used for either pre-release testing, or for confidence building in a new release.</p> <div class="section" id="server-testing"> <h3>Server Testing<a class="headerlink" href="#server-testing" title="Permalink to this headline">¶</a></h3> <ol class="arabic simple"> <li>Ensure that the server produces the same configurations for clients</li> </ol> <blockquote> <div><ul> <li><p class="first">Before the upgrade, generate all client configurations using the buildall subcommand of bcfg2-info. This subcommand takes a directory argument; it will generate one client configuration in each file, naming each according to the client name.</p> <blockquote> <div><div class="highlight-sh"><div class="highlight"><pre>mgt1:~/bcfg# bcfg2-info Filesystem check 1 of 25 ... > buildall /path/to/cf-old Generated config <span class="k">for </span>fs2.bgl.mcs.anl.gov in 1.97310400009 seconds Generated config <span class="k">for </span>fs13.bgl.mcs.anl.gov in 1.47958016396 seconds ... </pre></div> </div> </div></blockquote> </li> </ul> <blockquote> <div>Take notice of any messages produced during configuration generation. These generally reflect minor issues in the configuration specification. Ideally, they should be fixed.</div></blockquote> <ul> <li><p class="first">Upgrade the server software</p> </li> <li><p class="first">Generate all client configurations in a second location using the new software. Any tracebacks reflect bugs, and should be filed in the ticketing system. Any new messages should be carefully examined.</p> </li> <li><p class="first">Compare each file in the old directory to those in the new directory using <tt class="docutils literal"><span class="pre">bcfg2-admin</span> <span class="pre">compare</span> <span class="pre">-r</span> <span class="pre">/old/directory</span> <span class="pre">/new/directory</span></tt></p> <blockquote> <div><div class="highlight-sh"><div class="highlight"><pre>mgt1:~/bcfg# bcfg2-admin compare -r cf-old/ cf-new/ Entry: fs2.bgl.mcs.anl.gov.xml Entry: fs2.bgl.mcs.anl.gov.xml good Entry: fs13.bgl.mcs.anl.gov.xml Entry: fs13.bgl.mcs.anl.gov.xml good Entry: login1.bgl.mcs.anl.gov.xml ConfigFile /bin/whatami contents differ ConfigFile /bin/whatami differs <span class="o">(</span>in bundle softenv<span class="o">)</span> Entry: login1.bgl.mcs.anl.gov.xml bad </pre></div> </div> </div></blockquote> <p>This can be used to compare configurations for single clients, or different clients.</p> </li> </ul> </div></blockquote> <ol class="arabic simple" start="2"> <li>Compare old and new group diagrams (using <tt class="docutils literal"><span class="pre">bcfg2-admin</span> <span class="pre">viz</span></tt>)</li> </ol> </div> <div class="section" id="client-testing"> <h3>Client Testing<a class="headerlink" href="#client-testing" title="Permalink to this headline">¶</a></h3> <p>Run the client in dry-run and non-dry-run mode; ensure that multiple runs produce consistent results.</p> </div> </div> </div> </div> </div> </div> <div class="sphinxsidebar"> <div class="sphinxsidebarwrapper"> <h3><a href="../index.html">Table Of Contents</a></h3> <ul> <li><a class="reference internal" href="#">Testing</a><ul> <li><a class="reference internal" href="#testing-prereleases">Testing Prereleases</a></li> <li><a class="reference internal" href="#upgrade-testing">Upgrade Testing</a><ul> <li><a class="reference internal" href="#server-testing">Server Testing</a></li> <li><a class="reference internal" href="#client-testing">Client Testing</a></li> </ul> </li> </ul> </li> </ul> <h4>Previous topic</h4> <p class="topless"><a href="setup.html" title="previous chapter">Environment setup for development</a></p> <h4>Next topic</h4> <p class="topless"><a href="tips.html" title="next chapter">Tips for Bcfg2 Development</a></p> <h3>This Page</h3> <ul class="this-page-menu"> <li><a href="../_sources/development/testing.txt" rel="nofollow">Show Source</a></li> </ul> <div id="searchbox" style="display: none"> <h3>Quick search</h3> <form class="search" action="../search.html" method="get"> <input type="text" name="q" /> <input type="submit" value="Go" /> <input type="hidden" name="check_keywords" value="yes" /> <input type="hidden" name="area" value="default" /> </form> <p class="searchtip" style="font-size: 90%"> Enter search terms or a module, class or function name. </p> </div> <script type="text/javascript">$('#searchbox').show(0);</script> </div> </div> <div class="clearer"></div> </div> <div class="related"> <h3>Navigation</h3> <ul> <li class="right" style="margin-right: 10px"> <a href="../genindex.html" title="General Index" >index</a></li> <li class="right" > <a href="../py-modindex.html" title="Python Module Index" >modules</a> |</li> <li class="right" > <a href="tips.html" title="Tips for Bcfg2 Development" >next</a> |</li> <li class="right" > <a href="setup.html" title="Environment setup for development" >previous</a> |</li> <li><a href="../index.html">home</a> | </li> <!--<li><a href="../search.html">search</a> | </li>--> <li><a href="../help/index.html">help</a> | </li> <li><a href="../contents.html">documentation </a> »</li> <li><a href="../contents.html" >Bcfg2 documentation 1.3.0</a> »</li> <li><a href="index.html" >Bcfg2 Development</a> »</li> </ul> </div> <div class="footer"> © Copyright 2009-2013, Narayan Desai. Last updated on Mar 20, 2013. Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> 1.1.3. </div> </body> </html>