Return-Path: X-Original-To: apmail-geronimo-dev-archive@www.apache.org Delivered-To: apmail-geronimo-dev-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 1A12C8B9C for ; Fri, 12 Aug 2011 03:44:20 +0000 (UTC) Received: (qmail 52341 invoked by uid 500); 12 Aug 2011 03:44:13 -0000 Delivered-To: apmail-geronimo-dev-archive@geronimo.apache.org Received: (qmail 51865 invoked by uid 500); 12 Aug 2011 03:43:56 -0000 Mailing-List: contact dev-help@geronimo.apache.org; run by ezmlm Precedence: bulk list-help: list-unsubscribe: List-Post: Reply-To: dev@geronimo.apache.org List-Id: Delivered-To: mailing list dev@geronimo.apache.org Received: (qmail 51858 invoked by uid 99); 12 Aug 2011 03:43:53 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 12 Aug 2011 03:43:53 +0000 X-ASF-Spam-Status: No, hits=2.2 required=5.0 tests=FREEMAIL_FROM,HTML_MESSAGE,RCVD_IN_DNSWL_NONE,SPF_PASS,T_TO_NO_BRKTS_FREEMAIL X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: local policy) Received: from [98.136.44.56] (HELO smtp101.prem.mail.sp1.yahoo.com) (98.136.44.56) by apache.org (qpsmtpd/0.29) with SMTP; Fri, 12 Aug 2011 03:43:46 +0000 Received: (qmail 87180 invoked from network); 12 Aug 2011 03:43:25 -0000 DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=s1024; d=yahoo.com; h=DKIM-Signature:X-Yahoo-Newman-Property:X-YMail-OSG:X-Yahoo-SMTP:Received:From:Mime-Version:Content-Type:Subject:Date:In-Reply-To:To:References:Message-Id:X-Mailer; b=ByjS35htlz2r5kP7iggadb4JZsfpzwBLCdL7BKPapADbsnDn1dwv/xDr0SBQsOjH81z0gNeIWQKxJJ0kYgWhl1Zi5Ke76rU08gjC8bq/DVnds3WPy5MxkQvytVQSiCjNHzoPdHqATTCYk48QRekQnsHujWBh7nTmKHtQWXCEJhY= ; DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s1024; t=1313120605; bh=gYPBqrotOwul7Qb+pWWLiEU3TcsevenxPdekf/ou5tU=; h=X-Yahoo-Newman-Property:X-YMail-OSG:X-Yahoo-SMTP:Received:From:Mime-Version:Content-Type:Subject:Date:In-Reply-To:To:References:Message-Id:X-Mailer; b=pmHm7efv6hcHoKKsNICnOWG5P7M5gD8Q4ONo4prD5bdiXk1yA5xv07ZnwgEJo/RwxcsG5ZgPY1jzpsW9ck0DMrQ8Pjo5+Ok2urKLBIDtxUBTowL3sv+o3/2mvz09VMSWA5NHxWFHu3M7BX602yv4h6yUmVvUuO+yotQyiSTel+k= X-Yahoo-Newman-Property: ymail-3 X-YMail-OSG: Tt.jxa8VM1l5YUvRznSy9tapOHsjincvkngrbXjxtcdnqGn PWTEktJl19TJ5N1rrqNoVg3Mzec4Z40ZCVKYdxvY1jqoZ2MmwnDZ8e6toQ3Q pZDOfQ78cHS5sBHkLsrdbJmhRqSRbmxnxIJzBQkVfhGbeMRNMVTiq4s6I3N9 MeVcPJktBrL_tI4BKSMiJ6hyHEgYJIJojh0N23yKULadpNanSY.GMDIS9OU6 miq77kRpQkz3szKhYiWJx_ez.VCZbeZYJXUC_wczjZmAnWDf1svMDJyN9Zj5 XWcBSUxrhYTOflBO8Tzm7P94PpO7BpLT61fpqeqF3K7wSxHpw4tqAAA6g.9y x3.wNCtedEQ8G2CucEl35nxTprPap5ReMTSk_jhJ_EJf5jlnK5DqlPUUBCO5 sqQKbIK6sR81AJX1MCo2f4lNb5R_DAxMUNEcTJVwmBklbx3j.5eE8Kw3QbAD O_TkkAJBr4kXGtyL_T9xcF2DnsV4_egWnso3cIiUX.RHSVfWU2vn6uFAdRYi .NZb4hAjQ6Rdw X-Yahoo-SMTP: .9oIUzyswBANsYgUm_5uPui0skTnzGJXJQ-- Received: from [10.0.1.4] (david_jencks@76.76.148.215 with plain) by smtp101.prem.mail.sp1.yahoo.com with SMTP; 11 Aug 2011 20:43:25 -0700 PDT From: David Jencks Mime-Version: 1.0 (Apple Message framework v1084) Content-Type: multipart/alternative; boundary=Apple-Mail-2--194044898 Subject: Re: [DISCUSSION] The OBR feature in Geronimo3.0 Date: Thu, 11 Aug 2011 20:43:24 -0700 In-Reply-To: To: dev@geronimo.apache.org References: Message-Id: <3984D2E8-2AF6-4702-B064-2FD45AC80CD6@yahoo.com> X-Mailer: Apple Mail (2.1084) --Apple-Mail-2--194044898 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=us-ascii I see that karaf is starting an obr subproject, "cave", just added to = the karaf sandbox. Can you tell how similar this is to your goals? http://svn.apache.org/repos/asf/karaf/sandbox/jbonofre/cave/trunk/ I haven't had time to look into your proposal yet. I have one question, = how do you figure out maven coordinates in the geronimo repository for a = bundle that only has a symbolic name? thanks david jencks On Aug 11, 2011, at 3:15 AM, Yi Xiao wrote: > Hi Jark, I'v seen your comments in 5939 and reference here for = convenience > = --------------------------------------------------------------------------= > 1) Don't forget about the license headers. > 2) The geronimo-addUrl shell command and related code is unnecessary. = There is already obr:addurl operation.=20 > 3) When doing geronimo-install would be good to also specify whether = the optional resources should also be downloaded and installed. > 4) Can't ThreadPool be injected into ObrBundleInstallerGBean just like = the repository is (instead of doing Kernel lookup)? > 5) GeronimoGBean could also be injected instead of doing OSGi service = lookup. > 6) You shouldn't need to add LOCAL_OBR into repository. That's what = GeronimoOBRGBean does already. > 7) The filter created in ObrUtils.searchRepository() essentially = specifies to find a bundle with the given symbolic name and the minimal = version. That is, for example, the user specified foo,1.0 but the = install might result in installing foo,2.0. I think we want to match the = exact version. Or maybe we want to support version ranges. > 8) The way the code currently decides whether the resource is "local" = or not is not very reliable. So we might need to find another way or = improve Felix OBR. > = --------------------------------------------------------------------------= >=20 > 1) I will add the license headers > 2) I think the geronimo-addurl command should record the urls into a = file, and geronimo-obr will read the urls and add them so I write the = command, however, I don't decide which file to write and read, do you = think we need to record the urls? > 3) Do you mean the "optional resources" is the dependencies of the = target bundle or something else? > 4), 5), 6) I will resolve it > 7) I've test the scenario you described and there is no such = confusion. However, I think support the version ranges is a good idea! > 8) Now the "local" resources are the ones whose url start with "mvn:". = The implementation is: When install a bundle, if the bundle is local, = will verify its existence, if not existed, will throw an exception; If = the bundle is remote, just download it and install it into geronimo = repository. >=20 > On Thu, Aug 11, 2011 at 1:23 PM, Jarek Gawor wrote: > There is already obr:addurl command so obr:geronimo-addurl is > unnecessary. I added all my comments to GERONIMO-5939. >=20 > Jarek >=20 > On Wed, Aug 10, 2011 at 10:24 PM, Yi Xiao = wrote: > > Hi devs, > > > > Now, I want to add the support of OSGi bundle repository in = Geronimo3.0, the > > patch is available at: = https://issues.apache.org/jira/browse/GERONIMO-5939 > > I used Felix's OBR APIs to develop and add THREE karaf shells to = control > > the OBR in geronimo: > > > > 1 obr:geronimo-addurl url > > Add a remote repository to the geronimo's repositoryAdmin. > > > > 2 obr:geronimo-install [--start | --startLevel num | -v] > > symbolicName,version > > Install a bundle into geronimo in OBR way. > > first, resolve the bundle, if resolve failed, return directly and = print the > > unsatisfactory conditions to user; > > second, download the bundle and its dependencies from the remote = sites to > > local; > > third, deploy all the bundles into geronimo repository and install = them into > > OSGi framework; > > finally, update the geronimo's obr.xml file. > > > > 3 obr:geronimo-uninstall symbolicName,version > > Uninstall a bundle from geronimo in OBR way. > > Compared with the osgi:uninstall, the OBR's uninstall will clean up = the > > geronimo's repository and startup.properties file, also update the = obr.xml > > file. > > > > Any suggestions ? > > > > -- > > Best regards! > > > > John Xiao > > >=20 >=20 >=20 > --=20 > Best regards! >=20 > = John Xiao >=20 --Apple-Mail-2--194044898 Content-Transfer-Encoding: quoted-printable Content-Type: text/html; charset=us-ascii I see = that karaf is starting an obr subproject, "cave", just added to the = karaf sandbox.  Can you tell how similar this is to your = goals?

