11
Large Scale Deployments for Automated Testing Dave Pigott - Linaro @davepigott

Large Scale Deployments for Automated Testing€¦ · Automated testing in Linaro • Introduction To LAVA • How does LAVA deploy test images? • What if the board gets bricked?

  • Upload
    others

  • View
    8

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Large Scale Deployments for Automated Testing€¦ · Automated testing in Linaro • Introduction To LAVA • How does LAVA deploy test images? • What if the board gets bricked?

Large Scale Deployments for Automated TestingDave Pigott - Linaro

@davepigott

Page 2: Large Scale Deployments for Automated Testing€¦ · Automated testing in Linaro • Introduction To LAVA • How does LAVA deploy test images? • What if the board gets bricked?

Automated testing in Linaro• Introduction To LAVA

• How does LAVA deploy test images?

• What if the board gets bricked?

• Connectivity

• Physical Deployment

• Administration

• Staging Instances

• Large Scale Deployments going forward

Page 3: Large Scale Deployments for Automated Testing€¦ · Automated testing in Linaro • Introduction To LAVA • How does LAVA deploy test images? • What if the board gets bricked?

Introduction to LAVA

• The Linaro Automated Validation Architecture

• First implementation started in late 2010

• Second iteration development - LAVA V2 started 2014

• Rolled out fully in 2017 in LAVA Lab, Cambridge

Page 4: Large Scale Deployments for Automated Testing€¦ · Automated testing in Linaro • Introduction To LAVA • How does LAVA deploy test images? • What if the board gets bricked?

LAVA Device Challenges

• Power on Boot

• Unique device identification

• Serial Connectivity

Page 5: Large Scale Deployments for Automated Testing€¦ · Automated testing in Linaro • Introduction To LAVA • How does LAVA deploy test images? • What if the board gets bricked?

What if the board gets bricked?

• Power Control

• Ethernet controlled relays for push button emulation

• Re-flash firmware

• Board dependent

• Solder mods mean solution doesn’t scale well

Page 6: Large Scale Deployments for Automated Testing€¦ · Automated testing in Linaro • Introduction To LAVA • How does LAVA deploy test images? • What if the board gets bricked?

LAVA Devices - Connectivity

• Quality cables

• Worth the extra money - massively reduces test failures

• USB Hubs

• Have to have individual port power control

Page 7: Large Scale Deployments for Automated Testing€¦ · Automated testing in Linaro • Introduction To LAVA • How does LAVA deploy test images? • What if the board gets bricked?

LAVA - Physical Deployment

• Wide range of form factors

• Up to medium size - use monitor shelves

• Some come in cases

• Otherwise re-factor into 1u case

• Multiple boards per case

Page 8: Large Scale Deployments for Automated Testing€¦ · Automated testing in Linaro • Introduction To LAVA • How does LAVA deploy test images? • What if the board gets bricked?

LAVA - Administration• Configuration Management

• Salt

• Server and LAVA configuration

• Git repo - https://git.linaro.org/lava/lava-lab.git

• Ansible

• User account management

• Git repo - https://git.linaro.org/lab-cambridge/lab-ansible.git/

• VPN access

• Required for LAVA hacking sessions and direct board interaction

• develop-lxc script in lava-lab repo allows users to interact with a DUT

Page 9: Large Scale Deployments for Automated Testing€¦ · Automated testing in Linaro • Introduction To LAVA • How does LAVA deploy test images? • What if the board gets bricked?

LAVA - Staging Instances

• Very important for testing out new releases of LAVA

• Key to testing out new firmware/bootloaders

Page 10: Large Scale Deployments for Automated Testing€¦ · Automated testing in Linaro • Introduction To LAVA • How does LAVA deploy test images? • What if the board gets bricked?

LAVA - Large Scale Deployments

• Working with 3rd party to fit up to 16 of the 96boards CE form factor in 1u

Page 11: Large Scale Deployments for Automated Testing€¦ · Automated testing in Linaro • Introduction To LAVA • How does LAVA deploy test images? • What if the board gets bricked?