livecd-tools/livecd-tools-21.1.exception.on.urpmi.fail.patch
2015-03-02 21:16:21 +03:00

43 lines
3.2 KiB
Diff

diff --git a/imgcreate/creator.py b/imgcreate/creator.py
index 20b7fae..fcb9037 100644
--- a/imgcreate/creator.py
+++ b/imgcreate/creator.py
@@ -577,19 +577,26 @@ class ImageCreator(object):
urpmi_conf = self.__builddir + "/urpmi_conf"
print urpmi_conf
time.sleep(5)
- for repo in kickstart.get_repos(self.ks, repo_urls):
- (name, baseurl, mirrorlist, proxy, inc, exc, cost, sslverify) = repo
- subprocess.call(["/usr/sbin/urpmi.addmedia", "--urpmi-root", urpmi_conf, name, baseurl])
- packages = self.ks.handler.packages.packageList
- if "basesystem" in packages:
- print "Basesystem should be installed first"
- if "kernel-nrj-desktop-latest" in packages:
- subprocess.call(["/usr/sbin/urpmi", "--auto", "--split-length", "0", "--fastunsafe", "--nolock", "--ignorearch", "--no-verify-rpm", "--no-suggests", "--urpmi-root", urpmi_conf, "--root", self._instroot] + ['basesystem', 'kernel-nrj-desktop-latest'])
- else:
- subprocess.call(["/usr/sbin/urpmi", "--auto", "--split-length", "0", "--fastunsafe", "--nolock", "--ignorearch", "--no-verify-rpm", "--no-suggests", "--urpmi-root", urpmi_conf, "--root", self._instroot] + ['basesystem'])
+ try:
+ for repo in kickstart.get_repos(self.ks, repo_urls):
+ (name, baseurl, mirrorlist, proxy, inc, exc, cost, sslverify) = repo
+ subprocess.check_call(["/usr/sbin/urpmi.addmedia", "--urpmi-root", urpmi_conf, name, baseurl])
+ except subprocess.CalledProcessError, err:
+ raise CreatorError("Failed to add repository \"%s\" (%s), error code %d" % (name, baseurl, err.returncode))
- print "Now let's install all other packages"
- subprocess.call(["/usr/sbin/urpmi", "--auto", "--no-suggests", "--fastunsafe", "--debug", "--no-verify", "--urpmi-root", urpmi_conf, "--root", self._instroot] + packages)
+ packages = self.ks.handler.packages.packageList
+ try:
+ if "basesystem" in packages:
+ print "Basesystem should be installed first"
+ if "kernel-nrj-desktop-latest" in packages:
+ subprocess.check_call(["/usr/sbin/urpmi", "--auto", "--split-length", "0", "--fastunsafe", "--nolock", "--ignorearch", "--no-verify-rpm", "--no-suggests", "--urpmi-root", urpmi_conf, "--root", self._instroot] + ['basesystem', 'kernel-nrj-desktop-latest'])
+ else:
+ subprocess.check_call(["/usr/sbin/urpmi", "--auto", "--split-length", "0", "--fastunsafe", "--nolock", "--ignorearch", "--no-verify-rpm", "--no-suggests", "--urpmi-root", urpmi_conf, "--root", self._instroot] + ['basesystem'])
+
+ print "Now let's install all other packages"
+ subprocess.check_call(["/usr/sbin/urpmi", "--auto", "--no-suggests", "--fastunsafe", "--debug", "--no-verify", "--urpmi-root", urpmi_conf, "--root", self._instroot] + packages)
+ except subprocess.CalledProcessError, err:
+ raise CreatorError("Package installation failed, error code %d" % err.returncode)
def _run_post_scripts(self):
for s in kickstart.get_post_scripts(self.ks):