http://svn.apache.org/repos/asf/karaf/sandbox/jbonofre/cave/trunk/

I haven't had time to look into your proposal = yet.  I have one question, how do you figure out maven coordinates = in the geronimo repository for a bundle that only has a symbolic = name?

thanks
david jencks

On Aug 11, = 2011, at 3:15 AM, Yi Xiao wrote:

Hi Jark, = I'v seen your comments in 5939 and reference here for = convenience
-------------------------------------------------------= -------------------
1) Don't forget about the license = headers.
2) The geronimo-addUrl shell command and related code is unnecessary. = There is already obr:addurl operation.
3) When doing geronimo-install would be good to also specify whether the optional resources should also be downloaded and installed.
4) Can't ThreadPool be injected into ObrBundleInstallerGBean just like = the repository is (instead of doing Kernel lookup)?
5) GeronimoGBean could also be injected instead of doing OSGi service = lookup.
6) You shouldn't need to add LOCAL_OBR into repository. That's what = GeronimoOBRGBean does already.
7) The filter created in ObrUtils.searchRepository() essentially=20 specifies to find a bundle with the given symbolic name and the minimal version. That is, for example, the user specified foo,1.0 but the=20 install might result in installing foo,2.0. I think we want to match the exact version. Or maybe we want to support version ranges.
8) The way the code currently decides whether the resource is "local" or not is not very reliable. So we might need to find another way or=20 improve Felix = OBR.
----------------------------------------------------= ----------------------

