>>>>> David Leangen <[email protected]>:
> My current issue is: how can I use Features for Continuous Deployment?
> I am having trouble with automation. That is what got me interested in
> the idea behind the Features…
It doesn't involve features, except for the installation, but I do this:
1. Use maven to build the bundles (and the features)
2. Use a -SNAPSHOT version
3. Create a new version and push to github
4. As the user karaf is running under (actually user "karaf" on my
debian server):
a. Clone the github repo
b. Install the features
c. Do the command "bundle:watch *" (which makes karaf keep an eye
out for updates to -SNAPSHOT version'ed bundles in user
"karaf"'s local repository, ie ~karaf/.m2/repository/ )
5. When I want to deploy an update, I:
a. Push it to github
b. On the server "ssh -p 8101 karaf@localhost" (to log in as user
karaf)
c. From the karaf console run shell script that cd's to the cloned
git project, do a git pull, followed by a "mvn clean install"
d. Once new versions of the -SNAPSHOT bundles are installed into
~karaf/.m2/repository, karaf will pick them up and reinstall
them
My intention is to replace the manual step 5b. with a github webhook
(triggering the shell script doing the build from the karaf console has
been a proof of concept for this).