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
|