1) I will add the license = headers
2) I think the geronimo-addurl command should record = the urls into a file, and geronimo-obr will read the urls and add them = so I write the command, however, I don't decide which file to write and = read, do you think we need to record the urls?
3) Do you mean the "optional resources" is the dependencies of the = target bundle or something else?
4), 5), 6) I will resolve = it
7) I've test the scenario you described and there is no = such confusion. However, I think support the version ranges is a good = idea!
8) Now the "local" resources are the ones whose url start with = "mvn:". The implementation is: When install a bundle, if the bundle is = local, will verify its existence, if not existed, will throw an = exception; If the bundle is remote, just download it and install it into = geronimo repository.

On Thu, Aug 11, 2011 at 1:23 PM, = Jarek Gawor <jgawor@gmail.com> = wrote:
There is already obr:addurl command so obr:geronimo-addurl is
unnecessary. I added all my comments to GERONIMO-5939.

Jarek

On Wed, Aug 10, 2011 at 10:24 PM, Yi Xiao <xiaoyijhondevelop@gmail.com> wrote:
> Hi devs,
>
> Now, I want to add the support of OSGi bundle repository in = Geronimo3.0, the
> patch is available at:
https://issues.apache.org/jira/browse/GERONIMO-5939<= br> > I used Felix's OBR APIs to develop and add  THREE karaf shells = to control
> the OBR in geronimo:
>
> 1 obr:geronimo-addurl url
> Add a remote repository to the geronimo's repositoryAdmin.
>
> 2 obr:geronimo-install [--start | --startLevel num | -v]
> symbolicName,version
> Install a bundle into geronimo in OBR way.
> first, resolve the bundle, if resolve failed, return directly and = print the
> unsatisfactory conditions to user;
> second, download the bundle and its dependencies from the remote = sites to
> local;
> third, deploy all the bundles into geronimo repository and install = them into
> OSGi framework;
> finally, update the geronimo's obr.xml file.
>
> 3 obr:geronimo-uninstall symbolicName,version
> Uninstall a bundle from geronimo in OBR way.
> Compared with the osgi:uninstall, the OBR's uninstall will clean up = the
> geronimo's repository and startup.properties file, also update the = obr.xml
> file.
>
> Any suggestions ?
>
> --
> Best regards!
>
>                John = Xiao
>



--
Best = regards!

           =                     =                     =                     =                     =  John Xiao


= --Apple-Mail-2--194044898--