summaryrefslogtreecommitdiffstats
path: root/lavalab-gen.py
AgeCommit message (Collapse)AuthorFilesLines
2018-06-05Implement MultipleslaveCorentin LABBE1-123/+256
This patch implement multiple slave support. Instead of having a maximum of one master and one slave in one docker image, it is now possible to have multiple slave accross several docker host. For helping this change, a new boards.yaml format is introduced (See README.md for details) Note that tokens.yaml is also squashed in boards.yaml
2018-04-13Permit to add custom option in board filesCorentin LABBE1-0/+3
Some board need some jinja options (ex: nanopik2 need use_vendor_uboot) but adding all possible options is not worth the cost. So this patch adds a custom way to add option to board file.
2018-04-13Rename macaddr to uboot_macaddrCorentin LABBE1-2/+2
For clarify the use of macaddr, rename it to uboot_macaddr.
2018-04-13Add uboot_ipaddrCorentin LABBE1-0/+2
Some boards have broken uboot dhcp, so we need to set a static ip in uboot. This patch add a way to specify such IP via uboot_ipaddr.
2018-03-08Rename lab to workerCorentin LABBE1-20/+20
This patch fix the misleading name lab to the more proper worker since a lab could be a group of workers.
2018-02-15Clean argument parsingCorentin LABBE1-6/+2
lavalab-gen.py does not handle arguments, lets remove all arg parsing stuff.
2018-02-14Force the use of hexadecimal values for product/vendor IDsCorentin LABBE1-2/+8
Using "idproduct: 6001" let python convert 6001 to 24577 and so corrupt the UDEV line.
2018-02-14Made lavalab-gen.py python3 compatibleCorentin LABBE1-14/+14
lavalab-gen.py cannot be used with python3. This patch made it compatible with both python2 and python3.
2018-02-14Reintroduce qemu KVM supportCorentin LABBE1-1/+11
Since lava-docker must run on all arch, and that KVM is x86 specific, KVM support was disabled for qemu. Reintroduce it now as an option for each lab via the host_has_cpuflag_kvm flag.
2018-02-14Remove hardcoded devices for lava-slaveCorentin LABBE1-4/+5
The node devices was hardcoded for lava-slave. For example, lava-master could never have devices. Remove that hard-coding and made devices dynamic for any labname.
2018-02-02Handle optional macaddrCorentin LABBE1-0/+3
Some boards need to have a macaddr set in uboot (like meson-gxl-s905x-libretech-cc) This patch add support for it.
2018-02-02Implement connection_commandCorentin LABBE1-0/+6
connection_command is a generic way to get console from devices. It could ran telnet for accessin ser2net for example.
2018-02-02lavalab-gen.py: Handle non-FTDI UART via devpathCorentin LABBE1-4/+14
This patch add support for non-FTDI UART by adding a devpath member. Since both FTDI and non-FTDI need also idevendor/idproduct, this patch introduce them.
2018-02-02Generate udev rules in udev directoryCorentin LABBE1-1/+3
2018-02-02produce non-duplicate udev filesCorentin LABBE1-1/+1
When more than one "lab" is referenced (like lava-master + lab-slave-0), udev content is duplicated. This patch reset the udev_line variable for producing non-duplicate udev files.
2018-02-02Remove lavapdu support and replace with pdu_genericCorentin LABBE1-15/+10
Recent lavapdu is unpackaged and buggy. Remove it and replace with a generic PDU command line wrapper
2018-02-02A pdu is optionnalCorentin LABBE1-2/+2
2018-02-02Handle boards without uartCorentin LABBE1-10/+14
Some boards could not have uart like qemu. This patch made having an uart optionnal.
2018-02-02Move conmux and slaves directory creationCorentin LABBE1-4/+10
Thoses two directory are necessary even with setup without conmux and slaves. (Due to Dockerfile COPY). This patch move the creation of thoses two directory at start of lavalav-gen.py
2018-02-02Permit to customize dispatcher_ipCorentin LABBE1-5/+6
dispatcher_ip is the IP used by boards for contacting/downloading images/dtb/etc... For the moment it was harcoded to 192.168.66.1. This patch permit to easily change it.
2018-02-02Place board under boardlistCorentin LABBE1-2/+2
We need to add some information to lab node, so we need to move all boards under a list("boardlist")
2018-02-02stick to LAVA 2017.11Corentin LABBE1-0/+3
Since LAVA packages are ephemeral, this patch permit to build a know release of LAVA. Introducing scripts/build-lava which builds from source any LAVA compoments from any version tag. In the same time, stick to 2017.11 as its a know working release for lava-docker.
2018-01-09Permit to create staff/superuser usersCorentin LABBE1-1/+10
This patch add two user options staff and superuser. This will permit to create users with thoses flag in LAVA. In the process remove the hardcoded admin user from Dockerfile and move it in tokens.yaml
2018-01-08qemu: Some arch does not have kvmCorentin LABBE1-0/+3
Since some arch does not have kvm, remove kvm usage for qemu. We will reintroduce it later via a flag/autodetect.
2017-10-25Introduce docker-composeCorentin LABBE1-0/+141
This commit introduce two compoments: lavalab-en.py which generate: - device files - conmux config files - users files - tokens files - udev rules for host - final docker-compose.yml file Except of docker-compose.yml, all other files are ignored for the moment and will be handled by a following commit. docker-compose: The docker compose permits to building and running easily lava-docker images. It permit also to remove some contraints like knowing the LAVA_SERVER_IP/LAVA_MASTER.