mirror of https://github.com/apache/archiva.git
-updated repositories configuration doc
-added consumers configuration contents git-svn-id: https://svn.apache.org/repos/asf/maven/archiva/trunk@597373 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
732de7e28f
commit
06dd8b155c
|
@ -1,8 +1,91 @@
|
|||
------
|
||||
Understanding Consumers in Apache Archiva
|
||||
------
|
||||
Maria Odea Ching
|
||||
------
|
||||
21 Nov 2007
|
||||
------
|
||||
|
||||
~~ Licensed to the Apache Software Foundation (ASF) under one
|
||||
~~ or more contributor license agreements. See the NOTICE file
|
||||
~~ distributed with this work for additional information
|
||||
~~ regarding copyright ownership. The ASF licenses this file
|
||||
~~ to you under the Apache License, Version 2.0 (the
|
||||
~~ "License"); you may not use this file except in compliance
|
||||
~~ with the License. You may obtain a copy of the License at
|
||||
~~
|
||||
~~ http://www.apache.org/licenses/LICENSE-2.0
|
||||
~~
|
||||
~~ Unless required by applicable law or agreed to in writing,
|
||||
~~ software distributed under the License is distributed on an
|
||||
~~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
~~ KIND, either express or implied. See the License for the
|
||||
~~ specific language governing permissions and limitations
|
||||
~~ under the License.
|
||||
|
||||
~~ NOTE: For help with the syntax of this file, see:
|
||||
~~ http://maven.apache.org/guides/mini/guide-apt-format.html
|
||||
|
||||
Understanding Consumers in Apache Archiva
|
||||
|
||||
:STUB: This is a documentation stub.
|
||||
Archiva makes use of the concept of consumers. Consumers are components which consumes or processes an artifact. There are 2 types
|
||||
of consumers in Archiva: repository content consumers and database consumers.
|
||||
|
||||
* Repository Content Consumers
|
||||
|
||||
The repository content consumers consume or process artifacts during repository scanning. For every artifact found in the repository,
|
||||
each consumer processes them. There are 8 available repository content consumers which can be configured in the Repository Scanning
|
||||
page. These are:
|
||||
|
||||
* <auto-remove> - Removes files in the repository being scanned if the file type matches any of the configured file types to be removed.
|
||||
|
||||
* <auto-rename> - Automatically renames common artifact mistakes.
|
||||
|
||||
* <create-missing-checksums> - Creates the md5 and sha1 checksum files of the artifact if there are none available in the repository.
|
||||
|
||||
* <index-content> - Adds the content of the artifact (specifically the pom) to the index, allowing the artifact to be searched in Archiva.
|
||||
|
||||
* <metadata-updater> - Updates artifact metadata files depending on the content of the repository.
|
||||
|
||||
* <repository-purge> - Removes old snapshots from the repository either by the number of days old or by the retention count.
|
||||
|
||||
* <update-db-artifact> - Adds the artifact (in the form of ArchivaArtifact) to the database.
|
||||
|
||||
* <validate-checksums> - Validates the checksum files of the artifact.
|
||||
|
||||
* Database Consumers
|
||||
|
||||
The database consumers, on the other hand, consume or process artifacts during database scanning. The database consumers are split up
|
||||
into two types: the unprocessed artifacts consumers and the artifact cleanup consumers.
|
||||
|
||||
[[1]] Unprocessed Artifacts Consumers
|
||||
|
||||
These are consumers for those artifacts already in the index that haven't been processed yet, meaning the details about the artifact
|
||||
are not yet processed and stored in the database. There are 6 unprocessed artifact consumers which can be configured in the
|
||||
Database page:
|
||||
|
||||
* <validate-repository-metadata> - Verifies repository metadata files against database.
|
||||
|
||||
* <index-archive-toc> - Indexes the archiva table of contents for full text search.
|
||||
|
||||
* <index-artifact> - Indexes the artifact for the 'Find Artifact' functionality.
|
||||
|
||||
* <update-db-project> - Gets the details of the artifact from the pom and saves it into the database (as a project model)
|
||||
|
||||
* <index-public-methods> - Indexes the java public methods for full text search.
|
||||
|
||||
* <update-db-bytecode-stats> - Updates database with java bytecode stats.
|
||||
|
||||
[]
|
||||
[]
|
||||
[[2]] Artifact Cleanup Consumers
|
||||
|
||||
These are the consumers for cleaning up the database. There are 3 which can be configured in the Database page, and these are:
|
||||
|
||||
* <not-present-remove-db-artifact> - Removes the artifact from the database if the artifact no longer exists in the file system.
|
||||
|
||||
* <not-present-remove-indexed> - Removes the artifact from the index if the artifact no longer exists in the file system.
|
||||
|
||||
* <not-present-remove-db-project> - Removes the project model of the artifact from the database if the artifact itself no longer exists in the file system.
|
||||
|
||||
|
|
@ -28,8 +28,7 @@
|
|||
|
||||
Understanding Repository Configuration of Apache Archiva
|
||||
|
||||
~~NOTE TO MYSELF: Review this! and improve the format and the contents
|
||||
~~ Some parts sounds confusing to me (or am i just tired?)
|
||||
~~TODO: revise more as suggested by Jeff in the dev list
|
||||
|
||||
Archiva has two types of repository configuration: managed repository and remote repository.
|
||||
|
||||
|
@ -40,34 +39,39 @@ Understanding Repository Configuration of Apache Archiva
|
|||
|
||||
Managed repository fields:
|
||||
|
||||
1. identifier - the id of the repository. This must be unique.
|
||||
* <identifier> - the id of the repository. This must be unique.
|
||||
|
||||
2. name - the name of the repository.
|
||||
* <name> - the name of the repository.
|
||||
|
||||
3. directory - the location of the repository. If the path specified does not exist, Archiva will create the missing
|
||||
* <directory> - the location of the repository. If the path specified does not exist, Archiva will create the missing
|
||||
directories.
|
||||
|
||||
4. type - the repository layout (maven 2 or maven 1)
|
||||
* <type> - the repository layout (maven 2 or maven 1)
|
||||
|
||||
5. cron - the cron schedule when repository scanning will be executed.
|
||||
* <cron> - the cron schedule when repository scanning will be executed.
|
||||
|
||||
6. repository purge by days older - the first option for repository purge. Archiva will check how old the artifact is
|
||||
* <repository purge by days older> - the first option for repository purge. Archiva will check how old the artifact is
|
||||
and if it is older than the set number of days in this field, then the artifact will be deleted respecting the retention
|
||||
count (see #7) of course. In order to disable the purge by number of days old and set Archiva to purge by retention count, just set the
|
||||
repository purge field to 0. The maximum number of days which can be set here is 1000.
|
||||
repository purge field to 0. The maximum number of days which can be set here is 1000. See the Repository Purge section
|
||||
below for more details.
|
||||
|
||||
7. repository purge by retention count - the second option for repository purge. When running the repository purge, Archiva
|
||||
will retain only the number of artifacts set for this field for a specific snapshot version.
|
||||
* <repository purge by retention count> - the second option for repository purge. When running the repository purge, Archiva
|
||||
will retain only the number of artifacts set for this field for a specific snapshot version. See the Repository Purge section
|
||||
below for more details.
|
||||
|
||||
8. releases included - specifies whether there are released artifacts in the repository.
|
||||
* <releases included> - specifies whether there are released artifacts in the repository.
|
||||
|
||||
9. snapshots included - specifies whether there are snapshot artifacts in the repository.
|
||||
* <snapshots included> - specifies whether there are snapshot artifacts in the repository.
|
||||
|
||||
10. scannable - specifies whether the repository can be scanned.
|
||||
* <scannable> - specifies whether the repository can be scanned, meaning it is a local repository which can be indexed, browsed,
|
||||
purged, etc.
|
||||
|
||||
11. delete released snapshots - specifies whether to remove those snapshot artifacts which already has release versions
|
||||
* <delete released snapshots> - specifies whether to remove those snapshot artifacts which already has release versions
|
||||
of it in the repository during repository purge.
|
||||
|
||||
|
||||
[]
|
||||
|
||||
Each repository has its own Webdav url. This allows the user to browse and access the repository via webdav. The url has the
|
||||
following format:
|
||||
|
||||
|
@ -75,15 +79,11 @@ Understanding Repository Configuration of Apache Archiva
|
|||
http://[URL TO ARCHIVA]/repository/[REPOSITORY ID] (e.g. http://localhost:8080/archiva/repository/releases).
|
||||
+----+
|
||||
|
||||
Managed repositories can be explicitly scanned by clicking the 'Scan Repository Now' button in the repositories page. A pom
|
||||
snippet is also available for each repository. The \<distributionManagement\> section can be copied and pasted into a
|
||||
A pom snippet is also available for each repository. The \<distributionManagement\> section can be copied and pasted into a
|
||||
project's pom to specify that the project will be deployed in that managed repository. The \<repositories\> section on the
|
||||
other hand, can be copied and pasted to a project's pom.xml or to Maven's settings.xml to tell Maven to get artifacts
|
||||
from the managed repository when building the project.
|
||||
|
||||
For more details about the repository purge from numbers 6 and 7 above, please take a look at the Repository Purge section
|
||||
below.
|
||||
|
||||
* Remote Repository
|
||||
|
||||
A remote repository is a repository which resides remotely. These repositories are usually the proxied repositories. See
|
||||
|
@ -91,17 +91,24 @@ http://[URL TO ARCHIVA]/repository/[REPOSITORY ID] (e.g. http://localhost:8080/a
|
|||
|
||||
Remote repository fields:
|
||||
|
||||
1. identifier - the id of the remote repository.
|
||||
* <identifier> - the id of the remote repository.
|
||||
|
||||
2. name - the name of the remote repository.
|
||||
* <name> - the name of the remote repository.
|
||||
|
||||
3. url - the url of the remote repository.
|
||||
* <url> - the url of the remote repository.
|
||||
|
||||
4. username - the username (if authentication is needed) to be used to access the repository.
|
||||
* <username> - the username (if authentication is needed) to be used to access the repository.
|
||||
|
||||
5. password - the password (if authentication is needed) to be used to access the repository.
|
||||
* <password> - the password (if authentication is needed) to be used to access the repository.
|
||||
|
||||
6. type - the layout (maven 2 or maven 1) of the remote repository.
|
||||
* <type> - the layout (maven 2 or maven 1) of the remote repository.
|
||||
|
||||
* Scanning a Repository
|
||||
|
||||
Repository scan can be executed on schedule or it can be explicitly executed by clicking the 'Scan Repository Now' button in
|
||||
the repositories page. For every artifact found by the repository scanner, processing is done on this artifact by different
|
||||
consumers. Examples of the processing done are: indexing, repository purge and database update. Details about consumers are
|
||||
available in the Consumers page.
|
||||
|
||||
* Repository Purge
|
||||
|
||||
|
@ -124,7 +131,7 @@ Artifacts in the repository:
|
|||
../artifact-x/2.0-SNAPSHOT/artifact-x-20070203.028902-4.pom
|
||||
+----+
|
||||
|
||||
1. Repository Purge By Days Older
|
||||
[[1]] Repository Purge By Days Older
|
||||
|
||||
Using this criteria for the purge, Archiva will check how old an artifact is and if it is older than the set value in the
|
||||
repository purge by days older field, then the artifact will be deleted respecting the retention count of course.
|
||||
|
@ -150,7 +157,7 @@ Artifacts in the repository:
|
|||
This ensures that there is ALWAYS 1 artifact timestamped version retained for every unique version snapshot directory
|
||||
of an artifact.
|
||||
|
||||
2. Repository Purge By Retention Count
|
||||
[[2]] Repository Purge By Retention Count
|
||||
|
||||
If the repository purge by retention count field is set to 2, then only the artifacts artifact-x-20070113.034619-3.jar,
|
||||
artifact-x-20070113.034619-3.pom, artifact-x-20070203.028902-4.jar and artifact-x-20070203.028902-4.pom will be retained
|
||||
|
|
Loading…
Reference in New Issue