cancel
Showing results for 
Search instead for 
Did you mean: 

Hotfixes source

chouinard_
Champ on-the-rise
Champ on-the-rise

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.

4 REPLIES 4

Thierry_Martins
Star Collaborator
Star Collaborator

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 ..)

Actually my problem is with the Maven repository access, to the hotfixes (maven.nuxeo.org/nexus/content/repositories/hotfix-snapshots)

Konrad_Krenzlin
Confirmed Champ
Confirmed Champ

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 ../

Thank you Konrad for the useful info. Finally, most of my problem was with npm issues. And like you did, I had to retire some modules that I was not allowed to access.

Getting started

Find what you came for

We want to make your experience in Hyland Connect as valuable as possible, so we put together some helpful links.