dev-manual: Added a small section to note Toaster as a development model.
(From yocto-docs rev: 63e73beca3b7d084c4776f296d3310a31dafcfc4) Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
parent
3237e33c08
commit
3bb1c76761
|
@ -9336,217 +9336,6 @@
|
|||
</section>
|
||||
</section>
|
||||
|
||||
<section id="examining-builds-using-toaster">
|
||||
<title>Examining Builds Using the Toaster API</title>
|
||||
|
||||
<para>
|
||||
Toaster is an Application Programming Interface (API) and
|
||||
web-based interface to the OpenEmbedded build system, which uses
|
||||
BitBake.
|
||||
Both interfaces are based on a Representational State Transfer
|
||||
(REST) API that queries for and returns build information using
|
||||
<filename>GET</filename> and <filename>JSON</filename>.
|
||||
These types of search operations retrieve sets of objects from
|
||||
a datastore used to collect build information.
|
||||
The results contain all the data for the objects being returned.
|
||||
You can order the results of the search by key and the search
|
||||
parameters are consistent for all object types.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Using the interfaces you can do the following:
|
||||
<itemizedlist>
|
||||
<listitem><para>See information about the tasks executed
|
||||
and reused during the build.</para></listitem>
|
||||
<listitem><para>See what is built (recipes and
|
||||
packages) and what packages were installed into the final
|
||||
image.</para></listitem>
|
||||
<listitem><para>See performance-related information such
|
||||
as build time, CPU usage, and disk I/O.</para></listitem>
|
||||
<listitem><para>Examine error, warning and trace messages
|
||||
to aid in debugging.</para></listitem>
|
||||
</itemizedlist>
|
||||
</para>
|
||||
|
||||
<note>
|
||||
<para>This release of Toaster provides you with information
|
||||
about a BitBake run.
|
||||
The tool does not allow you to configure and launch a build.
|
||||
However, future development includes plans to integrate the
|
||||
configuration and build launching capabilities of
|
||||
<ulink url='&YOCTO_HOME_URL;/tools-resources/projects/hob'>Hob</ulink>.
|
||||
</para>
|
||||
<para>For more information on using Hob to build an image,
|
||||
see the
|
||||
"<link linkend='image-development-using-hob'>Image Development Using Hob</link>"
|
||||
section.</para>
|
||||
</note>
|
||||
|
||||
<para>
|
||||
The remainder of this section describes what you need to have in
|
||||
place to use Toaster, how to start it, use it, and stop it.
|
||||
For additional information on installing and running Toaster, see the
|
||||
"<ulink url='https://wiki.yoctoproject.org/wiki/Toaster#Installation_and_Running'>Installation and Running</ulink>"
|
||||
section of the "Toaster" wiki page.
|
||||
For complete information on the API and its search operation
|
||||
URI, parameters, and responses, see the
|
||||
<ulink url='https://wiki.yoctoproject.org/wiki/REST_API_Contracts'>REST API Contracts</ulink>
|
||||
Wiki page.
|
||||
</para>
|
||||
|
||||
<section id='starting-toaster'>
|
||||
<title>Starting Toaster</title>
|
||||
|
||||
<para>
|
||||
Getting set up to use and start Toaster is simple.
|
||||
First, be sure you have met the following requirements:
|
||||
<itemizedlist>
|
||||
<listitem><para>You have set up your
|
||||
<link linkend='source-directory'>Source Directory</link>
|
||||
by cloning the upstream <filename>poky</filename>
|
||||
repository.
|
||||
See the
|
||||
<link linkend='local-yp-release'>Yocto Project Release</link>
|
||||
item for information on how to set up the Source
|
||||
Directory.</para></listitem>
|
||||
<listitem><para>Be sure your build machine has
|
||||
<ulink url='http://en.wikipedia.org/wiki/Django_%28web_framework%29'>Django</ulink>
|
||||
version 1.5 installed.</para></listitem>
|
||||
<listitem><para>Make sure that port 8000 and 8200 are
|
||||
free (i.e. they have no servers on them).
|
||||
</para></listitem>
|
||||
</itemizedlist>
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Once you have met the requirements, follow these steps to
|
||||
start Toaster running in the background of your shell:
|
||||
<orderedlist>
|
||||
<listitem><para><emphasis>Set up your build environment:</emphasis>
|
||||
Source a build environment script (i.e.
|
||||
<ulink url='&YOCTO_DOCS_REF_URL;#structure-core-script'><filename>&OE_INIT_FILE;</filename></ulink>
|
||||
or
|
||||
<ulink url='&YOCTO_DOCS_REF_URL;#structure-memres-core-script'><filename>oe-init-build-env-memres</filename></ulink>).
|
||||
</para></listitem>
|
||||
<listitem><para><emphasis>Start Toaster:</emphasis>
|
||||
Start the Toaster service using this
|
||||
command from within your
|
||||
<link linkend='build-directory'>Build Directory</link>:
|
||||
<literallayout class='monospaced'>
|
||||
$ source toaster start
|
||||
</literallayout></para></listitem>
|
||||
<note>
|
||||
The Toaster must be started and running in order
|
||||
for it to collect data.
|
||||
</note>
|
||||
</orderedlist>
|
||||
</para>
|
||||
|
||||
<para>
|
||||
When Toaster starts, it creates some additional files in your
|
||||
Build Directory.
|
||||
Deleting these files will cause you to lose data or interrupt
|
||||
Toaster:
|
||||
<itemizedlist>
|
||||
<listitem><para><emphasis><filename>toaster.sqlite</filename>:</emphasis>
|
||||
Toaster's database file.</para></listitem>
|
||||
<listitem><para><emphasis><filename>toaster_web.log</filename>:</emphasis>
|
||||
The log file of the web server.</para></listitem>
|
||||
<listitem><para><emphasis><filename>toaster_ui.log</filename>:</emphasis>
|
||||
The log file of the user interface component.
|
||||
</para></listitem>
|
||||
<listitem><para><emphasis><filename>toastermain.pid</filename>:</emphasis>
|
||||
The PID of the web server.</para></listitem>
|
||||
<listitem><para><emphasis><filename>toasterui.pid</filename>:</emphasis>
|
||||
The PID of the DSI data bridge.</para></listitem>
|
||||
<listitem><para><emphasis><filename>bitbake-cookerdaemon.log</filename>:</emphasis>
|
||||
The BitBake server's log file.</para></listitem>
|
||||
</itemizedlist>
|
||||
</para>
|
||||
</section>
|
||||
|
||||
<section id='using-toaster'>
|
||||
<title>Using Toaster</title>
|
||||
|
||||
<para>
|
||||
Once Toaster is running, it logs information for any BitBake
|
||||
run from your Build Directory.
|
||||
This logging is automatic.
|
||||
All you need to do is access and use the information.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
You access the information one of two ways:
|
||||
<itemizedlist>
|
||||
<listitem><para>Open a Browser and enter
|
||||
<filename>http://localhost:8000</filename>
|
||||
for the URL.
|
||||
</para></listitem>
|
||||
<listitem><para>Use the <filename>xdg-open</filename>
|
||||
tool from the shell and pass it the same URL.
|
||||
</para></listitem>
|
||||
</itemizedlist>
|
||||
Either method opens the home page for the Toaster interface.
|
||||
</para>
|
||||
|
||||
<note><title>Notes</title>
|
||||
<itemizedlist>
|
||||
<listitem><para>
|
||||
For information on how to delete information from the
|
||||
Toaster database, see the
|
||||
<ulink url='https://wiki.yoctoproject.org/wiki/Toaster#Deleting_a_Build_from_the_Toaster_Database'>Deleting a Build from the Toaster Database</ulink>
|
||||
wiki page.
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
For information on how to set up an instance of Toaster
|
||||
on a remote host, see the
|
||||
<ulink url='https://wiki.yoctoproject.org/wiki/Toaster#Setting_up_a_Toaster_Instance_on_a_Remote_Host'>Setting Up a Toaster Instance on a Remote Host</ulink>
|
||||
wiki page.
|
||||
</para></listitem>
|
||||
</itemizedlist>
|
||||
</note>
|
||||
</section>
|
||||
|
||||
<section id='examining-toaster-data'>
|
||||
<title>Examining Toaster Data</title>
|
||||
|
||||
<para>
|
||||
The Toaster database is persistent regardless of whether you
|
||||
start or stop the service.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Toaster's interface shows you a list of builds
|
||||
(successful and unsuccessful) for which it has data.
|
||||
You can click on any build to see related information.
|
||||
This information includes configuration details, information
|
||||
about tasks, all recipes and packages built and their
|
||||
dependencies, packages and their directory structure as
|
||||
installed in your final image,
|
||||
execution time, CPU usage and disk I/O per task.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
For details on the interface, see the
|
||||
<ulink url='https://www.yoctoproject.org/documentation/toaster-manual'>Toaster Manual</ulink>.
|
||||
</para>
|
||||
</section>
|
||||
|
||||
<section id='stopping-toaster'>
|
||||
<title>Stopping Toaster</title>
|
||||
|
||||
<para>
|
||||
Stop the Toaster service with the following command
|
||||
from with the
|
||||
<link linkend='build-directory'>Build Directory</link>:
|
||||
<literallayout class='monospaced'>
|
||||
$ source toaster stop
|
||||
</literallayout>
|
||||
The service stops but the Toaster database remains persistent.
|
||||
</para>
|
||||
</section>
|
||||
</section>
|
||||
|
||||
<section id="platdev-oprofile">
|
||||
<title>Profiling with OProfile</title>
|
||||
|
||||
|
|
Loading…
Reference in New Issue