bobarr
bobarr copied to clipboard
Library scan and Move option doesn't work
I installed bobarr with an existing library which is mounted as a nfs drive in /mnt/nfs. Inside the nfs drive I have 2 folders Movies and Series The NFS server has the client (Bobarr server's IP) added with read and write permission. I have changed the docker-compose.yml to reflect this nfs server:
volumes:
- /mnt/nfs:/usr/library
The mount options can be found below:
192.168.88.3:/Movies/Downloads on /mnt/nfs type nfs4 (rw,nosuid,noatime,vers=4.0,rsize=32768,wsize=32768,namlen=255,soft,proto=tcp,timeo=600,retrans=2,sec=sys,clientaddr=192.168.88.33,local_lock=none,addr=192.168.88.3)
Also you can see that the folders have full permission:
ls -lah /mnt/nfs/
total 44K
drwxrwxrwx 7 99 users 4.0K Apr 23 2019 .
drwxr-xr-x 1 root root 6 Dec 13 21:43 ..
drwxrwxrwx 20 99 users 20K Dec 13 22:50 Movies
drwxrwxrwx 8 99 users 4.0K Oct 13 02:03 Series
-
When I do a scan library, nothing came as a result. I think the aim is that the scan library process should start inside MY library as defined in the docker-compose.yml file (/mnt/nfs in this case). But it seems it scans the default library (library/movies), so I think it doesn't take the variable into consideration. I downloaded one movie and now this new movie appears in the Library when I do a new scan. But when I click on the newly downloaded movie, it says the path is "path:library/movies/", meaning I'm right. Can you please confirm?
-
I've change the setting so the downloads will be move to my library (/mnt/nfs in this case). This works, but the download is not removed from the initial download path (library/movies/), so now I end up with 2 movies in 2 different folders, library/movies and my nfs /mnt/nfs/Movies.
Conclusions:
- I think you don't take the docker-compose.yml volume variables into account for the api service
- The same, I think you don't take into account this variable that sets the action to move not copy/link. The logs says (2020-12-13 23:39:00.083 [info] RenameAndLinkProcessor - start rename and link movie - {"movieId":3}), even though the setting is set on Move.
The .env file content is the following:
ENV=production
TZ=Europe/Bucharest
UMASK_SET=0002
# set to your own user id and group
# this is required for filesytem management
# use: `$ id $(whoami)` in terminal to find out
# (defaults are usually already fine on macOS)
PUID=0
PGID=0
POSTGRES_DB=bobarr
POSTGRES_USER=bobarr
POSTGRES_PASSWORD=bobarr
REDIS_PASSWORD=bobarr
JACKETT_AUTOMATIC_SEARCH_TIMEOUT=120000
JACKETT_MANUAL_SEARCH_TIMEOUT=15000
LIBRARY_MOVIES_FOLDER_NAME=Movies
LIBRARY_TV_SHOWS_FOLDER_NAME=Series
DEBUG_REDIS=false
# see https://github.com/iam4x/bobarr/issues/128
# WEB_UI_API_URL=http://yourdomain.com/api
Hi @darkmac78 I've updated the logs so they will output the correct strategy used for:
- organizing files
- and which folder are set for your library
I suspect it's more an issue with linking an NTFS storage volume than anything else but I have no clues, I would have to reproduce the case on my side.
When you say:
so now I end up with 2 movies in 2 different folders, library/movies and my nfs /mnt/nfs/Movies.
To which library/movies
folder are you referencing? Could you give me the fullpath?
Can you pull the latest changes and try again, I've updated the scan library code which should fix some cases or deliver more logs in the jobs UI on which movie or tv show folder is the scan library is failing.
see https://github.com/iam4x/bobarr/pull/167
I think I've hit the same issue as OP. I am running bobarr inside docker for windows that is setup with WS2. I'm afraid that is about as much as I can say about the windows side as I am not a normally a windows guy.
I added the following mount in docker compose: /mnt/d/media:/usr/library
. /mnt/d/media
is accessible from both WSL and Windows.
in the rename_and_link
job the handle_movie
message fails with
Error: Command failed: cd "/usr/library/movies/El Topo (1970)" && mv "../../downloads/complete/El Topo 1970 720p SPA-ENG Multisub.mkv" "El Topo (1970) 720p.mk
v"
mv: can't rename '../../downloads/complete/El Topo 1970 720p SPA-ENG Multisub.mkv': No such file or directory
at ChildProcess.exithandler (child_process.js:308:12)
at ChildProcess.emit (events.js:315:20)
at maybeClose (internal/child_process.js:1048:16)
at Socket.<anonymous> (internal/child_process.js:439:11)
at Socket.emit (events.js:315:20)
at Pipe.<anonymous> (net.js:673:12)
If I enter the running bobber-api
container /usr/library
is the /mnt/d/media
folder on the host and has all the expected files in it so I don't think it's a Windows/Docker mounting issue. But ../../downloads
doesn't exist (as the error correctly reports).
So I fixed the issue I was having by changing this line
https://github.com/iam4x/bobarr/blob/9e339234e435638e0d285da4fb6bec0017c8dcd6/docker-compose.yml#L77
...to /mnt/d/media/downloads:/downloads
For anyone else hitting this issue you're going to have to supply your own paths.