David Lindelöf wrote:
Or what do you think of the following bundle reposiroty setup (ASCII art
warning:

[EMAIL PROTECTED] bundles]$ tree
.
|-- Bar
|-- Foo
|   |-- 0.4
|   `-- 0.5
|       |-- Foo-0.5.5.jar
|       |-- Foo-0.5.6.jar
|       |-- Foo-0.5.7.jar
|       `-- Foo.jar -> Foo-0.5.7.jar
|-- Baz
`-- repository.xml

Can I configure repository.xml with several entries with the same name
"Foo", but pointing at different update locations (0.5/Foo.jar,
0.4/Foo.jar, ...)?

Will this work if on machine A the bundle Foo is given a
Bundle-UpdateLocation with "0.5/Foo.jar" and machine B with
"0.4/Foo.jar"? If I update machine A, should this pick up Foo-0.5.7.jar,
and similarly, if I update machine B, should this pick up the latest
bundle from the 0.4 directory?

OBR1 used Bundle-UpdateLocation as its key, but OBR2 uses symbolic-name + bundle-version. In fact, for OBR2, you should not set the Bundle-UpdateLocation at all.

For OBR2 you can have any number of different versions of a bundle with a given symbolic name. If you deploy a specific symbolic name without specifying a version, OBR2 will deploy the latest version. If you specify the precise version, then OBR2 will deploy that precise version.

You might be able to mimic what you want to do by using the basic OBR2 features in conjunction with Bundle-UpdateLocation, but that seems messy.

It seems like you'd be better off creating some simple management agent that you deploy on both machines that implements the update logic that you require. For example, if you want machine A to always have the latest version of 0.5.x and machine B to always have the latest version of 0.4.x, just create a management agent to which you can specify such rules and have it use OBR to find the latest version in each branch and update to it.

-> richard

Best regards,

David

On Tue, 2007-04-17 at 17:16 +0200, Richard S. Hall wrote:
David Lindelöf wrote:
Dear all,

Is it possible for the Bundle Repository to manage several parallel
branches of the same bundle?

E.g., say I have deployed bundle Foo (1.2.3) on machine A and bundle Foo
(4.5.6) on machine B. Assume bundle versions are compatible only if
major and minor versions are the same.

I would like to manage a bundle repository such that when Foo (4.5.7) is
released, machine B gets updated but not machine A. Is this possible?
This is out of OBR's scope. You need a management agent to handle such issues. In the simplest scenario, the management agent can be you. On machine B you can type "obr deploy Foo" and it will update it to the latest version, but on machine A you don't tell it to do anything...
--
--------------------------------------------------
David Lindelöf
Product Developer
Adhoco AG
Technopark
Jagerstrasse 2
8406 Winterhur
tel +41-52-203.2903
mob +41-79-415.6641
fax +41-52-203.2904
e-mail [EMAIL PROTECTED]
url http://www.adhoco.com
weblog http://visnet.ch/~lindelof/smartbuildings/
--------------------------------------------------

Honesty is for the most part less profitable than dishonesty.
                -- Plato

Reply via email to