<!DOCTYPE html>
<!--
 | Generated by Apache Maven Doxia 
 | Rendered using Apache Maven Fluido Skin 1.3.1
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <meta name="Date-Revision-yyyymmdd" content="20150226" />
    <meta http-equiv="Content-Language" content="en" />
    <title>Archiva - Archiva Sites Publishing</title>
    <link rel="stylesheet" href="../css/apache-maven-fluido-1.3.1.min.css" />
    <link rel="stylesheet" href="../css/site.css" />
    <link rel="stylesheet" href="../css/print.css" media="print" />

      
    <script type="text/javascript" src="../js/apache-maven-fluido-1.3.1.min.js"></script>

                          
        
<script type="text/javascript">var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
        document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));</script>
                      
        
<script type="text/javascript">var pageTracker = _gat._getTracker("UA-140879-5");
        pageTracker._initData();
        pageTracker._trackPageview();</script>
          
                  </head>
        <body class="topBarEnabled">
          
                        
                    
                

    <div id="topbar" class="navbar navbar-fixed-top ">
      <div class="navbar-inner">
                                  <div class="container"><div class="nav-collapse">
            
                
                                <ul class="nav">
                          <li class="dropdown">
        <a href="#" class="dropdown-toggle" data-toggle="dropdown">Introduction <b class="caret"></b></a>
        <ul class="dropdown-menu">
        
                      <li>      <a href="../index.html"  title="About">About</a>
</li>
                  
                      <li>      <a href="../download.html"  title="Downloads">Downloads</a>
</li>
                  
                      <li>      <a href="../versions.html"  title="Versions">Versions</a>
</li>
                  
                      <li>      <a href="../mail-lists.html"  title="Mailing Lists">Mailing Lists</a>
</li>
                  
                      <li>      <a href="../security.html"  title="Security">Security</a>
</li>
                  
                      <li class="dropdown-submenu">
                                      <a href="../"  title="Documentation">Documentation</a>
              <ul class="dropdown-menu">
                                  <li>      <a href="../docs/2.1.1/"  title="Release 2.1.1">Release 2.1.1</a>
</li>
                                  <li>      <a href="../docs/1.3.9/"  title="Preview 1.3.9">Preview 1.3.9</a>
</li>
                                  <li>      <a href="../docs/2.2.0-SNAPSHOT/"  title="Dev 2.2.0-SNAPSHOT">Dev 2.2.0-SNAPSHOT</a>
</li>
                              </ul>
            </li>
                          </ul>
      </li>
                <li class="dropdown">
        <a href="#" class="dropdown-toggle" data-toggle="dropdown">Development <b class="caret"></b></a>
        <ul class="dropdown-menu">
        
                      <li>      <a href="../developers/building.html"  title="Build Apache Archiva">Build Apache Archiva</a>
</li>
                  
                      <li>      <a href="../get-involved.html"  title="Get involved">Get involved</a>
</li>
                  
                      <li>      <a href="../developers/how-we-do-things.html"  title="How we do things">How we do things</a>
</li>
                  
                      <li>      <a href="../redback"  title="Redback">Redback</a>
</li>
                  
                      <li>      <a href="../redback/components"  title="Redback Components">Redback Components</a>
</li>
                  
                      <li class="dropdown-submenu">
                                      <a href="../jsui/index.html"  title="Javascript application Architecture">Javascript application Architecture</a>
              <ul class="dropdown-menu">
                                  <li>      <a href="../jsui/rest.html"  title="Rest service">Rest service</a>
</li>
                                  <li>      <a href="../jsui/template-loading.html"  title="JS Template loading">JS Template loading</a>
</li>
                                  <li>      <a href="../jsui/i18n.html"  title="i18n">i18n</a>
</li>
                                  <li>      <a href="../jsui/knockout-binding.html"  title="Knockout Binding">Knockout Binding</a>
</li>
                                  <li>      <a href="../jsui/generics-js.html"  title="Generic Javascipts">Generic Javascipts</a>
