diff options
3 files changed, 374 insertions, 290 deletions
diff --git a/documentation/toaster-manual/toaster-manual-intro.xml b/documentation/toaster-manual/toaster-manual-intro.xml index 36c3b6bdc0..378f33420c 100644 --- a/documentation/toaster-manual/toaster-manual-intro.xml +++ b/documentation/toaster-manual/toaster-manual-intro.xml | |||
@@ -6,10 +6,13 @@ | |||
6 | <title>Introduction</title> | 6 | <title>Introduction</title> |
7 | 7 | ||
8 | <para> | 8 | <para> |
9 | Toaster is an Application Programming Interface (API) and | 9 | Toaster is web interface to the OpenEmbedded build system, which uses |
10 | web-based interface to the OpenEmbedded build system, which uses | ||
11 | BitBake. | 10 | BitBake. |
12 | Both interfaces are based on a Representational State Transfer | 11 | The interface allows you to access a datastore that retains build |
12 | information and report out on the information. | ||
13 | </para> | ||
14 | <!--THE FOLLOWING IS DETAIL THAT I THINK BELEN WANTED OUT FOR THE MOMENT | ||
15 | The interface is based on a Representational State Transfer | ||
13 | (REST) API that queries for and returns build information using | 16 | (REST) API that queries for and returns build information using |
14 | <filename>GET</filename> and <filename>JSON</filename>. | 17 | <filename>GET</filename> and <filename>JSON</filename>. |
15 | These types of search operations retrieve sets of objects from | 18 | These types of search operations retrieve sets of objects from |
@@ -18,64 +21,95 @@ | |||
18 | You can order the results of the search by key and the search | 21 | You can order the results of the search by key and the search |
19 | parameters are consistent for all object types. | 22 | parameters are consistent for all object types. |
20 | </para> | 23 | </para> |
24 | --> | ||
21 | 25 | ||
22 | <para> | 26 | <para> |
23 | You can use Toaster in several different modes: | 27 | You can use Toaster in several different modes: |
24 | <itemizedlist> | 28 | <itemizedlist> |
25 | <listitem><para><emphasis>Interactive Mode:</emphasis> | 29 | <listitem><para><emphasis>Analysis Mode:</emphasis> |
26 | In this mode, you can record builds and statistics. | 30 | In this mode, you can record builds and statistics. |
27 | In Interactive Mode, you have direct access to the | 31 | In Analysis Mode, you have direct access to the |
28 | <filename>bitbake</filename> command, which you use to build | 32 | <filename>bitbake</filename> command, which you use to build |
29 | images. | 33 | images.</para> |
34 | <para>Analysis Mode requires you to have first started | ||
35 | Toaster and then to initiate your build using the | ||
36 | <filename>bitbake</filename> command from the shell. | ||
37 | Toaster must be started before the build or it will not | ||
38 | collect build data. | ||
30 | </para></listitem> | 39 | </para></listitem> |
31 | <listitem><para><emphasis>Managed Mode:</emphasis> | 40 | <listitem><para><emphasis>Build Mode:</emphasis> |
32 | In this mode, Toaster handles the build configuration GUI | 41 | In this mode, Toaster handles the build configuration GUI |
33 | (through Project pages) and build scheduling and execution. | 42 | (through project pages) and build scheduling and execution. |
34 | Additionally, in addition to these features, builds are | 43 | In this mode, all your interaction with the build system |
35 | triggered through the web interface. | 44 | happens through the web interface. |
36 | You do not have direct access to the | 45 | You do not have direct access to the |
37 | <filename>bitbake</filename> command.</para> | 46 | <filename>bitbake</filename> command.</para> |
38 | 47 | <para>Using this mode, you configure and start your builds | |
39 | <para>Managed Mode also works two separate ways: Local | 48 | with Toaster's GUI. |
40 | Managed Mode and Remote Managed Mode. | 49 | Each configuration is a project, which requires version and |
41 | Local Managed Mode is the out-of-box mode available once | 50 | build system selection. |
42 | you checkout poky and allows you to perform builds on your | 51 | As shipped, Toaster supports the Yocto Project releases |
43 | local machine. | 52 | 1.8 and beyond. |
44 | Remote Managed Mode, also known as Hosted Toaster, is a | 53 | Aside from these supported releases, you can also select |
45 | production setup best for organizations supporting multiple | 54 | the "Local Yocto Project", which allows you to use your |
46 | users and for organizations using customized Toaster | 55 | local clone of the Yocto Project |
47 | installations. | 56 | <ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>Source Directory</ulink> |
57 | (e.g. <filename>poky</filename>).</para> | ||
58 | <para>Build Mode also works two separate ways: locally and | ||
59 | remotely. | ||
60 | While you can use Build Mode locally, it is best to use | ||
61 | Toaster's Build Mode through a hosted service where it can | ||
62 | shared by multiple user. | ||
48 | </para></listitem> | 63 | </para></listitem> |
49 | </itemizedlist> | 64 | </itemizedlist> |
50 | </para> | 65 | </para> |
51 | 66 | ||
52 | <para> | 67 | <para> |
53 | Using the interfaces you can do the following: | 68 | Using Toaster, you can do the following: |
69 | <note><title>REVIEWER NOTE</title> | ||
70 | Belen suggested we split this list out into things that | ||
71 | Analysis Mode and Build Mode can do. | ||
72 | Also, we can structure the lists so the Build Mode list | ||
73 | leverages off what is listed for Analysis Mode. | ||
74 | I do not know the information for the complete lists. | ||
75 | Someone needs to help me out here. | ||
76 | For now, I am leaving the list as follows and will need some | ||
77 | information. | ||
78 | </note> | ||
54 | <itemizedlist> | 79 | <itemizedlist> |
55 | <listitem><para>See information about the tasks executed | 80 | <listitem><para> |
56 | and reused during the build.</para></listitem> | 81 | See information about the tasks executed |
57 | <listitem><para>See what is built (recipes and | 82 | and reused during the build. |
83 | </para></listitem> | ||
84 | <listitem><para> | ||
85 | See what is built (recipes and | ||
58 | packages) and what packages were installed into the final | 86 | packages) and what packages were installed into the final |
59 | image.</para></listitem> | 87 | image. |
60 | <listitem><para>See performance-related information such | 88 | </para></listitem> |
61 | as build time, CPU usage, and disk I/O.</para></listitem> | 89 | <listitem><para> |
62 | <listitem><para>Examine error, warning and trace messages | 90 | See performance-related information such |
63 | to aid in debugging.</para></listitem> | 91 | as build time, CPU usage, and disk I/O. |
92 | </para></listitem> | ||
93 | <listitem><para> | ||
94 | Examine error, warning and trace messages | ||
95 | to aid in debugging. | ||
96 | </para></listitem> | ||
64 | </itemizedlist> | 97 | </itemizedlist> |
65 | </para> | 98 | </para> |
66 | 99 | ||
67 | <note> | 100 | <note> |
68 | <para> | 101 | <para> |
69 | This release of Toaster provides you with information | 102 | This release of Toaster does allow you to configure and initiate |
70 | about a BitBake run. | 103 | builds. |
71 | The tool does not allow you to configure and launch a build. | 104 | However, you cannot use Toaster to customize image recipes, which |
72 | However, future development includes plans to integrate the | 105 | still must either be done by hand or through |
73 | configuration and build launching capabilities of | ||
74 | <ulink url='&YOCTO_HOME_URL;/tools-resources/projects/hob'>Hob</ulink>. | 106 | <ulink url='&YOCTO_HOME_URL;/tools-resources/projects/hob'>Hob</ulink>. |
107 | As Toaster matures, it eventually will equal and surpass Hob | ||
108 | functionality, at which time Hob will be deprecated. | ||
75 | </para> | 109 | </para> |
76 | 110 | ||
77 | <para> | 111 | <para> |
78 | For more information on using Hob to build an image, | 112 | For more information on Hob, |
79 | see the | 113 | see the |
80 | "<ulink url='&YOCTO_DOCS_DEV_URL;#image-development-using-hob'>Image Development Using Hob</ulink>" | 114 | "<ulink url='&YOCTO_DOCS_DEV_URL;#image-development-using-hob'>Image Development Using Hob</ulink>" |
81 | section in the Yocto Project Development Manual. | 115 | section in the Yocto Project Development Manual. |
@@ -85,6 +119,9 @@ | |||
85 | <para> | 119 | <para> |
86 | The remainder of this manual describes what you need to have in | 120 | The remainder of this manual describes what you need to have in |
87 | place to use Toaster, how to start it, use it, and stop it. | 121 | place to use Toaster, how to start it, use it, and stop it. |
122 | </para> | ||
123 | |||
124 | <!--THIS EXTRA INFORMATION PROBABLY WILL GO AWAY | ||
88 | For additional information on installing and running Toaster, see the | 125 | For additional information on installing and running Toaster, see the |
89 | "<ulink url='https://wiki.yoctoproject.org/wiki/Toaster#Installation_and_Running'>Installation and Running</ulink>" | 126 | "<ulink url='https://wiki.yoctoproject.org/wiki/Toaster#Installation_and_Running'>Installation and Running</ulink>" |
90 | section of the "Toaster" wiki page. | 127 | section of the "Toaster" wiki page. |
@@ -93,7 +130,5 @@ | |||
93 | <ulink url='https://wiki.yoctoproject.org/wiki/REST_API_Contracts'>REST API Contracts</ulink> | 130 | <ulink url='https://wiki.yoctoproject.org/wiki/REST_API_Contracts'>REST API Contracts</ulink> |
94 | Wiki page. | 131 | Wiki page. |
95 | </para> | 132 | </para> |
96 | </chapter> | ||
97 | <!-- | ||
98 | vim: expandtab tw=80 ts=4 | ||
99 | --> | 133 | --> |
134 | </chapter> | ||
diff --git a/documentation/toaster-manual/toaster-manual-setup-and-use.xml b/documentation/toaster-manual/toaster-manual-setup-and-use.xml index ac9e9313ff..f56d67ed37 100644 --- a/documentation/toaster-manual/toaster-manual-setup-and-use.xml +++ b/documentation/toaster-manual/toaster-manual-setup-and-use.xml | |||
@@ -7,273 +7,317 @@ | |||
7 | <title>Setting Up and Using Toaster</title> | 7 | <title>Setting Up and Using Toaster</title> |
8 | 8 | ||
9 | <para> | 9 | <para> |
10 | You can set up local and production instances of Toaster. | 10 | You can set up Toaster as a local instance or as a hosted service. |
11 | This chapter describes how to set up both these types of instances. | 11 | Furthermore, you can use Toaster in Analysis Mode or Build Mode |
12 | from both set ups. | ||
12 | </para> | 13 | </para> |
13 | 14 | ||
14 | <section id='toaster-setting-up-a-local-instance'> | 15 | <section id='using-toaster-in-analysis-mode'> |
15 | <title>Setting Up a Local Instance</title> | 16 | <title>Using Toaster in Analysis Mode</title> |
16 | 17 | ||
17 | <para> | 18 | <para> |
18 | Follow these steps to set up and run a local instance of Toaster: | 19 | This section describes how to use Toaster in Analysis Mode |
19 | <orderedlist> | 20 | after setting Toaster up as a local instance or as a hosted |
20 | <listitem><para><emphasis>Prepare your build system:</emphasis> | 21 | service. |
21 | Be sure your system has the Toaster requirements | ||
22 | by following the steps in the | ||
23 | "<link linkend='toaster-establishing-toaster-system-dependencies'>Establishing Toaster System Dependencies</link>" | ||
24 | section. | ||
25 | </para></listitem> | ||
26 | <listitem><para><emphasis>Get Set Up to Use the Yocto Project:</emphasis> | ||
27 | Get the requirements set up so that you can use the | ||
28 | Yocto Project to build images. | ||
29 | See the | ||
30 | "<ulink url='&YOCTO_DOCS_QS_URL;#yp-resources'>What You Need and How You Get It</ulink>" | ||
31 | section in the Yocto Project Quick Start for information. | ||
32 | </para></listitem> | ||
33 | <listitem><para><emphasis>Be sure Ports are free:</emphasis> | ||
34 | Make sure that port 8000 and 8200 are free. | ||
35 | In other words, make sure the ports do not have servers | ||
36 | on them. | ||
37 | </para></listitem> | ||
38 | <listitem><para><emphasis>Source your Build Environment Setup Script:</emphasis> | ||
39 | From your | ||
40 | <ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>Build Directory</ulink> | ||
41 | (e.g. <filename>poky/build</filename>), source the build | ||
42 | environment setup script (i.e. | ||
43 | <ulink url="&YOCTO_DOCS_REF_URL;#structure-core-script"><filename>&OE_INIT_FILE;</filename></ulink> | ||
44 | or | ||
45 | <ulink url="&YOCTO_DOCS_REF_URL;#structure-memres-core-script"><filename>oe-init-build-env-memres</filename></ulink>). | ||
46 | </para></listitem> | ||
47 | <listitem><para><emphasis>Start Toaster:</emphasis> | ||
48 | From the | ||
49 | <ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>Build Directory</ulink>, | ||
50 | start Toaster: | ||
51 | <literallayout class='monospaced'> | ||
52 | $ source toaster start | ||
53 | </literallayout> | ||
54 | </para></listitem> | ||
55 | <listitem><para><emphasis>Start Your Build using BitBake:</emphasis> | ||
56 | Use the <filename>bitbake</filename> command to start your | ||
57 | build. | ||
58 | Here is an example that builds the | ||
59 | <filename>core-image-minimal</filename> image: | ||
60 | <literallayout class='monospaced'> | ||
61 | $ bitbake core-image-minimal | ||
62 | </literallayout> | ||
63 | </para></listitem> | ||
64 | </orderedlist> | ||
65 | </para> | 22 | </para> |
66 | 23 | ||
67 | <para> | 24 | <section id='setting-up-locally-and-running-in-analysis-mode'> |
68 | For information on how to use Toaster, see the | 25 | <title>Setting Up Locally and Running in Analysis Mode</title> |
69 | "<link linkend='using-the-toaster-interface'>Using the Toaster Interface</link>" | ||
70 | section. | ||
71 | </para> | ||
72 | </section> | ||
73 | 26 | ||
74 | <section id='toaster-setting-up-a-production-instance'> | 27 | <para> |
75 | <title>Setting Up a Production Instance</title> | 28 | Follow these steps to set up a local instance of Toaster and |
29 | then run in Analysis Mode: | ||
30 | <orderedlist> | ||
31 | <listitem><para><emphasis>Prepare your Build System:</emphasis> | ||
32 | Be sure your system has the Toaster requirements | ||
33 | by following the steps in the | ||
34 | "<link linkend='toaster-establishing-toaster-system-dependencies'>Establishing Toaster System Dependencies</link>" | ||
35 | section. | ||
36 | </para></listitem> | ||
37 | <listitem><para><emphasis>Get Set Up to Use the Yocto Project:</emphasis> | ||
38 | Get the requirements set up so that you can use the | ||
39 | Yocto Project to build images. | ||
40 | See the | ||
41 | "<ulink url='&YOCTO_DOCS_QS_URL;#yp-resources'>What You Need and How You Get It</ulink>" | ||
42 | section in the Yocto Project Quick Start for information. | ||
43 | </para></listitem> | ||
44 | <listitem><para><emphasis>Be Sure Ports are Free:</emphasis> | ||
45 | Make sure that port 8000 and 8200 are free. | ||
46 | In other words, make sure the ports do not have servers | ||
47 | on them. | ||
48 | </para></listitem> | ||
49 | <listitem><para><emphasis>Source your Build Environment Setup Script:</emphasis> | ||
50 | From your | ||
51 | <ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>Build Directory</ulink> | ||
52 | (e.g. <filename>poky/build</filename>), source the build | ||
53 | environment setup script (i.e. | ||
54 | <ulink url="&YOCTO_DOCS_REF_URL;#structure-core-script"><filename>&OE_INIT_FILE;</filename></ulink> | ||
55 | or | ||
56 | <ulink url="&YOCTO_DOCS_REF_URL;#structure-memres-core-script"><filename>oe-init-build-env-memres</filename></ulink>). | ||
57 | </para></listitem> | ||
58 | <listitem><para><emphasis>Start Toaster:</emphasis> | ||
59 | From the | ||
60 | <ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>Build Directory</ulink>, | ||
61 | start Toaster: | ||
62 | <literallayout class='monospaced'> | ||
63 | $ source toaster start | ||
64 | </literallayout> | ||
65 | </para></listitem> | ||
66 | <listitem><para><emphasis>Start Your Build Using BitBake:</emphasis> | ||
67 | Use the <filename>bitbake</filename> command to start your | ||
68 | build. | ||
69 | Here is an example that builds the | ||
70 | <filename>core-image-minimal</filename> image: | ||
71 | <literallayout class='monospaced'> | ||
72 | $ bitbake core-image-minimal | ||
73 | </literallayout> | ||
74 | </para></listitem> | ||
75 | </orderedlist> | ||
76 | </para> | ||
76 | 77 | ||
77 | <para> | 78 | <para> |
78 | A production instance of Toaster resides on a server and allows | 79 | For information on how to use Toaster, see the |
79 | multiple users to take advantage of Toaster. | 80 | "<link linkend='using-the-toaster-interface'>Using the Toaster Interface</link>" |
80 | In a production environment, you might want to have multiple | 81 | section. |
81 | instances of Toaster running on various remote build machines. | 82 | </para> |
82 | You can create this situation by basically modifying how Toaster | 83 | </section> |
83 | starts. | ||
84 | </para> | ||
85 | 84 | ||
86 | <para> | 85 | <section id='setting-up-a-hosted-service-and-running-in-analysis-mode'> |
87 | Starting Toaster with the <filename>toaster</filename> command | 86 | <title>Setting Up a Hosted Service and Running in Analysis Mode</title> |
88 | (i.e. the script), causes three things to start: | ||
89 | <itemizedlist> | ||
90 | <listitem><para> | ||
91 | The BitBake server. | ||
92 | </para></listitem> | ||
93 | <listitem><para> | ||
94 | the Toaster User Interface, which connects to the | ||
95 | BitBake server on one side and to the SQL | ||
96 | database on the other side. | ||
97 | </para></listitem> | ||
98 | <listitem><para> | ||
99 | The web server, which reads the database and displays the | ||
100 | web user interface. | ||
101 | </para></listitem> | ||
102 | </itemizedlist> | ||
103 | Rather than starting Toaster with the script, you can set up | ||
104 | and start multiple instances of Toaster by manually starting | ||
105 | as many or few of these three components across your environment. | ||
106 | This is possible because it is not required that Toaster starts | ||
107 | all three of its separate components in order to run. | ||
108 | Minimally, an instance of Toaster requires just one of the | ||
109 | components. | ||
110 | </para> | ||
111 | 87 | ||
112 | <para> | 88 | <para> |
113 | The concepts for setting up multiple instances of Toaster revolve | 89 | A hosted service resides on a server and allows |
114 | around maintaining a common SQL database and Web server that | 90 | multiple users to take advantage of Toaster. |
115 | show data from that common database as well as setting up | 91 | In a production environment, you might want to have multiple |
116 | separate instances of BitBake servers and Toaster user interfaces | 92 | local instances of Toaster, which run on various remote |
117 | for each separate BitBake build directory. | 93 | build machines, and have those local instances access and use |
118 | The common SQL database and the Web server show data from all the | 94 | a single hosted Toaster service. |
119 | various BitBake builds. | 95 | </para> |
120 | Setting the SQL database outside of any | ||
121 | <ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>Build Directory</ulink> | ||
122 | maintains a separation layer between the various builds. | ||
123 | The database is persistent because the logging database is set | ||
124 | up external to the database server (e.g. MySQL). | ||
125 | It is not even necessary to run the BitBake servers, the SQL | ||
126 | server, and the Web server on the same machine. | ||
127 | Each component can be run on its own machine. | ||
128 | </para> | ||
129 | 96 | ||
130 | <para> | 97 | <para> |
131 | Follow these steps to set up and run a production instance of | 98 | Starting Toaster with the <filename>toaster</filename> command |
132 | Toaster: | 99 | (i.e. the script), causes three things to start: |
133 | <orderedlist> | 100 | <itemizedlist> |
134 | <listitem><para><emphasis>Prepare your build system:</emphasis> | 101 | <listitem><para> |
135 | Be sure your system has the Toaster requirements | 102 | The BitBake server. |
136 | by following the steps in the | 103 | </para></listitem> |
137 | "<link linkend='toaster-establishing-toaster-system-dependencies'>Establishing Toaster System Dependencies</link>" | 104 | <listitem><para> |
138 | section. | 105 | The Toaster User Interface, which connects to the |
139 | </para></listitem> | 106 | BitBake server on one side and to the SQL |
140 | <listitem><para><emphasis>Get Set Up to Use the Yocto Project:</emphasis> | 107 | database on the other side. |
141 | Get the requirements set up so that you can use the | 108 | </para></listitem> |
142 | Yocto Project to build images. | 109 | <listitem><para> |
143 | See the | 110 | The web server, which reads the database and displays |
144 | "<ulink url='&YOCTO_DOCS_QS_URL;#yp-resources'>What You Need and How You Get It</ulink>" | 111 | the web user interface. |
145 | section in the Yocto Project Quick Start for information. | 112 | </para></listitem> |
146 | </para></listitem> | 113 | </itemizedlist> |
147 | <listitem><para><emphasis>Be sure Ports are free:</emphasis> | 114 | Rather than starting Toaster with the script, you can set up |
148 | Make sure that port 8000 and 8200 are free. | 115 | and start multiple instances of Toaster by manually starting |
149 | In other words, make sure the ports do not have servers | 116 | as many or few of these three components across your |
150 | on them. | 117 | environment. |
151 | </para></listitem> | 118 | This is possible because it is not required that Toaster starts |
152 | <listitem><para><emphasis>Set up the SQL Logging Server and the Web Server:</emphasis> | 119 | all three of its separate components in order to run. |
153 | You can use any SQL server out of the box (e.g. | 120 | Minimally, a local instance of Toaster requires just one of the |
154 | <filename>mysgl-server</filename> for an Ubuntu build | 121 | components. |
155 | system). | 122 | </para> |
156 | <note> | ||
157 | If you are concerned about performance, you might want | ||
158 | to hand-tune the server. | ||
159 | </note> | ||
160 | You must set up proper username and password access for | ||
161 | the server for everyone that will be using Toaster. | ||
162 | You need administration rights for the | ||
163 | <filename>mysql</filename> root account, which is not the | ||
164 | same thing as root access on the machine.</para> | ||
165 | 123 | ||
166 | <para>Clone a separate, local Git repository of the | 124 | <para> |
167 | Toaster master branch to use for running the Web server: | 125 | The concepts for setting up multiple local instances of |
168 | <literallayout class='monospaced'> | 126 | Toaster that share a single hosted service revolve |
169 | $ git clone (NEED THE GIT REPO URL HERE) | 127 | around maintaining a common SQL database and Web server that |
170 | </literallayout> | 128 | shows data from that common database as well as setting up |
171 | You do not perform builds on this tree. | 129 | separate local instances of BitBake servers and Toaster user |
172 | You need to create this local repository away from any | 130 | interfaces for each of those separate BitBake build |
173 | build areas.</para> | 131 | directories. |
132 | </para> | ||
174 | 133 | ||
175 | <para>In the separately cloned tree for the Web server, | 134 | <para> |
176 | edit the | 135 | The common SQL database and the Web server show data from |
177 | <filename>bitbake/lib/toaster/toastermain/settings.py</filename> | 136 | all the various BitBake builds. |
178 | file so that the <filename>DATABASES</filename> value | 137 | Setting the SQL database outside of any |
179 | points to the previously created database server. | 138 | <ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>Build Directory</ulink> |
180 | Use the username and password established earlier.</para> | 139 | maintains a separation layer between the various local builds |
140 | and the common database. | ||
141 | The database is persistent because the logging database is set | ||
142 | up external to the BitBake database server (e.g. MySQL). | ||
143 | It is not even necessary to run the BitBake servers, the SQL | ||
144 | server, and the Web server on the same machine. | ||
145 | Each component can be run on its own machine. | ||
146 | </para> | ||
181 | 147 | ||
182 | <para>Run the database sync scripts to create the needed | 148 | <para> |
183 | tables as follows: | 149 | Follow these steps to set up and run a hosted service and run |
184 | <literallayout class='monospaced'> | 150 | Toaster in Analysis Mode: |
151 | <orderedlist> | ||
152 | <listitem><para><emphasis>Prepare your Build System:</emphasis> | ||
153 | Be sure your system has the Toaster requirements | ||
154 | by following the steps in the | ||
155 | "<link linkend='toaster-establishing-toaster-system-dependencies'>Establishing Toaster System Dependencies</link>" | ||
156 | section. | ||
157 | </para></listitem> | ||
158 | <listitem><para><emphasis>Get Set Up to Use the Yocto Project:</emphasis> | ||
159 | Get the requirements set up so that you can use the | ||
160 | Yocto Project to build images. | ||
161 | See the | ||
162 | "<ulink url='&YOCTO_DOCS_QS_URL;#yp-resources'>What You Need and How You Get It</ulink>" | ||
163 | section in the Yocto Project Quick Start for information. | ||
164 | </para></listitem> | ||
165 | <listitem><para><emphasis>Be Sure Ports are Free:</emphasis> | ||
166 | Make sure that port 8000 and 8200 are free. | ||
167 | In other words, make sure the ports do not have servers | ||
168 | on them. | ||
169 | </para></listitem> | ||
170 | <listitem><para><emphasis>Set up the SQL Logging Server and the Web Server:</emphasis> | ||
171 | You can use any SQL server out of the box (e.g. | ||
172 | <filename>mysgl-server</filename> for an Ubuntu build | ||
173 | system). | ||
174 | <note> | ||
175 | If you are concerned about performance, you might | ||
176 | want to hand-tune the server. | ||
177 | </note> | ||
178 | You must set up proper username and password access on | ||
179 | the shared server for everyone that will be using | ||
180 | Toaster. | ||
181 | You need administration rights for the | ||
182 | <filename>mysql</filename> root account, which is not | ||
183 | the same thing as root access on the machine.</para> | ||
184 | <para>Clone a separate, local Git repository of the | ||
185 | Toaster master branch to use for running the Web | ||
186 | server. | ||
187 | The Git repository for Toaster is part of the | ||
188 | Yocto Project | ||
189 | <ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>Source Directory</ulink>. | ||
190 | Consequently, you just need to set up a separate | ||
191 | local clone of the Yocto Project Source Directory | ||
192 | (e.g. <filename>poky</filename>): | ||
193 | <literallayout class='monospaced'> | ||
194 | $ git clone git://git.yoctoproject.org/poky | ||
195 | </literallayout> | ||
196 | You do not perform builds on this tree. | ||
197 | You need to create this local repository away from any | ||
198 | build areas.</para> | ||
199 | <para>In the separately cloned tree for the Web server, | ||
200 | edit the | ||
201 | <filename>bitbake/lib/toaster/toastermain/settings.py</filename> | ||
202 | file so that the <filename>DATABASES</filename> value | ||
203 | points to the previously created database server. | ||
204 | Use the username and password established | ||
205 | earlier.</para> | ||
206 | <para>Run the database sync scripts to create the | ||
207 | needed tables as follows: | ||
208 | <literallayout class='monospaced'> | ||
185 | $ python bitbake/lib/toaster/manage.py syncdb | 209 | $ python bitbake/lib/toaster/manage.py syncdb |
186 | $ python bitbake/lib/toaster/manage.py migrate orm | 210 | $ python bitbake/lib/toaster/manage.py migrate orm |
187 | </literallayout> | 211 | </literallayout> |
188 | You can start the web server in the foreground or the | 212 | You can start the Web server in the foreground or the |
189 | background using these commands, respectively: | 213 | background using these commands, respectively: |
190 | <literallayout class='monospaced'> | 214 | <literallayout class='monospaced'> |
191 | $ python bitbake/lib/toaster/manage.py runserver | 215 | $ python bitbake/lib/toaster/manage.py runserver |
192 | $ nohup python bitbake/lib/toaster/manage.py runserver 2>toaster_web.log >toaster_web.log & | 216 | $ nohup python bitbake/lib/toaster/manage.py runserver 2>toaster_web.log >toaster_web.log & |
193 | </literallayout> | 217 | </literallayout> |
194 | </para></listitem> | 218 | </para></listitem> |
195 | <listitem><para><emphasis>Enable Build Logging to the Common SQL Server for Each Build Directory you are Using</emphasis> | 219 | <listitem><para><emphasis>Enable Build Logging to the Common SQL Server for Each Build Directory you are Using:</emphasis> |
196 | For each build system that will be using Toaster and the | 220 | For each build system that will be using Toaster and |
197 | SQL server, you need to edit the | 221 | the shared SQL server, you need to edit the |
198 | <filename>bitbake/lib/toaster/toastermain/settings.py</filename> | 222 | <filename>bitbake/lib/toaster/toastermain/settings.py</filename> |
199 | to alter the <filename>DATABASES</filename> value to point | 223 | file to alter the <filename>DATABASES</filename> value |
200 | to the common SQL logging server. | 224 | so that it points to the common SQL logging server. |
201 | (I DON'T SEE HOW TO DO THIS FROM THE WIKI - I NEED MORE | 225 | <note><title>REVIEWER NOTE</title> |
202 | CLARIFICATION).</para> | 226 | I don't see how to do this from the Wiki. |
203 | 227 | I need more clarification. | |
204 | <para>In the Build Directory, create the required | 228 | </note></para> |
205 | <filename>conf/toaster.conf</filename> file as described in | 229 | <para>In the Build Directory, create the required |
206 | <ulink url='https://wiki.yoctoproject.org/wiki/Setting_up_a_local_instance_of_Toaster'>BitBake Extra Options</ulink>. | 230 | <filename>conf/toaster.conf</filename> file as |
207 | Briefly, for each Build Directory, you need to inherit the | 231 | described in |
208 | <ulink url='&YOCTO_DOCS_REF_URL;#ref-classes-toaster'>toaster</ulink> | 232 | <ulink url='https://wiki.yoctoproject.org/wiki/Setting_up_a_local_instance_of_Toaster'>BitBake Extra Options</ulink>. |
209 | class by setting the following in your | 233 | Briefly, for each Build Directory, you need to inherit |
210 | <filename>local.conf</filename> configuration file: | 234 | the |
211 | <literallayout class='monospaced'> | 235 | <ulink url='&YOCTO_DOCS_REF_URL;#ref-classes-toaster'>toaster</ulink> |
236 | class by setting the following in your | ||
237 | <filename>local.conf</filename> configuration file: | ||
238 | <literallayout class='monospaced'> | ||
212 | INHERIT += "toaster" | 239 | INHERIT += "toaster" |
213 | INHERIT += "buildhistory" | 240 | INHERIT += "buildhistory" |
214 | BUILDHISTORY_COMMIT = "1" | 241 | BUILDHISTORY_COMMIT = "1" |
215 | </literallayout> | 242 | </literallayout> |
216 | Start the BitBake server using the following command: | 243 | Start the BitBake server using the following command: |
217 | <literallayout class='monospaced'> | 244 | <literallayout class='monospaced'> |
218 | $ bitbake --postread conf/toaster.conf --server-only -t xmlrpc -B localhost:0 && export BBSERVER=localhost:-1 | 245 | $ bitbake ‐‐postread conf/toaster.conf ‐‐server-only -t xmlrpc -B localhost:0 && export BBSERVER=localhost:-1 |
219 | </literallayout> | 246 | </literallayout> |
220 | Start the logging user interface using the following | 247 | Start the logging user interface using the following |
221 | command: | 248 | command: |
222 | <literallayout class='monospaced'> | 249 | <literallayout class='monospaced'> |
223 | $ nohup bitbake --observe-only -u toasterui >toaster_ui.log & | 250 | $ nohup bitbake ‐‐observe-only -u toasterui >toaster_ui.log & |
224 | </literallayout> | 251 | </literallayout> |
225 | <note> | 252 | <note> |
226 | No hard-coded ports are used as there is enough code | 253 | No hard-coded ports are used as there is enough code |
227 | to run <filename>autodiscovery</filename> | 254 | to run <filename>autodiscovery</filename> |
228 | for ports to prevent collisions. | 255 | for ports to prevent collisions. |
229 | </note> | 256 | </note> |
230 | </para></listitem> | 257 | </para></listitem> |
231 | <listitem><para><emphasis>Source your Build Environment Setup Script:</emphasis> | 258 | <listitem><para><emphasis>Source your Build Environment Setup Script:</emphasis> |
232 | From your | 259 | From your |
233 | <ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>Build Directory</ulink> | 260 | <ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>Build Directory</ulink> |
234 | on each of the build systems, | 261 | on each of the build systems, |
235 | (e.g. <filename>poky/build</filename>), source the build | 262 | (e.g. <filename>poky/build</filename>), source the |
236 | environment setup script (i.e. | 263 | build environment setup script (i.e. |
237 | <ulink url="&YOCTO_DOCS_REF_URL;#structure-core-script"><filename>&OE_INIT_FILE;</filename></ulink> | 264 | <ulink url="&YOCTO_DOCS_REF_URL;#structure-core-script"><filename>&OE_INIT_FILE;</filename></ulink> |
238 | or | 265 | or |
239 | <ulink url="&YOCTO_DOCS_REF_URL;#structure-memres-core-script"><filename>oe-init-build-env-memres</filename></ulink>). | 266 | <ulink url="&YOCTO_DOCS_REF_URL;#structure-memres-core-script"><filename>oe-init-build-env-memres</filename></ulink>). |
240 | </para></listitem> | 267 | </para></listitem> |
241 | <listitem><para><emphasis>Start Builds Using BitBake:</emphasis> | 268 | <listitem><para><emphasis>Start Builds Using BitBake:</emphasis> |
242 | Use the <filename>bitbake</filename> command to start a | 269 | Use the <filename>bitbake</filename> command to start a |
243 | build on a build system. | 270 | build on a build system. |
244 | Here is an example that builds the | 271 | Here is an example that builds the |
245 | <filename>core-image-minimal</filename> image: | 272 | <filename>core-image-minimal</filename> image: |
246 | <literallayout class='monospaced'> | 273 | <literallayout class='monospaced'> |
247 | $ bitbake core-image-minimal | 274 | $ bitbake core-image-minimal |
248 | </literallayout> | 275 | </literallayout> |
249 | When you are finished with a build in a given | 276 | When you are finished with a build in a given |
250 | Build Directory, be sure to <filename>kill</filename> | 277 | Build Directory, be sure to <filename>kill</filename> |
251 | the BitBake server for that build area: | 278 | the BitBake server for that build area: |
252 | <literallayout class='monospaced'> | 279 | <literallayout class='monospaced'> |
253 | $ bitbake -m | 280 | $ bitbake -m |
254 | </literallayout> | 281 | </literallayout> |
255 | </para></listitem> | 282 | </para></listitem> |
256 | </orderedlist> | 283 | </orderedlist> |
257 | </para> | 284 | </para> |
258 | 285 | ||
259 | <para> | 286 | <para> |
260 | For information on how to use Toaster, see the | 287 | For information on how to use Toaster, see the |
261 | "<link linkend='using-the-toaster-interface'>Using the Toaster Interface</link>" | 288 | "<link linkend='using-the-toaster-interface'>Using the Toaster Interface</link>" |
262 | section. | 289 | section. |
263 | </para> | 290 | </para> |
291 | </section> | ||
264 | </section> | 292 | </section> |
265 | 293 | ||
266 | <section id='setting-up-a-hosted-managed-mode-for-toaster'> | 294 | <section id='using-toaster-in-build-mode'> |
267 | <title>Setting Up a Hosted Managed Mode for Toaster</title> | 295 | <title>Using Toaster in Build Mode</title> |
268 | 296 | ||
269 | <para> | 297 | <para> |
270 | (RIGHT NOW, THE | 298 | This section describes how to use Toaster in Build Mode |
271 | <ulink url='https://wiki.yoctoproject.org/wiki/Setting_up_a_hosted_managed_mode_for_Toaster'>WIKI PAGE</ulink> | 299 | after setting Toaster up as a local instance or as a hosted |
272 | HAS SOME INFORMATION ON THIS. | 300 | service. |
273 | I DON'T GET IT THOUGH. | ||
274 | I NEED SOME MORE INFORMATION IN ORDER TO UNDERSTAND THIS AND | ||
275 | CREATE A SECTION. | ||
276 | </para> | 301 | </para> |
302 | |||
303 | <section id='setting-up-locally-and-running-in-build-mode'> | ||
304 | <title>Setting Up Locally and Running in Build Mode</title> | ||
305 | |||
306 | <note><title>REVIEWER NOTE</title> | ||
307 | I need the information on how to do this. | ||
308 | </note> | ||
309 | </section> | ||
310 | |||
311 | <section id='setting-up-a-hosted-service-and-running-in-build-mode'> | ||
312 | <title>Setting Up a Hosted Service and Running in Build Mode</title> | ||
313 | |||
314 | <note><title>REVIEWER NOTE</title> | ||
315 | Right now, the | ||
316 | <ulink url='https://wiki.yoctoproject.org/wiki/Setting_up_a_hosted_managed_mode_for_Toaster'>WIKI PAGE</ulink> | ||
317 | has some information on this but I don't understand it. | ||
318 | I need more information. | ||
319 | </note> | ||
320 | </section> | ||
277 | </section> | 321 | </section> |
278 | 322 | ||
279 | <section id='using-the-toaster-interface'> | 323 | <section id='using-the-toaster-interface'> |
@@ -312,15 +356,12 @@ | |||
312 | Toaster interface, see the | 356 | Toaster interface, see the |
313 | <ulink url='https://www.yoctoproject.org/documentation/toaster-manual-17'>Toaster Documentation</ulink> | 357 | <ulink url='https://www.yoctoproject.org/documentation/toaster-manual-17'>Toaster Documentation</ulink> |
314 | on the Yocto Project website. | 358 | on the Yocto Project website. |
315 | (SO WE NEED TO DECIDE IF THESE VIDS ARE GOING TO ROLL OVER INTO | 359 | <note><title>REVIEWER NOTE</title> |
316 | 1.8 AND REMAIN ON A "TOASTER MANUAL" PAGE AS THEY DO IN 1.7. | 360 | We have agreed to get rid of the manual page on the website, |
317 | OR, IF WE ARE GOING TO GET THE LINKS TO THE VIDS HERE IN THIS | 361 | contains the links to the GUI videos. |
318 | MANUAL.) | 362 | We have agreed to host the videos on Vimeo and to embed the |
363 | videos in this new Toaster manual. | ||
364 | </note> | ||
319 | </para> | 365 | </para> |
320 | </section> | 366 | </section> |
321 | </chapter> | 367 | </chapter> |
322 | |||
323 | |||
324 | <!-- | ||
325 | vim: expandtab tw=80 ts=4 | ||
326 | --> | ||
diff --git a/documentation/toaster-manual/toaster-manual-start.xml b/documentation/toaster-manual/toaster-manual-start.xml index 93f48c7b26..b884036035 100644 --- a/documentation/toaster-manual/toaster-manual-start.xml +++ b/documentation/toaster-manual/toaster-manual-start.xml | |||
@@ -9,8 +9,8 @@ | |||
9 | <para> | 9 | <para> |
10 | This chapter describes how you need to prepare your system in order to | 10 | This chapter describes how you need to prepare your system in order to |
11 | use Toaster. | 11 | use Toaster. |
12 | Toaster requires some packages that you must have installed before trying | 12 | Toaster requires some packages that you must have installed before |
13 | to run Toaster. | 13 | trying to run Toaster. |
14 | </para> | 14 | </para> |
15 | 15 | ||
16 | <section id='toaster-setting-up-the-basic-system-requirements'> | 16 | <section id='toaster-setting-up-the-basic-system-requirements'> |
@@ -47,6 +47,17 @@ | |||
47 | </literallayout> | 47 | </literallayout> |
48 | Follow these steps to get set up: | 48 | Follow these steps to get set up: |
49 | <orderedlist> | 49 | <orderedlist> |
50 | <listitem><para><emphasis>Install <filename>virtualenv</filename>:</emphasis> | ||
51 | <filename>virtualenv</filename> is a tool to create | ||
52 | isolated Python environments by creating folders that | ||
53 | contain all the necessary executables to use the packages | ||
54 | that Python projects need. | ||
55 | You can use <filename>pip</filename> to install | ||
56 | <filename>virtualenv</filename>: | ||
57 | <literallayout class='monospaced'> | ||
58 | $ pip install virtualenv | ||
59 | </literallayout> | ||
60 | </para></listitem> | ||
50 | <listitem><para><emphasis>Create and activate a virtual environment:</emphasis> | 61 | <listitem><para><emphasis>Create and activate a virtual environment:</emphasis> |
51 | <literallayout class='monospaced'> | 62 | <literallayout class='monospaced'> |
52 | $ virtualenv venv | 63 | $ virtualenv venv |
@@ -70,6 +81,3 @@ | |||
70 | </section> | 81 | </section> |
71 | 82 | ||
72 | </chapter> | 83 | </chapter> |
73 | <!-- | ||
74 | vim: expandtab tw=80 ts=4 | ||
75 | --> | ||