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 Windows. More info is here : https://reference.apache.org/pmc/codesigning
...
git clone https://github.com/apache/netbeans.git
cd netbeans
Run ant 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=<path> BINARYARTIFACT=netbeans-*-bin BIN_NAME=<zip name incubating-netbeans-11.0-vc3-bin.zip> export BINARY_NAME cp $BINARY_PATH/$BINARY_NAME $DIST/zip/moduleclusters`ls $ARTIFACT.zip` BINARY_NAME=`echo "${BIN_NAME%%.zip*}"` #create cluster zip files rm -rf NBI-cache cd $BASE_DIR NB_BUILD_NUMBER=1 NB_VER_NUMBER=11.1 BASENAME_PREFIX=Apache-NetBeans-$NB_VER_NUMBER-bin BUILD_DESC=$BASENAME_PREFIX BUILDNUMBER=$NB_BUILD_NUMBER DATESTAMP=$BUILDNUMBER export NB_VER_NUMBER BUILDNUMBER BASENAME_PREFIX NB_BUILD_NUMBER DATESTAMP BUILD_DESC ##########For generating Windows and Linux installers#### 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 |
Installers will be generated under dist/bundles
Windows installer exe can be signed using Code signing gui, link is above.
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=<path> BINARY_NAME=<binary zip name> export BINARY_NAME cp $BINARY_PATH/$BINARY_NAME $DIST/zip/moduleclusters cd $BASE_DIR NB_BUILD_NUMBER=1 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.13 BASENAME_PREFIX=Apache-NetBeans-$NB_VER_NUMBER-bin BUILD_DESC=$BASENAME_PREFIX BUILDNUMBER=$NB_BUILD_NUMBER DATESTAMP=$BUILDNUMBER export BUILDNUMBER NB_VER_NUMBER BUILDNUMBER BASENAME_PREFIX NB_BUILD_NUMBER DATESTAMP BUILD_DESC #######for generating MAC installer##### BUILD_MACPATH=1$DIST export#export BUILDMAC_MACPATH MAC_SIGN_IDENTITY_NAME=<path to txt file containing Apache Code sign certificate identity name string>LOG_NEW=$DIST/logs/native_mac-$BUILDNUMBER.log export MAC_SIGNLOG_IDENTITY_NAME ######################################## ####if building only MAC installer###### NEW BUILD_NB=0 #########################################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 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 |
The signed installer will get generated under dist/bundles.
...
Windows installer exe can be signed using Code signing gui, link is above.
Mac OSX installer
Reference
http://wiki.netbeans.org/Launchers_Installers_NBI