<!--
  ~ Copyright 2015-present Open Networking Foundation
  ~
  ~ Licensed under the Apache License, Version 2.0 (the "License");
  ~ you may not use this file except in compliance with the License.
  ~ You may obtain a copy of the License at
  ~
  ~     http://www.apache.org/licenses/LICENSE-2.0
  ~
  ~ Unless required by applicable law or agreed to in writing, software
  ~ distributed under the License is distributed on an "AS IS" BASIS,
  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  ~ See the License for the specific language governing permissions and
  ~ limitations under the License.
  -->
<scenario name="prerequisites" description="ONOS test pre-requisites">
    <group name="Prerequisites">
        <step name="Check-Environment"
              exec="test -n ${ONOS_ROOT} -a -n ${ONOS_NIC} -a -n ${OC1}"/>
        <step name="Check-ONOS-Bits" exec="onos-check-bits"/>
        <parallel var="${OC#}">
            <step name="Check-Passwordless-Login-${#}"
                  exec="ssh -n -o ConnectTimeout=3 -o PasswordAuthentication=no ${ONOS_USER}@${OC#} date"/>
            <step name="Check-Execute-sudo-NOPASSWD-${#}"
                  exec="ssh -n -o ConnectTimeout=3 -o PasswordAuthentication=no ${ONOS_USER}@${OC#} sudo -n true"/>
            <step name="Check-Java-Environment-${#}"
                  exec="ssh -n -o ConnectTimeout=3 -o PasswordAuthentication=no ${ONOS_USER}@${OC#} java -version"/>
        </parallel>
        <step name="Check-Passwordless-Login-Proxy" if="${OCT}"
              exec="ssh -n -o ConnectTimeout=3 -o PasswordAuthentication=no ${ONOS_USER}@${OCT} date"/>
    </group>
</scenario>
