[gnome-continuous-yocto/gnomeostree-3.28-rocko: 3990/8267] build-appliance-image: support for Toaster



commit 4028407326f18c9059d6227de150100962656310
Author: Juro Bystricky <juro bystricky intel com>
Date:   Fri Dec 30 13:35:32 2016 -0800

    build-appliance-image: support for Toaster
    
    Various changes needed to enable to run Toaster in the
    Build Appliance:
    
    1. Pre-install packages as specified by the file
       "bitbake/toaster-requirements.txt"
    2. Include pip3 in the image
    3. Include tzdata in the image (needed by django)
    4. Bump SRCREV to a commit with proper settings.py (ALLOWED_HOSTS)
       for Django 1.8.16
    5. Added README_VirtualBox_Toaster.txt to provide steps for
       configuring VirtualBox network adapters (NAT or Bridged)
       and steps to launch Toaster
    
    [YOCTO#10767]
    
    (From OE-Core rev: dffbac64bbf86c91247ba7373b3b5bd6af24103f)
    
    Signed-off-by: Juro Bystricky <juro bystricky intel com>
    Signed-off-by: Ross Burton <ross burton intel com>
    Signed-off-by: Richard Purdie <richard purdie linuxfoundation org>

 .../README_VirtualBox_Toaster.txt                  |   78 ++++++++++++++++++++
 .../images/build-appliance-image_15.0.0.bb         |   18 ++++-
 2 files changed, 93 insertions(+), 3 deletions(-)
---
diff --git a/meta/recipes-core/images/build-appliance-image/README_VirtualBox_Toaster.txt 
b/meta/recipes-core/images/build-appliance-image/README_VirtualBox_Toaster.txt
new file mode 100644
index 0000000..a0aede2
--- /dev/null
+++ b/meta/recipes-core/images/build-appliance-image/README_VirtualBox_Toaster.txt
@@ -0,0 +1,78 @@
+
+Running Toaster in VirtualBox
+=============================
+
+Toaster is launched via the command in VM:
+
+    $ source toaster start webport=<IPADDR:PORT>
+
+The interaction with Toaster web server is done via a host internet
+browser.
+The particular steps depend on the actual networking being used
+by the VirtualBox.
+
+
+Bridged Network
+===============
+
+Find out your VM network IP address:
+
+    $ ifconfig
+
+IP address is listed under eth0 inet addr.
+It should be something like:
+   inet addr:192.168.1.18
+
+Launch the Toaster web server in VM:
+
+    $ source toaster start webport=192.168.1.18:8000
+
+Interact with the Toaster web server with your host browser using URL:
+
+    http://192.168.1.18:8000
+
+
+NAT Network
+===========
+Find out your VM network IP address:
+
+    $ ifconfig
+
+IP address is listed under eth0 inet addr.
+For NAT network it should be something like:
+   inet addr:10.0.2.15
+
+When using NAT network, the VM web server can be accessed using
+Port Forwarding.
+
+Using the VirtualBox GUI, navigate to:
+    Settings->Network->Adapter1
+
+You should set:
+    Attached to: NAT
+
+Select "Advanced", click on "Port Forwarding"
+
+This will open a new dialog box "Port Forwarding Rules".
+Create a new rule that looks like this:
+
+| Name  | Protocol | Host IP | Host Port | Guest IP | Guest Port |
++-------+----------+---------+-----------+----------+------------+
+| Rule1 | TCP      |         | 8000      |          |  8000      |
+------------------------------------------------------------------
+
+Now we can launch the Toaster web server in VM:
+
+    $ source toaster start webport=10.0.2.15:8000
+
+Interact with the Toaster web server with your host browser using URL:
+
+    http://127.0.0.1:8000
+
+
+
+
+
+
+
+
diff --git a/meta/recipes-core/images/build-appliance-image_15.0.0.bb 
b/meta/recipes-core/images/build-appliance-image_15.0.0.bb
index 5bb6555..34327e3 100644
--- a/meta/recipes-core/images/build-appliance-image_15.0.0.bb
+++ b/meta/recipes-core/images/build-appliance-image_15.0.0.bb
@@ -1,5 +1,5 @@
 SUMMARY = "An image containing the build system itself"
-DESCRIPTION = "An image containing the build system that you can boot and run using either VMware Player or 
VMware Workstation."
+DESCRIPTION = "An image containing the build system that you can boot and run using either VirtualBox, 
VMware Player or VMware Workstation."
 HOMEPAGE = "http://www.yoctoproject.org/documentation/build-appliance";
 
 LICENSE = "MIT"
@@ -7,7 +7,8 @@ LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=4d92cd373abda3937c2bc47fbc49d
                     file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
 
 IMAGE_INSTALL = "packagegroup-core-boot packagegroup-core-ssh-openssh packagegroup-self-hosted \
-                 kernel-dev kernel-devsrc connman connman-plugin-ethernet dhcp-client"
+                 kernel-dev kernel-devsrc connman connman-plugin-ethernet dhcp-client \
+                 tzdata python3-pip"
 
 IMAGE_FEATURES += "x11-base package-management splash"
 
@@ -22,11 +23,12 @@ IMAGE_FSTYPES = "vmdk"
 
 inherit core-image module-base
 
-SRCREV ?= "ee6ee913aae5ac55ccb9125e03d07d3a767e4157"
+SRCREV ?= "7c3a47ed8965c3a3eb90a9a4678d5caedbba6337"
 SRC_URI = "git://git.yoctoproject.org/poky;branch=master \
            file://Yocto_Build_Appliance.vmx \
            file://Yocto_Build_Appliance.vmxf \
            file://README_VirtualBox_Guest_Additions.txt \
+           file://README_VirtualBox_Toaster.txt \
           "
 BA_INCLUDE_SOURCES ??= "0"
 
@@ -54,6 +56,9 @@ fakeroot do_populate_poky_src () {
        # Place the README_VirtualBox_Guest_Additions file in builders home folder.
        cp ${WORKDIR}/README_VirtualBox_Guest_Additions.txt ${IMAGE_ROOTFS}/home/builder/
 
+       # Place the README_VirtualBox_Toaster file in builders home folder.
+       cp ${WORKDIR}/README_VirtualBox_Toaster.txt ${IMAGE_ROOTFS}/home/builder/
+
        # Create a symlink, needed for out-of-tree kernel modules build
        lnr ${IMAGE_ROOTFS}${KERNEL_SRC_PATH} ${IMAGE_ROOTFS}/lib/modules/${KERNEL_VERSION}/build
 
@@ -88,6 +93,13 @@ fakeroot do_populate_poky_src () {
        # Use Clearlooks GTK+ theme
        mkdir -p ${IMAGE_ROOTFS}/etc/gtk-2.0
        echo 'gtk-theme-name = "Clearlooks"' > ${IMAGE_ROOTFS}/etc/gtk-2.0/gtkrc
+
+       # Install modules needed for toaster
+       export HOME=${IMAGE_ROOTFS}/home/builder
+       mkdir -p ${IMAGE_ROOTFS}/home/builder/.cache/pip
+       pip3 install --user -I -U -v -r ${IMAGE_ROOTFS}/home/builder/poky/bitbake/toaster-requirements.txt
+       chown -R builder.builder ${IMAGE_ROOTFS}/home/builder/.local
+       chown -R builder.builder ${IMAGE_ROOTFS}/home/builder/.cache
 }
 
 IMAGE_PREPROCESS_COMMAND += "do_populate_poky_src; "


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]