summaryrefslogtreecommitdiffstats
path: root/lib/MGA/DrakISO/BuildMedia.pm
diff options
context:
space:
mode:
authorMartin Whitaker <mageia@martin-whitaker.me.uk>2018-01-10 09:03:20 +0000
committerMartin Whitaker <mageia@martin-whitaker.me.uk>2018-01-12 08:44:42 +0000
commitff30da3ebb107421372e2a1a6d37f7c189667f2b (patch)
tree7dcb10f555e74768f55029d644d16e636abb5420 /lib/MGA/DrakISO/BuildMedia.pm
parent98ac027245772b49c24b1bbe35b0f33e6551c3e8 (diff)
downloaddrakiso-ff30da3ebb107421372e2a1a6d37f7c189667f2b.tar
drakiso-ff30da3ebb107421372e2a1a6d37f7c189667f2b.tar.gz
drakiso-ff30da3ebb107421372e2a1a6d37f7c189667f2b.tar.bz2
drakiso-ff30da3ebb107421372e2a1a6d37f7c189667f2b.tar.xz
drakiso-ff30da3ebb107421372e2a1a6d37f7c189667f2b.zip
Simplify run_() helper function and minimise direct calls to system().
Diffstat (limited to 'lib/MGA/DrakISO/BuildMedia.pm')
-rw-r--r--lib/MGA/DrakISO/BuildMedia.pm16
1 files changed, 10 insertions, 6 deletions
diff --git a/lib/MGA/DrakISO/BuildMedia.pm b/lib/MGA/DrakISO/BuildMedia.pm
index b2171b4..d9bc0fc 100644
--- a/lib/MGA/DrakISO/BuildMedia.pm
+++ b/lib/MGA/DrakISO/BuildMedia.pm
@@ -34,6 +34,10 @@ use urpm::media;
use MGA::DrakISO::ClassicBuild;
use MGA::DrakISO::Utils;
+use Exporter;
+our @ISA = qw(Exporter);
+our @EXPORT = qw(prepare_media);
+
###############################################################################
# Global Variables
###############################################################################
@@ -484,9 +488,9 @@ sub build_installer_media {
copy_or_link($repo_media_dir . '/media_info/rpmsrate', $media_dir . 'media_info/rpmsrate');
# Generate the remaining media info.
- my $silent = $::verbose < 3 ? ' -s' : '';
+ my $silent = $::verbose < 3;
print "-- messages from gendistrib -----------------------\n" if !$silent;
- system("gendistrib $silent $arch_dir\n") == 0
+ run_('gendistrib', if_($silent, '-s'), $arch_dir)
or die "ERROR: gendistrib failed to generate the media info\n";
print "---------------------------------------------------\n" if !$silent;
}
@@ -526,11 +530,11 @@ sub check_installer_media {
my $arch = $build->{settings}{arch};
my $media_dir = $build->get_build_dir('files/' . $arch . '/media');
my $log_file = $build->get_build_dir('tmp') . '/rpmcheck.log';
- system("zcat -q $media_dir/$class/media_info/hdlist.cz | rpmcheck -explain -failures > $log_file") == 0
+ run_("zcat -q $media_dir/$class/media_info/hdlist.cz | rpmcheck -explain -failures > $log_file")
or die "ERROR: failed to run rpmcheck\n";
- if (system("grep -q FAILED $log_file") == 0) {
- system("cat $log_file");
+ if (system('grep', '-q', 'FAILED', $log_file) == 0) {
+ system('cat', $log_file);
$::force or die "ERROR: some package dependencies are not satisfied\n";
print "NOTE: **** continuing due to --force option ****\n";
print "NOTE: **** this ISO is not suitable for final release ****\n";
@@ -602,7 +606,7 @@ sub run_urpm {
my $urpmi_root = '--urpmi-root ' . $build->get_chroot_dir;
- my $error = system("LC_ALL=C sudo $cmd $urpmi_root $parameters");
+ my $error = system("LC_ALL=C $sudo $cmd $urpmi_root $parameters");
$error == 0 || $o_not_fatal or die "ERROR: $cmd command failed\n";
$error;
}