Table of Contents |
---|
Installers Build job
Installer build job for Linux and Windows installers:
https://builds.apache.org/view/M-R/view/NetBeans/job/netbeans-installers/
Mac Installer needs to be built locally, please refer INFRA-17961
Signing
For signing Windows and Mac installers, used Apache Code Service service. Tried with Test Signing for WindowsNetBeans IDE Installer code is currently in fork branch. Steps to build installers are below. Currently installers generated are unsigned. I will soon update PR with code for generating signed installers. For signing installers, Code Service signing account is required. More info is here : https://reference.apache.org/pmc/codesigning
Mac Installer .pkg is signed during build hence build will fail if Certificate identity-name string is not provided in below build script.
May refer Also refer bug
Jira | ||||||
---|---|---|---|---|---|---|
|
Steps to build installers
git clone https://github.com/rtaneja1apache/incubator-netbeans.git -b rtaneja-donation3-installer
cd incubator_ netbeans
Run ant build Invoke below bash script for build
Copy release artifact zip(eg netbeans-11.3-bin.zip) to current folder.
Linux and Windows Installers:
Run below bash script from current dir
Code Block |
---|
BASE_DIR=`pwd` NB_ALL=$BASE_DIR export BASE_DIR NB_ALL DIST=$BASE_DIR/dist export DIST if [ -d $DIST ] ; then rm -rf $DIST fi rm -rf NBI-cache mkdir -p $DIST/zip/moduleclusters mkdir -p $DIST/logs BINARY_PATH=https://builds.apache.org/job/incubator-netbeans-release/395/artifact/dist BINARY_NAME=incubating-netbeans-11.0-vc3-bin.zip export BINARY_NAME cd $DIST/zip/moduleclusters wget $BINARY_PATH/$BINARY_NAME cd $BASE_DIR NB_BUILD_NUMBER=395 BASENAME_PREFIX=Apache-NetBeans-11.0-bin BUILD_DESC=$BASENAME_PREFIX BUILDNUMBER=$NB_BUILD_NUMBER DATESTAMP=$BUILDNUMBER export BUILDNUMBER BASENAME_PREFIX NB_BUILD_NUMBER DATESTAMP BUILD_DESC #MAC_PATH= #export MAC_PATH BUILD_NB=1 BUILD_NETBEANS=0 BUILD_NBJDK6=0 BUILD_NBJDK7=0 BUILD_NBJDK8=0 BUILD_NBJDK11=0 export BUILD_NETBEANS BUILD_NB export BUILD_NBJDK6 BUILD_NBJDK7 BUILD_NBJDK8 BUILD_NBJDK11 OUTPUT_DIR=${NB_ALL}/dist/installers export OUTPUT_DIR DONT_SIGN_INSTALLER=y export DONT_SIGN_INSTALLER bash -x $NB_ALL/nbbuild/newbuild/build-nbi.sh |
For Mac OSX installer
Code Block |
---|
BASE_DIR=`pwd` NB_ALL=$BASE_DIR export BASE_DIR NB_ALL DIST=$BASE_DIR/dist export DIST if [ -d $DIST ] ; then rm -rf $DIST fi mkdir -p $DIST/zip/moduleclusters mkdir -p $DIST/logs BINARY_PATH=https://builds.apache.org/job/incubator-netbeans-release/395/artifact/dist BINARY_NAME=incubating-netbeans-11.0-vc3-bin.zip export BINARY_NAME cd $DIST/zip/moduleclusters wget $BINARY_PATH/$BINARY_NAME cd $BASE_DIR NB_BUILD_NUMBER=395ARTIFACT=netbeans-*-bin BIN_NAME=`ls $ARTIFACT.zip` BINARY_NAME=`echo "${BIN_NAME%%.zip*}"` #create cluster zip files rm -rf temp unzip $BINARY_NAME.zip -d temp cd temp mkdir javase mkdir javase/netbeans mkdir javaee mkdir javaee/netbeans mkdir webcommon mkdir webcommon/netbeans mkdir php mkdir php/netbeans mkdir extide mkdir extide/netbeans cd netbeans #java mv apisupport ../javase/netbeans mv ergonomics ../javase/netbeans mv java ../javase/netbeans mv javafx ../javase/netbeans mv profiler ../javase/netbeans #javaee mv enterprise ../javaee/netbeans mv groovy ../javaee/netbeans #webcommon mv webcommon ../webcommon/netbeans #php mv php ../php/netbeans #websvccommon mv websvccommon ../extide/netbeans #create cluster zip files cd .. echo `pwd` echo $BINARY_NAME zip -r $BINARY_NAME-base.zip netbeans mv $BINARY_NAME-base.zip .. echo `pwd` cd javase zip -r $BINARY_NAME-java.zip netbeans mv $BINARY_NAME-java.zip ../.. cd .. cd javaee zip -r $BINARY_NAME-enterprise.zip netbeans mv $BINARY_NAME-enterprise.zip ../.. cd .. cd php zip -r $BINARY_NAME-php.zip netbeans mv $BINARY_NAME-php.zip ../.. cd .. cd webcommon zip -r $BINARY_NAME-webcommon.zip netbeans mv $BINARY_NAME-webcommon.zip ../.. cd .. cd extide zip -r $BINARY_NAME-websvccommon.zip netbeans mv $BINARY_NAME-websvccommon.zip ../.. cd ../.. rm -rf temp mv $BINARY_NAME-*.zip $DIST/zip/moduleclusters export BINARY_NAME cd $BASE_DIR #NB_BUILD_NUMBER=<YYMMDD> NB_BUILD_NUMBER=200224 BUILDNUMBER=$NB_BUILD_NUMBER DATESTAMP=$BUILDNUMBER NB_VER_NUMBER=11.3 BASENAME_PREFIX=Apache-NetBeans-11.0$NB_VER_NUMBER-bin BUILD_DESC=$BASENAME_PREFIX BUILDNUMBER=$NB_BUILD_NUMBER DATESTAMP=$BUILDNUMBER exportexport NB_VER_NUMBER BUILDNUMBER BASENAME_PREFIX NB_BUILD_NUMBER DATESTAMP BUILD_DESC MAC_PATH=$DIST export#export MAC_PATH MAC_LOG_NEW=$DIST/logs/native_mac-$BUILDNUMBER.log export MAC_LOG_NEW BUILD_NB=01 BUILD_NETBEANS=0 BUILD_NBJDK6=0 BUILD_NBJDK7=0 BUILD_NBJDK8=0 BUILD_NBJDK11=0 export BUILD_NETBEANS BUILD_NB export BUILD_NBJDK6 BUILD_NBJDK7 BUILD_NBJDK8 BUILD_NBJDK11 BUNDLE_JDK_PLATFORM= export BUNDLE_JDK_PLATFORM OUTPUT_DIR=${NB_ALL}/dist/installers export OUTPUT_DIR DONT_SIGN_INSTALLER=y export DONT_SIGN_INSTALLER bash -x $NB_ALL/nbbuild/newbuild/build-nbi.sh |
Windows installer exe can be signed using Code signing gui, link is above.
Mac OSX installer
Reference
http://wiki.netbeans.org/Launchers_Installers_NBI