Merge lp:~pwlars/lava-project/install-docs into lp:lava-project/staging
- install-docs
- Merge into staging
Proposed by
Paul Larson
Status: | Merged |
---|---|
Merged at revision: | 31 |
Proposed branch: | lp:~pwlars/lava-project/install-docs |
Merge into: | lp:lava-project/staging |
Diff against target: |
666 lines (+348/-150) 3 files modified
doc/index.rst (+17/-15) doc/installation.rst (+246/-58) doc/lava-image-creation.rst (+85/-77) |
To merge this branch: | bzr merge lp:~pwlars/lava-project/install-docs |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Spring Zhang (community) | Approve | ||
Review via email:
|
Commit message
Description of the change
Some documentation improvements
To post a comment you must log in.
Preview Diff
[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1 | === modified file 'doc/index.rst' | |||
2 | --- doc/index.rst 2012-02-10 22:19:05 +0000 | |||
3 | +++ doc/index.rst 2012-02-13 04:53:18 +0000 | |||
4 | @@ -2,20 +2,20 @@ | |||
5 | 2 | LAVA (Linaro Automated Validation Architecture) | 2 | LAVA (Linaro Automated Validation Architecture) |
6 | 3 | =============================================== | 3 | =============================================== |
7 | 4 | 4 | ||
8 | 5 | .. warning:: | ||
9 | 6 | This document is *work in progress*. | ||
10 | 7 | |||
11 | 8 | Features | 5 | Features |
12 | 9 | ======== | 6 | ======== |
19 | 10 | 7 | LAVA is an automated testing framework developed by Linaro. It includes | |
20 | 11 | .. todo:: | 8 | a web framework with extensions for things like scheduling jobs, and |
21 | 12 | Document key LAVA features. This list should be stable and high-level so | 9 | storing results. The web framework can be extended with custom |
22 | 13 | that additional features added to subsequent LAVA releases don't require us | 10 | extensions for storing new types of data, or presenting custom result |
23 | 14 | to rewrite this section all the time. We shold link to our sub-projects. | 11 | views. LAVA also has a dispatcher component for processing test jobs |
24 | 15 | 12 | that can deploy Ubuntu based, as well as Android based Linaro images on | |
25 | 13 | supported development boards. As with the web interface, custom | ||
26 | 14 | extensions can be written to support additional client types, or | ||
27 | 15 | operations to perform. LAVA also has test runners that can provide a | ||
28 | 16 | consistent interface to various Linux and Android test suites. | ||
29 | 17 | Additional test suites can easily be added. | ||
30 | 16 | 18 | ||
31 | 17 | .. seealso:: See what's new in :ref:`version_2011.10` | ||
32 | 18 | |||
33 | 19 | LAVA Components | 19 | LAVA Components |
34 | 20 | =============== | 20 | =============== |
35 | 21 | 21 | ||
36 | @@ -24,7 +24,9 @@ | |||
37 | 24 | provides the main web interface to LAVA and supports extensions. | 24 | provides the main web interface to LAVA and supports extensions. |
38 | 25 | `LAVA Dashboard <http://lava-dashboard.readthedocs.org/>`_ | 25 | `LAVA Dashboard <http://lava-dashboard.readthedocs.org/>`_ |
39 | 26 | The LAVA Dashboard is an extension to LAVA Server that handles | 26 | The LAVA Dashboard is an extension to LAVA Server that handles |
41 | 27 | results storage and retrieval. | 27 | results storage and retrieval. Results for the LAVA Dashboard are |
42 | 28 | submitted using a well-defined JSON bundle format. The schema, and | ||
43 | 29 | example bundles are documented in the `LAVA Dashboard bundle format <http://linaro-dashboard-bundle.readthedocs.org/en/latest/index.html>`_. | ||
44 | 28 | `LAVA Scheduler <http://lava-scheduler.readthedocs.org/>`_ | 30 | `LAVA Scheduler <http://lava-scheduler.readthedocs.org/>`_ |
45 | 29 | The LAVA Scheduler component provides a web extension for | 31 | The LAVA Scheduler component provides a web extension for |
46 | 30 | scheduling jobs and managing test resources, as well as a daemon | 32 | scheduling jobs and managing test resources, as well as a daemon |
47 | @@ -40,15 +42,15 @@ | |||
48 | 40 | that can be consumed by the LAVA Dashboard. | 42 | that can be consumed by the LAVA Dashboard. |
49 | 41 | 43 | ||
50 | 42 | 44 | ||
53 | 43 | Indices and tables | 45 | Getting Started |
54 | 44 | ================== | 46 | =============== |
55 | 45 | 47 | ||
56 | 46 | .. toctree:: | 48 | .. toctree:: |
57 | 47 | :maxdepth: 2 | 49 | :maxdepth: 2 |
58 | 48 | 50 | ||
59 | 49 | installation.rst | 51 | installation.rst |
60 | 52 | lava-image-creation.rst | ||
61 | 50 | process.rst | 53 | process.rst |
62 | 51 | lava-image-creation.rst | ||
63 | 52 | changes.rst | 54 | changes.rst |
64 | 53 | 55 | ||
65 | 54 | * :ref:`search` | 56 | * :ref:`search` |
66 | 55 | 57 | ||
67 | === modified file 'doc/installation.rst' | |||
68 | --- doc/installation.rst 2011-10-24 17:22:06 +0000 | |||
69 | +++ doc/installation.rst 2012-02-13 04:53:18 +0000 | |||
70 | @@ -1,58 +1,246 @@ | |||
129 | 1 | Installation | 1 | LAVA Deployment Tool |
130 | 2 | ^^^^^^^^^^^^ | 2 | ==================== |
131 | 3 | 3 | ||
132 | 4 | LAVA can be installed in several different ways. As with any open source | 4 | Installing LAVA Server Components |
133 | 5 | project that does source distribution the end user has all the freedom to do | 5 | +++++++++++++++++++++++++++++++++ |
134 | 6 | what they want. We support certain installation methods more than others. You | 6 | |
135 | 7 | can always ask for support using Launchpad support tracker (see | 7 | LAVA Deployment Tool is meant to assist you setting up LAVA on your machine. |
136 | 8 | :ref:`questions`) | 8 | The tool is suitable for both personal and more "production" installations that |
137 | 9 | 9 | are expected to perform adequately with more concurrent users. This tool is | |
138 | 10 | Installation from source | 10 | not, however, designed for multi-machine installation, including cloud |
139 | 11 | ************************ | 11 | deployment. For that it is likely we will turn to Juju |
140 | 12 | 12 | (https://juju.ubuntu.com/) | |
141 | 13 | This is the most complicated and error prone installation method. It requires | 13 | |
142 | 14 | the user to download source release tarballs. Unpack them and install them in | 14 | Quickstart |
143 | 15 | the correct order. Depending on the exact set of components that are installed | 15 | ^^^^^^^^^^ |
144 | 16 | (especially client or server side components) some additional steps are | 16 | |
145 | 17 | necessary. This may include setting up the web application host (one of many | 17 | For the impatient, or those just looking for a cheat sheet but know what they |
146 | 18 | possible configurations here), setting up the database (again multiple possible | 18 | are doing otherwise, here are the basic set of commands to get an instance |
147 | 19 | options, our recommendation is to use the latest stable version of PostgreSQL). | 19 | up and running based on the requirements-mini file provided as an example, |
148 | 20 | 20 | which only installs lava-server. | |
149 | 21 | Detailed installation instructions *should* be included with each component | 21 | |
150 | 22 | documentation (do file bugs on missing documentation). | 22 | :: |
151 | 23 | 23 | ||
152 | 24 | 24 | $ ./lava-deployment-tool setup | |
153 | 25 | Installation from PypI | 25 | $ ./lava-deployment-tool bundle requirements-mini.txt |
154 | 26 | ********************** | 26 | $ ./lava-deployment-tool install testinstance lava.pybundle |
155 | 27 | 27 | $ sudo start lava-instance LAVA_INSTANCE=testinstance | |
156 | 28 | PyPi is the python package index (http://pypi.python.org/pypi). It is | 28 | |
157 | 29 | maintained by the python community and is the preferred distribution method | 29 | Assuming everything went well, you should be able to point a web browser |
158 | 30 | used by many open source projects written in the python programming language. | 30 | at the system you did this on and see the lava-server default page. |
159 | 31 | 31 | ||
160 | 32 | Here a front-end program, such as pip (http://pypi.python.org/pypi/pip) is used | 32 | |
161 | 33 | to install packages, and their python dependencies. Pip finds the required set | 33 | Software Requirements |
162 | 34 | of packages, downloads their source releases and does the hard work of figuring | 34 | ^^^^^^^^^^^^^^^^^^^^^ |
163 | 35 | out the right way to put them together. | 35 | |
164 | 36 | 36 | This tool should work on Ubuntu versions starting with 10.10 release | |
165 | 37 | This is the best compromise between wide system support (any flavour of Linux, | 37 | (Maverick). If you'd like to help us with other distributions feel free to |
166 | 38 | OS X and Windows), simplicity, upgrade and availability. The downside is that | 38 | contact us at validation (at) linaro (dot) org. |
167 | 39 | it does not handle, by itself, the last mile. This method does not handle | 39 | |
168 | 40 | things like setting up and running the application server. It also requires the | 40 | Hardware Requirements |
169 | 41 | user to have additional development packages, such as python header files, | 41 | ^^^^^^^^^^^^^^^^^^^^^ |
170 | 42 | database server header files, the C compiler and more. | 42 | |
171 | 43 | 43 | A small LAVA instance can be deployed on any modest hardware. We recommend at | |
172 | 44 | 44 | least one 1GB of RAM for runtime activity (this is shared, on a single host, | |
173 | 45 | .. todo:: | 45 | among the database server, the application server and the web server). For |
174 | 46 | Document virtualenv usage (recommended) | 46 | storage please reserve about 20GB for application data, especially if you wish |
175 | 47 | 47 | to mirror current public LAVA instance used by Linaro. LAVA uses append-only | |
176 | 48 | 48 | models so the storage requirements will grow at about several GB a year. | |
177 | 49 | Installation from PPA | 49 | |
178 | 50 | ********************* | 50 | Before installing |
179 | 51 | 51 | ^^^^^^^^^^^^^^^^^ | |
180 | 52 | This method is only suitable for users running Ubuntu 10.04 or later. Here LAVA | 52 | |
181 | 53 | is pre-compiled and packaged as Debian packages (debs). The installation | 53 | Before you can create your first LAVA instance (standalone, independent LAVA |
182 | 54 | scripts embedded in the packages take care for setting up additional services | 54 | installation) you must install some shared infrastructure on your machine. |
183 | 55 | so usually this is the best method to quickly have a self-contained running | 55 | Currently this is the Apache 2 web server, PostgreSQL database server, RabbitMQ |
184 | 56 | installation. The downside is longer release period as packaging takes | 56 | messaging server, and Python (and a few python programs and libraries). Because |
185 | 57 | additional time after each release. Another downside is that our support is | 57 | this installation method is not using pre-built packages you will also need |
186 | 58 | limited to Ubuntu. | 58 | development headers and a working compiler to build some of the native (C) |
187 | 59 | extensions for python. | ||
188 | 60 | |||
189 | 61 | This step is largely automated. To perform it run this command: | ||
190 | 62 | |||
191 | 63 | :: | ||
192 | 64 | |||
193 | 65 | $ ./lava-deployment-tool setup | ||
194 | 66 | |||
195 | 67 | This step also prepares file-system places for LAVA. In particular it creates | ||
196 | 68 | /srv/lava/ where all LAVA instances are later stored. | ||
197 | 69 | |||
198 | 70 | Creating LAVA instance | ||
199 | 71 | ^^^^^^^^^^^^^^^^^^^^^^ | ||
200 | 72 | |||
201 | 73 | You can create multiple LAVA instances on a single machine. Being able to do | ||
202 | 74 | so is very valuable for testing and developing LAVA itself. Before installing | ||
203 | 75 | you must first create a bundle of sources you wish to install. This simply | ||
204 | 76 | downloads all the things you intend to install into a single, local archive | ||
205 | 77 | so that installation or updating is not impacted by any problems getting the | ||
206 | 78 | sources later. This also enables offline installs, or installs behind a | ||
207 | 79 | restrictive firewall by allowing you to download the bundle in advance. | ||
208 | 80 | To create the bundle, run: | ||
209 | 81 | |||
210 | 82 | :: | ||
211 | 83 | |||
212 | 84 | $ ./lava-deployment-tool URL_to_requirements [bundle_file_name] | ||
213 | 85 | |||
214 | 86 | If you do not specify the bundle_file_name, it will use the name 'lava.pybundle' | ||
215 | 87 | |||
216 | 88 | To create a new instance run this command: | ||
217 | 89 | |||
218 | 90 | :: | ||
219 | 91 | |||
220 | 92 | $ ./lava-deployment-tool install NAME BUNDLE | ||
221 | 93 | |||
222 | 94 | This will create a fresh instance called NAME, the instance will be composed of | ||
223 | 95 | the software specified in the requirements file that was used to build the | ||
224 | 96 | bundle and associated dependencies. | ||
225 | 97 | |||
226 | 98 | The script produces verbose output, at the end it should say that everything | ||
227 | 99 | went fine. | ||
228 | 100 | |||
229 | 101 | Maintaining a LAVA System | ||
230 | 102 | +++++++++++++++++++++++++ | ||
231 | 103 | |||
232 | 104 | Backing Up LAVA instance | ||
233 | 105 | ^^^^^^^^^^^^^^^^^^^^^^^^ | ||
234 | 106 | |||
235 | 107 | LAVA instances store persistent data in two locations: | ||
236 | 108 | |||
237 | 109 | * On the filesystem, in the directory | ||
238 | 110 | /srv/lava/$LAVA_INSTANCE/var/lib/lava-server/media | ||
239 | 111 | * In a PostgreSQL database in the default cluster named $LAVA_INSTANCE | ||
240 | 112 | |||
241 | 113 | Backing up those two items is sufficient to preserve the entire system | ||
242 | 114 | state. You can do this by running: | ||
243 | 115 | |||
244 | 116 | :: | ||
245 | 117 | |||
246 | 118 | $ lava-deployment-tool backup $LAVA_INSTANCE | ||
247 | 119 | |||
248 | 120 | which will create a backup with an ID based on the current date and | ||
249 | 121 | time in a directory named | ||
250 | 122 | "/srv/lava/backups/$LAVA_INSTANCE/$SNAPSHOT_ID/". You can make | ||
251 | 123 | /srv/lava/backups a symlink to a more appropriate location if you | ||
252 | 124 | want. | ||
253 | 125 | |||
254 | 126 | Generally before backing up you should make sure that LAVA instance is | ||
255 | 127 | turned off. This depends on how your instance is started. If you were | ||
256 | 128 | using upstart the following shell command should turn LAVA off: | ||
257 | 129 | |||
258 | 130 | :: | ||
259 | 131 | |||
260 | 132 | $ sudo service lava stop | ||
261 | 133 | |||
262 | 134 | If you take a backup while running, you will need to do some manual | ||
263 | 135 | cleanup when you restore from it. | ||
264 | 136 | |||
265 | 137 | Restoring from backup | ||
266 | 138 | ^^^^^^^^^^^^^^^^^^^^^ | ||
267 | 139 | |||
268 | 140 | Running the command: | ||
269 | 141 | |||
270 | 142 | :: | ||
271 | 143 | |||
272 | 144 | $ lava-deployment-tool restore $LAVA_INSTANCE $SNAPSHOT_ID | ||
273 | 145 | |||
274 | 146 | will restore the given snapshot of the named instance. This will | ||
275 | 147 | first erase the database and media files of the named instance, so be | ||
276 | 148 | careful what you type! | ||
277 | 149 | |||
278 | 150 | You can restore an instance from a backup taken from a distinct | ||
279 | 151 | instance with a command like: | ||
280 | 152 | |||
281 | 153 | :: | ||
282 | 154 | |||
283 | 155 | $ lava-deployment-tool restore $TARGET_INSTANCE $SOURCE_INSTANCE/$SNAPSHOT_ID | ||
284 | 156 | |||
285 | 157 | Currently to restore from a backup taken on a different machine, you | ||
286 | 158 | have to put it under /srv/lava/backups, then run an appropriate | ||
287 | 159 | "lava-deployment-tool restore" command (we will hopefully make this | ||
288 | 160 | more natural soon). | ||
289 | 161 | |||
290 | 162 | You cannot restore to an instance while it is running. | ||
291 | 163 | |||
292 | 164 | Updating LAVA instance | ||
293 | 165 | ^^^^^^^^^^^^^^^^^^^^^^ | ||
294 | 166 | |||
295 | 167 | LAVA is released periodically. Currently this is once a month but the release | ||
296 | 168 | cycle becomes more and more fluid and eventually we'd like to release multiple | ||
297 | 169 | tiny changes every day. | ||
298 | 170 | |||
299 | 171 | Once you installed some LAVA components you can upgrade your installation to a | ||
300 | 172 | more recent release using this deployment tool. There are some important | ||
301 | 173 | upgrade considerations: | ||
302 | 174 | |||
303 | 175 | 1) Upgrades may alter the database or persistent media files. It is wise to | ||
304 | 176 | perform a full system backup before each upgrade. While we don't anticipate | ||
305 | 177 | catastrophic failures it's better to be safe than sorry. Refer to the previous | ||
306 | 178 | chapter for details. | ||
307 | 179 | |||
308 | 180 | 2) Some database schema changes take a lot of time to finish. We try to | ||
309 | 181 | minimize such changes but as you can install any third-party LAVA extensions we | ||
310 | 182 | cannot predict the overall downtime in such case. For official Linaro releases | ||
311 | 183 | please refer to our monthly release notes that are available at | ||
312 | 184 | http://lava.readthedocs.org/ | ||
313 | 185 | |||
314 | 186 | 3) Upgrades may introduce additional dependencies, which will be installed | ||
315 | 187 | automatically. Periodically we make use of additional third party open source | ||
316 | 188 | libraries. Those libraries will be installed for a single LAVA instance | ||
317 | 189 | _only_. Your system libraries are not affected by this step. | ||
318 | 190 | |||
319 | 191 | 4) Upgrades require network access. If you are behind a firewall or a | ||
320 | 192 | corporate http proxy you may experience failures. Please note that the | ||
321 | 193 | upgrade process does not install components without first downloading all of | ||
322 | 194 | the required pieces so in case of a network failure your current installation | ||
323 | 195 | should not be affected. While typically only HTTP and HTTPS protocols are | ||
324 | 196 | being used at times you may see attempts to connect to native protocols used | ||
325 | 197 | by git, bazaar or mercurial. | ||
326 | 198 | |||
327 | 199 | 5) Upgrading process rebuilds the collection of static assets served by | ||
328 | 200 | Apache. During that moment you may encounter a very brief failure to resolve | ||
329 | 201 | some of the static assets (typically images, cascading style sheets and | ||
330 | 202 | javascript libraries) | ||
331 | 203 | |||
332 | 204 | Prior to upgrading and instance, you will need to build a new bundle based | ||
333 | 205 | on your new requirements file: | ||
334 | 206 | |||
335 | 207 | :: | ||
336 | 208 | |||
337 | 209 | $ ./lava-deployment-tool bundle URL-to-requirements [bundle_file_name] | ||
338 | 210 | |||
339 | 211 | To upgrade an existing instance run the following command: | ||
340 | 212 | |||
341 | 213 | :: | ||
342 | 214 | |||
343 | 215 | $ ./lava-deployment-tool upgrade NAME BUNDLE | ||
344 | 216 | |||
345 | 217 | Again the NAME and URL-to-requirements have the same meaning as in the | ||
346 | 218 | install command mentioned in preceding chapter. | ||
347 | 219 | |||
348 | 220 | Anatomy of a LAVA instance | ||
349 | 221 | ^^^^^^^^^^^^^^^^^^^^^^^^^^ | ||
350 | 222 | |||
351 | 223 | An instance is composed of several parts: | ||
352 | 224 | |||
353 | 225 | - A new system user account called $LAVA_INSTANCE | ||
354 | 226 | - A directory tree similar to standard unix filesystem rooted | ||
355 | 227 | in $LAVA_PREFIX/$LAVA_INSTANCE/ | ||
356 | 228 | - A postgres user and database in the default cluster, both named | ||
357 | 229 | $LAVA_INSTANCE | ||
358 | 230 | |||
359 | 231 | A note on Postgres versions | ||
360 | 232 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ||
361 | 233 | |||
362 | 234 | lava-deployment-tool creates its databases in the default postgres | ||
363 | 235 | cluster (on Ubuntu this is the 'main' cluster of whichever version of | ||
364 | 236 | postgres was installed first). Using a different version/cluster and | ||
365 | 237 | moving between versions is not technically difficult but not currently | ||
366 | 238 | supported. | ||
367 | 239 | |||
368 | 240 | Contact and bug reports | ||
369 | 241 | ^^^^^^^^^^^^^^^^^^^^^^^ | ||
370 | 242 | |||
371 | 243 | Please report bugs using | ||
372 | 244 | https://bugs.launchpad.net/lava-deployment-tool/+filebug | ||
373 | 245 | |||
374 | 246 | Feel free to contact us at validation (at) linaro (dot) org. | ||
375 | 59 | 247 | ||
376 | === modified file 'doc/lava-image-creation.rst' | |||
377 | --- doc/lava-image-creation.rst 2012-02-10 22:26:54 +0000 | |||
378 | +++ doc/lava-image-creation.rst 2012-02-13 04:53:18 +0000 | |||
379 | @@ -27,17 +27,17 @@ | |||
380 | 27 | 27 | ||
381 | 28 | :: | 28 | :: |
382 | 29 | 29 | ||
386 | 30 | 127.0.1.1 linaro-developer | 30 | 127.0.1.1 linaro-developer |
387 | 31 | to: | 31 | to: |
388 | 32 | 127.1.1.1 master | 32 | 127.1.1.1 master |
389 | 33 | 33 | ||
390 | 34 | then edit /etc/hostname and change: | 34 | then edit /etc/hostname and change: |
391 | 35 | 35 | ||
392 | 36 | :: | 36 | :: |
393 | 37 | 37 | ||
397 | 38 | linaro-developer | 38 | linaro-developer |
398 | 39 | to: | 39 | to: |
399 | 40 | master | 40 | master |
400 | 41 | 41 | ||
401 | 42 | Also, edit /etc/network/interfaces to ensure that either eth0 or usb0 | 42 | Also, edit /etc/network/interfaces to ensure that either eth0 or usb0 |
402 | 43 | (depending on the ethernet interface on the board) is enabled. Depending on | 43 | (depending on the ethernet interface on the board) is enabled. Depending on |
403 | @@ -61,7 +61,9 @@ | |||
404 | 61 | 61 | ||
405 | 62 | at the command prompt type: | 62 | at the command prompt type: |
406 | 63 | 63 | ||
408 | 64 | fdisk -S 63 -H 255 -c /dev/mmcblk0 | 64 | :: |
409 | 65 | |||
410 | 66 | fdisk -S 63 -H 255 -c /dev/mmcblk0 | ||
411 | 65 | 67 | ||
412 | 66 | First a note. If you get anything wrong in this procedure don't panic. You can | 68 | First a note. If you get anything wrong in this procedure don't panic. You can |
413 | 67 | quit fdisk (command "q") and no changes will be saved until you explicitly tell | 69 | quit fdisk (command "q") and no changes will be saved until you explicitly tell |
414 | @@ -73,8 +75,8 @@ | |||
415 | 73 | 75 | ||
416 | 74 | :: | 76 | :: |
417 | 75 | 77 | ||
420 | 76 | /dev/mmcblk0p1 * 63 106494 53216 c W95 FAT32 (LBA) | 78 | /dev/mmcblk0p1 * 63 106494 53216 c W95 FAT32 (LBA) |
421 | 77 | /dev/mmcblk0p2 106496 6291455 3092480 83 Linux | 79 | /dev/mmcblk0p2 106496 6291455 3092480 83 Linux |
422 | 78 | 80 | ||
423 | 79 | If it looks like this, then follow the 2 partition instructions below. | 81 | If it looks like this, then follow the 2 partition instructions below. |
424 | 80 | 82 | ||
425 | @@ -82,9 +84,9 @@ | |||
426 | 82 | 84 | ||
427 | 83 | :: | 85 | :: |
428 | 84 | 86 | ||
432 | 85 | /dev/mmcblk0p1 1 8191 4095+ da Non-FS data | 87 | /dev/mmcblk0p1 1 8191 4095+ da Non-FS data |
433 | 86 | /dev/mmcblk0p2 * 8192 114687 53248 c W95 FAT32 (LBA) | 88 | /dev/mmcblk0p2 * 8192 114687 53248 c W95 FAT32 (LBA) |
434 | 87 | /dev/mmcblk0p3 114688 6291455 3088384 83 Linux | 89 | /dev/mmcblk0p3 114688 6291455 3088384 83 Linux |
435 | 88 | 90 | ||
436 | 89 | If it looks like this, follow the 3 partition instructions below: | 91 | If it looks like this, follow the 3 partition instructions below: |
437 | 90 | 92 | ||
438 | @@ -106,9 +108,9 @@ | |||
439 | 106 | 108 | ||
440 | 107 | :: | 109 | :: |
441 | 108 | 110 | ||
445 | 109 | /dev/mmcblk0p1 * 63 106494 53216 c W95 FAT32 (LBA) | 111 | /dev/mmcblk0p1 * 63 106494 53216 c W95 FAT32 (LBA) |
446 | 110 | /dev/mmcblk0p2 106496 6291455 3092480 83 Linux | 112 | /dev/mmcblk0p2 106496 6291455 3092480 83 Linux |
447 | 111 | /dev/mmcblk0p3 6291456 6422527 65536 c W95 FAT32 (LBA) | 113 | /dev/mmcblk0p3 6291456 6422527 65536 c W95 FAT32 (LBA) |
448 | 112 | 114 | ||
449 | 113 | Next we need to create the testrootfs and sdcard partitions. Unfortunately | 115 | Next we need to create the testrootfs and sdcard partitions. Unfortunately |
450 | 114 | we are only normally allowed 4 partitions so we have to create what's called | 116 | we are only normally allowed 4 partitions so we have to create what's called |
451 | @@ -136,12 +138,12 @@ | |||
452 | 136 | 138 | ||
453 | 137 | :: | 139 | :: |
454 | 138 | 140 | ||
461 | 139 | /dev/mmcblk0p1 * 63 106494 53216 c W95 FAT32 (LBA) | 141 | /dev/mmcblk0p1 * 63 106494 53216 c W95 FAT32 (LBA) |
462 | 140 | /dev/mmcblk0p2 106496 6291455 3092480 83 Linux | 142 | /dev/mmcblk0p2 106496 6291455 3092480 83 Linux |
463 | 141 | /dev/mmcblk0p3 6291456 6422527 65536 c W95 FAT32 (LBA) | 143 | /dev/mmcblk0p3 6291456 6422527 65536 c W95 FAT32 (LBA) |
464 | 142 | /dev/mmcblk0p4 6422528 31116287 12346880 5 Extended | 144 | /dev/mmcblk0p4 6422528 31116287 12346880 5 Extended |
465 | 143 | /dev/mmcblk0p5 6424576 23201791 8388608 83 Linux | 145 | /dev/mmcblk0p5 6424576 23201791 8388608 83 Linux |
466 | 144 | /dev/mmcblk0p6 23203840 31116287 3956224 c W95 FAT32 (LBA) | 146 | /dev/mmcblk0p6 23203840 31116287 3956224 c W95 FAT32 (LBA) |
467 | 145 | 147 | ||
468 | 146 | Now we need to write this partition table back. Enter "w" and you will receive | 148 | Now we need to write this partition table back. Enter "w" and you will receive |
469 | 147 | some warnings but you can ignore these. | 149 | some warnings but you can ignore these. |
470 | @@ -151,44 +153,48 @@ | |||
471 | 151 | 153 | ||
472 | 152 | At the command prompt, type: | 154 | At the command prompt, type: |
473 | 153 | 155 | ||
475 | 154 | ls -l /dev/mmcblk0* | 156 | :: |
476 | 157 | |||
477 | 158 | ls -l /dev/mmcblk0* | ||
478 | 155 | 159 | ||
479 | 156 | and you should see something like this: | 160 | and you should see something like this: |
480 | 157 | 161 | ||
481 | 158 | :: | 162 | :: |
482 | 159 | 163 | ||
490 | 160 | brw-rw---- 1 root disk 179, 0 2012-01-19 12:37 /dev/mmcblk0 | 164 | brw-rw---- 1 root disk 179, 0 2012-01-19 12:37 /dev/mmcblk0 |
491 | 161 | brw-rw---- 1 root disk 179, 1 2012-01-19 12:37 /dev/mmcblk0p1 | 165 | brw-rw---- 1 root disk 179, 1 2012-01-19 12:37 /dev/mmcblk0p1 |
492 | 162 | brw-rw---- 1 root disk 179, 2 2012-01-19 12:37 /dev/mmcblk0p2 | 166 | brw-rw---- 1 root disk 179, 2 2012-01-19 12:37 /dev/mmcblk0p2 |
493 | 163 | brw-rw---- 1 root disk 179, 3 2012-01-19 12:37 /dev/mmcblk0p3 | 167 | brw-rw---- 1 root disk 179, 3 2012-01-19 12:37 /dev/mmcblk0p3 |
494 | 164 | brw-rw---- 1 root disk 179, 4 2012-01-19 12:37 /dev/mmcblk0p4 | 168 | brw-rw---- 1 root disk 179, 4 2012-01-19 12:37 /dev/mmcblk0p4 |
495 | 165 | brw-rw---- 1 root disk 179, 5 2012-01-19 12:37 /dev/mmcblk0p5 | 169 | brw-rw---- 1 root disk 179, 5 2012-01-19 12:37 /dev/mmcblk0p5 |
496 | 166 | brw-rw---- 1 root disk 179, 6 2012-01-19 12:37 /dev/mmcblk0p6 | 170 | brw-rw---- 1 root disk 179, 6 2012-01-19 12:37 /dev/mmcblk0p6 |
497 | 167 | 171 | ||
498 | 168 | Now we're going to make filing systems and label the new patitions. Enter the | 172 | Now we're going to make filing systems and label the new patitions. Enter the |
499 | 169 | following three lines at the command prompt: | 173 | following three lines at the command prompt: |
500 | 170 | 174 | ||
501 | 171 | :: | 175 | :: |
502 | 172 | 176 | ||
506 | 173 | mkfs.vfat -n testboot /dev/mmcblk0p3 | 177 | mkfs.vfat -n testboot /dev/mmcblk0p3 |
507 | 174 | mkfs.vfat -n sdcard /dev/mmcblk0p6 | 178 | mkfs.vfat -n sdcard /dev/mmcblk0p6 |
508 | 175 | mkfs.ext3 -L testrootfs /dev/mmcblk0p5 | 179 | mkfs.ext3 -L testrootfs /dev/mmcblk0p5 |
509 | 176 | 180 | ||
510 | 177 | This last command does take some time, so be patient. Once it has completed, | 181 | This last command does take some time, so be patient. Once it has completed, |
511 | 178 | reboot the card once more, and then check that the labels are correctly assigned | 182 | reboot the card once more, and then check that the labels are correctly assigned |
512 | 179 | by typing: | 183 | by typing: |
513 | 180 | 184 | ||
515 | 181 | ls -l /dev/disk/by-label | 185 | :: |
516 | 186 | |||
517 | 187 | $ ls -l /dev/disk/by-label | ||
518 | 182 | 188 | ||
519 | 183 | If all is well, you should see something like the following: | 189 | If all is well, you should see something like the following: |
520 | 184 | 190 | ||
521 | 185 | :: | 191 | :: |
522 | 186 | 192 | ||
528 | 187 | lrwxrwxrwx 1 root root 15 May 31 21:48 boot -> ../../mmcblk0p1 | 193 | lrwxrwxrwx 1 root root 15 May 31 21:48 boot -> ../../mmcblk0p1 |
529 | 188 | lrwxrwxrwx 1 root root 15 May 31 21:48 rootfs -> ../../mmcblk0p2 | 194 | lrwxrwxrwx 1 root root 15 May 31 21:48 rootfs -> ../../mmcblk0p2 |
530 | 189 | lrwxrwxrwx 1 root root 15 May 31 21:48 sdcard -> ../../mmcblk0p6 | 195 | lrwxrwxrwx 1 root root 15 May 31 21:48 sdcard -> ../../mmcblk0p6 |
531 | 190 | lrwxrwxrwx 1 root root 15 May 31 21:48 testboot -> ../../mmcblk0p3 | 196 | lrwxrwxrwx 1 root root 15 May 31 21:48 testboot -> ../../mmcblk0p3 |
532 | 191 | lrwxrwxrwx 1 root root 15 May 31 21:48 testrootfs -> ../../mmcblk0p5 | 197 | lrwxrwxrwx 1 root root 15 May 31 21:48 testrootfs -> ../../mmcblk0p5 |
533 | 192 | 198 | ||
534 | 193 | Your sd card image is now complete. Now, go on to the section "Adding a device | 199 | Your sd card image is now complete. Now, go on to the section "Adding a device |
535 | 194 | to LAVA" | 200 | to LAVA" |
536 | @@ -214,11 +220,11 @@ | |||
537 | 214 | 220 | ||
538 | 215 | :: | 221 | :: |
539 | 216 | 222 | ||
545 | 217 | /dev/mmcblk0p1 1 8191 4095+ da Non-FS data | 223 | /dev/mmcblk0p1 1 8191 4095+ da Non-FS data |
546 | 218 | /dev/mmcblk0p2 * 8192 114687 53248 c W95 FAT32 (LBA) | 224 | /dev/mmcblk0p2 * 8192 114687 53248 c W95 FAT32 (LBA) |
547 | 219 | /dev/mmcblk0p3 114688 6291455 3088384 83 Linux | 225 | /dev/mmcblk0p3 114688 6291455 3088384 83 Linux |
548 | 220 | /dev/mmcblk0p4 6291456 31116287 12412416 5 Extended | 226 | /dev/mmcblk0p4 6291456 31116287 12412416 5 Extended |
549 | 221 | /dev/mmcblk0p5 6293504 6424575 65536 c W95 FAT32 (LBA) | 227 | /dev/mmcblk0p5 6293504 6424575 65536 c W95 FAT32 (LBA) |
550 | 222 | 228 | ||
551 | 223 | To create the testrootfs partition, we type "n" to create a new partition and | 229 | To create the testrootfs partition, we type "n" to create a new partition and |
552 | 224 | once again select the default start sector by pressing "Enter". For the last | 230 | once again select the default start sector by pressing "Enter". For the last |
553 | @@ -234,13 +240,13 @@ | |||
554 | 234 | 240 | ||
555 | 235 | :: | 241 | :: |
556 | 236 | 242 | ||
564 | 237 | /dev/mmcblk0p1 1 8191 4095+ da Non-FS data | 243 | /dev/mmcblk0p1 1 8191 4095+ da Non-FS data |
565 | 238 | /dev/mmcblk0p2 * 8192 114687 53248 c W95 FAT32 (LBA) | 244 | /dev/mmcblk0p2 * 8192 114687 53248 c W95 FAT32 (LBA) |
566 | 239 | /dev/mmcblk0p3 114688 6291455 3088384 83 Linux | 245 | /dev/mmcblk0p3 114688 6291455 3088384 83 Linux |
567 | 240 | /dev/mmcblk0p4 6291456 31116287 12412416 5 Extended | 246 | /dev/mmcblk0p4 6291456 31116287 12412416 5 Extended |
568 | 241 | /dev/mmcblk0p5 6293504 6424575 65536 c W95 FAT32 (LBA) | 247 | /dev/mmcblk0p5 6293504 6424575 65536 c W95 FAT32 (LBA) |
569 | 242 | /dev/mmcblk0p6 6426624 23203839 8388608 83 Linux | 248 | /dev/mmcblk0p6 6426624 23203839 8388608 83 Linux |
570 | 243 | /dev/mmcblk0p7 23205888 31116287 3955200 c W95 FAT32 (LBA) | 249 | /dev/mmcblk0p7 23205888 31116287 3955200 c W95 FAT32 (LBA) |
571 | 244 | 250 | ||
572 | 245 | Now we need to write this partition table back. Enter "w" and you will receive | 251 | Now we need to write this partition table back. Enter "w" and you will receive |
573 | 246 | some warnings but you can ignore these. | 252 | some warnings but you can ignore these. |
574 | @@ -250,29 +256,31 @@ | |||
575 | 250 | 256 | ||
576 | 251 | At the command prompt, type: | 257 | At the command prompt, type: |
577 | 252 | 258 | ||
579 | 253 | ls -l /dev/mmcblk0* | 259 | :: |
580 | 260 | |||
581 | 261 | ls -l /dev/mmcblk0* | ||
582 | 254 | 262 | ||
583 | 255 | and you should see something like this: | 263 | and you should see something like this: |
584 | 256 | 264 | ||
585 | 257 | :: | 265 | :: |
586 | 258 | 266 | ||
595 | 259 | brw-rw---- 1 root disk 179, 0 2012-02-10 19:30 /dev/mmcblk0 | 267 | brw-rw---- 1 root disk 179, 0 2012-02-10 19:30 /dev/mmcblk0 |
596 | 260 | brw-rw---- 1 root disk 179, 1 2012-02-10 19:30 /dev/mmcblk0p1 | 268 | brw-rw---- 1 root disk 179, 1 2012-02-10 19:30 /dev/mmcblk0p1 |
597 | 261 | brw-rw---- 1 root disk 179, 2 2012-02-10 19:30 /dev/mmcblk0p2 | 269 | brw-rw---- 1 root disk 179, 2 2012-02-10 19:30 /dev/mmcblk0p2 |
598 | 262 | brw-rw---- 1 root disk 179, 3 2012-02-10 19:30 /dev/mmcblk0p3 | 270 | brw-rw---- 1 root disk 179, 3 2012-02-10 19:30 /dev/mmcblk0p3 |
599 | 263 | brw-rw---- 1 root disk 179, 4 2012-02-10 19:30 /dev/mmcblk0p4 | 271 | brw-rw---- 1 root disk 179, 4 2012-02-10 19:30 /dev/mmcblk0p4 |
600 | 264 | brw-rw---- 1 root disk 179, 5 2012-02-10 19:30 /dev/mmcblk0p5 | 272 | brw-rw---- 1 root disk 179, 5 2012-02-10 19:30 /dev/mmcblk0p5 |
601 | 265 | brw-rw---- 1 root disk 179, 6 2012-02-10 19:30 /dev/mmcblk0p6 | 273 | brw-rw---- 1 root disk 179, 6 2012-02-10 19:30 /dev/mmcblk0p6 |
602 | 266 | brw-rw---- 1 root disk 179, 7 2012-02-10 19:30 /dev/mmcblk0p7 | 274 | brw-rw---- 1 root disk 179, 7 2012-02-10 19:30 /dev/mmcblk0p7 |
603 | 267 | 275 | ||
604 | 268 | Now we're going to make filing systems and label the new patitions. Enter the | 276 | Now we're going to make filing systems and label the new patitions. Enter the |
605 | 269 | following three lines at the command prompt: | 277 | following three lines at the command prompt: |
606 | 270 | 278 | ||
607 | 271 | :: | 279 | :: |
608 | 272 | 280 | ||
612 | 273 | mkfs.vfat -n testboot /dev/mmcblk0p5 | 281 | mkfs.vfat -n testboot /dev/mmcblk0p5 |
613 | 274 | mkfs.vfat -n sdcard /dev/mmcblk0p7 | 282 | mkfs.vfat -n sdcard /dev/mmcblk0p7 |
614 | 275 | mkfs.ext3 -L testrootfs /dev/mmcblk0p6 | 283 | mkfs.ext3 -L testrootfs /dev/mmcblk0p6 |
615 | 276 | 284 | ||
616 | 277 | This last command does take some time, so be patient. Once it has completed, | 285 | This last command does take some time, so be patient. Once it has completed, |
617 | 278 | reboot the card once more, and then check that the labels are correctly assigned | 286 | reboot the card once more, and then check that the labels are correctly assigned |
618 | @@ -284,11 +292,11 @@ | |||
619 | 284 | 292 | ||
620 | 285 | :: | 293 | :: |
621 | 286 | 294 | ||
627 | 287 | lrwxrwxrwx 1 root root 15 2012-02-10 19:30 boot -> ../../mmcblk0p2 | 295 | lrwxrwxrwx 1 root root 15 2012-02-10 19:30 boot -> ../../mmcblk0p2 |
628 | 288 | lrwxrwxrwx 1 root root 15 2012-02-10 19:30 rootfs -> ../../mmcblk0p3 | 296 | lrwxrwxrwx 1 root root 15 2012-02-10 19:30 rootfs -> ../../mmcblk0p3 |
629 | 289 | lrwxrwxrwx 1 root root 15 2012-02-10 19:30 sdcard -> ../../mmcblk0p7 | 297 | lrwxrwxrwx 1 root root 15 2012-02-10 19:30 sdcard -> ../../mmcblk0p7 |
630 | 290 | lrwxrwxrwx 1 root root 15 2012-02-10 19:30 testboot -> ../../mmcblk0p5 | 298 | lrwxrwxrwx 1 root root 15 2012-02-10 19:30 testboot -> ../../mmcblk0p5 |
631 | 291 | lrwxrwxrwx 1 root root 15 2012-02-10 19:30 testrootfs -> ../../mmcblk0p6 | 299 | lrwxrwxrwx 1 root root 15 2012-02-10 19:30 testrootfs -> ../../mmcblk0p6 |
632 | 292 | 300 | ||
633 | 293 | Your sd card image is now complete. Now, go on to the section "Adding a device | 301 | Your sd card image is now complete. Now, go on to the section "Adding a device |
634 | 294 | to LAVA" | 302 | to LAVA" |
635 | @@ -306,21 +314,21 @@ | |||
636 | 306 | 314 | ||
637 | 307 | :: | 315 | :: |
638 | 308 | 316 | ||
641 | 309 | device_type = panda | 317 | device_type = panda |
642 | 310 | hostname = panda01 | 318 | hostname = panda01 |
643 | 311 | 319 | ||
644 | 312 | The (current) list of supported device types is: | 320 | The (current) list of supported device types is: |
645 | 313 | 321 | ||
646 | 314 | :: | 322 | :: |
647 | 315 | 323 | ||
656 | 316 | beagle | 324 | beagle |
657 | 317 | beagle-xm | 325 | beagle-xm |
658 | 318 | mx51evk | 326 | mx51evk |
659 | 319 | mx53loco | 327 | mx53loco |
660 | 320 | origen | 328 | origen |
661 | 321 | panda | 329 | panda |
662 | 322 | snowball_sd | 330 | snowball |
663 | 323 | vexpress-a9 | 331 | vexpress-a9 |
664 | 324 | 332 | ||
665 | 325 | If your device isn't in this list check the | 333 | If your device isn't in this list check the |
666 | 326 | /srv/lava/instances/production/etc/lava-dispatcher/device-types directory to | 334 | /srv/lava/instances/production/etc/lava-dispatcher/device-types directory to |
nice guide