aboutsummaryrefslogtreecommitdiffstats
path: root/README.txt
blob: 103acc39e6591871d18ca433e50dc0eddd357736 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
Mageia ISO check script
=======================

Test suite for ISOs built for Mageia.
All ISOs should pass this test suite after being built, before being released.

 - License: GPL-2+
 - Authors:
   - Damien Lallement <dams@mageia.org>
   - Romain d'Alverny <rda@mageia.org>
 - Code: [svn://svn.mageia.org/svn/soft/isocheck](http://svnweb.mageia.org/soft/isocheck)
 - [Documentation](https://wiki.mageia.org/en/Isocheck)

Usage
-----

    $ su
    # perl ./test_iso.pl path/to/your/Mageia-x-i586.iso
    ... logs ...

Returns 0 in case of success (and last line of log starts with "PASS").

Returns a positive integer otherwise (and last line of log starts with "FAIL").


Features
--------

It tests for:

 - availability of all components needed ((signed) checksums, indexes, lists),
 - ISO file name correctness,
 - file size according to its declaration,
 - MD5 and SHA1 checksums,
 - ISO headers correctness,
 - burnable, hybrid ISO,
 - depending on the type of image, it tests for the presence of autorun,
   correctly signed packages and various bits.


Requirements
------------

User running this script must be able to mount an ISO image.

Depends on:

 - cdrkit, cdrkit-isotools
 - gpg
 - Perl
   - File::Basename
   - MDK::Common
   - TAP::Harness
   - TAP::Parser::Aggregator;
   - Test::Most


TODO
----
 - fix t_install_iso tests (ids, idx, rpms, pubkey - especially cauldron/stable)
 - script should properly manage other types of ISOs:
   * separate tests that are generic from those that are Mageia-specific
   * move specific tests into t/{name}/*.t
 - script should be run by a non-root user that can sudo mount


Style
-----
 - 4 spaces indent, no tab