Details
-
Type:
New Feature
-
Status:
Closed
-
Priority:
Major
-
Resolution: Fixed
-
Affects Version/s: None
-
Fix Version/s: 1.4-M1
-
Component/s: None
-
Labels:None
-
Number of attachments :45
Description
Need to be able to merge one repository into another, updating metadata and not overwriting existing artifacts.
The source repository should remain unchanged.
It should produce output listing what was merged and what wasn't.
Additions to the target repo should show in the audit log.
Related thread: http://www.nabble.com/Merging-repositories-ts19850359.html
-
- archiva-modules.patch
- 10/Aug/10 3:56 AM
- 11 kB
- Patti Arachchige Eshan Sudharaka
-
- archiva-modules.patch
- 28/Jul/10 8:51 PM
- 3 kB
- Patti Arachchige Eshan Sudharaka
-
- archiva-modules.patch
- 28/Jul/10 8:40 PM
- 1 kB
- Patti Arachchige Eshan Sudharaka
-
- archiva-modules.patch
- 27/Jul/10 11:02 PM
- 14 kB
- Patti Arachchige Eshan Sudharaka
-
- archiva-modules.patch
- 27/Jul/10 8:25 PM
- 11 kB
- Patti Arachchige Eshan Sudharaka
-
- archiva-modules.patch
- 26/Jul/10 10:07 PM
- 30 kB
- Patti Arachchige Eshan Sudharaka
-
- archiva-modules.patch
- 25/Jul/10 9:39 PM
- 28 kB
- Patti Arachchige Eshan Sudharaka
-
- archiva-modules.patch
- 21/Jul/10 8:31 PM
- 28 kB
- Patti Arachchige Eshan Sudharaka
-
- archiva-modules.patch
- 21/Jul/10 1:46 AM
- 27 kB
- Patti Arachchige Eshan Sudharaka
-
- archiva-modules.patch
- 20/Jul/10 12:33 PM
- 26 kB
- Patti Arachchige Eshan Sudharaka
-
- archiva-modules.patch
- 16/Jul/10 5:55 AM
- 85 kB
- Patti Arachchige Eshan Sudharaka
-
- archiva-modules.patch
- 15/Jul/10 2:01 AM
- 55 kB
- Patti Arachchige Eshan Sudharaka
-
- archiva-modules.patch
- 14/Jul/10 6:20 PM
- 55 kB
- Patti Arachchige Eshan Sudharaka
-
- archiva-modules.patch
- 14/Jul/10 2:13 AM
- 52 kB
- Patti Arachchige Eshan Sudharaka
-
- archiva-modules.patch
- 13/Jul/10 9:05 PM
- 54 kB
- Patti Arachchige Eshan Sudharaka
-
- archiva-modules.patch
- 13/Jul/10 11:31 AM
- 51 kB
- Patti Arachchige Eshan Sudharaka
-
- archiva-modules.patch
- 07/Jul/10 10:50 AM
- 15 kB
- Patti Arachchige Eshan Sudharaka
-
- archiva-modules.patch
- 05/Jul/10 11:35 AM
- 86 kB
- Patti Arachchige Eshan Sudharaka
-
- archiva-modules.patch
- 05/Jul/10 2:33 AM
- 74 kB
- Patti Arachchige Eshan Sudharaka
-
- archiva-webapp.patch
- 12/Jul/10 3:24 AM
- 31 kB
- Patti Arachchige Eshan Sudharaka
-
- ArtifactsMerger.java
- 28/Jun/10 5:08 AM
- 13 kB
- Patti Arachchige Eshan Sudharaka
-
- ArtifactsMerger.java
- 27/Jun/10 10:58 PM
- 11 kB
- Patti Arachchige Eshan Sudharaka
-
- ArtifactsMerger.java
- 24/Jun/10 6:26 AM
- 8 kB
- Patti Arachchige Eshan Sudharaka
-
- ArtifactsMerger.java
- 24/Jun/10 1:25 AM
- 6 kB
- Patti Arachchige Eshan Sudharaka
-
Hide
- resources.zip
- 02/Jul/10 12:21 AM
- 906 kB
- Patti Arachchige Eshan Sudharaka
-
- resources/.svn/entries 0.3 kB
- resources/.svn/format 0.0 kB
- resources/test-repository/.svn/entries 0.3 kB
- resources/test-repository/.svn/format 0.0 kB
- resources/target-repo/.svn/entries 0.3 kB
- resources/target-repo/.svn/format 0.0 kB
- resources/test-repository/.../.svn/entries 0.3 kB
- resources/test-repository/.../.svn/format 0.0 kB
- resources/.../invalid-artifact.txt 0.0 kB
- resources/test-repository/.../.svn/format 0.0 kB
- resources/test-repository/.../.svn/entries 0.3 kB
- resources/test-repository/.../.svn/entries 0.3 kB
- resources/test-repository/.../.svn/format 0.0 kB
- resources/.../maven-metadata.xml.md5 0.1 kB
- resources/.../maven-metadata.xml.sha1 0.1 kB
- resources/.../maven-metadata.xml 0.3 kB
- resources/target-repo/org/.svn/entries 0.3 kB
- resources/target-repo/org/.svn/format 0.0 kB
- resources/test-repository/.../.svn/entries 0.3 kB
- resources/test-repository/.../.svn/format 0.0 kB
- resources/test-repository/.../.svn/format 0.0 kB
- resources/test-repository/.../.svn/entries 0.3 kB
- resources/test-repository/.../.svn/entries 0.3 kB
- resources/test-repository/.../.svn/format 0.0 kB
- resources/test-repository/.../.svn/entries 0.5 kB
- resources/test-repository/.../.svn/format 0.0 kB
- resources/.../log4j-1.2.14.pom.md5 0.0 kB
- resources/.../log4j-1.2.14.pom.sha1 0.1 kB
- resources/.../log4j-1.2.14.jar.md5 0.0 kB
- resources/.../log4j-1.2.14.jar.sha1 0.1 kB
-
- SourceAritfacts.java
- 14/Jun/10 11:41 AM
- 4 kB
- Patti Arachchige Eshan Sudharaka
-
- stage-repository-merge.patch
- 13/Jul/10 3:36 AM
- 34 kB
- Patti Arachchige Eshan Sudharaka
-
- stage-repository-merge.patch
- 12/Jul/10 10:46 AM
- 44 kB
- Patti Arachchige Eshan Sudharaka
-
- stage-repository-merge.patch
- 12/Jul/10 10:40 AM
- 45 kB
- Patti Arachchige Eshan Sudharaka
-
- stage-repository-merge.patch
- 10/Jul/10 11:34 PM
- 35 kB
- Patti Arachchige Eshan Sudharaka
-
- stage-repository-merge.patch
- 10/Jul/10 5:21 AM
- 9 kB
- Patti Arachchige Eshan Sudharaka
-
- stage-repository-merge.patch
- 10/Jul/10 12:09 AM
- 31 kB
- Patti Arachchige Eshan Sudharaka
-
- stage-repository-merge.patch
- 09/Jul/10 8:04 PM
- 25 kB
- Patti Arachchige Eshan Sudharaka
-
- stage-repository-merge.patch
- 02/Jul/10 10:40 AM
- 91 kB
- Patti Arachchige Eshan Sudharaka
-
- stage-repository-merge.patch
- 02/Jul/10 12:04 AM
- 308 kB
- Patti Arachchige Eshan Sudharaka
-
- stage-repository-merge.patch
- 01/Jul/10 11:33 AM
- 40 kB
- Patti Arachchige Eshan Sudharaka
-
- stage-repository-merge.patch
- 21/Jun/10 11:22 AM
- 16 kB
- Patti Arachchige Eshan Sudharaka
-
- stage-repository-merge.patch
- 19/Jun/10 7:40 PM
- 16 kB
- Patti Arachchige Eshan Sudharaka
-
- stage-repository-merge.patch
- 19/Jun/10 8:31 AM
- 17 kB
- Patti Arachchige Eshan Sudharaka
-
- stage-repository-merge.patch
- 19/Jun/10 2:21 AM
- 15 kB
- Patti Arachchige Eshan Sudharaka
-
- stage-repository-merge.patch
- 18/Jun/10 9:32 PM
- 19 kB
- Patti Arachchige Eshan Sudharaka
-
Hide
- stage-repository-merge.zip
- 18/Jun/10 9:26 PM
- 65 kB
- Patti Arachchige Eshan Sudharaka
-
- stage-repository-merge/pom.xml 4 kB
- stage-repository-merge/.svn/entries 0.3 kB
- stage-repository-merge/.svn/format 0.0 kB
- stage-repository-merge/.../pom.xml.svn-work 0.0 kB
- stage-repository-merge/src/.svn/entries 0.2 kB
- stage-repository-merge/src/.svn/format 0.0 kB
- stage-repository-merge/src/.../.svn/entries 0.2 kB
- stage-repository-merge/src/.../.svn/format 0.0 kB
- stage-repository-merge/src/.../.svn/entries 0.2 kB
- stage-repository-merge/src/.../.svn/format 0.0 kB
- stage-repository-merge/src/.../log4j.xml 4 kB
- stage-repository-merge/src/.../.svn/entries 0.2 kB
- stage-repository-merge/src/.../.svn/format 0.0 kB
- stage-repository-merge/src/.../.svn/entries 0.2 kB
- stage-repository-merge/src/.../.svn/format 0.0 kB
- stage-repository-merge/src/.../.svn/entries 0.3 kB
- stage-repository-merge/src/.../.svn/format 0.0 kB
- stage-repository-merge/src/.../.svn/entries 0.2 kB
- stage-repository-merge/src/.../.svn/format 0.0 kB
- stage-repository-merge/src/.../.svn/entries 0.2 kB
- stage-repository-merge/src/.../.svn/format 0.0 kB
- stage-repository-merge/.../log4j.xml.svn-work 0.0 kB
- stage-repository-merge/src/.../.svn/entries 0.2 kB
- stage-repository-merge/src/.../.svn/format 0.0 kB
- stage-repository-merge/src/.../.svn/format 0.0 kB
- stage-repository-merge/src/.../.svn/entries 0.2 kB
- stage-repository-merge/src/.../.svn/format 0.0 kB
- stage-repository-merge/src/.../.svn/entries 0.2 kB
- stage-repository-merge/src/.../.svn/entries 0.2 kB
- stage-repository-merge/src/.../.svn/format 0.0 kB
-
- test-repository.patch
- 02/Jul/10 10:38 AM
- 91 kB
- Patti Arachchige Eshan Sudharaka
-
Hide
- test-repository-with-conflict-artifacts.zip
- 17/Jul/10 8:09 AM
- 778 kB
- Patti Arachchige Eshan Sudharaka
-
- test-repository-with-conflict-artifacts/.../invalid-artifact.txt 0.0 kB
- test-repository-with-conflict-artifacts/.../maven-metadata.xml.sha1 0.0 kB
- test-repository-with-conflict-artifacts/.../maven-metadata.xml.md5 0.0 kB
- test-repository-with-conflict-artifacts/.../maven-metadata.xml 0.4 kB
- test-repository-with-conflict-artifacts/.../testng-5.8-jdk15.jar 824 kB
- test-repository-with-conflict-artifacts/.../testng-5.8-jdk15.jar.sha1 0.1 kB
- test-repository-with-conflict-artifacts/.../testng-5.8-jdk15.pom 2 kB
- test-repository-with-conflict-artifacts/.../testng-5.8.pom.sha1 0.1 kB
- test-repository-with-conflict-artifacts/.../test-artifact-1.0-20100310.014828-2-sources.jar.md5 0.0 kB
- test-repository-with-conflict-artifacts/.../maven-metadata.xml.sha1 0.0 kB
- test-repository-with-conflict-artifacts/.../test-artifact-1.0-20100310.014828-2.pom.md5 0.0 kB
- test-repository-with-conflict-artifacts/.../test-artifact-1.0-20100310.014828-2-javadoc.jar.sha1 0.0 kB
- test-repository-with-conflict-artifacts/.../test-artifact-1.0-20100308.230825-1.jar.sha1 0.0 kB
- test-repository-with-conflict-artifacts/.../maven-metadata.xml.md5 0.0 kB
- test-repository-with-conflict-artifacts/.../test-artifact-1.0-20100310.014828-2.jar.sha1 0.0 kB
- test-repository-with-conflict-artifacts/.../test-artifact-1.0-20100310.014828-2-javadoc.jar.md5 0.0 kB
- test-repository-with-conflict-artifacts/.../test-artifact-1.0-20100308.230825-1.jar.md5 0.0 kB
- test-repository-with-conflict-artifacts/.../test-artifact-1.0-20100310.014828-2.jar.md5 0.0 kB
- test-repository-with-conflict-artifacts/.../test-artifact-1.0-20100308.230825-1.pom 0.8 kB
- test-repository-with-conflict-artifacts/.../test-artifact-1.0-20100310.014828-2.pom 0.8 kB
- test-repository-with-conflict-artifacts/.../test-artifact-1.0-20100308.230825-1.pom.sha1 0.0 kB
- test-repository-with-conflict-artifacts/.../test-artifact-1.0-20100310.014828-2-sources.jar.sha1 0.0 kB
- test-repository-with-conflict-artifacts/.../maven-metadata.xml 0.4 kB
- test-repository-with-conflict-artifacts/.../test-artifact-1.0-20100310.014828-2.pom.sha1 0.0 kB
- test-repository-with-conflict-artifacts/.../test-artifact-1.0-20100308.230825-1.pom.md5 0.0 kB
Show- test-repository-with-conflict-artifacts.zip
- 17/Jul/10 8:09 AM
- 778 kB
- Patti Arachchige Eshan Sudharaka
-
- MRM-980-broken-repos-page.png
- 98 kB
- 18/Jul/10 12:13 AM
Issue Links
- depends upon
-
MRM-1397
Staging repo does not capture/reflect the config changes of the managed repo it is attached to in MRM-980 branch
-
-
MRM-1398
Repositories page is broken in MRM-980 branch
-
-
MRM-1400
Metadata is not merged with the metadata in the target repo when merging two repositories
-
-
MRM-1401
Do not allow snapshot artifacts to be merged to a managed repository that only contains releases
-
-
MRM-1402
Audit event name for merged artifacts should be "Promoted Artifact" or "Merged Artifact" instead of "Merging Repositories"
-
-
MRM-1403
An empty "Error Occurred" page is displayed when attempting to merge a staging repo containing an artifact with a classifier
-
-
MRM-1404
Staging repo is not deleted when the managed repo it is attached to was removed
-
-
MRM-1406
The repository specified in the audit logs report for artifact promotion/repo merging events should be the target repository instead of the staging repository
-
-
MRM-1408
Message for successful merging should be shown as an info message instead of as a section heading
-
-
MRM-1407
Add documentation for repository staging
-
- is depended upon by
-
MRM-1409
Web services for repository merging or artifact promotion
-
-
MRM-1399
Add option to select specific artifacts to "skip" in the merging of conflicting artifacts page
-
-
MRM-1405
Do not show the artifact and its pom as separate items in the conflicting artifacts page when merging repos
-
- relates to
-
MRM-1021
Add support for temporary repositories used for staging
-
Activity
Proposal for this is in:
https://cwiki.apache.org/confluence/display/ARCHIVA/Staging+Repository+Merge
Comments on the patch:
- the log4j.xml config in src/main/resources can already be removed, just use sl4fj logger for logging instead
- remove dependency to archiva-xmlrpc-api, you shouldn't be using the Artifact class in that module since it's specifically for web services only. I think you should use the new repository API instead.
- remove the commented out dependencies in the stage-repository-merge module
- apply codestyle
For the SourceArtifactTest, extend PlexusInSpringTestCase instead of JUnit's TestCase so you can lookup the components. You also need to lookup the components you're using that's why you're getting the NPE when running the tests. See DependencyTreeBuilderTest as an example.
Also, the test() method in SourceArtifactsTest class is wrong. It should be as follows:
metadataResolverControl.expectAndReturn( metadataResolver.getRootNamespaces(TEST_REPO_ID), (ArrayList<Artifact>)getRootNameSpace() );
// put the rest of the expected calls to metadataResolver here
metadataResolverControl.replay();
sa.getSourceArtifactList();
metadataResolverControl.verify();
patch with the test fixed test cases. here i have hard coded some values in the SourceArtifacts class.
when i creating ArchivaArtifact object.(classifier and the type).
here i have commented out one line in SourceArtifacts class when it uses facet to get classifier and the type. Still could not figure out the issue. sorry for attaching a patch which is not passing the test cases.
here i ckecked the condition for the facet like wise in ShowArtifactAction class. now the test cases are passing. so i need to know what should i do when the facet is null.(in order to assign type and the classifier to the ArchivaArtifact objects)
Well, you can probably set "jar" as a default value for null type. As for the classifier, it should be fine to set it to null since it's optional..
I've broken down the rest of the items that needs to be done and set some target dates (relative to the proposed timeline for GSoC):
- repository merge API (June 30)
- repo merger
- unit tests
- UI for repository merge (July 11)
- button to merge repo
- page showing conflicting artifacts
- confirmation page
- integration with repo merge API
- webapp tests (July 19)
- security (July 23)
- audit logging (July 31)
Eshan, are you ok with the target dates?
ok. i will try my best to achieve those task by target dates.
changes are done according to the comments. (when facet == null set the default type as jar and null clasifier)
For the patch so far, per my comments on dev@, I think this could be pushed into the MetadataRepository interface instead of here. The merge should provide something like a RepositoryMerger or RepositoryArtifactCopier interface instead.
Some more general comments on the patch:
- there's no need to use the ArchivaArtifact class - that's something that we're in the process of removing in favour of the content model
- while either is fine, you might prefer to use Mockito for mocking objects for tests
- the POM here has more dependencies than necessary - watch this carefully
Hi Eshan, here are my comments on the ArtifactsMerger class you've attached:
- the name of the method isArtifactAvailableIntagerRepo(ArchivaArtifact artifact) should be fixed to isArtifactAvailableInTargetRepo(..)
- you'll have a problem in line 187 & 188, POM files are deployed as *.pom in the repo
- avoid using UPPER CASE for the first letter of a variable name (convention is using small case for the first letter/word for variable names). See below:
File SourceArtifactFile = new File(sourceRepoPath , artifactPath); //line 168 File TargetArtifactFile = new File(targetRepoPath , artifactPath); //line 170
- in the method createFolderStructure(ArchivaArtifact artifact), you shouldn't be accessing the metadata.xml files because the merger shouldn't know about the layout/type of the repository. See Brett's comment regarding that in the dev list thread with subj: [GSoC] Staging repositories updates
here i have fixed issue regarding copying the POM files and the coding convention problem. And also updating project maven metadata is done using repository api. but i am still confusing why we cannot just copy version metadata xml (if it exists in the source artifact in the source repository ). since project meta data xml is depends on available versions i used API to update it.
updated version of artifactsmerger with test cases.
test repositories to be added in to src/test
sample artifacts were added to the test repository.
Hi Eshan, applying the latest patch (the one for adding additional artifacts to test-repository module) causes test failures in maven2 repository support module. I added the 1.2.2 version in the expected versions resolved in Maven2MetadataResolverTest to fix the test failure.
Also, the jar files weren't included in the diff file so I just added them locally. I've committed these to the branch in -r960320. Thanks!
getArtifactsFrom(String repo)method id added to the MetadataRepository and its implementations with fixed test cases.
meta data updating and getArtifact() method is moved from merge module.
unfortunately this doesn't build due to the circular dependency introduced. I don't think any of the additions to the POMs are needed - the API should be using the new model only (ie, not ArchivaArtifact, but ArtifactMetadata - see the other getArtifactBy* methods for comparison).
Can you provide the patch for this method separately to your other changes?
While I don't generally like subtasks - perhaps it might be good to split this issue into subtasks for individual pieces of work (like adding that method) that we can see completed and move on to the next ones. What do you think?
getArtifacts(...) method is added to repository api.(with fixed test cases)
here i have attached the patch for RepositoryMerger ind it's implementation with the test case.Although the test passes there is an issue. I think it is because the test-repository we unpacked does not contains archiva metadata model. (i tried it for a real repo ). So then test throw an exception(because mock expectations a not defined yet).
I already applied the latest patch to the branch in -r962756. Btw, I fixed the formatting of some of the classes. I noticed that there were some unused imports and variables declared in some of the classes. I didn't remove them for now since you might be using it in the next patches. Also, one of your tests is still using the test resources in src/ and not in target/
Thanks!
i have attached the latest version of merging module with fixed test case. and also now i am using target directory for the test case. for the the time being i have commented out the test case of the ArtifactsMerger. (here SourceArtifacts class , ArtifactsMerger class with there test cases should be removed).
thanks.
Can you create the patch from the latest in branch? I already applied your previous patch and the last one has some of the same changes so I'm not able to apply it. Thanks!
here the changes are done after get a svn up. so this can be applied with out conflicts. And is is it possible to delete ArtifactsMerger , ArtifactsMergerTest , SourceArtifacts , SourceArtifactsTest. (since they are not needed). I did not remove them because it may be caused to conflicts when you are applying the patch.
Also in the test case now i am using target directory.
Thanks.
Patch to remove old classes applied to branch -r962979. Thanks Eshan!
in this patch i have done following things.
- when the user create a new repo there is a tick box to add a staging repo. For now the path of staging repo is not configurable and it creates the repository in the same directory level as the original repo.
eg : original repo name = test then staging repo name = test-stage
- when we go to see repositories in right hand side of each managed repositories there is a url to do merge. it will merge the repository with its stage repository.
eg : lets say we are going to merge test repo. then it tries to merge test with test-merge repository.if it cannot find a repo called test-merge it returns a error.(not handle yet.)
here only the happy flow is working.
thanks
to get the conflicts artifacts list here i have added a method in maven2RepositpryMerger class with the test cases. (this will be useful in the web apps)
Please review this patch. (since previous one contains some commented lines). sorry for that.
Thanks.
getConflictArtifacts() method is modified with the fixed test case.
Thanks.
Hi Eshan, the patch seems to be missing the MergeAction class. I'm getting an error when running the webapp. Can you update the patch to include it? Thanks!
merge with skipping conflict artifacts is added.
in previous patch merge with skipping conflicts method is not correct and here i have fixed it.
Thanks.
merge all and merge with skipping functionalities are now only allowed to newly created managed repositories.Merging function is not allowed for the Internal repository and the snapshots repository.
And staging repository is not displaying on the repositories.jsp.
Thanks.
in this patch i have validate the repository id when the user creates a new repository and if the id contains word "stage" i just suggest him to go for a repo id with out the word "stage".
Thanks.
test case for the merge artifacts by skipping conflicts is added.
Thanks.
please add testng-5.8-jdk15.jar file to the src/test/resources/test-repository-with-conflict-artifacts
in merging module. this jar file is required to pass the test case.
I tried to take a fresh copy of branch and apply that patch.It works fine just after adding that jar file.
Thanks.
Hi Eshan, can you attach the test artifacts as a zip file? They don't get included when you do diff, so they should be added separately
I'm getting a test failure without them. Thanks!
this should be added in to test/resources
Thanks
Applied latest patch to MRM-980 branch in -r965157.
I noted a few things that need to be fixed:
- The repositories page is broken. See attached screenshot
MRM-980-broken-repos-page.png - Display/show the url of the attached staging repository in the repositories page so it would be easier to know when deploying from command line
- Maybe we can only have "Merge" in the Merge Actions in repositories page, then have the "Merge All" and "Merge with Skip" in the following page where the list of artifacts that are conflicting are listed.
- What about in the artifact web browse? After the merge is done, should the repository ID of the artifact be changed to the managed repo instead of the staging one?
- The merging doesn't seem to be working. I uploaded an artifact (from Upload Artifact in webapp) to the staging repo then clicked "Merge All". When I checked the managed repo, the artifact I uploaded in the staging repo wasn't merged.
Thanks!
following modifications are done
1). in repositories page show only one button called merge. If conflicts are available show the conflicts and allow skipp conflicts and merge all functions. If no conflicts are available only allow merge function.
2) repositories page is fixed.(broken one )
Thanks.
added following.
- staging repository path is added to repositories page.
- change the repository id from staging one to managed one after the merging is done.
removed unused actions in struts.xml and gave proper name for methods in MergeAction class.
Thanks.
changes are done on repositories page .
( when user gives gives repository location with a name which is different to the repo id ) previously in that case staging repo location in not in repositories page
Audit logs are added when the user complete the merging.
Thanks.
Hi Eshan, please see the issues I've filed that this one depends upon. These need to be fixed as well. Thanks!
MRM 1406, MRM 1404, MRM 1400, MRM 1397 are fixed.
Thanks.
Hi Eshan, I'm getting test failures in archiva-webapp after applying the patch you submitted on 7/27 8:25pm. The failures are specifically in DeleteManagedRepositoryActionTest and EditManagedRepositoryActionTest.
Also, would it be possible to submit each fix separately and attach it to their respective issues (e.g. 1 patch per issue fixed)? So it would be easier to track/isolate each fix. Thanks!
I changed the variable name "targetRepoId" to "sourceRepoId" to avoid confusion, since it is the id of the staging repo. I've also updated the headings of the merge jsps and also the successful merging message. These were committed to the branch in -r981136.
added web app test for repository merging.
Thanks.
Closing as fixed. All issues it depends on has been fixed, branch also merged to trunk in -r1002059. Thanks again for implementing this feature Eshan! ![]()
SourceArtifact class is responsible for retuning artifact metadata to the caller of a given repo id to the caller. here we can get the artifact meta data of the source artifacts in the repository that we are going to merge. caller has to first get the Artifacts object list and then parse artifacts to get the Artifact metadata list