Commit 233eb915 authored by aorlati's avatar aorlati Committed by Giuseppe Carboni
Browse files

fix #225: new startup procedure, it should be more reliable, faster and easier (#237)

parent 699da7b6
Loading
Loading
Loading
Loading

.svnignore

deleted100644 → 0
+0 −6
Original line number Diff line number Diff line
rtai
object
lib
.purifydir
.idl-compilation-end
.idl-compilation-start
+4 −4
Original line number Diff line number Diff line
@@ -9,7 +9,7 @@
# --------  --------  ----------------------------------------------
# andrea    24/01/09  created
# andrea    24/01/09  scripts startschedule stopschedule configureBackend, deprecated and movved to local scripts
#
# Andrea O. 28/06/18  Added and public installed the scripts discos  


#*******************************************************************************
@@ -41,7 +41,7 @@ PY_PACKAGES =
PY_PACKAGES_L      =
pppppp_MODULES	   =

SCRIPTS         = data_stats tabbify
SCRIPTS         = data_stats tabbify discos

#
# list of all possible C-sources (used to create automatic dependencies)
+102 −0
Original line number Diff line number Diff line
#! /bin/bash
# ********************************************************************************************* 
# IRA Istituto di Radioastronomia                                                                      
# 
#
# This code is under GNU General Public Licence (GPL).                                              
#                                                                                                     
# Who                                  when            What                                             
# Andrea Orlati(andrea.orlati@inaf.it) 28/06/2018      Creation                                  
#************************************************************************
#   NAME
# 
#   SYNOPSIS
# 
#   DESCRIPTION
#
#   FILES
#
#   ENVIRONMENT
#
#   RETURN VALUES
#
#   CAUTIONS
#
#   EXAMPLES
#
#   SEE ALSO
#
#   BUGS     
#

LONGOPTS=start,view,help
SHORTOPTS=svh
CL_START=
CL_VIEW=
CL_HELP=

function printUsage {
   echo "Gets the ESCS system started, management priviledges are needed"
   echo ""
        echo "Usage: `basename $0` [OPTIONS]  "
        echo "Options: "
        echo "   -s | --start   load the Command Center for starting the system"
        echo "   -v | --view    load the Command Center for monitoring purposes"
        echo "   -h | --help    prints this help"
}

# This simply checks for the correctness of the command line
export POSIXLY_CORRECT=1

getopt -n `basename $0` -Q -u -a -l $LONGOPTS $SHORTOPTS "$@" || {
   printUsage
   exit
}

# Now let's parse the command line
set -- `getopt -u -a -l $LONGOPTS $SHORTOPTS "$@"`

for i
do
	case "$i" in
		-h) CL_HELP=true ;;
		--help) CL_HELP=true ;;
		--view) CL_VIEW=true ;;
		-v) CL_VIEW=true ;;
		--start) CL_START=true ;;
		-s) CL_START=true ;;
		--)  break;;
	esac
	shift
done

# restore
export POSIXLY_CORRECT=
unset POSIXLY_CORRECT

export MANAGER=

if [ -z "$MANAGER_REFERENCE" ] ; then
	export MANAGER="corbaloc::"$HOST":3000/Manager"
else
	export MANAGER=$MANAGER_REFERENCE
fi

if [ "$CL_HELP" ] ; then
   printUsage
   exit
fi

if [ "$CL_START" ] ; then
   acscommandcenter -r $INTROOT/app-defaults/discosStartup.xml &
   exit
fi

if [ "$CL_VIEW" ] ; then
   acscommandcenter -r $INTROOT/app-defaults/discosStartup.xml $MANAGER &
fi



