LibraryOfCongress / bagit-python

Work with BagIt packages from Python.
http://libraryofcongress.github.io/bagit-python
216 stars 85 forks source link

Cannot make_bag when user does not own directory #136

Open gwiedeman opened 5 years ago

gwiedeman commented 5 years ago

Bagit-python currently assumes that a user owns the directory it is creating a bag in. We have a use case where a user needs to create a bag on an external share that it does not own without having to sudo. Runnign chmod on the data directory causes this to fail: https://github.com/LibraryOfCongress/bagit-python/blob/master/bagit.py#L239

This is requiring me to make a bag in a tmp directory before copying it to its final location, which I don't think should be necessary, but I'm not sure if there's other reasons for this.

acdha commented 5 years ago

This sounds like it's related to https://github.com/LibraryOfCongress/bagit-python/pull/92 — the code originally was written assuming bag-in-place semantics but it would definitely be useful to have the ability to create a bag in a different location, especially with the possibility of using something like https://www.pyfilesystem.org/ where the source or destination is in a different location.

nkrabben commented 5 years ago

I'm also running into this. In my case, I'm bagging material off of DVD-R's.

I have some time to put into this. Would it be easier to work on #92 or make a new branch/PR?

acdha commented 5 years ago

I'd take a look at #92 but if it's a significant amount of work to rebase that against master a new branch might be cleaner.