From df55c40c5806b754c3ca717a3d79a853c2c9982c Mon Sep 17 00:00:00 2001 From: Pascal Rigaux Date: Thu, 14 Feb 2008 10:47:50 +0000 Subject: - urpmi handles /etc/urpmi/media.d/*.cfg as an alternative to using urpmi.addmedia nb: need documentation --- t/helper.pm | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) (limited to 't/helper.pm') diff --git a/t/helper.pm b/t/helper.pm index 870baa2b..edf787d3 100644 --- a/t/helper.pm +++ b/t/helper.pm @@ -7,6 +7,7 @@ our @EXPORT = qw(need_root_and_prepare urpmi_addmedia urpmi_removemedia urpmi_update urpm_cmd run_urpm_cmd urpmi_cmd urpmi test_urpmi_fail urpme urpmi_cfg set_urpmi_cfg_global_options + create_media_d_cfg media_d_cfg system_ system_should_fail rpm_is_jbj_version check_installed_fullnames check_installed_names check_nothing_installed @@ -101,6 +102,31 @@ sub set_urpmi_cfg_global_options { ok(urpm::cfg::dump_config(urpmi_cfg(), $config), 'set_urpmi_cfg_global_options'); } +sub media_d_dir { + "$::pwd/root/etc/urpmi/media.d"; +} +sub media_d_cfg { + my ($name) = @_; + media_d_dir() . "/$name.cfg"; +} +sub create_media_d_cfg { + my ($name, @l) = @_; + + system("install -d " . media_d_dir()); + my $cfg = media_d_cfg($name); + -e $cfg and die "$cfg already exists\n"; + open(my $F, '>', $cfg); + + my $cnt = 1; + foreach my $h (@l) { + my %h = %$h; + my $section = delete $h{conf_file__rel_media} || $cnt++; + print $F "[$section]\n"; + print $F "$_ = $h->{$_}\n" foreach keys %$h; + } +} + + sub system_ { my ($cmd) = @_; system($cmd); -- cgit v1.2.1