#
# ___oOo___
+132 −0
Original line number Diff line number Diff line
<?xml version="1.0" encoding="UTF-8"?>
<AcsCommandCenterProject xmlns="Alma/Acs/AcsCommandCenterProject"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    creator="acc-v7.0" xsi:type="AcsCommandCenterProject">
    <mode>remote_daemon</mode>
    <servicesLocalJavaRoot>/alma/ACS-7.0/acsdata/config/defaultCDB</servicesLocalJavaRoot>
    <scriptBase>0</scriptBase>
    <remoteHost>192.168.1.98</remoteHost>
    <remoteAccount></remoteAccount>
    <remotePassword></remotePassword>
    <toolRunAgainstDedicatedSettings>false</toolRunAgainstDedicatedSettings>
    <toolAgainstManagerHost></toolAgainstManagerHost>
    <toolAgainstManagerPort></toolAgainstManagerPort>
    <toolAgainstInterfaceRepository></toolAgainstInterfaceRepository>
    <toolAgainstNameService></toolAgainstNameService>
    <containers>
        <select>11</select>
        <againstManagerHost></againstManagerHost>
        <againstManagerPort></againstManagerPort>
        <againstCDB></againstCDB>
        <againstInterfaceRepository></againstInterfaceRepository>
        <container>
            <name>LoggerContainer</name>
            <type>cpp</type>
            <heapSizeMB></heapSizeMB>
            <useDedicatedSettings>true</useDedicatedSettings>
            <scriptBase>0</scriptBase>
            <remoteHost>192.168.1.98</remoteHost>
            <remoteAccount></remoteAccount>
        </container>
        <container>
            <name>WeatherStationContainer</name>
            <type>cpp</type>
            <useDedicatedSettings>true</useDedicatedSettings>
            <scriptBase>0</scriptBase>
            <remoteHost>192.168.1.104</remoteHost>
            <remoteAccount></remoteAccount>
        </container>
        <container>
            <name>MountContainer</name>
            <type>cpp</type>
            <useDedicatedSettings>true</useDedicatedSettings>
            <scriptBase>0</scriptBase>
            <remoteHost>192.168.1.104</remoteHost>
            <remoteAccount></remoteAccount>
        </container>
        <container>
            <name>AntennaContainer</name>
            <type>cpp</type>
            <useDedicatedSettings>true</useDedicatedSettings>
            <scriptBase>0</scriptBase>
            <remoteHost>192.168.1.104</remoteHost>
            <remoteAccount></remoteAccount>
        </container>
        <container>
            <name>ReceiversContainer</name>
            <type>cpp</type>
            <useDedicatedSettings>true</useDedicatedSettings>
            <scriptBase>0</scriptBase>
            <remoteHost>192.168.1.104</remoteHost>
            <remoteAccount></remoteAccount>
        </container>
        <container>
            <name>TotalPowerContainer</name>
            <type>cpp</type>
            <useDedicatedSettings>true</useDedicatedSettings>
            <scriptBase>0</scriptBase>
            <remoteHost>192.168.1.104</remoteHost>
            <remoteAccount></remoteAccount>
        </container>
        <container>
            <name>NoiseGeneratorContainer</name>
            <type>cpp</type>
            <useDedicatedSettings>true</useDedicatedSettings>
            <scriptBase>0</scriptBase>
            <remoteHost>192.168.1.104</remoteHost>
            <remoteAccount></remoteAccount>
        </container>
        <container>
            <name>ManagementContainer</name>
            <type>cpp</type>
            <useDedicatedSettings>true</useDedicatedSettings>
            <scriptBase>0</scriptBase>
            <remoteHost>192.168.1.104</remoteHost>
            <remoteAccount></remoteAccount>
        </container>
        <container>
            <name>FitsZillaContainer</name>
            <type>cpp</type>
            <useDedicatedSettings>true</useDedicatedSettings>
            <scriptBase>0</scriptBase>
            <remoteHost>192.168.1.104</remoteHost>
            <remoteAccount></remoteAccount>
        </container>
        <container>
            <name>CalibrationToolContainer</name>
            <type>cpp</type>
            <heapSizeMB></heapSizeMB>
            <useDedicatedSettings>true</useDedicatedSettings>
            <scriptBase>0</scriptBase>
            <remoteHost>192.168.1.104</remoteHost>
            <remoteAccount></remoteAccount>
        </container>
        <container>
            <name>PointContainer</name>
            <type>cpp</type>
            <heapSizeMB></heapSizeMB>
            <useDedicatedSettings>true</useDedicatedSettings>
            <scriptBase>0</scriptBase>
            <remoteHost>192.168.1.104</remoteHost>
            <remoteAccount></remoteAccount>
        </container>
        <container>
            <name>ExternalClientsContainer</name>
            <type>cpp</type>
            <heapSizeMB></heapSizeMB>
            <useDedicatedSettings>true</useDedicatedSettings>
            <scriptBase>0</scriptBase>
            <remoteHost>192.168.51.98</remoteHost>
            <remoteAccount></remoteAccount>
        </container>
        <container>
            <name>XContainer</name>
            <type>cpp</type>
            <heapSizeMB></heapSizeMB>
            <useDedicatedSettings>true</useDedicatedSettings>
            <scriptBase>0</scriptBase>
            <remoteHost>192.168.1.104</remoteHost>
            <remoteAccount></remoteAccount>
        </container>
    </containers>
