Have you looked at Karaf features ? those do support bundle start levels.

Cheers,
Guillaume Nodet

2015-12-14 17:02 GMT+01:00 Seth Lana <sethlanag...@gmail.com>:

> Hi Peter,
>
> many thanks for your inputs, it really helped us to defined the way our
> team should to go.
>
> We had some difficulties defining the requirements of this pilot project
> due to, as you said, the large number of possibilities and combinations
> that we could have. But we are getting there...
>
> One last doubt, we have found no reference about bundle start level on
> both Initial Provisioning and Deployment Admin specs.
>
> In case of IP, we thought about two possibilities. One is to use IP
> archive's manifest file to hold the information and let the IP
> implementation bundle to use it after it install the bundle. for example:
>
> InitialProvisioning-Entries: org.apache.felix.scr;type=bundle;
> *startLevel=2*
>
> Another one is to add a text entry on the IP zip. as that will be stored
> in the provisioning dictionary then the management agent can obtain that
> information using the provisioning service and use it to set the
> startLevel.
>
> We are inclined for the option one. which would be the best approach for
> you?
>
> best regards,
>
> Seth
>
>
> On 10-12-2015 11:48, Peter Kriens wrote:
>
> On 9 dec. 2015, at 00:46, Seth Lana <sethlanag...@gmail.com> 
> <sethlanag...@gmail.com> wrote:
> Hello,
> I’m researching about the best ways to provide automatic remote provisioning 
> for small devices and also for the servers that will provide content for such 
> devices. Reading the OSGi compendium, some specs caught my attention: Initial 
> Provisioning, Deployment Admin, Subsystems and Repository Services.
>
> If I got it right, we can have a device with only the OSGi container(with a 
> minimal deps) and the IP Agent bundle jars assembled at factory.
>
> Yes. The core idea is that you deliver identical devices to all your 
> customers except for the identity (serial number or so).
>
>
> At first use, the IP agent will contact the remote provisioning service 
> (using Http or another protocol) and will download one or more IP zip files 
> containing one or more bundles and configuration files defined by the remote 
> provisioning operator for that device. All bundles inside the IP zips will be 
> installed by the IP agent. So, this process follows until all necessary 
> bundles are installed, ending with the Management Agent bundle being started. 
> Am I right?
>
> Yup.
>
>
> What I found strange was the fact that only one bundle can be started at each 
> time (each zip can have only one start entry pointing to only one bundle). 
> Why this restriction?
>
> This allows this single bundle to verify the environment, do some checks, and 
> setup security &  start levels for example.
>
>
> Should the Management Agent uninstall the IP agent after it is fully 
> operational? or the IP must run every time the device starts up ?
>
> There is no obligation here. Personally, I would make sure that in certain 
> situations the device can go back to initial mode so that the operator can 
> regain control of the device after a catastrophic event. But again, there are 
> not rules defined here.
>
>
> But the biggest doubt is about that Management Agent itself. It seems that 
> one needs to be developed, right?.
>
> Yes. Something needs to provide YOUR policy, this is the management agent. 
> You could buy one (this was ProSyst’s answer), there is open source (this was 
> Marcel’s answer, or there is building it yourself. I prefer the latter 
> because it allows you to provide your policy to the management operations. It 
> is not a big deal because the management operations are part of the well 
> defined OSGi API and are almost trivial to use.
>
>
> Should the Management Agent to use a Deployment Admin service provided by 
> another bundle or should it be itself the provider of such service?
>
> There are no restrictions here. Make sure the Management Agent only provides 
> policy so if you insist on using Deployment Admin then it is not a good idea 
> to implement it yourself.
>
>
> And about the Repository Service, should it be used by the Management Agent 
> or Deployment Admin or both?
>
> I think you are focusing too much on all potential possibilities. What are 
> your requirements? OSGi is a bit like a box of Lego. Once you have a clear 
> vision of how you want to manage your devices you find the components in 
> OSGi. However, you can combine these components in infinite ways and 
> exploring all combinations is not providing you with the right solution any 
> time soon.
>
>
> Can a Subsystem (.esa) be package inside a Deployment Package?
>
> You can write your own Resource Processor with Deployment Admin so in 
> principle yes. However, both Deployment Admin and subsystems struggle with 
> sharing bundles. Deployment Admin took the easy way out and decided to not 
> share bundles. Subsystems do allow sharing but struggles because of the 
> complexity this creates.
>
>
> Can the Deployment Packages (*.dp) or Subsystems (*.esa) also be provided by 
> an OSGi repository ?
>
> Again yes. You will need to write a Resource Processor and then you can 
> install anything anywhere with Deployment Admin.
>
> You might get more useful advice from this group if you provide us with the 
> actual use case.
>
> Kind regards,
>
>       Peter Kriens
>
>
> thanks for any opinion.
>
> regards, Seth.
>
>
> _______________________________________________
> OSGi Developer Mail 
> listosgi-...@mail.osgi.orghttps://mail.osgi.org/mailman/listinfo/osgi-dev
>
> _______________________________________________
> OSGi Developer Mail 
> listosgi-...@mail.osgi.orghttps://mail.osgi.org/mailman/listinfo/osgi-dev
>
>
>
> _______________________________________________
> OSGi Developer Mail List
> osgi-dev@mail.osgi.org
> https://mail.osgi.org/mailman/listinfo/osgi-dev
>



-- 
-----------------------
Guillaume Nodet
------------------------
Red Hat, Open Source Integration

Email: gno...@redhat.com
Web: http://fusesource.com
Blog: http://gnodet.blogspot.com/
_______________________________________________
OSGi Developer Mail List
osgi-dev@mail.osgi.org
https://mail.osgi.org/mailman/listinfo/osgi-dev

Reply via email to