Commit 95f1c34b authored by Giuseppe Carboni's avatar Giuseppe Carboni
Browse files

Merge branch 'master' of github.com:discos/discos into centos_7_compatibility

parents 02f45c5f 50aa2413
Loading
Loading
Loading
Loading
+7 −5
Original line number Original line Diff line number Diff line
@@ -4,10 +4,12 @@


using namespace baci;
using namespace baci;


#define NORMAL_RECORDING (m_currentScan.backendProc!=_SCHED_NULLTARGET) && (m_currentScan.duration>0.0)
#define BCKEND_CONFIG (m_currentScan.backendProc!=_SCHED_NULLTARGET)
#define NORMAL_RECORDING BCKEND_CONFIG && (m_currentScan.duration>0.0)
#define NO_RECORDING m_currentScan.duration<=0.0
#define NO_RECORDING m_currentScan.duration<=0.0
#define DRY_RUN (m_currentScan.backendProc==_SCHED_NULLTARGET) && (m_currentScan.duration>0.0)
#define DRY_RUN (m_currentScan.backendProc==_SCHED_NULLTARGET) && (m_currentScan.duration>0.0)
 
 

CScheduleExecutor::CScheduleExecutor(const ACE_CString& name,CCore *param, 
CScheduleExecutor::CScheduleExecutor(const ACE_CString& name,CCore *param, 
			const ACS::TimeInterval& responseTime,const ACS::TimeInterval& sleepTime) : ACS::Thread(name,responseTime,sleepTime)
			const ACS::TimeInterval& responseTime,const ACS::TimeInterval& sleepTime) : ACS::Thread(name,responseTime,sleepTime)
{
{
@@ -142,7 +144,7 @@ void CScheduleExecutor::runLoop()
				catch (ACSErr::ACSbaseExImpl& ex) {
				catch (ACSErr::ACSbaseExImpl& ex) {
					_ADD_BACKTRACE(ManagementErrors::SubscanErrorExImpl,impl,ex,"CScheduleExecutor::runLoop()");
					_ADD_BACKTRACE(ManagementErrors::SubscanErrorExImpl,impl,ex,"CScheduleExecutor::runLoop()");
					impl.setSubScanID(m_scheduleCounter);
					impl.setSubScanID(m_scheduleCounter);
					impl.setReason("cannot check scan against telescope");
					impl.setReason("scan cannot be validated");
					m_core->changeSchedulerStatus(Management::MNG_FAILURE);
					m_core->changeSchedulerStatus(Management::MNG_FAILURE);
					//impl.log(LM_ERROR);
					//impl.log(LM_ERROR);
					CUSTOM_EXCPT_LOG(impl,LM_ERROR);
					CUSTOM_EXCPT_LOG(impl,LM_ERROR);
@@ -178,7 +180,7 @@ void CScheduleExecutor::runLoop()
							if (m_schedule->getSchedReps()>0) { // if negative the schedule is repeated continuosly
							if (m_schedule->getSchedReps()>0) { // if negative the schedule is repeated continuosly
								if (m_repetition>=(DWORD)m_schedule->getSchedReps()) { // END OF SCHEDULE
								if (m_repetition>=(DWORD)m_schedule->getSchedReps()) { // END OF SCHEDULE
									CUSTOM_LOG(LM_FULL_INFO,"CScheduleExecutor::runLoop()",
									CUSTOM_LOG(LM_FULL_INFO,"CScheduleExecutor::runLoop()",
									  (LM_NOTICE,"All repetions are completed, schedule will be halted"));
									  (LM_NOTICE,"All repetitions are completed, schedule will be halted"));
									cleanSchedule(false);
									cleanSchedule(false);
									break;
									break;
								}
								}
@@ -894,7 +896,7 @@ void CScheduleExecutor::prepareFileWriting(/*const CSchedule::TRecord& rec*/) th
 			m_core->disableDataTransfer();
 			m_core->disableDataTransfer();
		}
		}
	}
	}
 	if (NORMAL_RECORDING) { // if the writing has been disabled
 	if (BCKEND_CONFIG) { // if the writing has been disabled
 	 	if (m_currentScan.backendProc!=m_currentBackendProcedure) {
 	 	if (m_currentScan.backendProc!=m_currentBackendProcedure) {
 	 		ACS_LOG(LM_FULL_INFO,"CScheduleExecutor::prepareFileWriting()",(LM_DEBUG,"NEW_BACKEND_PROCEDURE"));
 	 		ACS_LOG(LM_FULL_INFO,"CScheduleExecutor::prepareFileWriting()",(LM_DEBUG,"NEW_BACKEND_PROCEDURE"));
 	 		if (!m_schedule->getBackendList()->getBackend(m_currentScan.backendProc,bckInstance,command)) {
 	 		if (!m_schedule->getBackendList()->getBackend(m_currentScan.backendProc,bckInstance,command)) {
@@ -908,7 +910,7 @@ void CScheduleExecutor::prepareFileWriting(/*const CSchedule::TRecord& rec*/) th
 	 		m_currentBackendProcedure=m_currentScan.backendProc;
 	 		m_currentBackendProcedure=m_currentScan.backendProc;
 	 	}
 	 	}
	 	m_core->_chooseDefaultDataRecorder(m_currentScan.writerInstance); //CouldntGetComponentExImpl ComponentErrors::UnexpectedExImpl
	 	m_core->_chooseDefaultDataRecorder(m_currentScan.writerInstance); //CouldntGetComponentExImpl ComponentErrors::UnexpectedExImpl
 	 	m_core->enableDataTransfer();
 	 	if (NORMAL_RECORDING) m_core->enableDataTransfer();
 	}
 	}
 	else {
 	else {
 		m_currentBackendProcedure=_SCHED_NULLTARGET;
 		m_currentBackendProcedure=_SCHED_NULLTARGET;
+24 −27
Original line number Original line Diff line number Diff line
@@ -7,61 +7,58 @@
				IP="192.168.51.28"
				IP="192.168.51.28"
				PORT="5003">
				PORT="5003">


    <Configuration name="sole">
    <Configuration name="default">
    	<Board number="6">
    	<Board number="6">
    		<Attenuator ID="0" Value="10.0"/>
    		<Attenuator ID="0" Value="0.0"/>
    		<Attenuator ID="1" Value="7.0"/>
    		<Attenuator ID="1" Value="7.0"/>
    		<Attenuator ID="2" Value="0.0"/>
    		<Attenuator ID="2" Value="0.0"/>
    		<Attenuator ID="3" Value="10.0"/>    		
    		<Attenuator ID="3" Value="10.0"/>    		
    	</Board>
    	</Board>
    	<Board number="8">
    	<Board number="8">
    		<Attenuator ID="0" Value="26.0"/>
    		<Attenuator ID="0" Value="0.0"/>
    		<Attenuator ID="1" Value="10.0"/>
    		<Attenuator ID="1" Value="8.0"/>
    		<Attenuator ID="2" Value="29.0"/>
    		<Attenuator ID="2" Value="0.0"/>
    		<Attenuator ID="3" Value="10.0"/> 
    		<Attenuator ID="3" Value="10.0"/> 
    	</Board>
    	</Board>
    	<Board number="9">
    	<Board number="9">
    		<Attenuator ID="0" Value="15.0"/>
    		<Attenuator ID="0" Value="13.0"/>
    		<Attenuator ID="1" Value="10.0"/>
    		<Attenuator ID="1" Value="10.0"/>
    		<Attenuator ID="2" Value="13.0"/>
    		<Attenuator ID="2" Value="16.0"/>
    		<Attenuator ID="3" Value="10.0"/>     	
    		<Attenuator ID="3" Value="10.0"/>     	
    	</Board>
    	</Board>
     	<Board number="10">
     	<Board number="10">
    		<Attenuator ID="0" Value="23.0"/>
    		<Attenuator ID="0" Value="16.0"/>
    		<Attenuator ID="1" Value="10.0"/>
    		<Attenuator ID="1" Value="10.0"/>
    		<Attenuator ID="2" Value="22.0"/>
    		<Attenuator ID="2" Value="14.0"/>
    		<Attenuator ID="3" Value="10.0"/>      	
    		<Attenuator ID="3" Value="10.0"/>      	
    	</Board>  	
    	</Board>  	
    </Configuration>
    </Configuration>




    <Configuration name="KKC">
    <Configuration name="sun">
    	<Board number="6">
    	<Board number="6">
    		<Attenuator ID="0" Value="10.0"/>
    		<Attenuator ID="0" Value="0.0"/>
    		<Attenuator ID="1" Value="10.0"/>
    		<Attenuator ID="1" Value="7.0"/>
    		<Attenuator ID="2" Value="10.0"/>
    		<Attenuator ID="2" Value="0.0"/>
    		<Attenuator ID="3" Value="10.0"/>    		
    		<Attenuator ID="3" Value="10.0"/>    		
    	</Board>
    	</Board>
    	<Board number="8">
    	<Board number="8">
    		<Attenuator ID="0" Value="10.0"/>
    	        <Attenuator ID="0" Value="0.0"/>
    		<Attenuator ID="1" Value="10.0"/>
    		<Attenuator ID="1" Value="8.0"/>
    		<Attenuator ID="2" Value="10.0"/>
    		<Attenuator ID="2" Value="0.0"/>
    		<Attenuator ID="3" Value="10.0"/> 
    		<Attenuator ID="3" Value="10.0"/> 
    	</Board>
    	</Board>
   	<Board number="9">
   	<Board number="9">
    		<Attenuator ID="0" Value="10.0"/>
    		<Attenuator ID="0" Value="28.0"/>
    		<Attenuator ID="1" Value="10.0"/>
    		<Attenuator ID="1" Value="10.0"/>
    		<Attenuator ID="2" Value="10.0"/>
    		<Attenuator ID="2" Value="26.0"/>
    		<Attenuator ID="3" Value="10.0"/>     	
    		<Attenuator ID="3" Value="10.0"/>     	
    	</Board>
    	</Board>
     	<Board number="10">
     	<Board number="10">
    		<Attenuator ID="0" Value="10.0"/>
    		<Attenuator ID="0" Value="11.0"/>
    		<Attenuator ID="1" Value="10.0"/>
    		<Attenuator ID="1" Value="10.0"/>
    		<Attenuator ID="2" Value="10.0"/>
    		<Attenuator ID="2" Value="22.0"/>
    		<Attenuator ID="3" Value="10.0"/>      	
    		<Attenuator ID="3" Value="10.0"/>      	
    	</Board> 	
    	</Board> 	
    </Configuration>
    </Configuration>
 
 

</DMedConfiguration>
</DMedConfiguration>
+7 −7
Original line number Original line Diff line number Diff line
@@ -49,15 +49,15 @@
    		<Attenuator ID="3" Value="10.0"/> 
    		<Attenuator ID="3" Value="10.0"/> 
    	</Board>
    	</Board>
   	<Board number="9">
   	<Board number="9">
    		<Attenuator ID="0" Value="15.0"/>
    		<Attenuator ID="0" Value="28.0"/>
    		<Attenuator ID="1" Value="10.0"/>
    		<Attenuator ID="1" Value="10.0"/>
    		<Attenuator ID="2" Value="13.0"/>
    		<Attenuator ID="2" Value="26.0"/>
    		<Attenuator ID="3" Value="15.0"/>     	
    		<Attenuator ID="3" Value="10.0"/>     	
    	</Board>
    	</Board>
     	<Board number="10">
     	<Board number="10">
    		<Attenuator ID="0" Value="23.0"/>
    		<Attenuator ID="0" Value="11.0"/>
    		<Attenuator ID="1" Value="10.0"/>
    		<Attenuator ID="1" Value="10.0"/>
    		<Attenuator ID="2" Value="26.0"/>
    		<Attenuator ID="2" Value="22.0"/>
    		<Attenuator ID="3" Value="10.0"/>      	
    		<Attenuator ID="3" Value="10.0"/>      	
    	</Board> 	
    	</Board> 	
    </Configuration> 
    </Configuration> 
+79 −0
Original line number Original line Diff line number Diff line
#!/usr/bin/env bash

print_help() {
    echo " "
    echo "`basename $0` v1.0"
    echo " "
    echo "Log project into the DISCOS system homes."
    echo "Usage: '`basename $0` [-p|--port portnumber] <projectid>@<gatein>'" 
    echo "       '`basename $0` -h|--help'"
    echo "-h | --help prints this help message and exit"
    echo "-p | --port ssh port, if different from the default one"
    echo "       <projectid> indicates the project you wanto to log in."
    echo "       <gatein> access point into the observatory lan. This information is provided by local staff."
    echo "                Use 'local' if already inside the local area network."	     
    exit 1
}

current_system="LINUX"
ssh_port="22"
project=""
gatein=""
local="FALSE"

while [[ $# -gt 0 ]]
do
key="$1"
case $key in
    -h|--help)
    print_help
    ;;
    -p|--port)
    ssh_port=$2
    shift
    shift
    ;;
    *)
    if [[ $1 == *"@"* ]]; then
        while IFS='@' read -ra ARG; do
            if [[ "${#ARG[@]}" -ne 2 ]]; then
                echo "Please provide a correct <projectid>@<gatein> pair, retry!"
                print_help
            fi
            project=${ARG[0]}
            gatein=${ARG[1]}
        done <<< "$1"
    else
        echo "Unrecognized option: '$1'!"
        print_help
    fi
    shift
    ;;    
esac
done

if [[ "$gatein" == "local" ]]; then
    local="TRUE"
fi

if [[ "$OSTYPE" == *"linux-gnu"* ]]
then
   echo -e "Linux OS is detected..."
   current_system="LINUX"
elif [[ "$OSTYPE" == *"darwin"* ]]
then
   echo -e "Mac OS is detected..."
   current_system="MACOS"
else
   echo -e "Not supported OS, some unpredictable results may happen!"	
fi

proxy="ProxyCommand=ssh -p ""$ssh_port"" -W %h:%p observer@""$gatein"
#echo $proxy

if [[ "$local" == "FALSE" ]]; then 
	ssh -Y -p 9922 -o "$proxy" "$project"@192.167.189.98
else
	ssh -Y -p 9922 "$project"@192.167.189.98
fi