device_type: hi6220-hikey
job_name: HiKey OE using multiple serial ports
timeouts:
  job:
    minutes: 30
  action:
    minutes: 15
  connection:
    minutes: 2
priority: medium
visibility: public

metadata:
  # please change these fields when modifying this job for your own tests.
  docs-source: connections
  docs-filename: examples/test-jobs/multiple-serial-ports-lxc.yaml
  build: morty-mainline-588
  original.build: http://snapshots.linaro.org/openembedded/lkft/morty/hikey/rpb/linux-mainline/337/
  reference.job: https://staging.validation.linaro.org/scheduler/job/192744/definition

protocols:
  lava-lxc:
    name: lxc-hikey-oe
    template: debian
    distribution: debian
    release: stretch

actions:
- deploy:
    namespace: tlxc
    timeout:
      minutes: 15
    to: lxc
    packages:
    - fastboot

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

- deploy:
    namespace: hikey-oe
    timeout:
      minutes: 30
    to: fastboot
    connection: lxc
    images:
      ptable:
        url: http://images.validation.linaro.org/snapshots.linaro.org/openembedded/lkft/morty/hikey/rpb/4.9/83/bootloader/ptable-linux-8g.img
        reboot: hard-reset
      boot:
        url: http://images.validation.linaro.org/snapshots.linaro.org/openembedded/lkft/morty/hikey/rpb/linux-mainline/588/boot-0.0+AUTOINC+06e4def583-fb1158a365-r0-hikey-20180128213254-588.uefi.img
        reboot: hard-reset
      system:
        url: http://images.validation.linaro.org/snapshots.linaro.org/openembedded/lkft/morty/hikey/rpb/linux-mainline/588/rpb-console-image-hikey-20180128213254-588.rootfs.img.gz
        compression: gz
        apply-overlay: true
        # ensure that this job raises a network interface with DHCP before relying on internet access
    protocols:
      lava-lxc:
      - action: fastboot-deploy
        request: pre-power-command
        timeout:
          minutes: 2

- boot:
    namespace: hikey-oe
    # terminate monitoring of this connection at login prompt
    prompts:
    - 'login:'
    timeout:
      minutes: 5
    method: grub
    commands: installed
    protocols:
      lava-lxc:
      - action: grub-sequence-action
        request: pre-os-command
        timeout:
          minutes: 2

# boot uart0 block
- boot:
    # make the connection to the second uart for use in the test shell
    # support auto-login
    namespace: isolation
    connection: uart0
    prompts:
    - 'root@hikey:~#'
    method: new_connection
    auto_login:
      login_prompt: 'login:'
      username: root
    timeout:
      # shorter timeout as the device should exist.
      minutes: 2

# test isolation block
- test:
    namespace: hikey-oe
    connection-namespace: isolation
    timeout:
      minutes: 5
    definitions:
    - repository: http://git.linaro.org/lava-team/lava-functional-tests.git
      from: git
      path: lava-test-shell/smoke-tests-basic.yaml
      name: smoke-tests-basic-oe
