01 lava introduction-and-updates-(dave-milo)1

15
LAVA@LCE13 - Schedule Monday LAVA Introduction & update - Dave & Milo LAVA Lab Deployment Workshop - Matt, Senthil & James Tuesday Test & Validation Summit - How do we better test our engineering? LAVA: Faster, Higher, Stronger (& easier to use) Wednesday Afternoon Hacking Sessions Thursday LAVA Multi-node testing - Antonio, Neil, Senthil, James & Fu Wei Advanced LAVA Lab Configuration - Tyler and Georgy Training: Adding 3rd Party Boards into LAVA - Senthil & Tyler Friday Infrastructure update - Paul, James & Philip LAVA Multi-node testing: LNG Use Cases Demo Friday

Upload: linaro

Post on 26-Jun-2015

182 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 01 lava introduction-and-updates-(dave-milo)1

LAVA@LCE13 - Schedule

Monday● LAVA Introduction & update - Dave & Milo● LAVA Lab Deployment Workshop - Matt, Senthil & James

Tuesday● Test & Validation Summit - How do we better test our engineering?

○ LAVA: Faster, Higher, Stronger (& easier to use)Wednesday● Afternoon Hacking Sessions

Thursday● LAVA Multi-node testing - Antonio, Neil, Senthil, James & Fu Wei● Advanced LAVA Lab Configuration - Tyler and Georgy● Training: Adding 3rd Party Boards into LAVA - Senthil & Tyler

Friday● Infrastructure update - Paul, James & Philip● LAVA Multi-node testing: LNG Use Cases● Demo Friday

Page 2: 01 lava introduction-and-updates-(dave-milo)1

LAVA Introduction

Dave PigottMilo Casagrande

LCE13 - Dublin, July 2013

Introduction to LAVA and Updates

Page 3: 01 lava introduction-and-updates-(dave-milo)1

LAVA - Who is LAVA?

LAVA team is

Diverse experience● Embedded Systems● Kernel Development● Web Frameworks● Information Systems● Integration Test

Geographically Distributed● ~13 Members ● 8 timezones● 10 Countries

Our team motto:"The only place in the world where LAVA is cool!"

Page 4: 01 lava introduction-and-updates-(dave-milo)1

LAVA - What is it?

The Linaro Automated Validation ArchitectureA framework...● for testing software on

hardware● that accepts "jobs" to perform

on selected hardware● that produces result bundlesA black box to CI...● all devices have the same

LAVA interfaceA cloud like solution...● for ARM devicesLAVA itself is an enabler - we do not define what can be run

Page 5: 01 lava introduction-and-updates-(dave-milo)1

LAVA - Why LAVA?

● Validate Linaro Engineering output

● Test Linaro Engineering output on a diverse range of member hardware

● Support automated kernel testing

● Ensure a device can be bricked, including the bootloader, and resurrected without manual intervention

● No assumptions of special capabilities

Page 6: 01 lava introduction-and-updates-(dave-milo)1

LAVA - What can I do with it?

● Submit jobs that will be run on a selected device with user selected combination of kernel and system image

● Snapshots and releases● Run user selected and

defined tasks on that image

● Can execute anything - e.g. toolchain submission - it's not just about tests

Page 7: 01 lava introduction-and-updates-(dave-milo)1

LAVA - Workflow

LAVA http front endCheck job validity and reject if not

possible or bad syntax

LAVA SchedulerWait for appropriate resource to

Become available

Daemon

Submit jobDefine in JSON with YAML

Manual or automated submission

LAVA DispatcherOn demand

Control platform over serial lineTest Platform

(Boot master image)

Deploy test image

Install tests on test image

Boot test image

Run tests

Submit resultsDatabase

LAVA DashboardView jobs, results, boards

Web GUI

Page 8: 01 lava introduction-and-updates-(dave-milo)1

LAVA - Manifestations

● LAVA as a service● LAVA as a product

○ It's Open Source - PYC! (Push Your Changes)

● LAVA for developers - LAVA@home● Easy deployment - lava-deployment-tool - packaging

Page 9: 01 lava introduction-and-updates-(dave-milo)1

LAVA - Lab Inventory● 75 Devices online & ~300 ARM CPUs

○ 4 TI Beagleboards○ 30 TI Panda 4430s○ 14 TI Panda 4460s○ 10 ST-Ericsson Snowball PDKs○ 10 Samsung Origens○ 4 Samsung Quad Core Origens○ 5 Samsung Arndale boards○ 2 ARM Versatile Express a9s○ 1 ARM Versatile Express a5○ 4 ARM Versatile Express TC2s○ 2 Calxeda 96 CPU Servers○ 1 Samsung Galaxy Nexus○ 2 Beaglebone Black○ 8 Fastmodels○ 2 Broadcom Capri○ 3 Nexus 10○ Member only access

● Lots of other devices used for staging and debugging

Page 10: 01 lava introduction-and-updates-(dave-milo)1

LAVA - Reliability

● Must be confident that if a job fails it is most likely the job and not LAVA

● Health checks run once every 24 hours

● If a board fails it is automatically taken offline

● Reliability now ~99%

Page 11: 01 lava introduction-and-updates-(dave-milo)1

● LAVA Lmp - LAVA Multi-purpose Probe" ○ The Holy Grail of automation"

● Bootloader testing with LAVA Lmp - sdmux● Multi-node testing● LEG and LNG server systems in the LAVA Lab● LAVA Helper Tools

LAVA - What's new?

Page 12: 01 lava introduction-and-updates-(dave-milo)1

LAVA - What's coming?

● CI/LAVA Integration○ A one stop shop for all automated testing

● Test on commit○ Every commit in engineering

● x86 Double Check

Page 13: 01 lava introduction-and-updates-(dave-milo)1

LAVA - Conclusion

● LAVA usage is growing● LAVA interest is growing● LAVA lab is expanding● LAVA Roadmap is very full and very exciting

Page 14: 01 lava introduction-and-updates-(dave-milo)1
Page 15: 01 lava introduction-and-updates-(dave-milo)1

LAVA - Lab Usage