Logo TIB AV-Portal Logo TIB AV-Portal

From zero to first test in your own LAVA laboratory

Video in TIB AV-Portal: From zero to first test in your own LAVA laboratory

Formal Metadata

From zero to first test in your own LAVA laboratory
(in less than 45 minutes)
Title of Series
CC Attribution 4.0 International:
You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal purpose as long as the work is attributed to the author in the manner specified by the author or licensor.
Release Date

Content Metadata

Subject Area
Linaro Automated Validation Architecture (LAVA) is without a doubt one of the best currently available tools for managing QA board farms. It is proven to be quite a handy tool for both developers and tests automation engineers. Although it is provided together with extensive documentation, creating first own laboratory might be a challenging task. Does it have to be for every newcomer? During this talk Paweł will guide through the process of setting up own LAVA instance. He will also present how to manage its configuration and how to easily make deployments automated and reproducible.
Keywords Persistent Migration

Related Material

The following resource is accompanying material for the video
Video is cited by the following resource
Statistical hypothesis testing Distribution (mathematics) Variety (linguistics) Software developer Shared memory Mereology Computer animation Meeting/Interview Order (biology) Optics Energy level Sinc function Physical system
Computer animation Shared memory Instance (computer science) Resultant
Statistical hypothesis testing Group action Software developer Multiplication sign Range (statistics) Physical law Interactive television Shared memory Physicalism Perturbation theory Mereology Statistical hypothesis testing Performance appraisal Process (computing) Kernel (computing) Computer animation Integrated development environment Peripheral Computer hardware Energy level Resultant Computer architecture Physical system
Distribution (mathematics) Software developer Cartesian coordinate system Statistical hypothesis testing Arithmetic mean Computer animation Operator (mathematics) Normal (geometry) Energy level Right angle Procedural programming Resultant Abstraction Form (programming)
Point (geometry) Statistical hypothesis testing Scheduling (computing) State of matter Equaliser (mathematics) Perspective (visual) Rule of inference Statistical hypothesis testing Energy level Traffic reporting Task (computing) Distribution (mathematics) Software developer Model theory Projective plane Data storage device Interactive television Instance (computer science) Type theory Arithmetic mean Kernel (computing) Computer animation Integrated development environment File archiver Vertex (graph theory) Configuration space Freeware Resultant
Statistical hypothesis testing Point (geometry) Web page Slide rule Domain name Server (computing) Service (economics) Computer file View (database) 1 (number) Mereology Event horizon Template (C++) Web 2.0 Revision control Mathematics Coefficient of determination Term (mathematics) Semiconductor memory Computer programming Energy level Office suite Computing platform Metropolitan area network Physical system Installation art Module (mathematics) Default (computer science) Addition Focus (optics) Dialect Email Validity (statistics) Electronic mailing list Basis <Mathematik> Instance (computer science) Human migration Dean number Type theory Arithmetic mean Computer animation Integrated development environment Repository (publishing) Order (biology) Configuration space Thermal conductivity Resultant
Point (geometry) Performance appraisal Computer animation Integrated development environment Internet service provider View (database) Energy level Configuration management Product (business)
Service (economics) Multiplication sign Range (statistics) Virtual machine Bit Performance appraisal Digital rights management Goodness of fit Computer animation Integrated development environment Software Internet service provider Cuboid
Web page Computer animation Internet service provider Configuration space
Computer animation Integrated development environment Lecture/Conference Multiplication sign Virtual machine Set (mathematics) Conservation law Canonical ensemble Routing
Performance appraisal Computer animation Integrated development environment Virtual machine Configuration space
Computer animation State of matter Energy level Instance (computer science)
Statistical hypothesis testing Group action Process (computing) Computer animation Network topology Template (C++)
Computer animation
Statistical hypothesis testing Multiplication sign Direction (geometry) Range (statistics) 1 (number) Materialization (paranormal) Mereology Statistical hypothesis testing Peripheral Touch typing Videoconferencing Energy level Software framework Computing platform Condition number Alpha (investment) Motif (narrative) Distribution (mathematics) Validity (statistics) Software developer Projective plane Electronic mailing list Instance (computer science) Kernel (computing) Computer animation Network topology Website Iteration Right angle Resultant
Point (geometry) Group action Dependent and independent variables Multiplication sign Software developer View (database) Projective plane Instance (computer science) Statistical hypothesis testing Computer animation Software Personal digital assistant Energy level Condition number
Statistical hypothesis testing Serial port Computer file Code Set (mathematics) Water vapor Function (mathematics) Mereology Formal language Template (C++) Statistical hypothesis testing Mathematics Latent heat Meeting/Interview Computer configuration Computer hardware Computer network Operating system Energy level Booting Mathematical optimization User interface Decision tree learning Scripting language Block (periodic table) Reflection (mathematics) Data storage device Maxima and minima Benchmark Connected space Word Bootstrap aggregating Computer animation Software Telecommunication Configuration space Video game console Procedural programming Communications protocol Resultant Library (computing) Reverse engineering
Email Computer animation Drop (liquid) Line (geometry)
hello everybody my name is part of the talk and I work for some some kind R&D Institute pointed and I'm currently outnumber also ties and release engineering team python is node in
Oaks distribution and so in the common variants which I currently that its main aim is still provide support for as many and development boards as possible that includes some popular once like charisma applies and some less frequently used like CorelDraw it's optics and so on today I would like that at all share with you on a short introduction tool what level of laboratories since as you might imagine that tasks such as the validating verifying testing uh operating systems on a wide variety of development boards and involves a lot of automation and so in order to stay efficient uh we have told them put as much of our work on automated systems I will start with a short introduction to all walks
love are actually is how you might benefit from it and so what's going give you but then I will go through the steps off actually setting up your own laboratory I would also like to share and fuel useful tools so that might uh make your future work with love all much easier the next 1 I will show you need how you can get these results quickly and also I would like to all share with the a fuel room a few steps that you might go from having your 1st instance and what to do or that actually I will conclude with a short summary if your final thoughts and so of course they're Q & a session the so let's
start with uh with a waltz of optionally is a
level of stands for what is an acronym which stands for clean our automated evaluation architecture and it's an appointed system for deploying operating systems on uh embedded devices but also on not only just on the physical devices but also all the other 2 laws like ML or the answers that's why we became interested in it in the 1st place at all make the whole process also deployment a kernel device 3 bolts are with offences uh on the embedded devices uh the NOL uh manual interaction not as I mentioned to the and love are our uh lets us tool that test on both the action on the device's and individualized environments and who wants to be operating system is put on to the device uh a wider range tests can be run on each of the devices and that it includes both tests if and that that will folder level or some level tests although it might be it's it's 1 of the tool to note that some of the tests and might require some additional hardware are like that tests for power consumption on the or temperatures depending on the level of the load on the devices the and so let's ask ourselves when is it
actually knew that's in the most basic set up for a but it's the development like a single army 7 board like the global market the and it's the not remarks tools to memorize all the steps for flushing of the devices collocating with the gathering results from the test runs and parts it has some downsides of for example where single developer can then use it so some of the time and it's a the hot tool share without the In actual physical presence and so 1 and 2 passing it from 1 developer to another uh and so the it lacks the running tests in parallel but that's not the only problem with this setup
what about but if your application or your mom and but that's the only the distribution has to provide support
for other target devices that even under 7 based like the BBB for example the object and on the top left or other rights is 0 3 on the bottom right and so it even with all the mn and procedures in place and all that the norm of by other developers and maybe your application or or distribution has to provide support for a completely new all and development boards like mean work to report which is an Intel-based and so all the operations that I mentioned earlier are a down in a completely different way than the ARM-based devices known even if all these details are shared among your team and it's no longer an issue and sooner or later the test results will have to be provided the quicker it will have to be done in parallel uh and so on it's food managing the whole board farm of yours will require too much of a 4 2 from the developers soul that maybe you could benefit from an abstraction layer uh put over your whole board form that's actually what's the level is and
and of all and also tools simplify if under complex uh ways of managing uh their devices you don't have to war about to the specifics but of each device like flashing running communicating gathering uh results uh that's no longer a concern of yours and you don't have to worry about device-specific features as long as they were previously defined in your model of a configuration and you you don't have to all warrior Baltzer managing multiple instances of your device types as well uh the scheduling and dispatching of the tasks is down that for you in the love our environment it to provide a unified way of communicating with devices from developers points of as long as all the that devices where uh configure it beforehand developers no longer uh you have to put on a floor uh until and managing the devices uh they look from the perspective of equality and at the same I would love are you also on gets tool around all of your tests in parallel uh as long as they do not depend on each other and can be divided into smaller chunks and also it to the stores and archives all their results uh that you get over time so that you can review them at all or investigate more closely uh if you need to know our in the long run the also it a lot of rules and all their benefits uh that you get from the income a direct interaction with your report uh you still get tool we have they been you can get to devise a directly by using either butane solution which are packed concessions or some from of external a toll like board overs year by free electrons the and since this tool idea gives you so much let's go through cool actually uses lower currently 1st of all the meaning behind the tool itself we know are all currently uses it for and testing in both the legal 702 on uh development boards on also all the kernels CI project therefore removed people from Colonel CI vertical test the support of the uh many uh development what's in the uh can outperform book tests I within the level of our trees as for the whole of distributions that currently a both stadium and automotive greatly notes that do and the way in love or laboratories the and now that we have
some uh rough across the image also the whole can we benefit from my level let's go through these that's about states this steps I
will focus today on stand-alone instance that even the whole region of our allows your tool in get your environment distributed that what I mean is that it doesn't matter whether the boards are in your European office or Asian offices or any other and a country that it's the it it will be a still the same from the a point of view it will also focus on some of the virtual devices only today and will not get into the topic all for writing tests for the a level and why is that
1st of all tool uh this uh some of these 1st steps as straightforward as possible as soon as it might be completely you walk for for your and it is really important to get familiar with all the basic concepts uh so that it will not get in your way and it will help you instead of making things even more difficult and so the 1 if and all that that you might say already use uh can be reused in other that it might be a crime wise to postpone the migration uh after the whole set up is already done and so what what our love also the requirements fortunately that's the uh level is not told demanding that it's the in in the setup that we go through today I will follow the need only have supported together release uh which currently includes environment the old stable Jesse uh currently the wobble tool support is frozen due to and told version of jungle in the default repositories uh but if you are interested in the details all of this you might find that and proper and mailing lists threat linked on the slides on uh on and on the page also this stock uh on programs . 1st conduct the apart from the a Debian-based platform will needs also uh fuel additional flies there 1st of all system image it might be built all by yourselves or taken from the proposed images provided by a binaural on there remain of Einstein's on images stops the validation doctrine our . org and for starters it it might be the quickest way to we get up to speed next the sure the it does that does low-support build your images within the framework or do you have to build them outside and just supply uh currently in love on its will have these images only being other already built so some additional uh set up would be required for example the and as you mentioned and giving them elsewhere events applying just level thank you sir next you will also have told apart from the uh operating system image you'll have to the supply health check uh adult just to make sure that the border operates properly and and these can also be obtained directly from the early on it's not in our the dog on the uh QA domain you'll find so many exemplary uh hosted tops for various so the embedded devices all sold and device type template will be necessary but to those no are all soul supplied to uh BiIly narrow in all the uh man of our installations there multiple templates already in place and the 1 that will need 40 u have is so and provided by default the only a file that you will have to all prepare beforehand all by ourselves is this is only as relying uh file and which consists of the definition we chose template will be extended and 2 features that will be a specified to uh in order a tool in avoid any conflicts between devices sold in the market just for the Canada as and so on for maximizing utilization of your resources uh specifying being maximum memory of the device once you all have also this is prepared to you might goal directly tools setting up uh thanks to the efforts from and love our picketing Dean a Debian repositories already provides a the government the packages that we will use but before Huntsville indeed the basis for the results configuration and so on and so on has to be prepared to this also all but I would note that that just for today uh will will use the and met package and for while but as your laboratories gets the more sophisticated and as your uh requirements girl meaning you might benefit from the fine-grained at packages uh tool and stay at the end meanwhile possible uh set of of of art and not to install any unnecessary parts the ones so uh this is all in place all you have to tool tool set up what you I would be at all and able to additional modules for Apache and replacing the default configuration with the 1 that is already supplied with the your levels over and of course uh is starting your service in order to all uh apply all the changes that on your server also do remember to all of us about the as superiors for the whole configuration as for actually adding an devices to her laboratory uh these 3 steps are and everything that you will need to 1st of all that ending the actual device type or letting go of our laboratory know what do you have in your laboratory at the first one has to be done only once per edge device type and the next ones that are adding instance of your devices and the actually specifying the details of your instances or in love all terms uh and passing that device dictionary to your love or laboratory and once this is done you might goal to the CLI or would you like and so since it's the allows you to all the automate everything uh I believe you will be that all that you will use the most but for just a quick and dirty tests the web UI and should be sufficient to
uh there are also in the a few of the tools that you might benefit from and when you set up your own uh level laboratory 1st of
all and it's the MIT beneficial tool have your environment reproducible and from our point of view all in in its in doesn't really matter what's a provider of configuration management you use uh they all in can perform equally well but it is so important to have your environment reproducible so that you will always be sure that your staging production or any other evaluation environment will always have the same uh set so too is your personal favorite to entice and we use affable playbook so the most apart from that I believe that your
evaluation environment will probably be done in a in vitro machines sold depending on and how much time and you have spare you might say I there and use the uh quicker solution which is log uh management software for virtual machines which allows you to form and bring up the the answer almost instantly and provides a wider range of purple boxes fire it's a plus the service there about to be careful since not all of the and basic boxes are provided in every little additional provider you might use uh and so take a closer look at the what you will be a and pulling from the of of service a few have from some more time to stop and select all and tinker a little bit will probably be the solution for your as since it allows so as for the set up to the um more adjusted to your needs better adjusted to your needs and still accounts with uh fewer user-friendly uh both alive and you tools and I don't think that all
of the little steps so that I uh already mentioned so the that you will have to all in around them all the in all by yourself and of course it's it's might be a good exercise tool to round them in once for bots on
the page the stock you I will find an example also from watching a configuration with the love are installed from the mother package with the named devices and with Kim a device basing on uh that runs with uh the trawl ization provider and provisioned with possible playbook so let me just sorry
for quicker a what you'll find
in the tarball is are actually basic requirements this of origin environments that to use which are currently only uh picked enhanceable installed on your host machine the and everything else will be a bring out I will be brought up Osorio now aware of the and playbooks from the horrible as well yeah sure of course it and how about now is better the alright then so what's very worth uh this font size the as for the conservation of your little machine that you'll if you'll decides tool in modify its do remember tool allow uh the virtual machine uh to that of the route or machines so with it so that you will be able to add to the canon devices as the k the emotions and all the steps that I already mentioned there are no written as a sizable roles solely uh that a basic introduction to the set of steps for a and sent others are already done for you so that you will get up to speed in no time and so just to be sure I
have but I will bring up the uh the drum machine the I have to admit that there is to use the uh to do 2 things
I have I brought it up for a just before the stock so that you want to have to wait for the download of all the packages and so once we have this configuration applied to always official machine with a lot our evaluation environments we can
goal to the or 1st thing instance of your own level laboratory and for example check out the devices that were added
and the in the initial state just the single QM otherwise by which as you can see that already performed as fuel health checks so what is the inside such a desk
job the and that's the does the
basic templates uh it's uh requires the 3 main actions of the deployment instructions bolt instructions and shortest this from department instructions involved a what will be run on the or device and how it will be in around that as 4 books uh it's defines what to expect from your operating systems and so the actual tests there are and and described in uh separate gets triples trees are available directly from meanwhile Ch
the now let's get back to
fuel Ch
final notes the
the what you might have to do with your own laboratories From now on the world uh if you'd be
interested in actually adding some physical devices uh the uhm and the conditional that can be found on each of the uh level laboratories instances but the most recent the condition for that can be found In the main part of our instance on validation of the Nara . org a the in topical 4 also were actually writing tests is described in the in chapter developing tests on that the conditions site as well you might also be interested in adding your laboratory to a be OCI project if you'd like to contribute uh some new boards for all the ones that are already available but you would like to get the results on a wider range also kernel trees from I I believe that everyone will benefit from uh and you what's in the kernel CI laboratories as for the uh articles so that you might find interesting they're all the motif the great Linux uh distribution publishers the whole set up of their laboratory and the test frame ork used in their key way uh activities and the testing initiatives from civil influence the infrastructure platform also provides many interesting materials on using upper laboratories are running tests on them uh and the and tend to the managing the results if you'd be more interested in uh in watching a video or listening to the rather than reading an article you might be uh interested in the talk from the Bill lecture from last year's uh in our connected which goes into the detail on internal so alpha level approaches on the design of it is a being interested in being a In in using uh direct access at tool the right to development ports connected to other laboratories uh that talk from want want and not and Quentin from last year so here's and that the troops for the Europe would be a the 1 for you or maybe you'll be interested in becoming familiar with the whole set up in the thing is this tradition and then young seem on the Mueller's talk will be the 1 for you of course much more uh the plantation is already available and In this talk just in touches the people the US but I'll work uh all faults love actually is an and so even tho it might seem a little over overwhelming at 1st of all the common issues and the and some difficulties that you might encounter are will probably be also solved uh if you look in the 2 condition closely now if you have some specific issues but also a novel users mailing list or uh the narrowed usher love are uh IRC channel on 3 note will be probably replace you'll get all iterations so the resolved at all times and tool uh
assignments all up and thanks to
the efforts from love of packaging team a once you all go through the whole documentation also on the uh setting up your 1st level laboratory and to take the necessary instructions uh you will get your 1st instance in a known time but if you will uh um meet all the requirements that it allows you to all and unify the whole set up all of your laboratory that and the you get the parallel execution of all your your uh test cases uh with no responsibilities on the developers developers uh see that devices uh the of the devices seem to be uh the same from the developer's point of view and so In and all that the condition for this project uh might be a little intimidating at 1st and the fact that you will uh get all the answers uh from them says is the right way to go but also in there is absolutely no need tool where invented the uh port farm management software is so the 1 that uh the provides a meets all of your requirements and the allows you tool tool making your work small uh work more efficiently and to give all the and the way automating all of these actions uh might seem a little closely at 1st but it will be beneficial in the long run and with each other and you all know the at best from that you will perform in your own laboratories and since you will already have uh the starting points you might get up to speed in no time and that will
be all of the water got preparatory today if you have any questions so I will be more than happy to answer
them the to you this but what's to me new requirements for the set of interfaces for aboard to we used by but it doesn't require that the net and the minimal requirements it is a depending on the way also your deployment of of deploying your images that if you have for the tool and perform only a tests which benchmark the possibilities of the port and you have the some specific image uh only a serial console just to communicate with the device would be sufficient but if you'd like tool deployed different images and other than some of the transport layer would be a more efficient as soul uh some network connection and might be helpful boxer the absolute the minimum is John from the consul thank you for your the question sir in our so I can just have a pair would just has serial and do everything that it accepted to reversal the that's right OK thank you you the questions like more on the hardware side um if you want to have the ability of testing bootstrap procedures for the new from uh which might of course go wrong hoodlum eidenberg so the board doesn't come up so 1 need some mechanism that replace a bootloader which normally means taking out storage device reflection is the cart or whatever them do we have experience with a have a solution that allows remotely deploying would images unfortunately in all the requirements for love I still have uh a way of communicating with the operating system with the device or to put it up I so um gel option than not putting from code would be to boot from manifests its the slammer have had been sordid Dührkop ability to kind of place in imaginative this year and then can it be up in in which the around uh yes so there are multiple and and different ways offer deploying images uh onto the devices and putting from uh defenses 1 of the uh available was uh 1 of the recent changes a in a pull request from PGL uh allows tool in both device directly from and NBDs from that for block devices if you'd be interested in uh subjectivity you was the interface level users to talk to tests the interface for for for communicating with the devices all the tests like women the trust the tests how communicates to the results the output of the test the that is does the tests have to be written in a specific language word does use some protocol to communicate Lola to report the results uh the tests are written in the light compatible uh yummo uh and configuration files which have to comply with its pipeline uh schema uh so the minimum requirement would be there are 3 parts to that uh I mentioned the soul uh the ball to the deployment stage will stage and the the the shortest from but I can see that that might not be the answer for the question could you rephrase please so how they make a test is separate executive always at the library for like Ruby or something what is a test what the test for the lovers alright so in another deploy social script onto your device so if you can uh write your test as this set also and steps uh that would be wrong otherwise the manually by your through the optimal on your device that you can also write it as uh the uh and lovely on the testing template OK thank you if the there's some other questions so that you know that come up to a few free
tool drop me a line at my e-mail address thanks for your attention and we never and I stress feel they thank you