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.
