aboutsummaryrefslogtreecommitdiff
path: root/automated/linux/igt/igt-test-alpha.yaml
blob: f78c7539475f594c67de50ea8e2687ab41503705 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
metadata:
    format: Lava-Test Test Definition 1.0
    name: igt-test
    description: "Run igt-gpu-tools with a given test list"
    maintainer:
        - arthur.she@linaro.org
    os:
        - debian
        - ubuntu
        - openembedded
    scope:
        - functional
    devices:
        - dragonboard-410c
        - x15

params:
    HDMI_DEV_NAME: "HDMI-A-1"
    IGT_DIR: "/igt-gpu-tools"
    # TEST_LIST: "CHAMELIUM" will run Chamelium test
    TEST_LIST: "CHAMELIUM"
    ARTIFACTORIAL_URL: ""
    ARTIFACTORIAL_TOKEN: ""
    CHAMELIUM_PING_RETRY: 2

run:
    steps:
        - cd ./automated/linux/igt
        # Reboot Chamelium
        - echo -e "\nReboot the chamelium\n"
        - ./control_chamelium.sh ${CHAMELIUM_REBOOT_ARG}; sleep 30
        - OPT="-d ${IGT_DIR} -t ${TEST_LIST}"
        - if [ "${TEST_LIST}" = "CHAMELIUM" ]; then
        # Check if Chamelium is available. ${CHAMELIUM_IP} is from LAVA device dictionary
        - while [ ${CHAMELIUM_PING_RETRY} -gt 0 ]; do PC=`ping -c 2 ${CHAMELIUM_IP}|grep '100% packet loss'`||true; if [ -n "${PC}" ]; then ./control_chamelium.sh ${CHAMELIUM_REBOOT_ARG}; sleep 30; (( CHAMELIUM_PING_RETRY-- )); else break; fi; done
        - test -n "${CHAMELIUM_IP}" && test ${CHAMELIUM_PING_RETRY} -gt 0 && lava-test-case "Ping-Chamelium" --result pass || lava-test-raise "Ping-Chamelium"
        # Check Chamelium uboot console status
        - ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@${CHAMELIUM_IP} /usr/bin/lock_u_boot_console || true
        # Showing the uptime of Chamelium
        - ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@${CHAMELIUM_IP} /usr/bin/uptime || true
        - if [ -n "${CHAMELIUM_IP}" ]; then OPT="${OPT} -c ${CHAMELIUM_IP}"; fi
        - if [ -n "${HDMI_DEV_NAME}" ]; then OPT="${OPT} -h ${HDMI_DEV_NAME}"; fi
        - fi
        - ./igt-test.sh ${OPT}
        # Delete Chameliumd log
        - ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@${CHAMELIUM_IP} /usr/bin/uptime
        # - ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@${CHAMELIUM_IP} sh -c "echo '' > /var/log/chameleond"
        # - ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@${CHAMELIUM_IP} sh -c "echo '' > /var/log/chameleond_init"
        # Dump igt test result and upload artifact to Artifactorial
        - ifconfig; pwd; ls -l
        - echo "**********************************************";
        - echo "************ Dump IGT test result ************";
        - echo "**********************************************";
        - if [ -f "${IGT_DIR}/results/results.json.bz2" ]; then bunzip2 ${IGT_DIR}/results/results.json.bz2; fi
        - ./print-test-result.py -f ${IGT_DIR}/results/results.json
        - if [ -n "${ARTIFACTORIAL_TOKEN}" -a -n "${ARTIFACTORIAL_URL}" ]; then
        - UPLOAD_TOOL="../../utils/upload-to-artifactorial.sh"
        - if [ -d "/root/dump-frames/" -a -n "`ls /root/dump-frames/`" ];  then echo "Got error frames.." ; tar -C /root -zcf dump-frames.tar.gz dump-frames/;
        - echo "*********************************************";
        - echo "************ Upload dump frames *************";
        - echo "*********************************************";
        - ${UPLOAD_TOOL} -a "dump-frames.tar.gz" -u "${ARTIFACTORIAL_URL}" -t "${ARTIFACTORIAL_TOKEN}"; fi; fi
        # Upload Chamelium log
        - echo -e "\nUpload Chamelium log\n"
        - scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@${CHAMELIUM_IP}:/var/log/chameleond* .
        - tar -zcf chamelium.log.tar.gz chameleond*
        - LOG_FILE="`pwd`/chamelium.log.tar.gz"
        - ls -l ${LOG_FILE}
        - ${UPLOAD_TOOL} -v -a ${LOG_FILE} -u "${ARTIFACTORIAL_URL}" -t "${ARTIFACTORIAL_TOKEN}"