aboutsummaryrefslogtreecommitdiffstats
path: root/src
AgeCommit message (Expand)AuthorFilesLines
2019-03-15vcl: cleanup debug messagesFlorin Coras16-261/+191
2019-03-15API: Cleanup APIs interface.apiJakub Grajciar14-234/+280
2019-03-14GBP: coverity legit bugNeale Ranns1-0/+1
2019-03-14tcp: drop anything but fins in TIME_WAITFlorin Coras1-0/+4
2019-03-14Update documentation for src/vnet/interface.api sw_interface_dumpPaul Vinciguerra1-1/+7
2019-03-14GBP: update semantics for subnetsNeale Ranns1-13/+23
2019-03-14IGMP: typo and doc fix (no behaviour change)Neale Ranns3-8/+8
2019-03-14dpdk: Add E810 family supportChenminSun3-0/+6
2019-03-14TEST: link-state up/down notifications on FIB forwardingNeale Ranns2-0/+76
2019-03-14vcl: fix coverity warningFlorin Coras1-1/+1
2019-03-14GBP: get source address from ARP packets for LPM classificationNeale Ranns1-43/+69
2019-03-13session rule cli add udp session failzhanglimao1-0/+1
2019-03-13VPP-1576: fix a set of coverity warningsDave Barach5-4/+13
2019-03-13buffers: don't use clib_memcpy for copying buffer indicesDamjan Marion1-1/+37
2019-03-13vhost-user: restart vpp may cause vhost to crashSteven Luong1-1/+1
2019-03-13Move the punt/drop nodes into vlibNeale Ranns3-286/+378
2019-03-13deprecate VLIB_DEVICE_TX_FUNCTION_MULTIARCHFilip Tehlar6-32/+32
2019-03-13Add the SRIOV variant PCI Device ID of the Cisco VICJay Lubomirski1-1/+2
2019-03-13buffers: fix ref_count mask in vlib_buffer_free_inlineDamjan Marion1-1/+1
2019-03-13deprecate VLIB_NODE_FUNCTION_MULTIARCHFilip Tehlar9-52/+57
2019-03-13tcp: fix entering closing state while in fast recoveryFlorin Coras1-5/+15
2019-03-13tcp: avoid computing flags in push hdr inlineFlorin Coras1-26/+3
2019-03-13vmbus: not having uio_hv_generic is not an errorStephen Hemminger1-7/+20
2019-03-12Use AVX2 as default even on AVX512 systemsDamjan Marion1-1/+1
2019-03-12svm mq: add unit testFlorin Coras2-3/+179
2019-03-12tcp: print congestion control algorithm in cliFlorin Coras1-11/+12
2019-03-12dpdk: pass log-level configuration to EALStephen Hemminger3-31/+0
2019-03-12Perf tune handoff queue pollingDave Barach3-3/+25
2019-03-12ip: migrate old MULTIARCH macros to VLIB_NODE_FNFilip Tehlar10-174/+178
2019-03-12l2: migrate old MULTIARCH macros to VLIB_NODE_FNFilip Tehlar16-122/+150
2019-03-12VPP-1585: fix dns test cliFilip Tehlar1-1/+3
2019-03-12GBP: L3 out fixesNeale Ranns5-25/+129
2019-03-12GBP: custom-dump functionsNeale Ranns5-17/+376
2019-03-12FIB: path parsing, table-id not fib-index (VPP-1586)Neale Ranns1-1/+11
2019-03-12GBP: contracts API fixed length of allowed ethertypesNeale Ranns3-16/+45
2019-03-12ICMP46 error: Clone first buffer instead of "truncating" original bufferOle Troan3-52/+57
2019-03-12FIB: crash when deleting default routeNeale Ranns1-9/+0
2019-03-12bfd: register udp ports only when enabledKlement Sekera1-14/+49
2019-03-11ldp: fix worker alloc when using eventfdsFlorin Coras1-1/+15
2019-03-11disable multiarch for error-dropFilip Tehlar1-2/+4
2019-03-11VPP-1533: Deleting a non-existent pre-resolved MAP next-hop causes VPP core dumpOle Troan1-7/+10
2019-03-11dpo: migrate old MULTIARCH macros to VLIB_NODE_FNFilip Tehlar6-157/+59
2019-03-11mfib: migrate old MULTIARCH macros to VLIB_NODE_FNFilip Tehlar2-29/+13
2019-03-11tls: fixes and improvementsFlorin Coras5-36/+53
2019-03-11session: fix ct that match global table entriesFlorin Coras3-2/+26
2019-03-11VPP-1486: stat segment file descriptor leakOle Troan1-0/+3
2019-03-10Perf tune get_frame_size_infoDave Barach3-3/+14
2019-03-10vcl: update buf if whole buf cannot be done at oncewuzhouhui1-0/+1
2019-03-09SVS: cleanup default route on SVS disableNeale Ranns1-0/+5
2019-03-08tcp: fix rcv_wnd computationFlorin Coras1-1/+1
chmod 600 ${VIRL_PKEY} # # Pick a random host from the array of VIRL servers, and attempt # to reach it and verify it's status. # # The server must be reachable, and have a "status" file with # the content "PRODUCTION", to be selected. # # If the server is not reachable, or does not have the correct # status, remove it from the array and start again. # # Abort if there are no more servers left in the array. # while [[ ! "$VIRL_SERVER" ]] do num_hosts=${#VIRL_SERVERS[@]} if [ $num_hosts == 0 ] then echo "No more VIRL candidate hosts available, failing." exit 127 fi element=$[ $RANDOM % $num_hosts ] virl_server_candidate=${VIRL_SERVERS[$element]} virl_server_status=$(ssh ${SSH_OPTIONS} ${VIRL_USERNAME}@${virl_server_candidate} cat $VIRL_SERVER_STATUS_FILE 2>&1) echo VIRL HOST $virl_server_candidate status is \"$virl_server_status\" if [ "$virl_server_status" == "$VIRL_SERVER_EXPECTED_STATUS" ] then # Candidate is in good status. Select this server. VIRL_SERVER="$virl_server_candidate" else # Candidate is in bad status. Remove from array. VIRL_SERVERS=("${VIRL_SERVERS[@]:0:$element}" "${VIRL_SERVERS[@]:$[$element+1]}") fi done SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" # Download VPP and HC packages from the current branch echo Downloading packages... bash ${SCRIPT_DIR}/resources/tools/scripts/download_hc_pkgs.sh ${STREAM} ${OS} if [ "${OS}" == "centos7" ]; then VPP_PKGS=(*.rpm) else VPP_PKGS=(*.deb) fi echo ${VPP_PKGS[@]} VIRL_DIR_LOC="/tmp" VPP_PKGS_FULL=(${VPP_PKGS[@]}) # Prepend directory location at remote host to package file list for index in "${!VPP_PKGS_FULL[@]}"; do VPP_PKGS_FULL[${index}]=${VIRL_DIR_LOC}/${VPP_PKGS_FULL[${index}]} done echo "Updated file names: " ${VPP_PKGS_FULL[@]} cat ${VIRL_PKEY} # Copy the files to VIRL hosts DONE="" for index in "${!VIRL_SERVER[@]}"; do # Do not copy files in case they have already been copied to the VIRL host [[ "${DONE[@]}" =~ "${VIRL_SERVER[${index}]}" ]] && copy=0 || copy=1 if [ "${copy}" -eq "0" ]; then echo "files have already been copied to the VIRL host ${VIRL_SERVER[${index}]}" else if [ "${OS}" == "centos7" ]; then scp ${SSH_OPTIONS} *.rpm \ ${VIRL_USERNAME}@${VIRL_SERVER[${index}]}:${VIRL_DIR_LOC}/ else scp ${SSH_OPTIONS} *.deb \ ${VIRL_USERNAME}@${VIRL_SERVER[${index}]}:${VIRL_DIR_LOC}/ fi result=$? if [ "${result}" -ne "0" ]; then echo "Failed to copy files to VIRL host ${VIRL_SERVER[${index}]}" echo ${result} exit ${result} else echo "files successfully copied to the VIRL host ${VIRL_SERVER[${index}]}" fi DONE+=(${VIRL_SERVER[${index}]}) fi done # Start a simulation on VIRL server echo "Starting simulation on VIRL server" function stop_virl_simulation { ssh ${SSH_OPTIONS} ${VIRL_USERNAME}@${VIRL_SERVER}\ "stop-testcase ${VIRL_SID}" } VIRL_SID=$(ssh ${SSH_OPTIONS} \ ${VIRL_USERNAME}@${VIRL_SERVER} \ "start-testcase -c ${VIRL_TOPOLOGY} -r ${VIRL_RELEASE} ${VPP_PKGS_FULL[@]}") retval=$? if [ "${retval}" -ne "0" ]; then echo "VIRL simulation start failed" exit ${retval} fi if [[ ! "${VIRL_SID}" =~ session-[a-zA-Z0-9_]{6} ]]; then echo "No VIRL session ID reported." exit 127 fi # Upon script exit, cleanup the simulation execution trap stop_virl_simulation EXIT echo ${VIRL_SID} ssh_do ${VIRL_USERNAME}@${VIRL_SERVER} cat /scratch/${VIRL_SID}/topology.yaml # Download the topology file from virl session scp ${SSH_OPTIONS} \ ${VIRL_USERNAME}@${VIRL_SERVER}:/scratch/${VIRL_SID}/topology.yaml \ topologies/enabled/topology.yaml retval=$? if [ "${retval}" -ne "0" ]; then echo "Failed to copy topology file from VIRL simulation" exit ${retval} fi virtualenv --system-site-packages env . env/bin/activate echo pip install pip install -r ${SCRIPT_DIR}/requirements.txt pykwalify -s ${SCRIPT_DIR}/resources/topology_schemas/3_node_topology.sch.yaml \ -s ${SCRIPT_DIR}/resources/topology_schemas/topology.sch.yaml \ -d ${SCRIPT_DIR}/topologies/enabled/topology.yaml \ -vvv if [ "$?" -ne "0" ]; then echo "Topology schema validation failed." echo "However, the tests will start." fi # TODO(CSIT-994): reenable NSH PYTHONPATH=`pwd` pybot -L TRACE -W 136\ -v TOPOLOGY_PATH:${SCRIPT_DIR}/topologies/enabled/topology.yaml \ --suite "tests.honeycomb.func" \ --include HC_FUNC \ --exclude HC_NSHORHC_REST_ONLY \ --noncritical EXPECTED_FAILING \ --variable HC_ODL:${ODL} \ tests/ RETURN_STATUS=$? # Get Honeycomb log file from virl host scp ${SSH_OPTIONS} \ ${VIRL_USERNAME}@${VIRL_SERVER}:/scratch/${VIRL_SID}/honeycomb.log . || true # Get ODL karaf log file from virl host scp ${SSH_OPTIONS} \ ${VIRL_USERNAME}@${VIRL_SERVER}:/scratch/${VIRL_SID}/karaf.log . || true # Archive JOB artifacts in jenkins for i in ${JOB_ARCHIVE_ARTIFACTS[@]}; do cp $( readlink -f ${i} | tr '\n' ' ' ) ${JOB_ARCHIVE_DIR}/ done # Archive JOB artifacts to logs.fd.io for i in ${LOG_ARCHIVE_ARTIFACTS[@]}; do cp $( readlink -f ${i} | tr '\n' ' ' ) ${LOG_ARCHIVE_DIR}/ done exit ${RETURN_STATUS}