In artifactory repositories, what is the difference between a file integration revision and a folder integration revision?
Asked Answered
P

1

12

I'm looking at different repository layouts, and I see a distinction between folder integration revisions and file integration revisions.

Are these the same revision number (just placed on a file and/or folder) or are they different things?

Here is a link where I see both mentioned: Repository Layouts

Prizewinner answered 13/12, 2011 at 23:46 Comment(2)
I changed the title, this seems to be a specific artifactory question. The settings you are talking about define the internal folder structure of artifactory.Sacha
Thanks, since I'm new to build artifact repositories this wasn't clear to me.Prizewinner
L
14

Folder integration revision refers to the integration revision as it appears in an artifacts folder structure while file integration revision refers to the integration revision as it appears in an artifacts file name.

Consider a number of integration revision paths according to different build tool standards:

Standard Ivy:

org/module/1.0-20111214124053/jars/module/1.0-20111214124053.jar

Non-unique Maven:

groupId/artifactId/1.0-SNAPSHOT/artifactId-1.0-SNAPSHOT.jar

Unique Maven:

groupId/artifactId/1.0-SNAPSHOT/artifactId-1.0-20111412.124253-1.jar

So as you can see, standard Ivy and non-unique Maven have identical file and folder integration revisions (Ivy has 20111214124053 and Maven has SNAPSHOT) while the unique Maven differs (SNAPSHOT and 20111412.124253-1).

In the context of Artifactorys repository layouts, their value is a customizable regular expression which should reflect the expected value of the integration revision. Providing this information helps Artifactory identify the difference between release and integration revision artifacts and extract the information from the path.

Long answered 14/12, 2011 at 10:49 Comment(4)
Great response. In the "Unique Maven" example above, is it the folder integration "1.0-SNAPSHOT" that allows Artifactory to limit the number of unique snapshots in the directory?Prizewinner
Not exactly. After deploying an artifact, Artifactory matches the artifact path to the repository's layout; If the path matches and an integration revision is identified, then it's a sign that a snapshot cleanup may be performed (as long as cleanup is enabled). The existence of the folder integration revision isn't mandatory, but with a more detailed layout, comes a more exact matching process.Long
So how does Artifactory identify an integration revision?Prizewinner
If a given path matches the repository layout and if there's a part of that path that matches the regular expressions given as file or folder revision integration identifiers.Long

© 2022 - 2024 — McMap. All rights reserved.