</li>
                              </ul>
            </li>
                  
                      <li>      <a href="../developers/releasing.html"  title="Releasing">Releasing</a>
</li>
                  
                      <li>      <a href="../developers/publishing-site.html"  title="Site Publish">Site Publish</a>
</li>
                          </ul>
      </li>
                <li class="dropdown">
        <a href="#" class="dropdown-toggle" data-toggle="dropdown">ASF <b class="caret"></b></a>
        <ul class="dropdown-menu">
        
                      <li>      <a href="http://www.apache.org/foundation/how-it-works.html"  title="How Apache Works">How Apache Works</a>
</li>
                  
                      <li>      <a href="http://www.apache.org/foundation/"  title="Foundation">Foundation</a>
</li>
                  
                      <li>      <a href="http://www.apache.org/foundation/sponsorship.html"  title="Sponsoring Apache">Sponsoring Apache</a>
</li>
                  
                      <li>      <a href="http://www.apache.org/foundation/thanks.html"  title="Thanks">Thanks</a>
</li>
                          </ul>
      </li>
                <li class="dropdown">
        <a href="#" class="dropdown-toggle" data-toggle="dropdown">Project Documentation <b class="caret"></b></a>
        <ul class="dropdown-menu">
        
                      <li class="dropdown-submenu">
                                      <a href="../project-info.html"  title="Project Information">Project Information</a>
              <ul class="dropdown-menu">
                                  <li>      <a href="../integration.html"  title="Continuous Integration">Continuous Integration</a>
</li>
                                  <li>      <a href="../mail-lists.html"  title="Mailing Lists">Mailing Lists</a>
</li>
                                  <li>      <a href="../issue-tracking.html"  title="Issue Tracking">Issue Tracking</a>
</li>
                                  <li>      <a href="../license.html"  title="Project License">Project License</a>
</li>
                                  <li>      <a href="../team-list.html"  title="Project Team">Project Team</a>
</li>
                                  <li>      <a href="../source-repository.html"  title="Source Repository">Source Repository</a>
</li>
                              </ul>
            </li>
                          </ul>
      </li>
                  </ul>
          
                      <form id="search-form" action="http://www.google.com/search" method="get"  class="navbar-search pull-right" >
    
  <input value="http://archiva.apache.org/" name="sitesearch" type="hidden"/>
  <input class="search-query" name="q" id="query" type="text" />
</form>
<script type="text/javascript" src="http://www.google.com/coop/cse/brand?form=search-form"></script>
          
                                                                            
                   
                      </div>
          
        </div>
      </div>
    </div>
    
        <div class="container">
          <div id="banner">
        <div class="pull-left">
                                                  <a href="../index.html" id="bannerLeft">
                                                                                                <img src="../images/archiva.png"  alt="Apache Archiva"/>
                </a>
                      </div>
        <div class="pull-right">                  <a href="http://www.apache.org/" id="bannerRight">
                                                                                        <img src="http://www.apache.org/images/asf_logo_wide.png"  alt="Apache Software Foundation"/>
                </a>
      </div>
        <div class="clear"><hr/></div>
      </div>

      <div id="breadcrumbs">
        <ul class="breadcrumb">
                
                    
                              <li class="">
                    <a href="http://www.apache.org/" class="externalLink" title="Apache">
        Apache</a>
                    <span class="divider">/</span>
      </li>
            <li class="">
                    <a href="../" title="Archiva">
        Archiva</a>
                    <span class="divider">/</span>
      </li>
        <li class="active ">Archiva Sites Publishing</li>
        
                
                    
                  <li id="publishDate" class="pull-right">Last Published: 26 Feb 2015</li>
            
                            </ul>
      </div>

      
                
        <div id="bodyColumn" >
                                  
            <div class="section">
