Changes for page [More extension repositories] Artifactory and Bintray
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
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
on 2017/06/09 15:11
Change comment:
There is no comment for this version
Summary
-
Page properties (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -1,7 +1,7 @@ 1 1 == Artifactory and Bintray == 2 2 3 3 4 -=== Investigation r aport ===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?