>>>>> Steinar Bang <[email protected]>: >>>>> Steinar Bang <[email protected]>: >>>>> Jean-Baptiste Onofré <[email protected]>:
>>> By the way, I'm adding "deployment tooling" in Cave right now >>> (allowing to explode a kar, create meta feature assembling existing >>> features, ...). >> Interesting! Will study! >> https://karaf.apache.org/manual/cave/latest-4/ > So now I see three ways to do continous delivery: > 1. Snapshot builds from travis, triggered by github changes, deploying > to a packagecloud account[1] (a free package cloud account will > probably serve my humble needs...) I tried this: I created a 14 day trial account on packagecloud, and tried to deploy my code there. That failed because the server side at packagecloud didn't like maven artifact attachment with extension .xml. This means that all of my bundle projects (which have a karaf feature attached) as well as the project with packaging pom, that aggregates all of my bundles' features into a feature repository, failed to deploy. The packagecloud people filed a bug on that but couldn't promise to have it fixed during what was left of my trial period. > 2. Installing jenkins on the same server karaf is running, and using > cave to refer to the /home/jenkins/.m2/repository > 3. Running jenkins on a different computer and rsync the > /home/jenkins/.m2/repository to the server karaf is running and use > cave to make karaf listen to /home/jenkins/.m2/repository (I tried > rsyncing my manual builds from my own account on a different > computer to the karaf account on the karaf server, > ie. /home/karaf/.m2/repository, but that got a lot of issues > wrt. file ownership and access. Doing it to the same account and on > a different account from the karaf account should resolve this) I ended up doing none of the above. I ended up doing: 4. Set up an ftp server on the same machine where karaf was running, and set up travis-ci to deploy to that repository, and then adding the file-URL pointing to the deployment area as a maven repository in the karaf config. After a travis-ci deployment I have to log into the karaf console and do "bundle:update" on each bundle I would like refreshed This works, and is a lot simpler than what I did before. But it's still not fully automated (I still have to do the manual "bundle:update" commands).
