Patch:
--- old/src/modules/server/repository.py Mon Aug 29 18:21:31 2011
+++ new/src/modules/server/repository.py Mon Aug 29 18:21:31 2011
@@ -1610,7 +1610,7 @@
for f in packages):
rmdir(os.path.join(self.manifest_root, name))
- if self.file_root:
+ if self.file_root and os.path.isdir(self.file_root):
for entry in os.listdir(self.file_root):
rmdir(os.path.join(self.file_root,
entry))
--- old/src/tests/cli/t_pkgrepo.py Mon Aug 29 18:21:31 2011
+++ new/src/tests/cli/t_pkgrepo.py Mon Aug 29 18:21:31 2011
@@ -1201,9 +1201,20 @@
# Create a repository and then copy it somewhere for testing
# to make it easy to restore the original as needed.
src_repo = os.path.join(self.test_root, "remove-repo")
+
self.create_repo(src_repo)
+ self.pkgrepo("set -s %s publisher/prefix=test" % src_repo)
+ # Test that removing a package when no files have been
published
+ # works (bug 18424).
+ published = self.pkgsend_bulk(src_repo, self.zoo10)
+ self.pkgrepo("remove -s %s zoo" % src_repo)
+
+ # Reset the src_repo for the rest of the test.
+ shutil.rmtree(src_repo)
+ self.create_repo(src_repo)
self.pkgrepo("set -s %s publisher/prefix=test" % src_repo)
+
published = self.pkgsend_bulk(src_repo, (self.tree10,
self.amber10, self.amber20, self.truck10, self.truck20,
self.zoo10))
@@ -1211,6 +1222,7 @@
published += self.pkgsend_bulk(src_repo, (self.tree10,
self.zoo10))
+ # Restore repository for next test.
dest_repo = os.path.join(self.test_root, "test-repo")
shutil.copytree(src_repo, dest_repo)
Bug:
18424 pkgrepo remove stacktrace when there are no files in the repo
I've included the change here since there's only 1 real line of code change.
Brock
_______________________________________________
pkg-discuss mailing list
[email protected]
http://mail.opensolaris.org/mailman/listinfo/pkg-discuss