[Toaster] [PATCH 09/10] toaster-manual: update runbuilds instructions

Michael Wood michael.g.wood at intel.com
Fri Jul 8 06:30:24 PDT 2016


Pasting this in as it's an updated version of this patch:


commit 74e368b1855bbf4321f73b09a0f2c973b1e33c61
Author: Ed Bartosh <ed.bartosh at linux.intel.com>
Date:   Mon Jun 27 17:37:40 2016 +0300

     toaster-manual: update runbuilds instructions

     Added sample configuration files and instructions for the runbuilds
     systemd service. Service runs runbuilds in a screen session for user
     convenience. User can attach to the session to see the runbuilds 
output,
     monitor logs and build environment.

     Signed-off-by: Ed Bartosh <ed.bartosh at linux.intel.com>

diff --git 
a/documentation/toaster-manual/toaster-manual-setup-and-use.xml 
b/documentation/toaster-manual/toaster-manual-setup-and-use.xml
index febbd15..26e71c8 100644
--- a/documentation/toaster-manual/toaster-manual-setup-and-use.xml
+++ b/documentation/toaster-manual/toaster-manual-setup-and-use.xml
@@ -438,22 +438,49 @@
                        </literallayout>
                        </para></listitem>
                    <listitem><para>
-                      Install the build runner service.
-                      This service needs to be running in order to dispatch
-                      builds.
-                      Use this command:
+                      Prepare systemd service to run toaster builds.
+                      Here is a sample configuration file for the service:
                        <literallayout class='monospaced'>
-   /var/www/toaster/poky/bitbake/lib/toaster/manage.py runbuilds
+   [Unit]
+   Description=Toaster runbuilds
+
+   [Service]
+   Type=forking
+   User=toaster
+   ExecStart=/usr/bin/screen -d -m -S runbuilds 
/var/www/toaster/poky/bitbake/lib/toaster/runbuilds-service.sh start
+   ExecStop=/usr/bin/screen -S runbuilds -X quit
+   WorkingDirectory=/var/www/toaster/poky
+


This is kind of interesting from a developer of Toaster point of view 
but I don't think we should be recommending screen in the production 
setup. Toaster should be logging all the useful output anyway.



+   [Install]
+   WantedBy=multi-user.target
                        </literallayout>
-                      Here is an example:
+                      And the runbuilds-service.sh script that you 
should put into /var/www/toaster/poky/bitbake/lib/toaster/ and
+                      set executable permissions to it.
                        <literallayout class='monospaced'>
-   #!/bin/sh
-   # toaster run builds dispatcher
-   cd /var/www/toaster/
-   source ./venv/bin/activate
-   ./bitbake/lib/toaster/manage.py runbuilds
+   #!/bin/bash
+
+   #export http_proxy=http://proxy.host.com:8080
+   #export https_proxy=http://proxy.host.com:8080
+   #export GIT_PROXY_COMMAND=$HOME/bin/gitproxy
+
+   cd ~/poky/
+   source ./oe-init-build-env build
+   source ../bitbake/bin/toaster $1 noweb
+   [ "$1" == 'start' ] && /bin/bash
                        </literallayout>
-                      </para></listitem>
+                  </para></listitem>
+                  <listitem><para>
+                      Run the service:
+                      <literallayout class='monospaced'>
+   # service runbuilds start
+                      </literallayout>
+                      As service is running in a detached screen 
session you can attach to it using this command:
+                      <literallayout class='monospaced'>
+   $ sudo su - toaster
+   $ screen -rS runbuilds
+                      </literallayout>
+                      And detach from it again using 'Ctrl-a' followed 
by 'd' key combination.
+                  </para></listitem>
                </orderedlist>
                You can now open up a browser and start using Toaster.
            </para>



More information about the toaster mailing list