From 5e363dcdda0856583068b93ed113940d12421ad6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Leonard=20H=C3=BCbner?= Date: Sun, 28 May 2023 11:13:53 +0200 Subject: [PATCH] Adding list of run'n'build options MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Leonard Hübner --- README.md | 39 ++++++++++++++++++++++++++++++++++----- 1 file changed, 34 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 5ba4c95..47cb3a3 100644 --- a/README.md +++ b/README.md @@ -16,7 +16,32 @@ maintain the meta-elisa layer. # How to build and run the ELISA Cluster demo ------------- +There are three different ways to optain an image of the cluster demo: +1. Prebuild Image + - if you just want to run the demo without building + [click here for the instructions.](#accessing-prebuild-images) +2. Build via Docker container + - if you want to build the demo + [click here for the instructions.](https://github.com/elisa-tech/wg-automotive/tree/master/Docker_container) +3. Manual Build + - if the docker approach does not work for you or you want to get to know the build process + [click here for the instructions.](#manual-build) + +## Accessing Prebuild Images + +Prebuild images of the demo are available in the [meta-elisa-ci package registry](https://gitlab.com/elisa-tech/meta-elisa-ci/-/packages/13411445). +To download and extract the most recent image execute the following steps: +```sh +> wget https://gitlab.com/elisa-tech/meta-elisa-ci/-/package_files/80033203/download -O elisa-automotive-wg-demo.tar.gz +> tar -xvf elisa-automotive-wg-demo.tar.gz +> gunzip elisa-automotive-wg-demo/* +``` +The `elise-automotive-wg-demo` directory now contains a kernel image `bzImage` as well as a file system image `.ext4`. +Given this, you can now run the demo. [Click here for the instructions.](#running-the-demo) + +In case you would like to know more about the CI that has generated this image, reference [this blog post](https://elisa.tech/blog/2023/04/05/elisa-ci-enablement-automation-tools-for-easier-collaboration/). + +## Manual Build **NOTE:** Following the agl installation instructions' terminology (see below), the build environment will be installed in the current AGL_RELEASE directory of new workspace named AGL_TOP. That is, in @@ -67,12 +92,16 @@ Depending on the distribution, the following packages may also have to be instal Be advised, building for the first time takes 10-20 hours depending on the machine, rebuilding around 10 minutes. In either case 100-150 GB of disc space are required. -4) To run the demo with QEMU: Refer to the + +## Running the Demo + +1) To run the demo with QEMU: Refer to the [AGL instruction](https://docs.automotivelinux.org/en/needlefish/#0_Getting_Started/2_Building_AGL_Image/5_1_x86_Emulation_and_Hardware/#3-deploying-the-agl-demo-image) to install the distribution's qemu package and set the runtime envrironment. - Contrary to those instructions, the demo uses the following shell command rather than calling runqemu: - Note that simulated hardware watchdog i6300 must be activated for the demo to work properly: + Contrary to those instructions, the demo uses the following shell command rather than calling runqemu. + Note that simulated hardware watchdog i6300 must be activated for the demo to work properly. + Also note that if you have not build the image yourself, you need to change the path of the `-drive` flag to point to the `.ext4` file and the the path of the `-kernel` flag to point to the `bzImage` file.

 	AGL_RELEASE> qemu-system-x86_64 -snapshot -device virtio-net-pci,netdev=net0,mac=52:54:00:12:35:02 \
 	-device i6300esb \
@@ -84,7 +113,7 @@ Depending on the distribution, the following packages may also have to be instal
 	-append 'root=/dev/vda rw  console=ttyS0 mem=4096M ip=dhcp oprofile.timer=1 console=ttyS0,115200n8 quiet '
 	
-5) Interacting with the Demo: +2) Interacting with the Demo: The demo offers an interface via a named pipe to trigger safe state from within the safety signal source, or corrupt the communication between signal source and safety app to test the mechanisms. Alternatively to writing to the pipe directly, an ncurses based control panel can be used as more convenient alternative. To access the control panel, log into the running QEMU instance as user "root" (no password needed) and start the control panel application