</AcsCommandCenterProject>
+111 −0
Original line number Diff line number Diff line
#! /bin/bash
# ********************************************************************************************* 
# IRA Istituto di Radioastronomia                                                                      
#
# This code is under GNU General Public Licence (GPL).                                              
#                                                                                                     
# Who                                when            What                                             
# Andrea Orlati(aorlati@ira.inaf.it) 12/08/2010      Creation 
# Andrea Orlati(aorlati@ira.inaf.it)04/09/2013      switch --stop now available                                
#************************************************************************
#   NAME
# 
#   SYNOPSIS
# 
#   DESCRIPTION
#
#   FILES
#
#   ENVIRONMENT
#
#   RETURN VALUES
#
#   CAUTIONS
#
#   EXAMPLES
#
#   SEE ALSO
#
#   BUGS     
#

LONGOPTS=help,stop
SHORTOPTS=hs
CL_HELP=
CL_STOP=

function printUsage {
   echo "Start interactive console for the ESCS system"
   echo ""
        echo "Usage: `basename $0` [OPTIONS]  "
        echo "Options: "
        echo "   -h | --help    prints this help"
        echo "   -s | --stop    close the console and all the user interface windows"
}

# This simply checks for the correctness of the command line
export POSIXLY_CORRECT=1

getopt -n `basename $0` -Q -u -a -l $LONGOPTS $SHORTOPTS "$@" || {
   printUsage
   exit
}

# Now let's parse the command line
set -- `getopt -u -a -l $LONGOPTS $SHORTOPTS "$@"`

for i
do
	case "$i" in
		-h) CL_HELP=true ;;
		--help) CL_HELP=true ;;
		-s) CL_STOP=true ;;
		--stop) CL_STOP=true ;;
		--)  break;;
	esac
	shift
done

# restore
export POSIXLY_CORRECT=
unset POSIXLY_CORRECT

if [ "$CL_HELP" ] ; then
   printUsage
   exit
fi

if [ "$CL_STOP" ] ; then
   killall -s SIGUSR1 -u $USER -q _tui_MedicinaMountTextClient
   killall -s SIGUSR1 -u $USER -q _tui_ObservatoryTextClient
   killall -s SIGUSR1 -u $USER -q _tui_AntennaBossTextClient
   killall -s SIGUSR1 -u $USER -q _tui_GenericBackendTextClient
   killall -s SIGUSR1 -u $USER -q _tui_ReceiversBossTextClient
   killall -s SIGUSR1 -u $USER -q _tui_SchedulerTextClient
   #close the operator input
   pkill -SIGINT -f -n -u $USER _tui_SysTerm
   #close the logging display client 
   pkill -SIGUSR1 -f -n -u $USER _gui_customLoggingClient
   exit
fi

schedulerTui
sleep 0.5s
mountTui
sleep 0.5s
observatoryTui
sleep 0.5s
antennaBossTui
sleep 0.5s
genericBackendTui BACKENDS/TotalPower
sleep 0.5s
genericBackendTui BACKENDS/XBackends
sleep 0.5s
operatorInput
sleep 0.5s
receiversBossTui
sleep 0.5s
loggingDisplay

#
# ___oOo___
Loading