added awips2-edex-upc RPM build. various updates relates to other RPM builds. incremented LDM rpm.
Former-commit-id: 42c43cf844
This commit is contained in:
parent
eb04ff9f53
commit
cfea8da633
10 changed files with 684 additions and 15 deletions
|
@ -46,9 +46,9 @@ collectingFolder=${archivePrefix}
|
|||
# configs=win32,win32,x86 & linux,motif,x86
|
||||
# By default the value is *,*,*
|
||||
#configs = *, *, *
|
||||
configs=linux, gtk, x86_64
|
||||
# linux, gtk, x86_64 & \
|
||||
# win32, win32, x86
|
||||
configs=linux, gtk, x86 & \
|
||||
linux, gtk, x86_64 & \
|
||||
win32, win32, x86
|
||||
# win32, win32, x86 & \
|
||||
# linux, gtk, x86_64 & \
|
||||
# linux, motif, x86 & \
|
||||
|
@ -134,7 +134,7 @@ timestamp=007
|
|||
#Os/Ws/Arch/nl of the eclipse specified by baseLocation
|
||||
baseos=linux
|
||||
basews=gtk
|
||||
basearch=x86_64
|
||||
basearch=x86
|
||||
|
||||
#this property indicates whether you want the set of plug-ins and features to be considered during the build to be limited to the ones reachable from the features / plugins being built
|
||||
filteredDependencyCheck=false
|
||||
|
|
|
@ -4,12 +4,12 @@
|
|||
# Build Variables:
|
||||
# -----------------------------------------------------------------------------
|
||||
VAR_AWIPSII_TOP_DIR="/home/mjames/rpmbuild"
|
||||
VAR_WORKSPACE="/awips2/repo/awips2-builds"
|
||||
VAR_WORKSPACE="/awips2/jenkins/buildspace/workspace"
|
||||
VAR_AWIPSII_BUILD_ROOT="/tmp/awips-component"
|
||||
VAR_AWIPSII_VERSION=""
|
||||
VAR_AWIPSII_RELEASE=""
|
||||
VAR_UFRAME_ECLIPSE="/awips2/eclipse"
|
||||
VAR_AWIPSCM_SHARE="/awipscm"
|
||||
VAR_AWIPSCM_SHARE="/awips2/jenkins/buildspace/workspace/awipscm"
|
||||
# -----------------------------------------------------------------------------
|
||||
|
||||
if [ "${AWIPSII_TOP_DIR}" = "" ] &&
|
||||
|
|
|
@ -9,7 +9,7 @@
|
|||
Name: awips2-ldm
|
||||
Summary: AWIPS II LDM Distribution
|
||||
Version: %{_ldm_version}
|
||||
Release: 10
|
||||
Release: 11
|
||||
Group: AWIPSII
|
||||
BuildRoot: /tmp
|
||||
BuildArch: noarch
|
||||
|
@ -47,7 +47,6 @@ fi
|
|||
|
||||
# create the ldm directory
|
||||
/bin/mkdir -p %{_build_root}/usr/local/ldm/SOURCES
|
||||
/bin/mkdir -p %{_build_root}/awips2/tools/bin
|
||||
if [ $? -ne 0 ]; then
|
||||
exit 1
|
||||
fi
|
||||
|
@ -138,10 +137,6 @@ fi
|
|||
if [ $? -ne 0 ]; then
|
||||
exit 1
|
||||
fi
|
||||
/bin/cp edex %{_build_root}/awips2/tools/bin
|
||||
if [ $? -ne 0 ]; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
%pre
|
||||
if [ -d /tmp/ldm ]; then
|
||||
|
@ -343,6 +338,5 @@ rm -rf ${RPM_BUILD_ROOT}
|
|||
/usr/local/ldm/SOURCES/*
|
||||
|
||||
%attr(755,root,root) /etc/profile.d/awipsLDM.csh
|
||||
%attr(755,root,root) /awips2/tools/bin/edex
|
||||
%attr(755,root,root) /etc/ld.so.conf.d/awips2-ldm.conf
|
||||
%attr(755,root,root) /etc/logrotate.d/ldm.log
|
||||
|
|
189
rpms/awips2.core/Installer.upc/.other.spec
Normal file
189
rpms/awips2.core/Installer.upc/.other.spec
Normal file
|
@ -0,0 +1,189 @@
|
|||
%define _installation_directory "/awips2"
|
||||
#
|
||||
# awips2-edex-environment
|
||||
#
|
||||
Name: awips2-edex-environment
|
||||
Summary: awips2-edex-environment
|
||||
Version: %{_component_version}
|
||||
Release: %{_component_release}
|
||||
Group: AWIPSII
|
||||
BuildRoot: %{_build_root}
|
||||
BuildArch: noarch
|
||||
URL: N/A
|
||||
License: N/A
|
||||
Distribution: N/A
|
||||
Vendor: Raytheon
|
||||
Packager: Bryan Kowal
|
||||
|
||||
AutoReq: no
|
||||
provides: awips2-edex-environment
|
||||
requires: awips2-edex-base
|
||||
requires: awips2-postgresql
|
||||
requires: awips2-qpid-java-broker
|
||||
requires: awips2-qpid-java-client
|
||||
requires: awips2-qpid-java-common
|
||||
requires: awips2-python
|
||||
requires: awips2-java
|
||||
requires: awips2-psql
|
||||
|
||||
%description
|
||||
The edex environment version of awips2-edex consists of
|
||||
the AWIPS II edex-environment manager. The edex-environment manager exists to spawn
|
||||
and configure additional instances of the AWIPS II processing triad {postgresql,
|
||||
qpid, edex}.
|
||||
|
||||
# Disable byte-compiling of python and repacking of jar files.
|
||||
%global __os_install_post %(echo '%{__os_install_post}' | sed -e 's!/usr/lib[^[:space:]]*/brp-python-bytecompile[[:space:]].*$!!g')
|
||||
%global __os_install_post %(echo '%{__os_install_post}' | sed -e 's!/usr/lib[^[:space:]]*/brp-java-repack-jars[[:space:]].*$!!g')
|
||||
|
||||
%prep
|
||||
# Verify that a build root has been specified.
|
||||
if [ "%{build_root}" = "" ]; then
|
||||
echo "ERROR: A 'BuildRoot' has not been specified."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
rm -rf %{_build_root}
|
||||
if [ $? -ne 0 ]; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
%build
|
||||
# build the edex-environment utilities
|
||||
pushd . > /dev/null 2>&1
|
||||
# Run the pde build.
|
||||
cd %{_baseline_workspace}/build.wes2bridge.utility
|
||||
/awips2/ant/bin/ant -f build.xml \
|
||||
-Declipse.dir=%{_uframe_eclipse}
|
||||
if [ $? -ne 0 ]; then
|
||||
echo "ERROR: The pde build of the wes2bridge utilities has failed."
|
||||
exit 1
|
||||
fi
|
||||
popd > /dev/null 2>&1
|
||||
|
||||
%install
|
||||
mkdir -p %{_build_root}%{_installation_directory}/edex-environment/scripts
|
||||
if [ $? -ne 0 ]; then
|
||||
exit 1
|
||||
fi
|
||||
mkdir -p %{_build_root}%{_installation_directory}/edex-environment/macro/utilities
|
||||
if [ $? -ne 0 ]; then
|
||||
exit 1
|
||||
fi
|
||||
mkdir -p %{_build_root}%{_installation_directory}/edex-environment/macro/functions
|
||||
if [ $? -ne 0 ]; then
|
||||
exit 1
|
||||
fi
|
||||
mkdir -p %{_build_root}/etc/profile.d
|
||||
if [ $? -ne 0 ]; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# create the edex environment directory.
|
||||
mkdir -p %{_build_root}/usr/local/edex-environment
|
||||
|
||||
# Run the deployment to the specified directory:
|
||||
# %{_build_root}%{_installation_directory}/edex
|
||||
|
||||
# "install" the wes2bridge utilities
|
||||
cd %{_baseline_workspace}/com.raytheon.wes2bridge.configuration
|
||||
/awips2/ant/bin/ant -f build.xml \
|
||||
-Ddestination.directory=%{_build_root}%{_installation_directory}/edex-environment/macro/utilities \
|
||||
-Declipse.directory=%{_uframe_eclipse} \
|
||||
-Drpm.build=true
|
||||
if [ $? -ne 0 ]; then
|
||||
exit 1
|
||||
fi
|
||||
cd %{_baseline_workspace}/com.raytheon.wes2bridge.datalink
|
||||
/awips2/ant/bin/ant -f build.xml \
|
||||
-Ddestination.directory=%{_build_root}%{_installation_directory}/edex-environment/macro/utilities \
|
||||
-Declipse.directory=%{_uframe_eclipse} \
|
||||
-Drpm.build=true
|
||||
if [ $? -ne 0 ]; then
|
||||
exit 1
|
||||
fi
|
||||
cd %{_baseline_workspace}/com.raytheon.wes2bridge.manager
|
||||
/awips2/ant/bin/ant -f build.xml \
|
||||
-Ddestination.directory=%{_build_root}%{_installation_directory}/edex-environment/macro/utilities \
|
||||
-Declipse.directory=%{_uframe_eclipse} \
|
||||
-Drpm.build=true
|
||||
if [ $? -ne 0 ]; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
_QPID_VERSION="0.18"
|
||||
RPM_PROJECT="%{_baseline_workspace}/rpms"
|
||||
POSTGRES_INITD="${RPM_PROJECT}/awips2.core/Installer.postgres/scripts/init.d/edex_postgres"
|
||||
QPID_INITD="${RPM_PROJECT}/awips2.qpid/${_QPID_VERSION}/SOURCES/qpidd"
|
||||
EDEX_INITD="${RPM_PROJECT}/awips2.edex/Installer.edex/scripts/init.d/edex_camel"
|
||||
HTTPD_PYPIES_INITD="${RPM_PROJECT}/awips2.core/Installer.httpd-pypies/configuration/etc/init.d/httpd-pypies"
|
||||
|
||||
# Copy the startup scripts.
|
||||
cp ${POSTGRES_INITD} \
|
||||
%{_build_root}%{_installation_directory}/edex-environment/scripts
|
||||
if [ $? -ne 0 ]; then
|
||||
exit 1
|
||||
fi
|
||||
cp ${QPID_INITD} \
|
||||
%{_build_root}%{_installation_directory}/edex-environment/scripts
|
||||
if [ $? -ne 0 ]; then
|
||||
exit 1
|
||||
fi
|
||||
cp ${EDEX_INITD} \
|
||||
%{_build_root}%{_installation_directory}/edex-environment/scripts
|
||||
if [ $? -ne 0 ]; then
|
||||
exit 1
|
||||
fi
|
||||
cp ${HTTPD_PYPIES_INITD} \
|
||||
%{_build_root}%{_installation_directory}/edex-environment/scripts
|
||||
if [ $? -ne 0 ]; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Copy the edex-environment macro, functions, and utilities.
|
||||
DELIVERABLES="${RPM_PROJECT}/awips2.core/Installer.edex-environment/wes2bridge.files/deliverables"
|
||||
|
||||
# Macro and functions.
|
||||
cp ${DELIVERABLES}/scripts/edex-environment \
|
||||
%{_build_root}%{_installation_directory}/edex-environment/macro
|
||||
if [ $? -ne 0 ]; then
|
||||
exit 1
|
||||
fi
|
||||
cp ${DELIVERABLES}/scripts/functions/*.sh \
|
||||
%{_build_root}%{_installation_directory}/edex-environment/macro/functions
|
||||
if [ $? -ne 0 ]; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# The profile.d script.
|
||||
cp ${DELIVERABLES}/profile.d/* \
|
||||
%{_build_root}/etc/profile.d
|
||||
if [ $? -ne 0 ]; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
%pre
|
||||
%post
|
||||
%preun
|
||||
%postun
|
||||
|
||||
%files
|
||||
%defattr(644,awips,fxalpha,755)
|
||||
%dir /awips2
|
||||
|
||||
%dir /usr/local/edex-environment
|
||||
|
||||
%defattr(644,root,root,755)
|
||||
%dir /awips2/edex-environment
|
||||
%dir /awips2/edex-environment/scripts
|
||||
/awips2/edex-environment/scripts/*
|
||||
%dir /awips2/edex-environment/macro
|
||||
%dir /awips2/edex-environment/macro/utilities
|
||||
/awips2/edex-environment/macro/utilities/*
|
||||
%dir /awips2/edex-environment/macro/functions
|
||||
/awips2/edex-environment/macro/functions/*
|
||||
/etc/profile.d/awips2-edex-env.sh
|
||||
/etc/profile.d/awips2-edex-env.csh
|
||||
|
||||
%defattr(700,root,root,755)
|
||||
/awips2/edex-environment/macro/edex-environment
|
60
rpms/awips2.core/Installer.upc/component.spec
Normal file
60
rpms/awips2.core/Installer.upc/component.spec
Normal file
|
@ -0,0 +1,60 @@
|
|||
#
|
||||
# AWIPS II UPC Spec File
|
||||
#
|
||||
%define __prelink_undo_cmd %{nil}
|
||||
Name: awips2-edex-upc
|
||||
Summary: AWIPS II UPC EDEX Tools
|
||||
Version: 14.2.1
|
||||
Release: 1
|
||||
Group: AWIPSII
|
||||
BuildRoot: /tmp
|
||||
URL: N/A
|
||||
License: N/A
|
||||
Distribution: N/A
|
||||
Vendor: Unidata
|
||||
Packager: Michael James
|
||||
|
||||
AutoReq: no
|
||||
PreReq: awips2-edex-configuration
|
||||
provides: awips2-edex-upc
|
||||
|
||||
%description
|
||||
AWIPS II UPC EDEX
|
||||
|
||||
%prep
|
||||
# Verify That The User Has Specified A BuildRoot.
|
||||
if [ "${RPM_BUILD_ROOT}" = "/tmp" ]
|
||||
then
|
||||
echo "An Actual BuildRoot Must Be Specified. Use The --buildroot Parameter."
|
||||
echo "Unable To Continue ... Terminating"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if rpm -q awips2-edex-upc
|
||||
then
|
||||
echo "ERROR: the awips2-edex-upc rpm must not be built"
|
||||
echo " on a machine with an awips2-edex-upc"
|
||||
echo " installation."
|
||||
echo "Unable To Continue ... Terminating."
|
||||
fi
|
||||
|
||||
%build
|
||||
|
||||
%install
|
||||
# create build root directory
|
||||
rm -rf ${RPM_BUILD_ROOT}/awips2
|
||||
mkdir -p ${RPM_BUILD_ROOT}/awips2/tools/bin
|
||||
/bin/cp %{_baseline_workspace}/rpms/awips2.core/Installer.upc/edex ${RPM_BUILD_ROOT}/awips2/tools/bin/
|
||||
|
||||
%pre
|
||||
|
||||
%post
|
||||
/awips2/tools/bin/edex setup
|
||||
|
||||
%postun
|
||||
|
||||
%clean
|
||||
rm -rf ${RPM_BUILD_ROOT}/*
|
||||
|
||||
%files
|
||||
%attr(755,awips,fxalpha) /awips2/tools/bin/edex
|
414
rpms/awips2.core/Installer.upc/edex
Executable file
414
rpms/awips2.core/Installer.upc/edex
Executable file
|
@ -0,0 +1,414 @@
|
|||
#!/bin/bash
|
||||
#-----------------------------------------------------------------------#
|
||||
# Options #
|
||||
# #
|
||||
# edex [status] #
|
||||
# 'edex' defaults to 'edex status', notifying the user whether #
|
||||
# edex services are on, and which ones. #
|
||||
# #
|
||||
# edex start/stop #
|
||||
# Controls stopping / starting all edex standalone services: #
|
||||
# edex_postgres #
|
||||
# edex_camel #
|
||||
# httpd_pypies #
|
||||
# qpid #
|
||||
# #
|
||||
# edex log [ingest|request|gribingest|datingest] #
|
||||
# Monitors the current day's requested log. Defaults to ingest. #
|
||||
# #
|
||||
# #
|
||||
# edex setup #
|
||||
# Adds server IP and hostname to EDEX config files if they don't #
|
||||
# contain the correct setting already (requires user prompt) #
|
||||
# #
|
||||
#-----------------------------------------------------------------------#
|
||||
# ChangeLog #
|
||||
# 07/2011 M.James/Unidata Created #
|
||||
#-----------------------------------------------------------------------#
|
||||
|
||||
# directories definitions
|
||||
AWIPS_HOME="/awips2/"
|
||||
EDEX_PATH=$AWIPS_HOME'edex/'
|
||||
DATA_PATH=$AWIPS_HOME'data/'
|
||||
LOG_PATH=$EDEX_PATH'logs/'
|
||||
|
||||
|
||||
# files
|
||||
PG_FILE=$DATA_PATH'pg_hba.conf'
|
||||
EDEX_ENV_FILE=$EDEX_PATH'bin/setup.env'
|
||||
PY_FILE=$AWIPS_HOME'httpd_pypies/etc/httpd/conf/httpd.conf'
|
||||
EDEX_CAMEL=/etc/init.d/edex_camel
|
||||
|
||||
# valid options
|
||||
options=( 'status' 'start' 'stop' 'log' 'setup' 'test' )
|
||||
nopts=${options[@]}
|
||||
|
||||
# main program
|
||||
#
|
||||
|
||||
# Construct IP subnet
|
||||
#
|
||||
# OS X
|
||||
#IP=`ifconfig | grep -E 'inet.[0-9]' | grep -v '127.0.0.1' | awk '{ print $2}'`
|
||||
# Linux
|
||||
IP=`ifconfig | grep "inet addr" | grep -v 127.0.0 | grep -v 192.168 | awk '{ print $2 }' | cut -d: -f2`
|
||||
|
||||
# truncate
|
||||
IP_CIDR="${IP%.*}"
|
||||
|
||||
editFiles=($PG_FILE $EDEX_ENV_FILE $PY_FILE $EDEX_CAMEL)
|
||||
boolFiles=(true true true true)
|
||||
editFuncs=(edit_pg edit_edex edit_py edit_camel )
|
||||
|
||||
YMD=`date '+%Y%m%d'`
|
||||
|
||||
args=("$@")
|
||||
|
||||
# functions
|
||||
edex_status() { # report back edex server on/off status
|
||||
echo ''
|
||||
echo '[edex status]'
|
||||
# CHECK POSTGRES
|
||||
postgres_prc=`ps aux | grep postgresql\/bin\/postmaster | grep -v grep | awk '{ print $11 }'`
|
||||
if [ -z $postgres_prc ]; then
|
||||
echo ' postgres :: not running'
|
||||
else
|
||||
postgresPid=`ps aux | grep postgresql\/bin\/postmaster | grep -v grep | awk '{ print $2 }'`
|
||||
echo ' postgres :: running :: pid '$postgresPid''
|
||||
fi
|
||||
|
||||
# CHECK PYPIES
|
||||
pypies_prc=`ps aux | grep awips2\/httpd_pypies\/usr\/sbin\/httpd | grep -v grep | head -1 | awk '{ print $11 }'`
|
||||
if [ -z $pypies_prc ]; then
|
||||
echo ' pypies :: not running'
|
||||
else
|
||||
pypiesPid=`ps aux | grep awips2\/httpd_pypies\/usr\/sbin\/httpd | grep -v grep | head -1 | awk '{ print $2 }'`
|
||||
echo ' pypies :: running :: pid '$pypiesPid''
|
||||
fi
|
||||
|
||||
# CHECK QPID
|
||||
qpid_prc=`ps aux | grep awips2\/qpid\/sbin\/qpidd | grep -v grep | awk '{ print $11 }'`
|
||||
if [ -z $qpid_prc ]; then
|
||||
echo ' qpid :: not running'
|
||||
else
|
||||
qpidPid=`ps aux | grep awips2\/qpid\/sbin\/qpidd | grep -v grep | awk '{ print $2 }'`
|
||||
echo ' qpid :: running :: pid '$qpidPid''
|
||||
fi
|
||||
|
||||
# CHECK EDEX
|
||||
edex_ingest_ps=`ps aux | grep awips2\/edex\/bin\/start | grep ingest | grep -v ingestGrib | grep -v ingestDat | awk '{ print $15 }'`
|
||||
if [ -z $edex_ingest_ps ]; then
|
||||
echo ' EDEXingest :: not running'
|
||||
else
|
||||
edex_ingest_pid=`ps aux | grep awips2\/edex\/bin\/start | grep ingest | grep -v ingestGrib | grep -v ingestDat | awk '{ print $2 }'`
|
||||
echo ' EDEXingest :: running :: pid '$edex_ingest_pid''
|
||||
fi
|
||||
|
||||
edex_ingestGrib_ps=`ps aux | grep awips2\/edex\/bin\/start | grep ingestGrib | awk '{ print $15 }'`
|
||||
if [ -z $edex_ingestGrib_ps ]; then
|
||||
echo ' EDEXgrib :: not running'
|
||||
else
|
||||
edex_ingestGrib_pid=`ps aux | grep awips2\/edex\/bin\/start | grep ingestGrib | awk '{ print $2 }'`
|
||||
echo ' EDEXgrib :: running :: pid '$edex_ingestGrib_pid''
|
||||
fi
|
||||
|
||||
edex_request_ps=`ps aux | grep awips2\/edex\/bin\/start | grep request | awk '{ print $15 }'`
|
||||
if [ -z $edex_request_ps ]; then
|
||||
echo ' EDEXrequest :: not running'
|
||||
else
|
||||
edex_request_pid=`ps aux | grep awips2\/edex\/bin\/start | grep request | awk '{ print $2 }'`
|
||||
echo ' EDEXrequest :: running :: pid '$edex_request_pid''
|
||||
fi
|
||||
|
||||
echo ''
|
||||
}
|
||||
|
||||
tail_log() {
|
||||
if [ -e $LOG_FILE ]; then
|
||||
echo ' :: Viewing '${LOG_FILE}'. Press CTRL+C to exit'
|
||||
echo ''
|
||||
su -c "tail --follow=name ${LOG_FILE} | grep INFO | grep Ingest | sed 's/INFO //g' | sed 's/\[genericThreadPool-[0-9][0-9]\] //g' | sed 's/2012-07-12 //g' | sed 's/,[0-9][0-9][0-9] / /g' | sed 's/Ingest\: EDEX\: Ingest - //g'"
|
||||
else
|
||||
echo ' :: '$LOG_FILE' not found'
|
||||
echo ' :: Check '$LOG_PATH
|
||||
echo ''
|
||||
fi
|
||||
}
|
||||
|
||||
edex_log() { # display todays log, default to ingest
|
||||
echo '[edex] EDEX Log Viewer'
|
||||
echo ''
|
||||
# EDEX request log
|
||||
if [ "${args[1]}" == 'request' ]; then
|
||||
LOG_FILE=${LOG_PATH}edex-request-${YMD}.log
|
||||
tail_log
|
||||
exit;
|
||||
fi
|
||||
|
||||
# EDEX ingestGrib log
|
||||
if [ "${args[1]}" == 'grib' ]; then
|
||||
LOG_FILE=${LOG_PATH}edex-ingestGrib-${YMD}.log
|
||||
tail_log
|
||||
exit;
|
||||
fi
|
||||
|
||||
# EDEX ingest log (default)
|
||||
LOG_FILE=${LOG_PATH}edex-ingest-${YMD}.log
|
||||
if [ "${args[1]}" == 'ingest' ]; then
|
||||
tail_log
|
||||
exit;
|
||||
fi
|
||||
if [ -z ${args[1]} ]; then
|
||||
echo ' :: No log specified - Defaulting to ingest log'
|
||||
tail_log
|
||||
exit;
|
||||
else
|
||||
echo 'Unknown argument' ${args[1]}' - Viewing ingest log'
|
||||
tail_log
|
||||
exit;
|
||||
fi
|
||||
}
|
||||
|
||||
edit_pg() { # edex pg_hba.conf
|
||||
schStr=`grep "\/24" $PG_FILE | head -1 | awk '{ print $4 }' | cut -d/ -f1`
|
||||
subStr=$IP_CIDR'.0'
|
||||
sed -i.setup_$YMD 's/'$schStr'/'$subStr'/g' $PG_FILE
|
||||
echo '[edit] '$subStr' added to '$iPG_FILE
|
||||
echo ' File backed up to '$PG_FILE'.setup_'$YMD
|
||||
}
|
||||
|
||||
edit_edex() { # setup.env automatic edit
|
||||
sed -i.setup_$YMD 's/localhost/'$HOSTNAME'/g' $EDEX_ENV_FILE
|
||||
sed -i.setup_$YMD 's/tmp\/sbn/data_store/g' $EDEX_ENV_FILE
|
||||
#echo '[edit] '$HOSTNAME' added to '$EDEX_ENV_FILE
|
||||
echo ' DATA_ARCHIVE_ROOT set to /data_store in '$EDEX_ENV_FILE
|
||||
echo ' File backed up to '$EDEX_ENV_FILE'.setup_'$YMD
|
||||
}
|
||||
|
||||
edit_py() {
|
||||
sed -i.setup_$YMD 's/Group awips/Group fxalpha/g' $PY_FILE
|
||||
echo '[edit] Group fxalpha added to '$PY_FILE
|
||||
echo ' File backed up to '$PY_FILE'.setup_'$YMD
|
||||
}
|
||||
|
||||
edit_camel() {
|
||||
sed -i "s/ 'ingestDat'//" $EDEX_CAMEL
|
||||
echo '[edit] Removed ingestDat from '$EDEX_CAMEL
|
||||
}
|
||||
|
||||
edex_edits() {
|
||||
for index in ${!editFiles[*]}; do
|
||||
if ${boolFiles[$index]}; then
|
||||
${editFuncs[$index]}
|
||||
fi
|
||||
done
|
||||
echo '[done]'
|
||||
exit;
|
||||
}
|
||||
|
||||
edex_ipexit() { # abandon ip editing, post msg to guide manual edits
|
||||
for index in ${!editFiles[*]}; do
|
||||
if ${boolFiles[$index]}; then
|
||||
editCom+='\t'${editFiles[$index]}'\n'
|
||||
fi
|
||||
done
|
||||
echo -e '[edex] Exiting EDEX IP Setup'
|
||||
echo -e ''
|
||||
echo -e ' You may need to MANUALLY EDIT the following files'
|
||||
echo -e '\n'$editCom
|
||||
echo -e ' for EDEX to work properly. \n'
|
||||
#echo -e ' All instances of "localhost" should be replaced with the'
|
||||
#echo -e ' fully-qualified hostname of your machine.\n'
|
||||
echo -e ' Special notes:'
|
||||
echo -e ' '$PG_FILE' *must* contain your subdomain.'
|
||||
echo -e ' '$PY_FILE' *must* contain "Group fxalpha", not "Group awips"'
|
||||
echo ''
|
||||
}
|
||||
|
||||
edex_setup() { # setup IP subnet and domains for EDEX, prompt user for confirm
|
||||
echo ''
|
||||
echo '[edex] EDEX IP and Hostname Setup'
|
||||
# check files exist
|
||||
continue=true
|
||||
for index in ${!editFiles[*]}; do
|
||||
if [[ ! -f ${editFiles[$index]} ]]; then
|
||||
echo '[Error] ** '${editFiles[$index]}' not found.'
|
||||
continue=false
|
||||
fi
|
||||
done
|
||||
if ! $continue; then
|
||||
echo 'Exiting'
|
||||
exit;
|
||||
fi
|
||||
continue=false
|
||||
|
||||
# pg_hba.conf
|
||||
|
||||
pgGrep=`grep $IP_CIDR $PG_FILE | head -1`
|
||||
echo -n ' Checking '$PG_FILE
|
||||
if [[ ! -z ${pgGrep} ]]; then
|
||||
echo ' [OK]'
|
||||
boolFiles[0]=false
|
||||
else
|
||||
echo -e '\n ** Missing '$IP_CIDR
|
||||
continue=true
|
||||
fi
|
||||
|
||||
# EDEX env
|
||||
|
||||
envGrep1=`grep $HOSTNAME $EDEX_ENV_FILE | head -1`
|
||||
envGrep2=`grep sbn $EDEX_ENV_FILE | head -1`
|
||||
echo -n ' Checking '$EDEX_ENV_FILE
|
||||
#echo $envGrep2
|
||||
if [[ -z ${envGrep2} ]] && [[ -z ${endGrep1} ]]; then
|
||||
echo ' [OK]'
|
||||
boolFiles[1]=false
|
||||
else
|
||||
echo ''
|
||||
if [[ ! -z ${envGrep1} ]]; then
|
||||
echo ' ** Missing '$HOSTNAME
|
||||
fi
|
||||
if [[ ! -z ${envGrep2} ]]; then
|
||||
echo ' ** Missing /data_store'
|
||||
fi
|
||||
continue=true
|
||||
fi
|
||||
|
||||
# Pypies config
|
||||
pyGrep=`grep "Group fxalpha" $PY_FILE | head -1`
|
||||
echo -n ' Checking '$PY_FILE
|
||||
if [[ ! -z ${pyGrep} ]]; then
|
||||
echo ' [OK]'
|
||||
boolFiles[2]=false
|
||||
else
|
||||
echo -e '\n ** Missing Group fxalpha'
|
||||
continue=true
|
||||
fi
|
||||
|
||||
# edex_camel
|
||||
camelGrep=`grep ingestDat $EDEX_CAMEL`
|
||||
echo -n ' Checking '$EDEX_CAMEL
|
||||
if [[ -z ${camelGrep} ]]; then
|
||||
echo ' [OK]'
|
||||
boolFiles[3]=false
|
||||
else
|
||||
echo -e '\n ** ingestDat to be removed'
|
||||
continue=true
|
||||
fi
|
||||
echo ''
|
||||
edex_edits
|
||||
if [ $continue=true ]; then
|
||||
echo ' EDEX correctly configured'
|
||||
fi
|
||||
echo ''
|
||||
}
|
||||
|
||||
|
||||
edex_conf_check() { # check that IP and hostname are set correctly. if not, call setup
|
||||
if [[ -z `grep $IP_CIDR $PG_FILE` ]]; then
|
||||
echo '[WARN] *** File ['$PG_FILE'] contains incorrect IP addresses'
|
||||
while true; do
|
||||
echo ''
|
||||
read -p "Run setup now? [y/n]" eyn
|
||||
case $eyn in
|
||||
[Yy]* ) edex_setup; break;;
|
||||
[Nn]* ) echo 'exiting'; exit;;
|
||||
* ) echo "Please answer yes or no.";;
|
||||
esac
|
||||
echo ''
|
||||
done
|
||||
echo ' Run "edex setup" to configure'
|
||||
exit
|
||||
fi
|
||||
#if [[ -z `grep $HOSTNAME $EDEX_ENV_FILE` ]]; then
|
||||
# echo '[WARN] *** File ['$EDEX_ENV_FILE'] contains localhost'
|
||||
# echo ' *** Run "edex setup" to configure'
|
||||
# exit
|
||||
#fi
|
||||
}
|
||||
|
||||
edex_start() { # start all edex services
|
||||
edex_conf_check
|
||||
su -c "service edex_postgres start"
|
||||
su -c "service httpd-pypies start"
|
||||
su -c "service qpidd start"
|
||||
su -c "service edex_camel start"
|
||||
echo "**************************************************"
|
||||
echo "* Waiting for EDEX ESB to become operational *"
|
||||
echo "* - This may take a few minutes *"
|
||||
echo "* - Do not start CAVE until this is complete *"
|
||||
echo "**************************************************"
|
||||
echo -n "..."
|
||||
prog=0
|
||||
num=`tail -100 ${LOG_PATH}edex-ingest-${YMD}.log | grep "EDEX ESB is now operational" | wc -l`
|
||||
while [ $num -lt 1 ]
|
||||
do
|
||||
sleep 3
|
||||
num=`tail -100 ${LOG_PATH}edex-ingest-${YMD}.log | grep "EDEX ESB is now operational" | wc -l`
|
||||
if [[ $prog -eq 46 ]]; then
|
||||
prog=0
|
||||
else
|
||||
echo -n "."
|
||||
fi
|
||||
let prog++
|
||||
if [[ $num -gt 0 ]]; then
|
||||
echo ""
|
||||
echo "**************************************************"
|
||||
echo "* EDEX ESB is now operational *"
|
||||
echo "* You may now start alertviz and CAVE *"
|
||||
echo "**************************************************"
|
||||
fi
|
||||
done
|
||||
}
|
||||
|
||||
edex_stop() { # stop all edex services
|
||||
su -c "service edex_camel stop"
|
||||
su -c "service qpidd stop"
|
||||
su -c "service httpd-pypies stop"
|
||||
su -c "service edex_postgres stop"
|
||||
edex_status;
|
||||
}
|
||||
|
||||
edex_options() { # print out options for this programs
|
||||
echo ''
|
||||
echo ' edex (status|start|stop|setup|log)'
|
||||
echo ''
|
||||
}
|
||||
|
||||
edex_invalid() {
|
||||
echo ''
|
||||
echo " Invalid option: '"${args[0]}"' not understood"
|
||||
edex_options
|
||||
}
|
||||
|
||||
check_input() { # check input against accepted options
|
||||
found=false
|
||||
for i in "${options[@]}"
|
||||
do
|
||||
if [[ "${args[0]}" == $i ]]; then
|
||||
edexcmd='edex_'${args[0]}
|
||||
found=true
|
||||
fi
|
||||
done
|
||||
if [[ "$found" == 'false' ]]; then
|
||||
if [[ -z ${args[0]} ]]; then
|
||||
# if no input specified, default to status
|
||||
edex_status
|
||||
edex_options
|
||||
else
|
||||
# if bad command
|
||||
edex_invalid
|
||||
fi
|
||||
else
|
||||
$edexcmd
|
||||
fi
|
||||
}
|
||||
|
||||
# check input - first/only program run
|
||||
#
|
||||
check_input
|
||||
|
||||
exit;
|
||||
|
||||
|
||||
|
|
@ -229,6 +229,10 @@ function lookupRPM()
|
|||
export RPM_SPECIFICATION="${awips2_core_dir}/Installer.ldm"
|
||||
return 0
|
||||
fi
|
||||
if [ "${1}" = "awips2-edex-upc" ]; then
|
||||
export RPM_SPECIFICATION="${awips2_core_dir}/Installer.upc"
|
||||
return 0
|
||||
fi
|
||||
if [ "${1}" = "awips2-postgres" ]; then
|
||||
export RPM_SPECIFICATION="${awips2_core_dir}/Installer.postgres"
|
||||
return 0
|
||||
|
|
|
@ -11,6 +11,7 @@ function usage()
|
|||
echo " -edex only build the EDEX rpms."
|
||||
echo " -qpid build only the QPID rpms."
|
||||
echo " -ldm build the awips2-ldm rpm; requires root privileges."
|
||||
echo " -upc build the awips2-edex-upc rpm."
|
||||
echo " -package create a yum repository tar file with the rpms that were just built."
|
||||
echo " --help display this message and exit."
|
||||
|
||||
|
|
|
@ -489,6 +489,12 @@ if [ "${1}" = "-ldm" ]; then
|
|||
exit 0
|
||||
fi
|
||||
|
||||
if [ "${1}" = "-upc" ]; then
|
||||
buildRPM "awips2-edex-upc"
|
||||
|
||||
exit 0
|
||||
fi
|
||||
|
||||
if [ "${1}" = "-package" ]; then
|
||||
repository_directory="awips2-repository-${AWIPSII_VERSION}-${AWIPSII_RELEASE}"
|
||||
if [ -d ${WORKSPACE}/${repository_directory} ]; then
|
||||
|
|
|
@ -88,11 +88,12 @@ cp -v ${dir}/buildEnvironment.sh .
|
|||
# check rpms/build/x86_64/build.sh for these groups
|
||||
#
|
||||
# PRIMARY GROUPS confirmed to work for Unidata 14.2.1
|
||||
/bin/bash build.sh -edex > ${dir}/build-EDEX-${timestamp}.log
|
||||
#/bin/bash build.sh -full > ${dir}/build-${timestamp}.log
|
||||
#/bin/bash build.sh -viz > ${dir}/build-VIZ-${timestamp}.log
|
||||
#/bin/bash build.sh -ldm >> ${dir}/build-LDM-${timestamp}.log
|
||||
#/bin/bash build.sh -upc > ${dir}/build-UPC-${timestamp}.log
|
||||
#/bin/bash build.sh -ldm > ${dir}/build-LDM-${timestamp}.log
|
||||
|
||||
/bin/bash build.sh -edex > ${dir}/build-EDEX-${timestamp}.log
|
||||
|
||||
|
||||
#/bin/bash build.sh -postgres > ${dir}/build-${timestamp}.log
|
||||
|
|
Loading…
Add table
Reference in a new issue