Last modified by Vincent Massol on 2024/02/26 17:57

From version 6.1
edited by Krzysztof Płachno
on 2017/06/09 15:10
Change comment: There is no comment for this version
To version 7.1
edited by Krzysztof Płachno
on 2017/06/09 15:11
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -1,7 +1,7 @@
1 1  == Artifactory and Bintray ==
2 2  
3 3  
4 -=== Investigation raport ===
4 +=== Investigation report ===
5 5  
6 6  
7 7  There are two JFrog products: **Artifactory **and **Bintray**. At first glance they seem very similar. They both:
... ... @@ -55,7 +55,6 @@
55 55  === Investigation report 2 ===
56 56  
57 57  
58 -
59 59  ==== General: ====
60 60  
61 61  Potentially created ArtifactoryRepositoryManager BintrayRepositoryManager may implement apart from RespositoryManager interface, also Searchable interface. Currently only XWikiExtensionManager implements Searchable (AetherExtensionManager does not - Maven native operations does not provide searching options).
... ... @@ -92,7 +92,6 @@
92 92  ** Path: GET https:~/~/dl.bintray.com/:subject/:repo/:file_path
93 93  ** [[https:~~/~~/dl.bintray.com/cristof/xwiki-test/org/xwiki/contrib/application-office365/1.0.12345/:application-office365-1.0.12345.xar>>url:https://dl.bintray.com/cristof/xwiki-test/org/xwiki/contrib/application-office365/1.0.12345/:application-office365-1.0.12345.xar]]
94 94  
95 -
96 96  **Obtaining available versions of extension**
97 97  
98 98  * Artifactory\\
... ... @@ -104,7 +104,6 @@
104 104  ** Path: GET /search/packages/maven?g=:groupId&a=:artifactId&q=:query
105 105  ** Example: GET /search/packages/maven?g=org.xwiki.contrib&a=application-office365
106 106  
107 -
108 108  **Searching:**
109 109  
110 110  This is the biggest deal. Possible it should work as it does currently with XWikiExtensionManager.
... ... @@ -111,7 +111,7 @@
111 111  How does searching in XWikiExtensionManager look like:XWikiExtensionManager utilizes Extension Repository Application API for searching: [[http:~~/~~/extensions.xwiki.org/xwiki/bin/view/Extension/Repository%20Module>>url:http://extensions.xwiki.org/xwiki/bin/view/Extension/Repository%20Module]]. Extension Repository Application doing search operation queries XWiki database (since during import of each extension to ERA - extension document page is created and extension's meta data is retrieved from pom and persisted in document xobjects in database). So the ERA search goes through extension metadata taken previously from pom properties like: <name> or <description>
112 112  
113 113  
114 -Artifactory provides multiple package search methods ([[https:~~/~~/www.jfrog.com/confluence/display/RTF/Artifactory+REST+API#ArtifactoryRESTAPI-SEARCHES>>url:https://www.jfrog.com/confluence/display/RTF/Artifactory+REST+API#ArtifactoryRESTAPI-SEARCHES]]) - for the scope of project following are interesting :
111 +Artifactory provides multiple package search methods ([[https:~~/~~/www.jfrog.com/confluence/display/RTF/Artifactory+REST+API#ArtifactoryRESTAPI-SEARCHES>>url:https://www.jfrog.com/confluence/display/RTF/Artifactory+REST+API#ArtifactoryRESTAPI-SEARCHES||style="background-color: rgb(255, 255, 255);"]]) - for the scope of project following are interesting :
115 115  
116 116  * by name (in Artifactory GUI - Quick search): GET /api/search/artifact?name=name[&repos=x[,y]]\\
117 117  ** the name parameter is supposed to somehow match the name of factual extension file e.g. '*office365*' matches 'application-office365-1.0.123456.xar'
... ... @@ -123,11 +123,13 @@
123 123  ** GET /api/search/prop?[p1=v1,v2][&p2=v3][&repos=x[,y]]
124 124  ** to each uploaded package (to specific version or generally package as set of all versions) - you can specify in artifactory custom properties in form of Name:value and so you can later search packages according to those properties
125 125  
123 +
126 126  Bintray provides searching facilities only by name and/or description
127 127  
128 128  * GET /search/packages[?name=:name&desc=:desc]
129 129  * but those name and description are not imported from uploaded pom, but are inserted manually whilst uploading each package to Bintray
130 130  
129 +
131 131  === Questions: ===
132 132  
133 133  * Is it important to provide searching in ArtifactoryRepositoryManager and BintrayRepositoryManager? If so how to design it's logic using described above Artifactory/Bintray api?

Get Connected