From 18bb01e2cdd6aa1a347042a22e988f1b2882a095 Mon Sep 17 00:00:00 2001 From: "Maria Odea B. Ching" Date: Sun, 15 Mar 2009 04:54:09 +0000 Subject: [PATCH] [MRM-1099] submitted by Lani Sara o new documentation for Delete Artifact o updates on deploy, browse, find and upload artifact docs o made a few tweaks on the submitted patch git-svn-id: https://svn.apache.org/repos/asf/archiva/trunk@754614 13f79535-47bb-0310-9956-ffa450edef68 --- .../src/site/apt/userguide/browsing.apt | 16 +++++---- .../site/apt/userguide/delete-artifact.apt | 32 ++++++++++++++++++ .../src/site/apt/userguide/deploy.apt | 21 ++++++++---- .../src/site/apt/userguide/find-artifact.apt | 21 +++++++++--- .../site/resources/images/upload-artifact.jpg | Bin 0 -> 31326 bytes archiva-docs/src/site/site.xml | 1 + 6 files changed, 74 insertions(+), 17 deletions(-) create mode 100644 archiva-docs/src/site/apt/userguide/delete-artifact.apt create mode 100644 archiva-docs/src/site/resources/images/upload-artifact.jpg diff --git a/archiva-docs/src/site/apt/userguide/browsing.apt b/archiva-docs/src/site/apt/userguide/browsing.apt index e73c11d6d..c07b2c7c2 100644 --- a/archiva-docs/src/site/apt/userguide/browsing.apt +++ b/archiva-docs/src/site/apt/userguide/browsing.apt @@ -3,7 +3,7 @@ ------ Maria Odea Ching ------ - 9 November 2007 + 23 February 2009 ------ ~~ Licensed to the Apache Software Foundation (ASF) under one @@ -43,28 +43,32 @@ Browsing * Artifact Info - The Artifact Info page is divided into 5 views: + Items in the repositories are hyperlinked allowing you easy access to view more information. By clicking on the Group ID or Artifact ID you will be taken to the repository browser. The Artifact Info page is divided into six views: - 1. Info. Basic information about the artifact is displayed here. These are the groupId, artifactId, version and + 1. Info. Basic information about the artifact is displayed here. These are the groupId, artifactId, version and packaging. A dependency pom snippet is also available, which a user can just copy and paste in a pom file to declare the artifact as a dependency of the project. 2. Dependencies. The dependencies of the artifact will be listed here. The user can easily navigate to a specific - dependency by clicking on the groupId, artifactId or version link. The scope of the dependency is also shown. + dependency by clicking on the groupId, artifactId, or version link. The scope of the dependency is also shown. - 3. Dependency Tree. The dependencies of the artifact are displayed in a tree-like view, which can also be + 3. Dependency Tree. The dependencies of the artifact are displayed in a tree-like view, which can also be navigated. 4. Used By. Lists all the artifacts in the repository which use this artifact. 5. Mailing Lists. The project mailing lists available in the artifact's pom are displayed here. + + 6. Download. Clicking on this link will download the artifact to your local machine. * Downloading Artifacts Artifacts can be downloaded from the artifact info page. All files, except for the metadata.xml files, that are associated with the artifact are available in the download box. The size of the files in bytes are displayed at the right section of the download box. - + + Note: Upon downloading the artifact, you will be asked to enter your username and password for the repository where the artifact will be downloaded from. Only users with Global Repository Manager, Repository Manager, or Repository Observer roles for that repository can download the artifact. + \ No newline at end of file diff --git a/archiva-docs/src/site/apt/userguide/delete-artifact.apt b/archiva-docs/src/site/apt/userguide/delete-artifact.apt new file mode 100644 index 000000000..58f8bc487 --- /dev/null +++ b/archiva-docs/src/site/apt/userguide/delete-artifact.apt @@ -0,0 +1,32 @@ + ------ +Deleting an Artifact + ------ +25 February 2009 + ------ + +Deleting an Artifact + + The Delete Artifact feature allows artifacts to be deleted from the managed repositories. + +---- + User must have a Repository Manager role to a repository to be able to delete artifacts from it. +---- + + To delete artifacts, perform these steps: + + 1. From the left navigation menu, click <>. This displays the Delete Artifact page. + + 2. Supply the necessary values for the following fields: + + * Group Id: The group id of the artifact to be deleted. + + * Artifact Id:The name of the artifact to be deleted. + + * Version: The specific version of the artifact to be deleted. + + * Repository Id: Select from the drop-down list the name of the managed repository where the artifact is located. + + + 3. Click Submit. + + If the artifact exists in the specified repository, it will be overwritten and the metadata.xml will also be updated. diff --git a/archiva-docs/src/site/apt/userguide/deploy.apt b/archiva-docs/src/site/apt/userguide/deploy.apt index 006513eda..bf5291c70 100644 --- a/archiva-docs/src/site/apt/userguide/deploy.apt +++ b/archiva-docs/src/site/apt/userguide/deploy.apt @@ -164,10 +164,13 @@ mvn deploy:deploy-file -Dfile=filename.jar -DpomFile=filename.pom * Deploying via the {Web UI} Form - The easiest way to deploy in the repository is via the Web UI form, which can be accessed in the 'Upload Artifact' section. + The easiest way to deploy in the repository is via the Web UI form, which can be accessed in the <> section. Just follow these steps: - [[1]] Fill up the following required fields: + [[1]] In Archiva, click the <> option in the left menu. You should see a form similar to + the one at the end of this section. + + [[2]] Fill in the following required fields: * Group Id - the groupId of the artifact to be deployed. @@ -181,16 +184,16 @@ mvn deploy:deploy-file -Dfile=filename.jar -DpomFile=filename.pom [] - [[2]] 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 in it. + [[3]] 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. - [[3]] Now, if you want Archiva to generate a pom for the artifact, check the Generate Maven 2 POM field. + [[4]] 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. - [[4]] Click Submit and a message will be displayed notifying you if the upload/deployment was successful or not. + [[5]] Click Submit and a message will be displayed notifying you if the upload/deployment was successful or not. [] - + These are the files that will be in your repository after deployment: * artifact @@ -202,5 +205,9 @@ mvn deploy:deploy-file -Dfile=filename.jar -DpomFile=filename.pom * 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) + [] + +[../images/upload-artifact.jpg] Upload Artifact + ~~TODO: information for Maven 1, ant tasks, ivy, etc. diff --git a/archiva-docs/src/site/apt/userguide/find-artifact.apt b/archiva-docs/src/site/apt/userguide/find-artifact.apt index 8bdfb5aba..c807f1317 100644 --- a/archiva-docs/src/site/apt/userguide/find-artifact.apt +++ b/archiva-docs/src/site/apt/userguide/find-artifact.apt @@ -24,13 +24,26 @@ Identifying an Artifact [../images/find-artifact.png] Find Artifact - Once you submit the form Archiva will look to match the checksum: + To find an artifact, perform the following steps: - * If more than one artifact matches, a list of results are returned + [[1]] Click <> in the left navigation menu. - * If a unique match is found, the individual artifact information page is returned + [[2]] On the opened page, you will see a file-upload field. Upload any JAR file (or other artifact) from your local file system. You must enter an exact filename. In general, you would use the Browse button for entering the filename. - * If no match is found, a "no results" page is returned + [[3]] Click Search. + [[4]] The whole file is not uploaded, but the checksum is. It will search the remote repository for an exact match of the file you specified and display the result of the search. + + [] + + Once you submit the form, Archiva will look to match the checksum: + + * If more than one artifact matches, a list of results is returned. + + * If a unique match is found, the individual artifact information page is returned. + + * If no match is found, a "no results" page is returned. + + [] diff --git a/archiva-docs/src/site/resources/images/upload-artifact.jpg b/archiva-docs/src/site/resources/images/upload-artifact.jpg new file mode 100644 index 0000000000000000000000000000000000000000..0556d2167c2a9e4d4fe5200212dd891a2d677bd6 GIT binary patch literal 31326 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

-O!~g7b_8P7u0!IT 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 +