device_type: hi6220-hikey-r2
tags:
  - static-ip
  - 4k-hdmi-dongle
  - usb-mouse
job_name: lhg-oe-robotframework-tests-${MANIFEST_BRANCH}-${BUILD_NUMBER}
timeouts:
  job:
    minutes: 40
  action:
    minutes: 20
  connection:
    minutes: 5
priority: high
visibility: public

metadata:
  manifest branch: ${MANIFEST_BRANCH}
  build-url: ${BUILD_URL}
  build-location: ${BASE_URL}/${PUB_DEST}

protocols:
  lava-lxc:
    name: lxc-hikey-test
    distribution: ubuntu
    release: xenial
    arch: amd64
    verbose: true

actions:
- deploy:
    namespace: tlxc
    timeout:
      minutes: 20
    to: lxc
    packages:
    - wget
    - unzip
    - python-opencv
    - python-pip
    - libffi-dev
    - libssl-dev
    - python-lxml
    - tesseract-ocr
    - git
    os: debian

- boot:
    namespace: tlxc
    prompts:
    - "root@(.*):/#"
    - "hikey:/"
    timeout:
      minutes: 5
    method: lxc

- test:
    namespace: tlxc
    timeout:
      minutes: 10
    definitions:
    - repository: https://git.linaro.org/qa/test-definitions.git
      from: git
      path: automated/linux/android-platform-tools/install.yaml
      name: install-android-platform-tools-r2600
      parameters:
        LINK: 'https://dl.google.com/android/repository/platform-tools_r26.0.0-linux.zip'

- deploy:
    timeout:
      minutes: 20
    to: fastboot
    namespace: hikey-oe
    connection: lxc
    images:
      ptable:
        url: ${PTABLE_URL}
        reboot: hard-reset
      # Reflashing fip.bin doesn't seem to work atm
      #fastboot:
      #  url: ${FIP_URL}
      #  reboot: hard-reset
      boot:
        url: ${BOOT_URL}
        reboot: hard-reset
      system:
        url: ${SYSTEM_URL}
        compression: gz
        apply-overlay: true
    os: oe
    protocols:
       lava-lxc:
       - action: fastboot-deploy
         request: pre-power-command
         timeout:
           minutes: 2

- boot:
    namespace: hikey-oe
    auto_login:
      login_prompt: "login:"
      username: root
    prompts:
    - "root@hikey:~#"
    timeout:
      minutes: 5
    method: grub
    commands: installed
    protocols:
      lava-lxc:
      - action: grub-sequence-action
        request: pre-os-command
        timeout:
          minutes: 2

- test:
   namespace: hikey-oe
   timeout:
     minutes: 20
   definitions:
   - from: inline
     repository:
       metadata:
         format: Lava-Test Test Definition 1.0
         name: basic-tests
         description: "Basic tests after hikey boots to the shell prompt"
       run:
         steps:
         - lava-test-case ps --shell ps aux
         - lava-test-case hikey-dmesg --shell dmesg
         - lava-test-case weston-status --shell test -f /run/user/1000/weston.log
         # Prevent Weston enter "inactive mode"
         - echo -e "idle-time=0" >> /etc/xdg/weston/weston.ini
         - cat /etc/xdg/weston/weston.ini
         - lava-test-case prevent-weston-enter-inactive-mode-and-restart-it --shell systemctl restart weston@linaro
     name: basic-tests
     path: inline/basic-tests.yaml

- test:
   namespace: tlxc
   timeout:
     minutes: 40
   definitions:
   - repository: https://git.linaro.org/people/arthur.she/test-definitions.git
     from: git
     path: openembedded/robotframework-lxc.yaml
     name: robotframework-lxc
     params:
       RF_TEST_CASE: "weston-simple-egl/weston-simple-egl-test.robot,gst-wayland-test/gst-wayland-test.robot,browser-test/chromium-browser-test.robot,youtube-test/youtube-test.robot,webgl-test/webgl-test.robot,x-test/xtest-benchmark.robot,x-test/xtest-regression.robot,eme-test/eme-clearkey-test.robot"
       RF_TEST_CASES_REPO: "https://github.com/linaro-mmwg/lhg-robotframework-test.git"
