| <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| <html> |
| <head> |
| <title>Archiva Documentation - Deploying to Repository</title> |
| <style type="text/css" media="all"> |
| @import url("../css/maven-base.css"); |
| @import url("../css/maven-theme.css"); |
| @import url("../css/site.css"); |
| </style> |
| <link rel="stylesheet" href="../css/print.css" type="text/css" media="print" /> |
| <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" /> |
| <?xml version="1.0" encoding="UTF-8"?> |
| <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> |
| <?xml version="1.0" encoding="UTF-8"?> |
| <script type="text/javascript">var pageTracker = _gat._getTracker("UA-140879-5"); |
| pageTracker._initData(); |
| pageTracker._trackPageview();</script> |
| </head> |
| <body class="composite"> |
| <div id="banner"> |
| <a href="../../" id="bannerLeft"> |
| |
| <img src="http://archiva.apache.org/images/archiva.png" alt="" /> |
| |
| </a> |
| <a href="http://www.apache.org/" id="bannerRight"> |
| |
| <img src="http://www.apache.org/images/asf_logo_wide.png" alt="" /> |
| |
| </a> |
| <div class="clear"> |
| <hr/> |
| </div> |
| </div> |
| <div id="breadcrumbs"> |
| |
| |
| |
| |
| |
| |
| |
| <div class="xleft"> |
| |
| <a href="http://www.apache.org/">Apache</a> |
| > |
| |
| <a href="../../../">Archiva</a> |
| > |
| |
| <a href="../index.html">1.3.9</a> |
| </div> |
| <div class="xright"> |
| |
| |
| |
| |
| |
| |
| | Last Published: 01 Jul 2014 |
| </div> |
| <div class="clear"> |
| <hr/> |
| </div> |
| </div> |
| <div id="leftColumn"> |
| <div id="navcolumn"> |
| |
| |
| |
| |
| |
| |
| |
| <h5>Introduction</h5> |
| <ul> |
| |
| <li class="none"> |
| <a href="../quick-start.html">Quick Start</a> |
| </li> |
| |
| <li class="none"> |
| <a href="../tour/index.html">Feature Tour</a> |
| </li> |
| |
| <li class="none"> |
| <a href="../release-notes.html">Release Notes</a> |
| </li> |
| |
| <li class="none"> |
| <a href="http://archiva.apache.org/download.html">Downloads</a> |
| </li> |
| </ul> |
| <h5>Users Guide</h5> |
| <ul> |
| |
| <li class="none"> |
| <a href="../userguide/browsing.html">Browsing</a> |
| </li> |
| |
| <li class="none"> |
| <a href="../userguide/searching.html">Searching</a> |
| </li> |
| |
| <li class="none"> |
| <a href="../userguide/find-artifact.html">Identifying an Artifact</a> |
| </li> |
| |
| <li class="none"> |
| <a href="../userguide/delete-artifact.html">Deleting an Artifact</a> |
| </li> |
| |
| <li class="none"> |
| <a href="../userguide/using-repository.html">Using as a repository</a> |
| </li> |
| |
| <li class="none"> |
| <strong>Deploying to repository</strong> |
| </li> |
| |
| <li class="none"> |
| <a href="../userguide/virtual-repositories.html">Configuring Virtual Repositories</a> |
| </li> |
| |
| <li class="none"> |
| <a href="../userguide/rss.html">Rss Feeds in Archiva</a> |
| </li> |
| |
| <li class="none"> |
| <a href="../userguide/auditlog-report.html">Audit Log Report</a> |
| </li> |
| </ul> |
| <h5>Administrators Guide</h5> |
| <ul> |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| <li class="collapsed"> |
| <a href="../adminguide/installing.html">Installing Archiva</a> |
| </li> |
| |
| <li class="none"> |
| <a href="../adminguide/databases.html">Databases</a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| <li class="collapsed"> |
| <a href="../adminguide/security.html">Security</a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| <li class="collapsed"> |
| <a href="../adminguide/configuration.html">Runtime Configuration</a> |
| </li> |
| |
| <li class="none"> |
| <a href="../adminguide/configuration-files.html">Configuration Files</a> |
| </li> |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| <li class="collapsed"> |
| <a href="../adminguide/logging.html">Log Files</a> |
| </li> |
| |
| <li class="none"> |
| <a href="../adminguide/reports.html">Reports</a> |
| </li> |
| |
| <li class="none"> |
| <a href="../adminguide/web-services.html">Web Services</a> |
| </li> |
| </ul> |
| <h5>Customising Archiva</h5> |
| <ul> |
| |
| <li class="none"> |
| <a href="../customising/writing-consumer.html">Writing a Consumer Plugin</a> |
| </li> |
| </ul> |
| <h5>More Information</h5> |
| <ul> |
| |
| <li class="none"> |
| <a href="http://cwiki.apache.org/confluence/display/ARCHIVA/Index">Archiva Wiki</a> |
| </li> |
| </ul> |
| <a href="http://maven.apache.org/" title="Built by Maven" id="poweredBy"> |
| <img alt="Built by Maven" src="../images/logos/maven-feather.png"></img> |
| </a> |
| |
| |
| |
| |
| |
| |
| |
| </div> |
| </div> |
| <div id="bodyColumn"> |
| <div id="contentBox"> |
| <div class="section"><h2>Deploying to Repository</h2><p>There are different ways on how you can deploy artifacts in an Archiva repository. </p><ul><li><a href="#Maven"> Configuring Maven to deploy to an Archiva repository</a></li><li><a href="#Web UI"> Deploying via the Web UI Form</a></li></ul><p>Starting with Archiva 1.2.3, it is possible to block re-deployment of released artifacts to a specific repository. This can be configured through the repository configuration page by ticking the <tt>Block Re-deployment of Released Artifacts</tt> checkbox.</p><p><b>WARNING</b> The deployed artifact may not appear immediately in the search results. The execution of the <tt>index-content</tt> repository consumer and other scanning consumers are queued for execution to prevent concurrent updates to the index.</p><div class="section"><h3>Configuring <a name="Maven">Maven</a> to deploy to an Archiva repository</h3><ol type="1"><li>Create a user in Archiva to use for deployment (or use guest if you wish to deploy without a username and password)</li><li>The deployment user needs the Role 'Repository Manager' for each repository that you want to deploy to</li><li>Define the server for deployment inside your 'settings.xml', use the newly created user for authentication<div class="source"><pre><settings> |
| ... |
| <servers> |
| <server> |
| <id>archiva.internal</id> |
| <username>{archiva-deployment-user}</username> |
| <password>{archiva-deployment-pwd}</password> |
| </server> |
| <server> |
| <id>archiva.snapshots</id> |
| <username>{archiva-deployment-user}</username> |
| <password>{archiva-deployment-pwd}</password> |
| </server> |
| ... |
| </servers> |
| ... |
| </settings></pre></div></li></ol><div class="section"><h4>Deploying to Archiva using HTTP</h4><p>Configure the <tt>distributionManagement</tt> part of your <tt>pom.xml</tt> (customising the URLs as needed). The <tt>id</tt> of the repository in <tt>distributionManagement</tt> <b>must</b> match the <tt>id</tt> of the <tt>server</tt> element in <tt>settings.xml</tt>.</p><div class="source"><pre><project> |
| ... |
| <distributionManagement> |
| <repository> |
| <id>archiva.internal</id> |
| <name>Internal Release Repository</name> |
| <url>http://reposerver.mycompany.com:8080/archiva/repository/internal/</url> |
| </repository> |
| <snapshotRepository> |
| <id>archiva.snapshots</id> |
| <name>Internal Snapshot Repository</name> |
| <url>http://reposerver.mycompany.com:8080/archiva/repository/snapshots/</url> |
| </snapshotRepository> |
| </distributionManagement> |
| ... |
| </project></pre></div></div><div class="section"><h4>Deploying to Archiva using WebDAV</h4><p>In some cases, you may want to use WebDAV to deploy instead of HTTP. If you find this is necessary, follow the same process as for HTTP, with these additional steps:</p><ol type="1"><li>Add <tt>dav:</tt> to the front of the deployment URLs:<div class="source"><pre><project> |
| ... |
| <distributionManagement> |
| <repository> |
| <id>archiva.internal</id> |
| <name>Internal Release Repository</name> |
| <url>dav:http://reposerver.mycompany.com:8080/archiva/repository/internal/</url> |
| </repository> |
| <snapshotRepository> |
| <id>archiva.snapshots</id> |
| <name>Internal Snapshot Repository</name> |
| <url>dav:http://reposerver.mycompany.com:8080/archiva/repository/snapshots/</url> |
| </snapshotRepository> |
| </distributionManagement> |
| ... |
| </project></pre></div></li><li>Add a build extension to your <tt>pom.xml</tt> (not required in Maven 2.0.9 and above)<div class="source"><pre><project> |
| ... |
| <build> |
| <extensions> |
| <extension> |
| <groupId>org.apache.maven.wagon</groupId> |
| <artifactId>wagon-webdav</artifactId> |
| <version>1.0-beta-2</version> |
| </extension> |
| </extensions> |
| </build> |
| ... |
| </project></pre></div></li></ol></div><div class="section"><h4>Deploying using other protocols</h4><p>You can also deploy to the Archiva server using traditional means such as SCP, FTP, etc. For more information on these deployment techniques, refer to the Maven documentation.</p><p>Once the files are deployed into the location of the Archiva managed repository, they should appear in the Browse page. The artifacts should also be searcheable as long as the <tt>index-content</tt> repository consumer is enabled.</p></div><div class="section"><h4>Deploying Third-Party Artifacts to Archiva using Maven</h4><p>You can use <tt>mvn deploy:deploy-file</tt> to deploy single artifacts to Archiva. Once you have the settings file in place as described above, you can deploy the artifact using this type of command:</p><div class="source"><pre>mvn deploy:deploy-file -Dfile=filename.jar -DpomFile=filename.pom |
| -DrepositoryId=archiva.internal |
| -Durl=http://repo.mycompany.com:8080/repository/internal/</pre></div><p>For more information, consult the <a href="http://maven.apache.org/plugins/maven-deploy-plugin/deploy-file-mojo.html"> documentation for the <tt>deploy:deploy-file</tt> goal</a></p><p>If you wish to use WebDAV to deploy the file, add <tt>dav:</tt> to the start of the URL as in the previous instructions.</p><p>However, on versions of Maven prior to 2.0.9, you will also need to create a file called <tt>pom.xml</tt> in the directory from which you intend to execute "<tt>mvn deploy:deploy-file</tt>":</p><div class="source"><pre><project> |
| <modelVersion>4.0.0</modelVersion> |
| <groupId>com.example</groupId> |
| <artifactId>webdav-deploy</artifactId> |
| <packaging>pom</packaging> |
| <version>1</version> |
| <name>Webdav Deployment POM</name> |
| |
| <build> |
| <extensions> |
| <extension> |
| <groupId>org.apache.maven.wagon</groupId> |
| <artifactId>wagon-webdav</artifactId> |
| <version>1.0-beta-2</version> |
| </extension> |
| </extensions> |
| </build> |
| </project></pre></div><p>This pom will not be deployed with the artifact, it simply serves to make the WebDAV protocol available to the build process.</p><p>Alternately, you can save this file somewhere else, and use "<tt>mvn ... -f /path/to/filename</tt>" to force the use of an alternate POM file.</p></div></div><div class="section"><h3>Deploying via the <a name="Web UI">Web UI</a> Form</h3><p>The easiest way to deploy in the repository is via the Web UI form, which can be accessed in the <b>Upload Artifact</b> section. Just follow these steps:</p><ol type="1"><li>In Archiva, click the <b>Upload Artifact</b> option in the left menu. You should see a form similar to the one at the end of this section.</li><li>Fill in the following required fields:<ul><li>Group Id - the groupId of the artifact to be deployed.</li><li>Artifact Id - the artifactId of the artifact to be deployed.</li><li>Version - the version of the artifact to be deployed.</li><li>Packaging - the packaging of the artifact to be deployed. (ex. jar, war, ear, etc.)</li><li>Artifact File - the actual artifact to be deployed.</li></ul></li><li>Select the repository you want to deploy to. Please note that if you do not have write permission to the repository, you will not be allowed to deploy on it.</li><li>Now, if you want Archiva to generate a pom for the artifact, check the Generate Maven 2 POM field. (Right now, only Maven 2 poms can be generated.) Alternately, supply a POM file to be deployed alongside the artifact.</li><li>Click Submit and a message will be displayed notifying you if the upload/deployment was successful or not.</li></ol><p>These are the files that will be in your repository after deployment:</p><ul><li>artifact </li><li>POM file (if you supplied one or checked Generate Maven 2 POM)</li><li>maven-metadata.xml (this will be created if none exists in the artifact level yet, otherwise it will just be updated)</li><li>maven-metadata.xml.sha1 and maven-metadata.xml.md5 (these will be generated for newly created maven-metadata.xml files, otherwise they will just be updated)</li></ul><img src="../images/upload-artifact.jpg" alt="Upload Artifact" /><p><i>Note:</i> The maximum size of the file that can be uploaded is 10M by default. To alter the setting, change <tt>struts.multipart.maxSize</tt> in the file <tt>WEB-INF/classes/struts.properties</tt> in the Archiva web application (located under <tt>apps/archiva</tt> in the standalone distribution).</p><p>The upload form also provides validation checks against the required fields and the version. In Archiva 1.2.1, the version checking has been loosened. See <a href="http://jira.codehaus.org/browse/MRM-1172">MRM-1172</a> for more details.</p></div></div> |
| </div> |
| </div> |
| <div class="clear"> |
| <hr/> |
| </div> |
| <div id="footer"> |
| <div class="xright">© |
| 2006-2014 |
| |
| The Apache Software Foundation |
| |
| |
| |
| |
| |
| |
| |
| </div> |
| <div class="clear"> |
| <hr/> |
| </div> |
| </div> |
| </body> |
| </html> |