awips2/build
2018-06-09 10:14:09 -06:00
..
awips-ade awips-ade docker build requires geos-devel 2018-06-07 15:53:59 -06:00
build.core initial commit 2017-04-21 18:33:55 -06:00
edex-ingest edex-ingest docker build 2018-03-06 12:20:22 -07:00
build.sh build reorg 2017-11-14 12:42:26 -07:00
build_rpms.sh build script updates for 17.1.1-6 release 2018-06-09 10:14:09 -06:00
buildEnvironment.sh build version 17.1.1-6 2018-02-27 09:39:03 -07:00
cibuild.sh build reorg 2017-11-14 12:42:26 -07:00
excludes build reorg 2017-11-14 12:42:26 -07:00
README.md build script updates for 17.1.1-6 release 2018-06-09 10:14:09 -06:00
rsync.dirs add awips2-unidata to CI scripts, edex feature sets 2018-04-11 09:17:26 -06:00
setup.sh build script updates for 17.1.1-6 release 2018-06-09 10:14:09 -06:00

Unidata AWIPS Build Notes

Build the AWIPS Development Environment Docker Container

We create and use the Docker image unidata/awips-ade to build the two RHEL binary distributions of AWIPS (RPMS). The directory awips2-builds/build/awips-ade/ contains Dockerfiles for 64-bit EL6 and EL7 CentOS.

./build/awips-ade/docker_build.sh ${os_version}

where ${os_version} is either el6 or el7.

ADE Docker images will be named with the latest major release (17.1.1) and OS version

docker images
REPOSITORY              TAG           IMAGE ID        CREATED       SIZE
unidata/awips-ade       17.1.1-el6    77ea90df5919    16 min ago    4.13GB
unidata/awips-ade       17.1.1-el7    f030be21eda9    23 min ago    3.95GB

Build AWIPS RPMs

Build individual AWIPS RPMs with the command

./build/setup.sh el7 ${rpm_name}

for example:

./build/setup.sh el7 awips2-java
./build/setup.sh el7 awips2-python
./build/setup.sh el7 awips2-postgresql

You can also build group aliases:

./build/setup.sh el7 buildEDEX
./build/setup.sh el7 buildCAVE
./build/setup.sh el7 buildLocalization
./build/setup.sh el7 buildShapefiles

Finally, if no program name is given (e.g. ./build/setup.sh el7), then ALL AWIPS RPMs and groups will be built, in order:

su - awips -c "/bin/bash $buildsh -ade"
su - awips -c "/bin/bash $buildsh -python"
su - awips -c "/bin/bash $buildsh -qpid"
su - awips -c "/bin/bash $buildsh -server"
su - awips -c "/bin/bash $buildsh -database"
su - awips -c "/bin/bash $buildsh -edex"
su - awips -c "/bin/bash $buildsh -httpd"
su - awips -c "/bin/bash $buildsh -cave"

(See ./build/build_rpms.sh and ./rpms/build/x86_64/rpms.sh for more insight.)

Yum Repository

AWIPS RPMs are written to the directories ./dist/el6-dev/ and ./dist/el7-dev/, and are packaged as a YUM repository with the commands

repomanage -k1 --old dist/${os_version}-dev | xargs rm -e
createrepo -g ../comps.xml dist/${os_version}-dev

Optionally, you can push the repo to your webserver with the command

rsync --archive --delete dist/${os_version}-dev ${USER}@{WEBSERVER}:{$REMOTE_DIR}