blob: ad9e08b50d84f1e666929772fabe98e0827ef07c [file] [log] [blame]
Patrick Williamsc124f4f2015-09-15 14:41:29 -05001<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
2"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
3[<!ENTITY % poky SYSTEM "../poky.ent"> %poky; ] >
4
5<chapter id='toaster-manual-intro'>
6<title>Introduction</title>
7
8 <para>
9 Toaster is a web interface to the Yocto Project's
10 <ulink url='&YOCTO_DOCS_DEV_URL;#build-system-term'>OpenEmbedded build system</ulink>.
11 The interface enables you to configure and run your builds.
12 Information about builds is collected and stored in a database.
13 You can use Toaster to configure and start builds on multiple
14 remote build servers.
15 </para>
16
17 <note>
18 <para>
19 This release of Toaster does allow you to configure and initiate
20 builds.
21 However, you cannot use Toaster to customize image recipes, which
22 still must either be done by hand or through
23 <ulink url='&YOCTO_HOME_URL;/tools-resources/projects/hob'>Hob</ulink>.
24 As Toaster matures, it eventually will equal and surpass Hob
25 functionality, at which time Hob will be deprecated.
26 </para>
27
28 <para>
29 For more information on Hob,
30 see the
31 "<ulink url='&YOCTO_DOCS_DEV_URL;#image-development-using-hob'>Image Development Using Hob</ulink>"
32 section in the Yocto Project Development Manual.
33 </para>
34 </note>
35
36 <section id='intro-modes'>
37 <title>Toaster Operational Modes</title>
38
39 <para>
40 You can use Toaster in Analysis Mode or Build Mode:
41 <itemizedlist>
42 <listitem><para><emphasis>Analysis Mode:</emphasis>
43 In Analysis Mode, you can record builds and statistics.
44 In this Mode, you directly access the
45 <filename>bitbake</filename> command, which you then use to
46 build images.</para>
47 <para>Analysis Mode requires you to have first started
48 Toaster and then to initiate your build using the
49 <filename>bitbake</filename> command from the shell.
50 Toaster must be started before the build or it will not
51 collect build data.</para>
52 <para>Toaster has the following capabilities in
53 Analysis Mode:
54 <itemizedlist>
55 <listitem><para>
56 See what was built (recipes and packages) and what
57 packages were installed into your final image.
58 </para></listitem>
59 <listitem><para>
60 Browse the directory structure of your image.
61 </para></listitem>
62 <listitem><para>
63 See the value of all variables in your build
64 configuration, and which files set each value.
65 </para></listitem>
66 <listitem><para>
67 Examine error, warning and trace messages to aid
68 in debugging.
69 </para></listitem>
70 <listitem><para>
71 See information about the BitBake tasks executed
72 and reused during your build, including those that
73 used shared state.
74 </para></listitem>
75 <listitem><para>
76 See dependency relationships between recipes,
77 packages and tasks
78 </para></listitem>
79 <listitem><para>
80 See performance information such as build time,
81 task time, CPU usage, and disk I/O.
82 </para></listitem>
83 </itemizedlist>
84 </para></listitem>
85 <listitem><para><emphasis>Build Mode:</emphasis>
86 In Build Mode, Toaster handles the build configuration,
87 scheduling and execution.
88 In this mode, all your interaction with the build system
89 happens through the web interface.
90 You do not have direct access to the
91 <filename>bitbake</filename> command.</para>
92 <para>Using this mode, you configure and start your builds
93 within Toaster's GUI.
94 Each project can be configured for a specific version
95 of the build system.
96 As shipped, Toaster supports Yocto Project Releases 1.7 and
97 beyond.</para>
98 <para>Toaster has all the same capabilities in Build Mode
99 as it does in Analysis Mode plus the following:
100 <itemizedlist>
101 <listitem><para>
102 Browse layers listed in the various
103 <link linkend='layer-source'>layer sources</link>
104 that are available in your project (e.g. the
105 OpenEmbedded Metadata Index at
106 <ulink url='http://layers.openembedded.org/layerindex/'></ulink>).
107 </para></listitem>
108 <listitem><para>
109 Import your own layers for building.
110 </para></listitem>
111 <listitem><para>
112 Add and remove layers from your configuration.
113 </para></listitem>
114 <listitem><para>
115 Set configuration variables.
116 </para></listitem>
117 <listitem><para>
118 Select a target or multiple targets to build.
119 </para></listitem>
120 <listitem><para>
121 Start your builds.
122 </para></listitem>
123 </itemizedlist>
124 </para></listitem>
125 </itemizedlist>
126 </para>
127 </section>
128
129 <section id='toaster-installation-options'>
130 <title>Installation Options</title>
131
132 <para>
133 You can set Toaster up to run as a local instance or as a shared
134 hosted service.
135 Regardless of how you set up Toaster, both Analysis and Build
136 Modes are available.
137 </para>
138
139 <para>
140 When Toaster is set up as a local instance, all the components
141 reside on a single build host.
142 Fundamentally, a local instance of Toaster is suited for a single
143 user developing on a single build host.
144 </para>
145
146 <para>
147 <imagedata fileref="figures/simple-configuration.png" align="center" width="6in" depth="1.5in" />
148 </para>
149
150 <para>
151 Toaster as a hosted service is suited for multiple users
152 developing across several build hosts.
153 When Toaster is set up as a hosted service, its components can
154 be spread across several machines:
155 </para>
156
157 <para>
158 <imagedata fileref="figures/hosted-service.png" align="center" width="6in" depth="3.5in" />
159 </para>
160 </section>
161
162<!--THIS EXTRA INFORMATION PROBABLY WILL GO AWAY
163 For additional information on installing and running Toaster, see the
164 "<ulink url='https://wiki.yoctoproject.org/wiki/Toaster#Installation_and_Running'>Installation and Running</ulink>"
165 section of the "Toaster" wiki page.
166 For complete information on the API and its search operation
167 URI, parameters, and responses, see the
168 <ulink url='https://wiki.yoctoproject.org/wiki/REST_API_Contracts'>REST API Contracts</ulink>
169 Wiki page.
170 </para>
171-->
172</chapter>