In short: you are in trouble :) alpha-1 was so long time ago, and it introduced some (very big) problems just about repo handling.... :(
The Proximity is currently RC7 (i know, i know, alpha-1 and RC7....), but some major problems were solved in RC5 or 6 (if i remeber)... versions before those are OBSOLETE and should not be used in production! You should (have to!) migrate to RC7, if you want to use Proximity is production. Otherwise, it may introduce some (broken) behaviour, that will make M2 to produce BROKEN artifacts! I warned You. alpha1 works in plain "repo merging" mode. Read here: http://docs.codehaus.org/display/MAVENUSER/Creating+a+Maven+proxy ~t~ On 2/8/07, [EMAIL PROTECTED] <[EMAIL PROTECTED]> wrote:
--> So I believe it helped :) It certainly did. Now I am just trying to understand the repository configuration a little bit better so I don't have these issues in the future. --> I will presume you use the latest RC7 of it and with default ("factory") configuration. It would suffice in situation like yours. Actually, we are running alpha-2. We installed it some time ago and has been running well ever since. The install is pretty much the factory configuration. However, we added an additional external repository to proxy as well as two internal repositories to reflect external artifacts (free versus non-free). --> So, shortly, the answer is NO, the inhouse repo (which is group private) does not reside on the same URL as repo central (which is public group). This gets to the heart of my confusion. When browsing the repositories via proximities web UI, a repositoryId query param is appended to the URL. This restricts proximities response to the relevant artifacts in that repo. However, if you don't include that query param (which, I believe, reflects the URL that m2 uses) proximity returns all relevant artifacts regardless of repository. For instance http://webdev1:8080/px-webapp-1.0.0-alpha2/repository/tapestry/ returns artifact IDs from "central" and "extFree". We have never pushed repository settings to our m2 clients for accessing the external free and non-free repositories. However, m2 can still pull those dependencies down. So now I have two questions: 1 - Should we force distinct URL paths for the various repositories? Not sure what the upside is to doing this. Although this would make m2 settings more explicit, it would force us to update the settings when we need to add a repo. 2 - My central mirror is configured to a URL of http://webdev1:8080/px-webapp-1.0.0-alpha2/repository. The organizational pom m2 couldn't find is available at http://webdev1:8080/px-webapp-1.0.0-alpha2/repository/gov/usitc/usitc/1.0-SNAPSHOT/usitc-1.0-SNAPSHOT.pom. Why didn't m2 find that organizational pom via the central mirror. Best regards, Carlos -----Original Message----- From: Tamás Cservenák [mailto:[EMAIL PROTECTED] Sent: Thursday, February 08, 2007 1:45 PM To: Maven Users List Subject: Re: Single module project --> fails to find organization POM Hi, On 2/8/07, [EMAIL PROTECTED] <[EMAIL PROTECTED]> wrote: > --> I think you should declare another "proximity hosted" repository in > your POM. > > Thank you. When I reinstalled maven I didn't add the <repository> that > denoted our inhouse repo. So i believe it helped :) > --> but m2 does know about it nothing > > That leads me to another question. Proximity fronts all of our > repositories, both inhouse and external proxy/caches. So wouldn't a > request for the artifact (gov.usitc:usitc:pom:1.0-SNAPSHOT) from the > central mirror that m2 knows about be functionally the same as a request > to the inhouse repo m2 also knows about? The urls are the same. Does m2 > interogate the repo to determine its id, or somehow otherwise determine > the repository that is hosting the artifact? Well, this depends how is your Proximity configured. I will presume you use the latest RC7 of it and with default ("factory") configuration. It would suffice in situation like yours. In default configuration the emergeGroups is TRUE, so all groups are on separate URLs. You can check that with repo browsing page. So, shortly, the answer is NO, the inhouse repo (which is group private) does not reside on the same URL as repo central (which is public group). One is here: http://host/proximity/repository/public and one here http://host/proximity/repository/private No? (this presumes a default config and that you deployed your company parent POM into predefined inhouse repo!) M2 does not interrogate reposes about their ID, the ID's are just "for humans" to associate base URLs and (optionally) auth and other stuff to repositories. It just uses their base URL and concatenates it with the calculated path from artifact attributes... (gov.usitc:usitc:pom:1.0-SNAPSHOT -> /gov/usitc/usitc/pom/1.0-SNAPSHOT/pom.xml or something like that) -- M2 people, correct me if i'm wrong! I hope I did not misunderstand your question.... Hope helps, ~t~ --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]