L.S.,

A common solution here is to use a Maven repository manager in your
own network (something like Archiva, Nexus, Artifactory, ...) and
install everything in there - the artifacts, the features descriptor
itself, ...  In the container, you then configure Pax URL Maven (in
org.ops4j.pax.url.mvn.cfg) to look in that Maven repository.  From a
developer's perspective, you can just use a Maven deploy to upload a
new copy to the repository.  It also allows the container to work
without an internet connection, all ServiceMix needs to be able to
connect to is the Maven repository manager.

>From that moment on, you can just install any feature/bundle/... that
lives in the repository and you can also update single bundles with
osgi:update.  The config files usually have to be maintained
separately by the people who actually install/operate the server
rather than by the developers, but if you want, you can also use the
<configfile> element to grab that file from the Maven repository (e.g.
look at 
http://svn.apache.org/viewvc/activemq/trunk/activemq-karaf/src/main/resources/features.xml?revision=1502430&view=markup
for an example from the ActiveMQ project)


Regards,

Gert Vanthienen


On Fri, Aug 9, 2013 at 8:40 PM, jay <[email protected]> wrote:
> Hello Mates,
> GoodDay! we have a requirement to deploy the bundles (10-15 bundles) as a
> feature in production environment of fuse ESB or Servicemix provided that we
> do not have internet access in production.
>
> I came up with the below approaches;
>
> Approach1.
> 1. tar/zip the maven repository(it is our internal repository where our
> bundles are published)
> 2. scp to our production server where Fuse ESB/SMX is installed
> 3. untar/unzip the repository under the System directory of FuseESB/SMX
> 4. copy or create a configuration files under the etc directory of SMX/Fuse
> 5. Install the feature manually or write a script to install the feature.
>
> Approach2:
> 1.copy or create a configuration files under the etc directory of SMX/Fuse
> 2. copy all the bundles into a deploy directory of SMX/FuseESB
>
> Approach 3:
> If we have internet access;
> 1. configure the maven repository (our internal repo) in maven config file
> 2. copy or create project config files under the etc directory.
> 3. install the feature
>
>
> Approach4:
> 1.Write an installer (bitrock Install builder) which would install
> everything.
>
>
> ********************************
> I came up with above approaches as per my knowledge. But can you let me know
> your views on?
>
> Is there any better approach to deploy the stuff in production FuseESB/SMX
> provided that we do not have internet access?
>
> How do we deploy the next release version of bundles on top of previous
> release bundles with out stopping the bundles as we got to maintain the
> change control and continuous project deployment versions?
>
> How do you Rollback or swap the bundles between the released versions as we
> need all the versions to be available in production and enable only a
> required version of release?
>
>
> Note: currently we copied our local repo in UAT env of Fuse and install the
> feature. (in dev/systest env we configured our maven repo which
> automatically download the bundles when you install the feature.)
>
>
> I would really appreciate if some one can let me know your views on the
> better deployment approaches?
>
>
>
>
>
>
>
> --
> View this message in context: 
> http://servicemix.396122.n5.nabble.com/Deployment-approaches-of-bundles-in-Fuse-ESB-SMX-in-production-tp5717534.html
> Sent from the ServiceMix - User mailing list archive at Nabble.com.

Reply via email to