1Test::AutoBuild::Stage:U:sGerrouCpo(n3t)ributed Perl DocTuemsetn:t:aAtuitoonBuild::Stage::Group(3)
2
3
4
6 Test::AutoBuild::Stage::Group - Groups several stages together
7
9 use Test::AutoBuild::Stage::Group
10
12 This stage groups a number of stages together into a single logical
13 stage. The primary reason for such a setup is to allow one or more of
14 the sub-stages to fail, without terminating the entire build process.
15 For example, by grouping the Build and ISOGenerator stages together it
16 is possible to have the ISOGenerator stage skipped whenever the Build
17 stage fails, but still have all the post-build output stages run to
18 generate status pages, etc.
19
21 In addition to the standard parameters defined by the Test::Auto‐
22 Build::Stage module, this module also handles the optional "stages"
23 parameter to specify a list of sub-stages. Sub-stages are listed in the
24 same format as top level stages, ie an array of hashes.
25
26 EXAMPLE
27
28 {
29 name = build
30 label = Build group
31 module = Test::AutoBuild::Stage::Group
32 # Don't abort entire cycle if the module build fails
33 critical = 0
34 stages = (
35 # Basic build
36 {
37 name = build
38 label = Build
39 module = Test::AutoBuild::Stage::Build
40 options = {
41 ...snip build options...
42 }
43 }
44 # Generate isos
45 {
46 name = iso
47 label = ISO image generator
48 module = Test::AutoBuild::Stage::ISOGenetator
49 options = {
50 ...snip options...
51 }
52 }
53 )
54 }
55
57 $stage->init(%params);
58 Overrides the super-class to add in handling of the optional
59 "stages" parameter for defining sub-stages. It is not neccessary to
60 call this method, since it is called by the "new" method automati‐
61 cally.
62
63 my @stages = $stage->stages();
64 Retrieves the list of sub-stages that belong to this group. The
65 elements in the array are instances of Test::AutoBuild::Stage mod‐
66 ule.
67
68 $stage->process($runtime);
69 Runs all sub-stages returned by the "stages" method. If any sub-
70 stages fails & that stage is marked as critical, this stage will be
71 marked as failing and return control immediately. If the sub-stage
72 is non-critical, then the processing will continue onto the next
73 sub-stage.
74
76 Daniel Berrange <dan@berrange.com> Dennis Gregorovic <dgre‐
77 gorovic@alum.mit.edu>
78
80 Copyright (C) 2004 Red Hat, Inc.
81
83 perl(1), Test::AutoBuild::Stage
84
85
86
87perl v5.8.8 2007-12-09 Test::AutoBuild::Stage::Group(3)