Hotfixes source
Hi, after getting Nuxeo Platform LTS 2019 source code, I try to build it but i get a security problem with access to the hofixes. I undertstand that now we need to be a customer to get precompiled hotfixes but is there a way to get the hotfixes source and build them ourselves without being a customer. If so, where can we get them? Thanks.
Like Thierry said, you can only do a full build. I just did that on tag “release-10.10-HF53” today. But it took me all day to make it work, because there are some issues and updates to the code have to be done. Briefly:
- missing dependency for a Nuxeo version of richfaces (-> add to module)
- Nuxeos maven repo now only supporting https (->update all pom.xml)
- github not allowing git: anymore (-> update all bower.json)
- I had issues with gulp when building some of the addons, so I just left the addons that are necessary for the minimum build.
Also you need a couple of dependencies. Mostly maven, python2 (!!), bower, grunt and gulp (<4.0)
After the build you are left with a zipped Nuxeo distribution which you can use with your nuxeo.conf. Or - guessing here - you could update the jars in your old installation with the new ones.
This is the script I came up with today
edit:
Be aware different hotfix versions, need other modules. I updated the script to work with HF59. Couldn't make it work for HF60 yet thou.
#!/bin/bash
# dependencies: mvn, bower, grunt, gulp
set -e
###############
## get sources
###############
# specify the tag to clone
VERSION=10.10-HF59
TAG=release-$VERSION
REPO=https://github.com/nuxeo/nuxeo
git clone --depth 1 --branch $TAG $REPO nuxeo-$VERSION
cd nuxeo-$VERSION/
# get addons
python2 clone.py
# get needed dependency richfaces and add module to pom
git clone --depth 1 --branch 4.5.12.Final-NX1 https://github.com/nuxeo/richfaces-4.5
sed -i '/<module>nuxeo-common<\/module>/i\\t<module>richfaces-4.5<\/module>' pom.xml
# fix old http maven repo to https
find ./ -name pom.xml -exec sed -i 's/http:\/\/maven.nuxeo.org/https:\/\/maven.nuxeo.org/g' {} \;
# fix bower problems using old git: protocol -> https://github.com
find ./ -name bower.json -exec sed -i 's/git:\/\/github.com/https:\/\/github.com/g' {} \;
## update addons/pom.xml
# remove all modules from pom.xml
sed -i '/<modules>/,/<\/modules>/{//!d}' addons/pom.xml # removes all lines between <modules> and </modules>
# add needed addons
sed -i '/<\/modules>/i\\t<module>nuxeo-binary-metadata<\/module>' addons/pom.xml
sed -i '/<\/modules>/i\\t<module>nuxeo-connect-tools<\/module>' addons/pom.xml
sed -i '/<\/modules>/i\\t<module>nuxeo-platform-pdf-utils<\/module>' addons/pom.xml
sed -i '/<\/modules>/i\\t<module>nuxeo-shell<\/module>' addons/pom.xml
sed -i '/<\/modules>/i\\t<module>nuxeo-apidoc-server<\/module>' addons/pom.xml
sed -i '/<\/modules>/i\\t<module>nuxeo-dmk-adaptor<\/module>' addons/pom.xml
sed -i '/<\/modules>/i\\t<module>nuxeo-platform-lang-ext<\/module>' addons/pom.xml
sed -i '/<\/modules>/i\\t<module>nuxeo-platform-suggestbox<\/module>' addons/pom.xml
sed -i '/<\/modules>/i\\t<module>nuxeo-platform-document-routing<\/module>' addons/pom.xml
sed -i '/<\/modules>/i\\t<module>nuxeo-chemistry<\/module>' addons/pom.xml
## update nuxeo-distribution modules
# remove all modules from pom.xml
sed -i '/<modules>/,/<\/modules>/{//!d}' nuxeo-distribution/pom.xml
# add needed distribution modules
sed -i '/<\/modules>/i\\t<module>nuxeo-startup-wizard<\/module>' nuxeo-distribution/pom.xml
sed -i '/<\/modules>/i\\t<module>nuxeo-launcher<\/module>' nuxeo-distribution/pom.xml
sed -i '/<\/modules>/i\\t<module>nuxeo-nxr-server<\/module>' nuxeo-distribution/pom.xml
sed -i '/<\/modules>/i\\t<module>nuxeo-nxr-jsf-ui<\/module>' nuxeo-distribution/pom.xml
sed -i '/<\/modules>/i\\t<module>nuxeo-server-tomcat<\/module>' nuxeo-distribution/pom.xml
##########
# compile
##########
mvn clean install -DskipTests=true -Paddons,distrib | tee ../nuxeo_build-$VERSION.log
#################
# get tomcat zip
#################
cp nuxeo-distribution/nuxeo-server-tomcat/target/nuxeo-server-tomcat-$VERSION.zip ../
You can still do a full build of the 10.10 branch of Nuxeo, it should work even if you are not a customer (unless you had a problem with the NPM registry during your build ..)