Merge branch 'unidata_18.1.1' of github.com:Unidata/awips2 into unidata_18.1.1-osx
This commit is contained in:
commit
2100ea30ac
21 changed files with 128 additions and 212 deletions
|
@ -1,6 +1,6 @@
|
|||
FROM unidata/awips-devel:el6
|
||||
ENV VERSION 18.1.1
|
||||
ENV RELEASE 1
|
||||
ENV RELEASE 6
|
||||
MAINTAINER Michael James <mjames@ucar.edu>
|
||||
|
||||
USER root
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
FROM unidata/awips-devel:el7
|
||||
ENV VERSION 18.1.1
|
||||
ENV RELEASE 1
|
||||
ENV RELEASE 6
|
||||
MAINTAINER Michael James <mjames@ucar.edu>
|
||||
|
||||
USER root
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
FROM centos:6
|
||||
ENV VERSION 18.1.1
|
||||
ENV RELEASE 1
|
||||
ENV RELEASE 6
|
||||
MAINTAINER Michael James <mjames@ucar.edu>
|
||||
|
||||
USER root
|
||||
|
@ -10,11 +10,11 @@ RUN yum groupinstall "Development tools" -y
|
|||
RUN yum install epel-release -y
|
||||
RUN yum clean all -y
|
||||
|
||||
ENV systemDeps="wget rsync git net-tools"
|
||||
ENV rpmDeps="gcc gcc-c++ rpm-build readline-devel createrepo"
|
||||
ENV systemDeps="wget rsync git net-tools gzip libtool"
|
||||
ENV rpmDeps="gcc gcc-c++ glibc-devel rpm-build readline-devel createrepo"
|
||||
ENV qpidDeps="boost-devel cmake make ruby libuuid-devel"
|
||||
ENV pythonDeps="tk-devel tcl-devel atlas-devel compat-libf2c-34 libgfortran geos-devel libpng-devel freetype"
|
||||
ENV awipsDeps="netcdf netcdf-devel hdf5-devel lzo-devel bzip2-devel qt-devel"
|
||||
ENV awipsDeps="netcdf netcdf-devel hdf5-devel lzo-devel bzip2-devel qt-devel xz-devel"
|
||||
ENV httpDeps="autoconf findutils libselinux-devel libxml2-devel lua-devel openldap-devel openssl-devel pcre-devel pkgconfig perl zlib-devel apr-util-devel apr-devel"
|
||||
|
||||
RUN yum install $systemDeps $rpmDeps $qpidDeps $pythonDeps $awipsDeps $httpDeps -y
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
FROM centos:7
|
||||
ENV VERSION 18.1.1
|
||||
ENV RELEASE 1
|
||||
ENV RELEASE 6
|
||||
MAINTAINER Michael James <mjames@ucar.edu>
|
||||
|
||||
USER root
|
||||
|
@ -11,11 +11,11 @@ RUN yum groupinstall "Development tools" -y
|
|||
RUN yum install epel-release -y
|
||||
RUN yum clean all -y
|
||||
|
||||
ENV systemDeps="wget rsync git net-tools"
|
||||
ENV rpmDeps="gcc gcc-c++ rpm-build readline-devel createrepo"
|
||||
ENV systemDeps="wget rsync git net-tools gzip libtool"
|
||||
ENV rpmDeps="gcc gcc-c++ glibc-devel rpm-build readline-devel createrepo"
|
||||
ENV qpidDeps="boost-devel cmake make ruby libuuid-devel"
|
||||
ENV pythonDeps="tk-devel tcl-devel atlas-devel compat-libf2c-34 libgfortran geos-devel libpng-devel freetype"
|
||||
ENV awipsDeps="netcdf netcdf-devel hdf5-devel lzo-devel bzip2-devel qt-devel"
|
||||
ENV awipsDeps="netcdf netcdf-devel hdf5-devel lzo-devel bzip2-devel qt-devel xz-devel"
|
||||
ENV httpDeps="autoconf findutils libselinux-devel libxml2-devel lua-devel openldap-devel openssl-devel pcre-devel pkgconfig perl zlib-devel apr-util-devel apr-devel"
|
||||
|
||||
RUN yum install $systemDeps $rpmDeps $qpidDeps $pythonDeps $awipsDeps $httpDeps -y
|
||||
|
|
|
@ -20,4 +20,4 @@ sudo docker build -t unidata/${img} -f Dockerfile.${img}.${os_version} .
|
|||
dockerID=$(sudo docker images | grep ${img} | grep latest | awk '{print $3}' | head -1 )
|
||||
sudo docker tag $dockerID unidata/${img}:${os_version}
|
||||
sudo docker rmi unidata/${img}:latest
|
||||
#sudo docker push unidata/${img}
|
||||
sudo docker push unidata/${img}
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
[awips2repo]
|
||||
name=AWIPS II Repository
|
||||
baseurl=http://www.unidata.ucar.edu/repos/yum/el6-dev/
|
||||
baseurl=https://www.unidata.ucar.edu/repos/yum/el6-dev/
|
||||
enabled=1
|
||||
protect=0
|
||||
gpgcheck=0
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
#!/bin/bash
|
||||
# Version
|
||||
export AWIPSII_VERSION="18.1.1"
|
||||
export AWIPSII_RELEASE="5"
|
||||
export AWIPSII_RELEASE="6"
|
||||
# Author
|
||||
export AWIPSII_BUILD_VENDOR="UCAR"
|
||||
export AWIPSII_BUILD_SITE="Unidata"
|
||||
|
|
|
@ -31,7 +31,6 @@
|
|||
# Aug 03, 2015 #4694 dlovely Logback will now add user.home to LOGDIR
|
||||
# Sep 17, 2015 #4869 bkowal Read dynamic AlertViz version information at startup.
|
||||
# Oct 05, 2015 #4869 bkowal Fix AlertViz argument ordering
|
||||
# Feb 15, 2017 6025 tgurney Force use of GTK2
|
||||
#
|
||||
|
||||
user=`/usr/bin/whoami`
|
||||
|
@ -156,7 +155,7 @@ function deleteEclipseConfigurationDir()
|
|||
function createEclipseConfigurationDir()
|
||||
{
|
||||
local d dir id=$(hostname)-$(whoami)
|
||||
for d in "/local/cave-eclipse/" "$HOME/.cave-eclipse/"; do
|
||||
for d in "$HOME/caveData/cave-eclipse/" "$HOME/caveData/.cave-eclipse/"; do
|
||||
if [[ $d == $HOME/* ]]; then
|
||||
mkdir -p "$d" || continue
|
||||
fi
|
||||
|
@ -200,9 +199,6 @@ if [ -f ${dir}/awipsVersion.txt ]; then
|
|||
IFS=${prevIFS}
|
||||
fi
|
||||
|
||||
# Force GTK2
|
||||
export SWT_GTK3=0
|
||||
|
||||
#run a loop for alertviz
|
||||
count=0
|
||||
while [ $exitVal -ne 0 -a $count -lt 10 ]
|
||||
|
|
|
@ -41,7 +41,6 @@
|
|||
# Apr 28, 2016 #5609 bkowal Specify the location of the java.io.tmpdir as a jvm arg.
|
||||
# Nov 3, 2016 19508 Qinglu Lin Export proper TEXTWS if no matching XT in XT_WORKSTATIONS for LX.
|
||||
# Jan 26, 2017 6092 randerso Add export for PROGRAM_NAME
|
||||
# Feb 6, 2017 #6025 tgurney Force use of GTK2
|
||||
# Nov 07, 2017 6516 randerso Use correct ini file for gfeClient
|
||||
# Apr 23, 2018 6351 mapeters Fix looking up of ini file
|
||||
#
|
||||
|
@ -101,28 +100,8 @@ fi
|
|||
export apps_dir=${HYDRO_APPS_DIR}
|
||||
|
||||
SWITCHES=($SWITCHES)
|
||||
TESTCHECK="$TMCP_HOME/bin/getTestMode"
|
||||
if [ -x ${TESTCHECK} ]; then
|
||||
echo "Calling getTestMode()"
|
||||
${TESTCHECK}
|
||||
status=${?}
|
||||
if [ $status -eq 11 ]; then
|
||||
MODE="TEST"
|
||||
SWITCHES+=(-mode TEST)
|
||||
elif [ $status -eq 12 ];then
|
||||
MODE="PRACTICE"
|
||||
SWITCHES+=(-mode PRACTICE)
|
||||
elif [ $status -eq 15 ];then
|
||||
MODE="OPERATIONAL"
|
||||
SWITCHES+=(-mode OPERATIONAL)
|
||||
else
|
||||
MODE="OPERATIONAL (no response)"
|
||||
fi
|
||||
echo "getTestMode() returned ${MODE}"
|
||||
else
|
||||
MODE="UNKNOWN"
|
||||
echo "getTestMode() not found - going to use defaults"
|
||||
fi
|
||||
MODE="PRACTICE"
|
||||
SWITCHES+=(-mode PRACTICE)
|
||||
|
||||
VERSION_ARGS=()
|
||||
if [ -f ${CAVE_INSTALL}/awipsVersion.txt ]; then
|
||||
|
@ -134,22 +113,15 @@ if [ -f ${CAVE_INSTALL}/awipsVersion.txt ]; then
|
|||
IFS=${prevIFS}
|
||||
fi
|
||||
|
||||
TEXTWS=`hostname | sed -e 's/lx/xt/g'`
|
||||
if [[ $XT_WORKSTATIONS != *$TEXTWS* ]]
|
||||
then
|
||||
TEXTWS=`hostname`
|
||||
fi
|
||||
TEXTWS=`hostname`
|
||||
export TEXTWS
|
||||
|
||||
hostName=`hostname -s`
|
||||
|
||||
if [[ -z "$PROGRAM_NAME" ]]
|
||||
then
|
||||
if [[ -z "$PROGRAM_NAME" ]]; then
|
||||
export PROGRAM_NAME="cave"
|
||||
fi
|
||||
|
||||
if [[ "${PROGRAM_NAME}" == "gfeclient" || "${PROGRAM_NAME}" == "gfeClientServer" ]]
|
||||
then
|
||||
if [[ "${PROGRAM_NAME}" == "gfeclient" || "${PROGRAM_NAME}" == "gfeClientServer" ]]; then
|
||||
export CAVE_INI_ARG="--launcher.ini /awips2/cave/cave.ini"
|
||||
else
|
||||
lookupINI "$@"
|
||||
|
@ -183,15 +155,6 @@ if [[ -z $IGNORE_NUM_CAVES ]]; then
|
|||
memOfLaunchingCave=$(($memOfLaunchingCave / $BYTES_IN_MB))
|
||||
_totalRunningMem=$(($_totalRunningMem / $BYTES_IN_MB))
|
||||
getPidsOfMyRunningCaves
|
||||
memMsg="$_numPids CAVE applications already running with a combined max memory of ${_totalRunningMem}MB. "
|
||||
memMsg+="The requested application has a max memory requirement of ${memOfLaunchingCave}MB. "
|
||||
memMsg+="Starting may impact system performance and stability.\n\nProceed?"
|
||||
zenity --question --title "Low Available Memory for Application" --text "$memMsg"
|
||||
cancel="$?"
|
||||
|
||||
if [[ "$cancel" == "1" ]]; then
|
||||
exit
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
|
@ -245,9 +208,6 @@ export LOGFILE_STARTUP_SHUTDOWN="$FULL_LOGDIR/${PROGRAM_NAME}_${pid}_${curTime}_
|
|||
createEclipseConfigurationDir
|
||||
TMP_VMARGS="--launcher.appendVmargs -vmargs -Djava.io.tmpdir=${eclipseConfigurationDir}"
|
||||
|
||||
# Force GTK2
|
||||
export SWT_GTK3=0
|
||||
|
||||
# At this point fork so that log files can be set up with the process pid and
|
||||
# this process can log the exit status of cave.
|
||||
(
|
||||
|
@ -256,7 +216,7 @@ export SWT_GTK3=0
|
|||
touch ${LOGFILE_STARTUP_SHUTDOWN}
|
||||
fi
|
||||
|
||||
# remove "-noredirect" flag from command-line if set so it doesn't confuse any
|
||||
# remove "-noredirect" flag from command-line if set so it does not confuse any
|
||||
# commands we call later.
|
||||
redirect="true"
|
||||
USER_ARGS=()
|
||||
|
|
|
@ -46,6 +46,7 @@
|
|||
# Aug 09, 2016 ASM#18911 D. Friedman Add minimum purge period of 24 hours. Use a lock file to prevent
|
||||
# simultaneous purges. Allow override of days to keep.
|
||||
# Jan 26,2017 #6092 randerso return exitCode so it can be propagated back to through the calling processes
|
||||
# Apr 17, 2018 M. James Cleanup for containerization
|
||||
########################
|
||||
|
||||
source /awips2/cave/iniLookup.sh
|
||||
|
@ -417,9 +418,7 @@ function deleteOldCaveLogs()
|
|||
|
||||
# Purge the old logs.
|
||||
local n_days_to_keep=${CAVE_LOG_DAYS_TO_KEEP:-30}
|
||||
echo -e "Cleaning consoleLogs: "
|
||||
echo -e "find $logdir -type f -name "*.log" -mtime +$n_days_to_keep | xargs rm "
|
||||
find "$logdir" -type f -name "*.log" -mtime +"$n_days_to_keep" | xargs rm
|
||||
find "$logdir" -type f -name "*.log" -mtime +"$n_days_to_keep" | xargs -r rm
|
||||
|
||||
# Record the last purge time and remove the lock file.
|
||||
echo $(date +%s) > "$last_purge_f"
|
||||
|
@ -436,7 +435,7 @@ function deleteOldEclipseConfigurationDirs()
|
|||
local save_IFS=$IFS
|
||||
IFS=$'\n'
|
||||
# Find directories that are owned by the user and older than one hour
|
||||
local old_dirs=( $(find "$tmp_dir" -mindepth 1 -maxdepth 1 -type d -user "$USER" -mmin +60) )
|
||||
local old_dirs=( $(find "$tmp_dir" -mindepth 1 -maxdepth 1 -type d -user "$(whoami)" -mmin +60) )
|
||||
IFS=$save_IFS
|
||||
if (( ${#old_dirs[@]} < 1 )); then
|
||||
return
|
||||
|
@ -473,7 +472,7 @@ function deleteEclipseConfigurationDir()
|
|||
function createEclipseConfigurationDir()
|
||||
{
|
||||
local d dir id=$(hostname)-$(whoami)
|
||||
for d in "/local/cave-eclipse/" "$HOME/.cave-eclipse/"; do
|
||||
for d in "$HOME/caveData/.cave-eclipse/"; do
|
||||
if [[ $d == $HOME/* ]]; then
|
||||
mkdir -p "$d" || continue
|
||||
fi
|
||||
|
@ -486,7 +485,7 @@ function createEclipseConfigurationDir()
|
|||
fi
|
||||
done
|
||||
echo "Unable to create a unique Eclipse configuration directory. Will proceed with default." >&2
|
||||
export eclipseConfigurationDir=$HOME/.cave-eclipse
|
||||
export eclipseConfigurationDir=$HOME/caveData/.cave-eclipse
|
||||
return 1
|
||||
}
|
||||
|
||||
|
|
2
dist/comps.xml
vendored
2
dist/comps.xml
vendored
|
@ -11,7 +11,6 @@
|
|||
<packagereq type="default">awips2-eclipse</packagereq>
|
||||
<packagereq type="default">awips2-ant</packagereq>
|
||||
<packagereq type="default">awips2-groovy</packagereq>
|
||||
<packagereq type="default">awips2-ldm</packagereq>
|
||||
<packagereq type="default">awips2-python</packagereq>
|
||||
<packagereq type="default">awips2-python-cython</packagereq>
|
||||
<packagereq type="default">awips2-python-dateutil</packagereq>
|
||||
|
@ -45,7 +44,6 @@
|
|||
<packagereq type="default">awips2-qpid-java-broker</packagereq>
|
||||
<packagereq type="default">awips2-qpid-lib</packagereq>
|
||||
<packagereq type="default">awips2-localization</packagereq>
|
||||
<packagereq type="default">awips2-ldm</packagereq>
|
||||
<packagereq type="default">awips2-tools</packagereq>
|
||||
<packagereq type="default">awips2-maps-database</packagereq>
|
||||
<packagereq type="default">awips2-data.hdf5-topo</packagereq>
|
||||
|
|
|
@ -143,7 +143,7 @@
|
|||
|
||||
#$=============================================================================
|
||||
#$ This section contains the tokens whose values are different between the
|
||||
#$ development and the delivery tree. The value give is the development
|
||||
#$ development and the delivery tree. The value given is the development
|
||||
#$ value. The commented value is the delivery value. The uncommented value
|
||||
#$ is in the development tree. All of these tokens must be enclosed
|
||||
#$ by the AWIPS_MODIFICATION_BLOCK_BEGIN and AWIPS_MODIFICATION_BLOCK_END
|
||||
|
@ -155,7 +155,7 @@ apps_dir : $(SHARE_DIR)/hydroapps # Hydrologic applications director
|
|||
|
||||
data_archive_root : /awips2/data_store # root directory of the data archive
|
||||
|
||||
mcp3_icp_iface : $(HOME)/mcp3_ntrfc
|
||||
#mcp3_icp_iface : $(HOME)/mcp3_ntrfc
|
||||
#mcp3_icp_iface : /tmp/$(LOGNAME)/mcp3_ntrfc
|
||||
|
||||
verify_dir : $(apps_dir)/rfc/verify #base verify directory
|
||||
|
|
|
@ -9,11 +9,6 @@
|
|||
#
|
||||
# awips2-cave Spec File
|
||||
#
|
||||
# Note: an upgrade prevention check has been added to the %pre section to ensure that
|
||||
# this RPM cannot be upgraded. Upgrading this RPM will completely corrupt all of the CAVE
|
||||
# rcp configuration information. So, a completely re-installation of this RPM and subsequently
|
||||
# all of CAVE is required whenever an updated version of this RPM is released.
|
||||
#
|
||||
%define __prelink_undo_cmd %{nil}
|
||||
# Turn off the brp-python-bytecompile script
|
||||
%global __os_install_post %(echo '%{__os_install_post}' | sed -e 's!/usr/lib[^[:space:]]*/brp-python-bytecompile[[:space:]].*$!!g')
|
||||
|
@ -209,7 +204,6 @@ if [ -d /awips2/cave ]; then
|
|||
fi
|
||||
|
||||
%postun
|
||||
rm -rf /awips2/cave
|
||||
|
||||
%pre
|
||||
|
||||
|
|
|
@ -25,7 +25,6 @@ Packager: %{_build_site}
|
|||
AutoReq: no
|
||||
provides: %{_component_name}
|
||||
Requires: wget unzip bc
|
||||
Obsoletes: awips2-edex-upc
|
||||
|
||||
%description
|
||||
%{_component_desc}
|
||||
|
|
|
@ -55,7 +55,7 @@ IP=`/sbin/ifconfig $usedev | grep -v "inet6" | grep "inet" | awk '{ print $2 }'
|
|||
# truncate
|
||||
IP_CIDR="${IP%.*}"
|
||||
|
||||
YMD=`date '+%Y%m%d'`
|
||||
YMD=`date '+%Y%m%d' -u`
|
||||
|
||||
args=("$@")
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
%define _ldm_version 6.13.6
|
||||
%define _ldm_version 6.13.7
|
||||
%define _ldm_src_tar ldm-%{_ldm_version}.tar.gz
|
||||
# ldm-%{_ldm_version}.tar.gz is tarred up ldm-%{_ldm_version}/src dir after
|
||||
# ISG makes retrans changes
|
||||
|
@ -74,45 +74,24 @@ _ldm_destination_source=${_ldm_destination}/SOURCES
|
|||
_Installer_ldm=%{_baseline_workspace}/rpms/awips2.upc/Installer.ldm
|
||||
_ldm_root_dir=/awips2/ldm
|
||||
|
||||
_ldm_build_bin=%{_build_root}/awips2/ldm/bin
|
||||
_edex_bin=%{_build_root}/awips2/edex/bin
|
||||
/bin/mkdir -p ${_ldm_build_bin}
|
||||
/bin/mkdir -p ${_edex_bin}
|
||||
|
||||
cd ${_Installer_ldm}/src
|
||||
#g++ edexBridge.cpp -I${_ldm_root_dir}/src/pqact \
|
||||
# -I${_ldm_root_dir}/include \
|
||||
# -I${_ldm_root_dir}/src \
|
||||
# -I/awips2/qpid/include \
|
||||
# -L${_ldm_root_dir}/lib \
|
||||
# -L/awips2/qpid/lib \
|
||||
# -l ldm -l xml2 -l qpidclient -l qpidmessaging -l qpidcommon -l qpidtypes -o edexBridge
|
||||
#if [ $? -ne 0 ]; then
|
||||
# echo "FATAL: failed to build edexBridge"
|
||||
# exit 1
|
||||
#fi
|
||||
#/bin/mv edexBridge ${_ldm_build_bin}/edexBridge
|
||||
#if [ $? -ne 0 ]; then
|
||||
# echo "FATAL: failed to move edexBridge to ldm bin directory"
|
||||
# exit 1
|
||||
#fi
|
||||
|
||||
# copy the ldm source to the destination directory.
|
||||
/bin/cp ${_Installer_ldm}/src/%{_ldm_src_tar} ${_ldm_destination_source}
|
||||
if [ $? -ne 0 ]; then
|
||||
exit 1
|
||||
fi
|
||||
cd %{_baseline_workspace}
|
||||
|
||||
/bin/cp ${_Installer_ldm}/src/edexBridge.cpp ${_ldm_destination_source}
|
||||
if [ $? -ne 0 ]; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
#
|
||||
if [[ $(uname -r |grep el6) ]];then
|
||||
cp ${_Installer_ldm}/edexBridge.el6 ${_edex_bin}/edexBridge
|
||||
elif [[ $(uname -r |grep el7) ]];then
|
||||
cp ${_Installer_ldm}/edexBridge.el7 ${_edex_bin}/edexBridge
|
||||
fi
|
||||
#_edex_bin=%{_build_root}/awips2/edex/bin
|
||||
#/bin/mkdir -p ${_edex_bin}
|
||||
#if [[ $(uname -r |grep el6) ]];then
|
||||
# cp ${_Installer_ldm}/edexBridge.el6 ${_edex_bin}/edexBridge
|
||||
#elif [[ $(uname -r |grep el7) ]];then
|
||||
# cp ${_Installer_ldm}/edexBridge.el7 ${_edex_bin}/edexBridge
|
||||
#fi
|
||||
|
||||
# Create patch tar files
|
||||
cd ${_Installer_ldm}/patch
|
||||
|
@ -166,8 +145,6 @@ fi
|
|||
%post
|
||||
_ldm_dir=/awips2/ldm
|
||||
_ldm_root_dir=${_ldm_dir}/ldm-%{_ldm_version}
|
||||
_myHost=`hostname`
|
||||
_myHost=`echo ${_myHost} | cut -f1 -d'-'`
|
||||
|
||||
# Remove old ldm dir
|
||||
rm -rf ${_ldm_root_dir}
|
||||
|
@ -192,10 +169,9 @@ if [ $? -ne 0 ]; then
|
|||
exit 1
|
||||
fi
|
||||
# Fix libtool incompatibility in source tar ball
|
||||
rm -f libtool
|
||||
ln -s /usr/bin/libtool libtool
|
||||
make LDMHOME=/awips2/ldm > make.log 2>&1
|
||||
make install LDMHOME=/awips2/ldm > install.log 2>&1
|
||||
#rm -f libtool
|
||||
#ln -s /usr/bin/libtool libtool
|
||||
make install LDMHOME=/awips2/ldm
|
||||
if [ $? -ne 0 ]; then
|
||||
echo "FATAL: make install has failed!"
|
||||
exit 1
|
||||
|
@ -225,26 +201,22 @@ do
|
|||
done
|
||||
/bin/chmod a+x ${_ldm_dir}/bin/*
|
||||
|
||||
#cd ../edexBridge
|
||||
#if [ $? -ne 0 ]; then
|
||||
# exit 1
|
||||
#fi
|
||||
#g++ edexBridge.cpp -I${_ldm_root_dir}/src/pqact \
|
||||
# -I${_ldm_root_dir}/include \
|
||||
# -I${_ldm_root_dir}/src \
|
||||
# -I/awips2/qpid/include \
|
||||
# -L${_ldm_root_dir}/lib \
|
||||
# -L/awips2/qpid/lib \
|
||||
# -l ldm -l xml2 -l qpidclient -l qpidmessaging -l qpidcommon -l qpidtypes -o edexBridge
|
||||
#if [ $? -ne 0 ]; then
|
||||
# echo "FATAL: failed to build edexBridge!"
|
||||
# exit 1
|
||||
#fi
|
||||
#/bin/mv edexBridge ${_ldm_dir}/bin/edexBridge
|
||||
#if [ $? -ne 0 ]; then
|
||||
# echo "FATAL: failed to move edexBridge to ldm bin directory!"
|
||||
# exit 1
|
||||
#fi
|
||||
g++ edexBridge.cpp -I${_ldm_root_dir}/src/pqact \
|
||||
-I${_ldm_root_dir}/include \
|
||||
-I${_ldm_root_dir}/src \
|
||||
-I/awips2/qpid/include \
|
||||
-L${_ldm_root_dir}/lib \
|
||||
-L/awips2/qpid/lib \
|
||||
-l ldm -l xml2 -l qpidclient -l qpidmessaging -l qpidcommon -l qpidtypes -o edexBridge
|
||||
if [ $? -ne 0 ]; then
|
||||
echo "FATAL: failed to build edexBridge!"
|
||||
exit 1
|
||||
fi
|
||||
/bin/mv edexBridge ${_ldm_dir}/bin/edexBridge
|
||||
if [ $? -ne 0 ]; then
|
||||
echo "FATAL: failed to move edexBridge to ldm bin directory!"
|
||||
exit 1
|
||||
fi
|
||||
cd ..
|
||||
|
||||
/sbin/ldconfig > /dev/null 2>&1
|
||||
|
@ -287,6 +259,6 @@ rm -rf ${RPM_BUILD_ROOT}
|
|||
/awips2/ldm/SOURCES/*
|
||||
%attr(755,root,root) /etc/init.d/edex_ldm
|
||||
%attr(600,awips,fxalpha) /var/spool/cron/awips
|
||||
%attr(755,awips,fxalpha) /awips2/edex/bin/edexBridge
|
||||
#%attr(755,awips,fxalpha) /awips2/edex/bin/edexBridge
|
||||
%attr(755,root,root) /etc/ld.so.conf.d/awips2-ldm.conf
|
||||
%attr(755,root,root) /etc/logrotate.d/ldm.log
|
||||
|
|
|
@ -251,10 +251,6 @@ HDS ^(JSM[TLF]..) (KWN[OH]) (..)(..)(..)
|
|||
HDS ^(IUS(Z[0-9]|Y4)[0-9]) ([A-Z]{4}) (..)(..)(..)
|
||||
FILE -overwrite -close -edex
|
||||
/awips2/data_store/bufrua/\1_\3_\4\5\6_(seq).bufr
|
||||
# bufrNCWF
|
||||
HDS ^(JSAT98) (KKCI) (..)(..)(..)
|
||||
FILE -overwrite -close -edex
|
||||
/awips2/data_store/bufrncwf/\1_\2_\3\4\5_(seq).bufr
|
||||
# bufrSIGWX
|
||||
HDS ^(JU[BCFJMNOTVW]E(00|9[679])) KKCI (..)(..)(..)
|
||||
FILE -overwrite -close -edex
|
||||
|
@ -791,12 +787,6 @@ NGRID ^([LM][ABCDFGH]U...) (KWBN) (..)(..)(..)[^!]*!(grib|grib2)/[^/]*/([^/]*)/#
|
|||
FILE -edex -close
|
||||
/awips2/data_store/grid/HPCGuide/GRID\8/HPCGuide_GRID\8_\(10)Z_\(11)_\(12)-\1_\2_\3\4\5-(seq).grib2
|
||||
#
|
||||
# National Convective Weather Detection (NCWD)
|
||||
#
|
||||
ANY ^ZDIA98 (....) ......[^!]*!grib.*/[^/]*/[^/]*/#[^/]*/([0-9]{8})([0-9]{4})/(F[0-9]{3})
|
||||
FILE -edex -close
|
||||
/awips2/data_store/grid/NCWD/NCWD_\2_\3_\4_\1-(seq).grib
|
||||
#
|
||||
# National Operational Hydrologic Remote Sensing Center Snow Analysis (NOHRSC-SNOW)
|
||||
#
|
||||
HDS ^[YZ][ES]QA88 KMSR ......[^!]*!grib.*/[^/]*/[^/]*/#[^/]*/([0-9]{8})([0-9]{4})/(F[0-9]{3})/([^/]*)
|
||||
|
@ -890,9 +880,9 @@ NGRID ^(Y.UZ9[0-9]) (KWB.) (..)(..)(..)
|
|||
#
|
||||
# ECMF-Global, ECMF1..ECMF12
|
||||
#
|
||||
#HDS ^H..... ECM. ......[^!]*!grib.*/[^/]*/[^/]*/#([^/]*)/([0-9]{8})([0-9]{4})/(F[0-9]{3})/([^/]*)
|
||||
# FILE -edex -close
|
||||
# /awips2/data_store/grid/ECMWF/ECMWF-\1_\2_\3_\4_\5-(seq).grib
|
||||
HDS ^H..... ECM. ......[^!]*!grib.*/[^/]*/[^/]*/#([^/]*)/([0-9]{8})([0-9]{4})/(F[0-9]{3})/([^/]*)
|
||||
FILE -edex -close
|
||||
/awips2/data_store/grid/ECMWF/ECMWF-\1_\2_\3_\4_\5-(seq).grib
|
||||
#
|
||||
# ---------------------------------------------------
|
||||
# - National Precipitation Verification Unit (NPVU) -
|
||||
|
@ -906,22 +896,22 @@ NGRID ^(Y.UZ9[0-9]) (KWB.) (..)(..)(..)
|
|||
#
|
||||
# Climate Forecast System Downscaled Numerical Guidance (CFS-DNG)
|
||||
#
|
||||
#HDS ^Z[ET]CZ98 KWBF ......[^!]*!grib2/ncep/CFS/#[^/]*/(............)(....)/([^/]*)
|
||||
# FILE -edex -close
|
||||
# /awips2/data_store/grid/CFS/CFS-\1\2_\3-(seq).grib2
|
||||
HDS ^Z[ET]CZ98 KWBF ......[^!]*!grib2/ncep/CFS/#[^/]*/(............)(....)/([^/]*)
|
||||
FILE -edex -close
|
||||
/awips2/data_store/grid/CFS/CFS-\1\2_\3-(seq).grib2
|
||||
#
|
||||
# Automated Satellite Precipitation Estimates from NESDIS (hourly) (AUTOSPE)
|
||||
# also called the Global Hydro-Estimator (GHE)
|
||||
#
|
||||
HDS ^ZETA9. KNES ......[^!]*!grib.*/[^/]*/[^/]*/#[^/]*/([0-9]{8})([0-9]{4})/([^/]*)/([^/]*)
|
||||
HDS ^(ZETA9.) KNES (......)
|
||||
FILE -edex -close
|
||||
/awips2/data_store/grid/AUTOSPE/AUTOSPE-\1\2_\3_\4-(seq).grib2
|
||||
/awips2/data_store/grid/AUTOSPE/AUTOSPE_\1_\2.grib2
|
||||
#
|
||||
# River Forecast Center (RFC) Quantitative Precipitation Estimation (QPE)
|
||||
#
|
||||
HDS ^ZETA98 (KTUA|PACR|KSTR|KRSA|KORN|KRHA|KKRF|KMSR|KTAR|KPTR|KTIR|KALR|KFWR) ......[^!]*!(grib|grib2)/[^/]*/([^/]*)/#255/([0-9]{8})([0-9]{4})/(F[0-9]{3})/([^/]*)
|
||||
FILE -edex -close
|
||||
/awips2/data_store/grid/QPE-RFC/QPE-RFC-\1_\3_\4_\5_\6_\7-(seq).grib
|
||||
#HDS ^ZETA98 (KTUA|PACR|KSTR|KRSA|KORN|KRHA|KKRF|KMSR|KTAR|KPTR|KTIR|KALR|KFWR) ......[^!]*!(grib|grib2)/[^/]*/([^/]*)/#255/([0-9]{8})([0-9]{4})/(F[0-9]{3})/([^/]*)
|
||||
# FILE -edex -close
|
||||
# /awips2/data_store/grid/QPE-RFC/QPE-RFC-\1_\3_\4_\5_\6_\7-(seq).grib
|
||||
#
|
||||
# ======================================
|
||||
# = Ocean Models available on the IDD =
|
||||
|
@ -929,9 +919,9 @@ HDS ^ZETA98 (KTUA|PACR|KSTR|KRSA|KORN|KRHA|KKRF|KMSR|KTAR|KPTR|KTIR|KALR|KFWR) .
|
|||
#
|
||||
# WAVE 233 Grid - Global NOAA WAVEWATCH III (WaveWatch)
|
||||
# OPJA88 KWBJ /mNOW !grib/ncep/NOW/ #233/ 201603110000/ F 000/ DIRSW/sfc/
|
||||
#HDS ^O.J.88 KWBJ.*!grib/ncep/[^/]*/#[^/]*/(............)/F(...)/(.*)/(.*)/
|
||||
# FILE -edex -close
|
||||
# /awips2/data_store/grid/WAVE-HDS-WaveWatch/WaveWatch_\1_F\2_\3_\4_%H%M%S.grib
|
||||
HDS ^O.J.88 KWBJ.*!grib/ncep/[^/]*/#[^/]*/(............)/F(...)/(.*)/(.*)/
|
||||
FILE -edex -close
|
||||
/awips2/data_store/grid/WAVE-HDS-WaveWatch/WaveWatch_\1_F\2_\3_\4_%H%M%S.grib
|
||||
#
|
||||
# WAVE 238 Grid - Regional Western North Atlantic (WAVE-WNA)
|
||||
#
|
||||
|
@ -1023,9 +1013,9 @@ HDS ^OENA88 KWBM.*ncep/ICE_120/#219/(............)/F(...)/([^/]*)/
|
|||
#
|
||||
# Real-Time Ocean Forecast System (RTOFS) for CONUS
|
||||
#
|
||||
#NGRID ^E[HSTUV][CK][B-T]01 KWBW ......[^!]*!grib.*/[^/]*/[^/]*/#[^/]*/([0-9]{8})([0-9]{4})(F[0-9]{3})/([^/]*)
|
||||
# FILE -edex -close
|
||||
# /awips2/data_store/grid/RTOFS/RTOFS_\1_\2_\3_\4-(seq).grib2
|
||||
NGRID ^E[HSTUV][CK][B-T]01 KWBW ......[^!]*!grib.*/[^/]*/[^/]*/#[^/]*/([0-9]{8})([0-9]{4})(F[0-9]{3})/([^/]*)
|
||||
FILE -edex -close
|
||||
/awips2/data_store/grid/RTOFS/RTOFS_\1_\2_\3_\4-(seq).grib2
|
||||
#
|
||||
# ESTOFS - US
|
||||
#
|
||||
|
@ -1071,9 +1061,9 @@ NGRID ^([LM]DG.{1,3}) (KNHC) (..)(..)(..)[^!]*!(grib|grib2)/[^/]*/([^/]*)/#([^/]
|
|||
#
|
||||
# GLERL
|
||||
#
|
||||
#HDS ^O.N.88 KWNB.*!grib/161/([^/]*)/#([^/]*)/(............)/F(...)/.*
|
||||
# FILE -edex -close
|
||||
# /awips2/data_store/grid/GLERL/GLERL_\1_F\2_%H%M%S.grib
|
||||
HDS ^O.N.88 KWNB.*!grib/161/([^/]*)/#([^/]*)/(............)/F(...)/.*
|
||||
FILE -edex -close
|
||||
/awips2/data_store/grid/GLERL/GLERL_\1_F\2_%H%M%S.grib
|
||||
#
|
||||
# Flash Flood Guidance (FFG) grids - 1HR=HPBL, 3HR=5WAVH, 6HR=CNWAT (FFG-PTR...)
|
||||
#
|
||||
|
@ -1095,18 +1085,18 @@ NGRID ^OUTA98 KWNB (......)[^!]*!grib2
|
|||
#
|
||||
# Regional River Forecast Center (RFC) Quantitative Precipitation Forecast (QPF) (RFCqpf)
|
||||
#
|
||||
HDS ^YEI.[89]8 (KWNH|KALR|KFWR|KKRF|KMSR|KORN|KPTR|KRHA|KRSA|KSTR|KTAR|KTIR|KTUA) .......*/#([^/]*)/([0-9]{8})([0-9]{4})/(F[0-9]{3})/[^/]*/([^/]*)
|
||||
FILE -edex -close
|
||||
/awips2/data_store/grid/Regional_RFC_QPF/GRID\2/\3_\4_\5_\6-(seq).grib
|
||||
#HDS ^YEI.[89]8 (KWNH|KALR|KFWR|KKRF|KMSR|KORN|KPTR|KRHA|KRSA|KSTR|KTAR|KTIR|KTUA) .......*/#([^/]*)/([0-9]{8})([0-9]{4})/(F[0-9]{3})/[^/]*/([^/]*)
|
||||
# FILE -edex -close
|
||||
# /awips2/data_store/grid/Regional_RFC_QPF/GRID\2/\3_\4_\5_\6-(seq).grib
|
||||
#
|
||||
# GRID218 = HPCqpf
|
||||
#
|
||||
HDS ^(ZEX.98) KWNH (..)(..)(..)[^!]*!(grib|grib2)/[^/]*/([^/]*)/#218/([0-9]{8})([0-9]{4})/(F[0-9]{3})/([^/]*)
|
||||
FILE -edex -close
|
||||
/awips2/data_store/grid/HPCqpf/HPCqpf_\9Z_\(10)_\(11)-\1_KWNH_\2\3\4-(seq).grib
|
||||
#HDS ^(ZEX.98) KWNH (..)(..)(..)[^!]*!(grib|grib2)/[^/]*/([^/]*)/#218/([0-9]{8})([0-9]{4})/(F[0-9]{3})/([^/]*)
|
||||
# FILE -edex -close
|
||||
# /awips2/data_store/grid/HPCqpf/HPCqpf_\9Z_\(10)_\(11)-\1_KWNH_\2\3\4-(seq).grib
|
||||
#
|
||||
# National Blend of Models
|
||||
#
|
||||
#NGRID ^(Y.A...) (KWE[AB]) (......)
|
||||
# FILE -edex -close
|
||||
# /awips2/data_store/grid/NationalBlend/NationalBlend_\1_\2_\3.grib2
|
||||
NGRID ^(Y.A...) (KWE[AB]) (......)
|
||||
FILE -edex -close
|
||||
/awips2/data_store/grid/NationalBlend/NationalBlend_\1_\2_\3.grib2
|
||||
|
|
|
@ -385,12 +385,6 @@ NGRID ^([LM][ABCDFGH]U...) (KWBN) (..)(..)(..)[^!]*!(grib|grib2)/[^/]*/([^/]*)/#
|
|||
FILE -edex -close
|
||||
/awips2/data_store/grid/HPCGuide/GRID\8/HPCGuide_GRID\8_\(10)Z_\(11)_\(12)-\1_\2_\3\4\5-(seq).grib2
|
||||
#
|
||||
# National Convective Weather Detection (NCWD)
|
||||
#
|
||||
ANY ^ZDIA98 (....) ......[^!]*!grib.*/[^/]*/[^/]*/#[^/]*/([0-9]{8})([0-9]{4})/(F[0-9]{3})
|
||||
FILE -edex -close
|
||||
/awips2/data_store/grid/NCWD/NCWD_\2_\3_\4_\1-(seq).grib
|
||||
#
|
||||
# National Operational Hydrologic Remote Sensing Center Snow Analysis (NOHRSC-SNOW)
|
||||
#
|
||||
HDS ^[YZ][ES]QA88 KMSR ......[^!]*!grib.*/[^/]*/[^/]*/#[^/]*/([0-9]{8})([0-9]{4})/(F[0-9]{3})/([^/]*)
|
||||
|
|
|
@ -26,7 +26,7 @@
|
|||
#include <sstream>
|
||||
#include <memory>
|
||||
#include <filel.h>
|
||||
#include <ulog.h>
|
||||
#include <log/log.h>
|
||||
#include <getopt.h>
|
||||
#include <signal.h>
|
||||
#include <sys/time.h>
|
||||
|
@ -100,7 +100,7 @@ public:
|
|||
// limit number of messages sent at one time so we don't miss messages from shared memory if
|
||||
// a message build up occurred due to qpid being down (usual rate is under 100 a second)
|
||||
while ((!this->filenameList.empty()) && (messagesProcessed < this->maxMessagesPerSend)) {
|
||||
Message message;
|
||||
qpid::messaging::Message message;
|
||||
|
||||
fileLocation = this->filenameList.front();
|
||||
fileHeader = this->headerList.front();
|
||||
|
@ -121,7 +121,8 @@ public:
|
|||
}
|
||||
} catch (const std::exception& error) {
|
||||
// Error occurred during communication. Clean up the connection and return the number of messages processed.
|
||||
uerror(error.what());
|
||||
log_add(error.what());
|
||||
log_flush_error();
|
||||
cleanup();
|
||||
|
||||
}
|
||||
|
@ -132,7 +133,8 @@ private:
|
|||
|
||||
void cleanup()
|
||||
{
|
||||
unotice ("Cleaning up");
|
||||
log_add ("Cleaning up");
|
||||
log_flush_info();
|
||||
|
||||
// Destroy resources.
|
||||
if (this->sender != 0)
|
||||
|
@ -144,7 +146,8 @@ private:
|
|||
}
|
||||
catch (const std::exception& error)
|
||||
{
|
||||
uwarn(error.what());
|
||||
log_add(error.what());
|
||||
log_flush_error();
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -157,7 +160,8 @@ private:
|
|||
}
|
||||
catch (const std::exception& error)
|
||||
{
|
||||
uwarn(error.what());
|
||||
log_add(error.what());
|
||||
log_flush_error();
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -170,7 +174,8 @@ private:
|
|||
}
|
||||
catch (const std::exception& error)
|
||||
{
|
||||
uwarn(error.what());
|
||||
log_add(error.what());
|
||||
log_flush_error();
|
||||
}
|
||||
}
|
||||
this->isConnected = false;
|
||||
|
@ -217,7 +222,8 @@ private:
|
|||
}
|
||||
catch (const std::exception& error)
|
||||
{
|
||||
uerror(error.what());
|
||||
log_add(error.what());
|
||||
log_flush_error();
|
||||
cleanup();
|
||||
}
|
||||
return this->isConnected;
|
||||
|
@ -230,8 +236,9 @@ static volatile int done = 0;
|
|||
static edex_message * messageCursor;
|
||||
|
||||
static void cleanup(void) {
|
||||
unotice("Exiting");
|
||||
(void) closeulog();
|
||||
log_add("Exiting");
|
||||
log_flush_info();
|
||||
log_fini();
|
||||
}
|
||||
|
||||
/*
|
||||
|
@ -259,7 +266,7 @@ static void signal_handler(int sig) {
|
|||
/* TODO? stats */
|
||||
return;
|
||||
case SIGUSR2:
|
||||
rollulogpri();
|
||||
//rollulogpri();
|
||||
return;
|
||||
case SIGALRM:
|
||||
return;
|
||||
|
@ -309,7 +316,7 @@ static void set_sigactions(void) {
|
|||
int main(int argc, char* argv[]) {
|
||||
|
||||
char * logfname = 0;
|
||||
int loggingToStdErr = 0;
|
||||
log_init(argv[0]);
|
||||
std::string brokerURI = "127.0.0.1";
|
||||
int port = 5672;
|
||||
std::string username = "guest";
|
||||
|
@ -342,19 +349,19 @@ int main(int argc, char* argv[]) {
|
|||
|
||||
}
|
||||
}
|
||||
(void) setulogmask(logmask);
|
||||
}
|
||||
|
||||
if (atexit(cleanup) != 0) {
|
||||
serror("atexit");
|
||||
unotice("Exiting");
|
||||
//serror("atexit");
|
||||
log_add("Exiting");
|
||||
log_flush_info();
|
||||
log_fini();
|
||||
exit(1);
|
||||
/*NOTREACHED*/
|
||||
}
|
||||
|
||||
loggingToStdErr = STDERR_FILENO == openulog(ubasename(argv[0]), (LOG_CONS
|
||||
| LOG_PID), LOG_LDM, logfname);
|
||||
unotice("Starting Up");
|
||||
log_add("Starting Up");
|
||||
log_flush_info();
|
||||
|
||||
set_sigactions();
|
||||
|
||||
|
@ -376,8 +383,10 @@ int main(int argc, char* argv[]) {
|
|||
int semCounter = 0;
|
||||
while ((semid = semget(semkey, 2, 0666)) == -1) {
|
||||
if (semCounter == 5) {
|
||||
uerror(
|
||||
log_add(
|
||||
"Could not attach to the semaphore created by pqact. Exiting.");
|
||||
log_flush_error();
|
||||
log_fini();
|
||||
exit(0);
|
||||
}
|
||||
semCounter++;
|
||||
|
@ -386,8 +395,10 @@ int main(int argc, char* argv[]) {
|
|||
int sizeOfQueue = semctl(semid, 0, GETVAL);
|
||||
shmid = shmget(key, sizeof(edex_message) * sizeOfQueue, 0666);
|
||||
if (shmid == -1) {
|
||||
uerror(
|
||||
log_add(
|
||||
"Could not attach to the shared memory created by pqact. Exiting.");
|
||||
log_flush_error();
|
||||
log_fini();
|
||||
exit(0);
|
||||
}
|
||||
|
||||
|
@ -414,7 +425,7 @@ int main(int argc, char* argv[]) {
|
|||
|
||||
// Need to copy in the end of the queue before moving to front
|
||||
if (lastQueueSize > queueSize) {
|
||||
unotice(
|
||||
log_add(
|
||||
"Coming over the top with lastQueueSize of %d on a size of %d",
|
||||
lastQueueSize, sizeOfQueue);
|
||||
endQueueDiff = sizeOfQueue - lastQueueSize;
|
||||
|
@ -434,21 +445,24 @@ int main(int argc, char* argv[]) {
|
|||
|
||||
int messagesSent = 0;
|
||||
if ((messagesSent = producer.send()) == -1) {
|
||||
uerror(
|
||||
log_add(
|
||||
"Could not connect to the remote EDEX instance. %d messages waiting to be sent. Will try again in 1 second.",
|
||||
producer.getMessageCount());
|
||||
log_flush_error();
|
||||
sleep(1);
|
||||
continue;
|
||||
}
|
||||
if ((messagesSent != maxMessagesPerSend) && (messagesSent != (queue_diff + endQueueDiff))) {
|
||||
uerror(
|
||||
log_add(
|
||||
"Only %d messages were sent out of an expected %d. Will store those not sent and try again.",
|
||||
messagesSent, queue_diff);
|
||||
log_flush_error();
|
||||
|
||||
}
|
||||
unotice(
|
||||
log_add(
|
||||
"Sent %d messages (%d at the end of the queue, %d normally).",
|
||||
messagesSent, endQueueDiff, queue_diff);
|
||||
log_flush_info();
|
||||
}
|
||||
sleep(1);
|
||||
}
|
||||
|
|
Binary file not shown.
BIN
rpms/awips2.upc/Installer.ldm/src/ldm-6.13.7.tar.gz
Normal file
BIN
rpms/awips2.upc/Installer.ldm/src/ldm-6.13.7.tar.gz
Normal file
Binary file not shown.
Loading…
Add table
Reference in a new issue