<h2>Publishing the Archiva Site<a name="Publishing_the_Archiva_Site"></a></h2>
<p>The Archiva site, documentation and reference documentation are now published to <tt>http://archiva.apache.org/</tt> using the <a class="externalLink" href="http://www.apache.org/dev/project-site.html#svnpubsub"> ASF's svnpubsub</a> service.</p>
<p>The files published to the site are all stored under the Subversion repository at <a class="externalLink" href="http://svn.apache.org/repos/asf/archiva/site-content/">http://svn.apache.org/repos/asf/archiva/site-content/</a>.</p>
<p>This mostly operates like a normal site deployment, though there are some specific customisations and special instructions for the reference library. The processes follow those described for the <a class="externalLink" href="http://maven.apache.org/plugins/maven-scm-publish-plugin/">Maven SCM Publish Plugin</a> for <a class="externalLink" href="http://maven.apache.org/plugins/maven-scm-publish-plugin/examples/one-module-configuration.html"> Single module projects</a> and <a class="externalLink" href="http://maven.apache.org/plugins/maven-scm-publish-plugin/examples/multi-module-configuration.html"> Multi-module projects</a> as applicable.</p>
<p>Each site checks out the production site data into the <tt>site-publish</tt> directory of the current project, to avoid being cleaned as part of the build. It is ignored by <tt>svn</tt> operations, but you should ensure that the checkout is clean if you ever cancel or have a failure during a publish operation. You can check it is clean by ensuring there is no data from <tt>git status</tt> in that directory, or by removing it and having it get checked out again.</p>
<div class="section">
<h3>Editing and Publishing the Main Site<a name="Editing_and_Publishing_the_Main_Site"></a></h3>
<p>The site displayed at the root of <a class="externalLink" href="http://archiva.apache.org">http://archiva.apache.org</a> (where you are reading this) has its source code in Git at <a class="externalLink" href="https://git-wip-us.apache.org/repos/asf/archiva-site.git">https://git-wip-us.apache.org/repos/asf/archiva-site.git</a>.</p>
<p>To edit and publish the site, do the following:</p>
<ol style="list-style-type: decimal">
<li>Checkout the source code from Git (if you follow the instructions in <a href="./building.html"> Building Archiva</a>, you know how to have it.</li>
<li>Make edits and check them using <tt>mvn site</tt> or <tt>mvn site:run</tt> until satisfied.</li>
<li>Commit your changes (making sure your working copy is completely up to date first)</li>
<li>Publish the site:
<div>
<pre>mvn site-deploy</pre></div></li></ol>
<p>This site deployment can be done at any time, and is not tied to releases.</p>
<p>Note that since the main site also contains the (large!) <tt>docs</tt> and <tt>ref</tt> directories in the <tt>site-publish</tt> directory, there is a special <tt>setup-checkout</tt> profile in place to get the initial checkout without those directories. This will normally be activated whenever the <tt>site-publish</tt> directory is missing - if you happen to have active profiles from your <tt>settings.xml</tt> you may need to enable it explicitly whenever you do a deployment and that checkout is missing: <tt>mvn site-deploy -Psetup-checkout</tt> </p></div>
<div class="section">
<h3>Editing and Publishing the Archiva Documentation<a name="Editing_and_Publishing_the_Archiva_Documentation"></a></h3>
<p>The documentation displayed under the subdirectories of <a class="externalLink" href="http://archiva.apache.org/docs/">http://archiva.apache.org/docs/</a> has its source code in Git at <a class="externalLink" href="https://git-wip-us.apache.org/repos/asf/archiva.git">https://git-wip-us.apache.org/repos/asf/archiva.git</a> directory archiva-docs, which is part of the main project checkout.</p>
<p>The instructions for managing the documentation is the same as for the main site, being published from the directory using:</p>
<div>
<pre>mvn site-deploy</pre></div>
<p>However, in this case it is typically done as part of a release process - see <a href="./releasing.html"> Releasing Archiva</a> for instructions on doing this.</p>
<p>The documentation remains versioned based on the release it is related to. To best manage this with svnpubsub, the site is always published into a directory <tt>docs/latest</tt>, only requiring a small number of modifications to be made. Then, as part of the release instructions, the <tt>latest</tt> directory is copied to the versioned location - for example, <tt>http://svn.apache.org/repos/asf/archiva/site-content/docs/1.4-M4</tt>.</p>
<p>For <tt>site:stage</tt> to apply correctly without needing a full checkout, a workaround is applied by setting the <tt>distributionManagement/site/url</tt> element to match that of the parent site. The value is then overridden with the correct value in the <tt>maven-scm-publish-plugin</tt> configuration. This avoids the Site plugin attempting to relativize links incorrectly.</p></div>
<div class="section">
<h3>Editing and Publishing the Reference Documentation<a name="Editing_and_Publishing_the_Reference_Documentation"></a></h3>
<p>The reference documentation, including JavaDocs and source cross-reference, is displayed under the URL <a class="externalLink" href="http://archiva.apache.org/ref">http://archiva.apache.org/ref</a>. At this time, only the latest reference documents are retained. They require quite a lot of space, and historical information is of less relevance to Archiva developers or users.</p>
<p>To publish the latest reference documents, you need to run:</p>
<div>
<pre>cd archiva-modules
mvn site site:stage scm-publish:publish-scm
or
sh ./deploySite.sh</pre></div>
<p>This will likely cause a very large commit, and should be done infrequently. Once per release is likely to be adequate.</p></div>
<div class="section">
<h3>Publishing Redback site<a name="Publishing_Redback_site"></a></h3>
<p>The redback is stored under the Subversion repository at <a class="externalLink" href="https://svn.apache.org/repos/asf/archiva/redback/redback-site/trunk">https://svn.apache.org/repos/asf/archiva/redback/redback-site/trunk</a>.</p>
<p>It's displayed under the URL <a class="externalLink" href="http://archiva.apache.org/redback">http://archiva.apache.org/redback</a>.</p>
<p>To publish documentation, you need to run:</p>
<div>
<pre>mvn site-deploy</pre></div></div>
<div class="section">
<h3>Publishing Redback Core reference<a name="Publishing_Redback_Core_reference"></a></h3>
<p>The Redback core reference is displayed under the URL <a class="externalLink" href="http://archiva.apache.org/redback/core">http://archiva.apache.org/redback/core</a>.</p>
<p>It contains javadoc for Redback core.</p>
<p>To publish documentation, you need to run:</p>
<div>
<pre>mvn clean site-deploy scm-publish:publish-scm
or
sh ./deploySite.sh</pre></div></div>
<div class="section">
<h3>Publishing Redback Components reference<a name="Publishing_Redback_Components_reference"></a></h3>
<p>The Redback components reference is displayed under the URL <a class="externalLink" href="http://archiva.apache.org/redback/components">http://archiva.apache.org/redback/components</a>.</p>
<p>It contains javadoc for Redback components.</p>
<p>To publish documentation, you need to run:</p>
<div>
<pre>mvn clean site-deploy scm-publish:publish-scm
or
sh ./deploySite.sh</pre></div></div></div>
                  </div>
          </div>

    <hr/>

    <footer>
            <div class="container">
                      <div class="row">
                              <p >Copyright &copy;                    2006&#x2013;2015
                        <a href="http://archiva.apache.org/">The Apache Software Foundation</a>.
            All rights reserved.      
                    
      </p>
        </div>

                                                                  
<div class="row pull-left">Apache Archiva, Archiva, Apache, the Apache feather logo, and the Apache Archiva project logos are trademarks of The Apache Software Foundation.</div>
                                                          
<div class="row pull-left">
  <a href="http://archiva.apache.org/privacy-policy.html">Privacy Policy</a>
</div>
                  
                <p id="poweredBy" class="pull-right">
                          <a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy">
        <img class="builtBy" alt="Built by Maven" src="../images/logos/maven-feather.png" />
      </a>
              </p>
        
          
    
    
                
    <div id="ohloh" class="pull-right">
      <script type="text/javascript" src="http://www.ohloh.net/p/6670/widgets/project_basic_stats.js"></script>
    </div>
        </div>
    </footer>
        </body>
</html>