JackDallas / Premiumizearr

Bridge your *Arr clients (Sonarr, Radarr) to your premiumize.me (upload/download manager)
GNU General Public License v3.0
44 stars 8 forks source link

Add config editing to the UI [Feedback wanted] #39

Closed JackDallas closed 2 years ago

JackDallas commented 2 years ago

As highlighted here https://github.com/JackDallas/Premiumizearr/issues/38 being able to edit the config from the ui is a very desired feature. There are a few ways to go about it though, from a security perspective:

At the moment my plan is simply a second page with the properties currently in the config listed and editable. If anyone has any suggestions or features they want this is the thread to post them in.

As I said all suggestions and such relating to this are welcome and I'd like to know how people handle security and which of these options they'd prefer

Lloytron commented 2 years ago

First of all I just wanted to say thanks for this project, its really exactly what I've been looking for for quite a long time now!

One suggestion, is it possible to add download management? I have some downloads that have completed but for some reason the program keeps on trying to redownload them and I can't remove them. I've deleted them and even wiped my whole docker environment but can't get rid of the damn things :D

But a mechanism to cancel a download would be really helpful. On top of this more general download management would be really good, such as;

JackDallas commented 2 years ago

The download manager is super basic atm, it's defo something I wanna improve on, I added a downloads cap recently that helps but throttling and play/pause controls will defo be good to add, I've open this suggestion as another issue here https://github.com/JackDallas/Premiumizearr/issues/41 feel free to reply with any more suggestions :)

JackDallas commented 2 years ago

@Lloytron @rkershenbaum I've made an initial pre-release.

Note this does not have authentication at all so needs to be either lan or behind a reverse proxy, I may have broke something along the way but it's working with my setup atm. Open to all kinds of feedback but know I'm no web designer lol. I've re wrote the config implementation so now the app will start up without the config being filled in, still working on making it so these values all can change without a restart but for now all the file based ones and web server ones need a restart.

Pre-Release:

https://github.com/JackDallas/Premiumizearr/releases/tag/v1.2-rc1

Docker is also pre-released (not tested):

https://github.com/jackdallas/Premiumizearr/pkgs/container/premiumizearr

(just noticed it's tagged it latest as well ffs, my pre-release workflow needs some work)

Lloytron commented 2 years ago

I've updated using the docker image but I dont see any difference?

BTW when I restart it starts downloading previous items that have already downloaded and I have no way to stop them even though the blackhole directory is empty. Is there any way I can delete queued items manually?

[Edit] Ignore me, I must have had a cache issue of something, config tab is showing up now. Will test!

[Further edit] I can confirm that the changes made in the UI successfully save to the config.yaml and vice versa so thats looking good.

However the config.yaml needs to be in place before deploying the docker container. If it's not then Docker makes a folder called config.yaml and the program throws an error. If you put a blank .yaml file there it also doesn't start so it needs to be a valid file already in place.

I think one way around this is to create the config.yaml in a seperate folder and then map the folders in Docker rather than map the file specifically, as Docker on OSX doesn't seem to like that.

ie here is my docker compose volume section currently;

if the config.yaml file was located in a seperate folder called something like /opt/app/config/config.yaml then we could use;

JackDallas commented 2 years ago

BTW when I restart it starts downloading previous items that have already downloaded and I have no way to stop them even though the blackhole directory is empty. Is there any way I can delete queued items manually?

Sorry do you mean that under the Transfers or Downloads section,? Transfers is just what's happening on premiumize.me. Downloads automatically grabs any files in the arrDownloads folder on premiumize.me and then deletes the file from the cloud when it's complete so it's not re-downloaded

JackDallas commented 2 years ago

[Further edit] I can confirm that the changes made in the UI successfully save to the config.yaml and vice versa so thats looking good.

However the config.yaml needs to be in place before deploying the docker container. If it's not then Docker makes a folder called config.yaml and the program throws an error. If you put a blank .yaml file there it also doesn't start so it needs to be a valid file already in place.

@Lloytron Can you just not map the config at all now? Now it's all editable in the ui it can just act as a way to store not edit the config in docker. I'll change the README to match not doing that if it works.

Also fyi feel free to just reply back to the thread and not make big edits. that way it keeps a convo flow and I get notifications on gthub.

One config parameter is missing and I have a fix for a reverse proxy issue going up so I'll release that as an rc2 in a min

Lloytron commented 2 years ago

@JackDallas If I don't map the config file then the app doesn't start up and gives the following output in the logs;

time="2022-06-04T19:20:00Z" level=info msg="---------- Starting premiumizearr daemon ----------" time="2022-06-04T19:20:00Z" level=info time="2022-06-04T19:20:00Z" level=warning msg="No config file found, created default config file" time="2022-06-04T19:20:00Z" level=warning msg="Premiumizeme API key not set, application will not work until it's set" time="2022-06-04T19:20:00Z" level=info msg="Starting web server..." time="2022-06-04T19:20:00Z" level=info msg="Starting directory watcher..." time="2022-06-04T19:20:00Z" level=info msg="Web server started on :" time="2022-06-04T19:20:02Z" level=info msg="Clearing tmp directory..." time="2022-06-04T19:20:02Z" level=info msg="Creating Queue..." time="2022-06-04T19:20:02Z" level=info msg="Starting uploads processor..." time="2022-06-04T19:20:02Z" level=info msg="Starting initial directory scans..." time="2022-06-04T19:20:02Z" level=error msg="Error with initial directory scan open : no such file or directory"

And yes I was having downloads restarting, thanks for explaining! I cleared the Arr download folder and thats sorted now. Cheers!

JackDallas commented 2 years ago

Oh crap I know exactly what this is, I'd forgotten, there's a bug, the first time starting up the web server will fail, also I've realised I'm being dumb, we need to be able to mount the config directory to keep it working, I'll sort both those and release rc3 as soon as I can :+1:

JackDallas commented 2 years ago

@Lloytron That issue is fixed, I've also set the Dockerfile up to initialise the config with the correct container side directories as shown in the README.

https://github.com/JackDallas/Premiumizearr/releases/tag/v1.2-rc5 https://github.com/JackDallas/Premiumizearr/releases/tag/v1.2-rc6

Docker has uploaded, up to rc5 rc6 now but the latest tag is still being overwritten so you can just use that

Updated README here (let me know if I got anything wrong): https://github.com/JackDallas/Premiumizearr/tree/add-config-editing-ui#docker

Lloytron commented 2 years ago

@JackDallas Unfortunately something seems to have broken here and I can't get it to work at all now.

If I don't mount the data folder and just use the default then I get the following logs;

''' time="2022-06-05T16:53:06Z" level=info msg="---------- Starting premiumizearr daemon ----------" time="2022-06-05T16:53:06Z" level=info time="2022-06-05T16:53:06Z" level=warning msg="No config file found, created default config file" time="2022-06-05T16:53:06Z" level=info msg="Starting directory watcher..." time="2022-06-05T16:53:06Z" level=info msg="Starting web server..." time="2022-06-05T16:53:06Z" level=info msg="Web server started on 0.0.0.0:8182" time="2022-06-05T16:53:07Z" level=error msg="Error getting folders: error" time="2022-06-05T16:53:07Z" level=error msg="Cannot read folders from premiumize.me, application will not run!" time="2022-06-05T16:53:07Z" level=error msg="Error getting folders: error" time="2022-06-05T16:53:07Z" level=info msg="Clearing tmp directory..." time="2022-06-05T16:53:07Z" level=error msg="Cannot read folders from premiumize.me, application will not run!" time="2022-06-05T16:53:08Z" level=error msg="Error listing downloads folder: Could not decode folder id" time="2022-06-05T16:53:10Z" level=error msg="Error clearing tmp directory /" time="2022-06-05T16:53:10Z" level=info msg="Creating Queue..." time="2022-06-05T16:53:10Z" level=info msg="Starting uploads processor..." time="2022-06-05T16:53:10Z" level=info msg="Starting initial directory scans..." time="2022-06-05T16:53:10Z" level=error msg="Error with initial directory scan open /blackhole: no such file or directory" time="2022-06-05T16:53:23Z" level=error msg="Error listing downloads folder: Could not decode folder id" time="2022-06-05T16:53:38Z" level=error msg="Error listing downloads folder: Could not decode folder id" '''

If I do mount the data folder then the config.yaml file doesn't get created, although I do see log files appear!

JackDallas commented 2 years ago

Ohh the unzip directory apparently ending up as / will be deleting the config I bet 🤦‍♀️ I just wrote some code that will prevent that happening accidentally but that shouldn't happen in docker. I'm reworking the config so it's less tempremental rn, I'll see about sorting docker building locally as well so I can rest it better

JRDevo commented 2 years ago

At the moment my plan is simply a second page with the properties currently in the config listed and editable. If anyone has any suggestions or features they want this is the thread to post them in.

It would be nice to have a test button next to each connection to ensure its working :) Or some simple status indicator.

Lloytron commented 2 years ago

Nice one, look forward to trying it!

BTW I just remembered that the config page is missing the option to add your Premiumize.me API key

JackDallas commented 2 years ago

@JRDevo

It would be nice to have a test button next to each connection to ensure its working :) Or some simple status indicator.

@Lloytron

BTW I just remembered that the config page is missing the option to add your Premiumize.me API key

Both great points, I added testing the arr clients and fixed the premiumize api key field. At this point everything can be saved on the config page and the settings will update without a restart. Unless anyone finds a bug in the next day or so I'll likely release this as 1.2 :)

Here's the release (also on docker):

https://github.com/JackDallas/Premiumizearr/releases/tag/v1.2-rc8

Let me know how it goes :+1:

Lloytron commented 2 years ago

I'm still getting errors if I don't mount the Data folder, or if there's no config.yaml file present when I do, however if the file is present then it works again, thanks :D

This is the log when the file isn't present;

time="2022-06-05T22:55:00Z" level=info msg="---------- Starting premiumizearr daemon ----------" time="2022-06-05T22:55:00Z" level=info time="2022-06-05T22:55:00Z" level=warning msg="No config file found, created default config file" time="2022-06-05T22:55:00Z" level=info msg="Starting web server..." time="2022-06-05T22:55:00Z" level=info msg="Web server started on 0.0.0.0:8182" time="2022-06-05T22:55:00Z" level=info msg="Starting directory watcher..." time="2022-06-05T22:55:01Z" level=error msg="Error getting folders: error" time="2022-06-05T22:55:01Z" level=error msg="Cannot read folders from premiumize.me, application will not run!" time="2022-06-05T22:55:01Z" level=info msg="Clearing tmp directory..." panic: Unzip directory is set to system root don't do that it will wipe your system!

goroutine 1 [running]: github.com/jackdallas/premiumizearr/internal/service.(DirectoryWatcherService).Start(0x400016e2e8) /home/runner/work/Premiumizearr/Premiumizearr/internal/service/directory_watcher_service.go:71 +0x568 main.(App).Start(0x400016e1c0, {0x42be37, 0x4}, {0x400002801e, 0x5}, {0x400002804f, 0x5}) /home/runner/work/Premiumizearr/Premiumizearr/cmd/premiumizearrd/app.go:105 +0x914 main.main() /home/runner/work/Premiumizearr/Premiumizearr/cmd/premiumizearrd/main.go:22 +0x338 time="2022-06-05T22:55:04Z" level=info msg="---------- Starting premiumizearr daemon ----------"

The test button worked well, giving errors when incorrect info was put in and confirmation when it was correct.

Another issue I noticed (btW did you want us to raise these as seperate issues or just comment here?) is that when I restart the docker container everything in my mapped download volume gets deleted.

I had mapped

JackDallas commented 2 years ago

Another issue I noticed (btW did you want us to raise these as seperate issues or just comment here?) i Here is perfect :+1:

I think those two issues are the same thing happening, can you post your whole docker run/create command here please

Lloytron commented 2 years ago

I'm using Docker Compose (via Portainer) to manage things. This is what I use in my compose file;

premiumizearr: image: ghcr.io/jackdallas/premiumizearr:latest container_name: premiumizearr environment:

JRDevo commented 2 years ago

Ive made a new issue for you @Lloytron #45 , best to keep the topic to the thread name :)

Only noticed this later, hope its ok to make a new issue instead? :)

Another issue I noticed (btW did you want us to raise these as seperate issues or just comment here?) i Here is perfect 👍

I think those two issues are the same thing happening, can you post your whole docker run/create command here please

JackDallas commented 2 years ago

@JRDevo Best to keep any issues with the 1.2-rc release's here just for my sanity (lol) weird the changes I made in rc10 fixed this for me but maybe I missed something.

Gonna pinch your docker command and test against it later

sudo docker run -d --name=Premiumizearr -v /volumeUSB2/usbshare/config/premiumizearr/data:/data -e PUID=1033 -e PGID=100 -e TZ=Europe/Amsterdam -p 8182:8182 -v /volume1/Downloads:/downloads -v /volumeUSB2/usbshare/downloads/blackhole:/blackhole --restart unless-stopped ghcr.io/jackdallas/premiumizearr:latest

You mentioned Similarly with ghcr.io/jackdallas/premiumizearr:v1.2-rc10 can I just confirm you tried the above command with that version instead of latest

JRDevo commented 2 years ago

I tried:

sudo docker run -d --name=Premiumizearr -v /volumeUSB2/usbshare/config/premiumizearr/config.yaml:/opt/app/config.yaml -v /volumeUSB2/usbshare/config/premiumizearr/data:/data -e PUID=1033 -e PGID=100 -e TZ=Europe/Amsterdam -p 8182:8182 -v /volume1/Downloads:/downloads -v /volumeUSB2/usbshare/downloads/blackhole:/blackhole ghcr.io/jackdallas/premiumizearr:v1.2-rc10

and

sudo docker run -d --name=Premiumizearr -v /volumeUSB2/usbshare/config/premiumizearr/data:/data -e PUID=1033 -e PGID=100 -e TZ=Europe/Amsterdam -p 8182:8182 -v /volume1/Downloads:/downloads -v /volumeUSB2/usbshare/downloads/blackhole:/blackhole --restart unless-stopped ghcr.io/jackdallas/premiumizearr:v1.2-rc10

only difference is mapping the config.yaml

-v /volumeUSB2/usbshare/config/premiumizearr/config.yaml:/opt/app/config.yaml

In both cases the same error, but when mapping the yaml i noticed it gets set to default (cleared out) on each restart.

Lloytron commented 2 years ago

If I understand correctly the config,yaml file location in the container isn't /opt/app any more but is in the data folder?

JackDallas commented 2 years ago

If I understand correctly the config,yaml file location in the container isn't /opt/app any more but is in the data folder? That's correct

@JRDevo I wouldn't expect the first docker command that maps to /opt/app/config.yaml to work any more because of these changes

The second command looks to me like it should work, are you getting the same panic: Unzip directory is set to system root don't do that it will wipe your system! error ?

JackDallas commented 2 years ago

@Lloytron

I'm using Docker Compose (via Portainer) to manage things. This is what I use in my compose file;

premiumizearr: image: ghcr.io/jackdallas/premiumizearr:latest container_name: premiumizearr environment: - PUID=1000 - PGID=1000 - TZ=Europe/London volumes: - /home/pi/Media/Downloads:/downloads - /home/pi/Media/config/premiumizearr:/data network_mode: host restart: unless-stopped

This should work with the latest rc10 I think.

JackDallas commented 2 years ago

I've realised the issue with the config not appearing, until you make a change in the ui and click save nothing is wrote to disk, I have this replicated in docker but weirdly not on bare metal so I'm working on debugging in docker now

JRDevo commented 2 years ago

If I understand correctly the config,yaml file location in the container isn't /opt/app any more but is in the data folder?

@JRDevo I wouldn't expect the first docker command that maps to /opt/app/config.yaml to work any more because of these changes

Weirdly yes, but this time Ive emptied the data folder and seems to be working with:

sudo docker run -d --name=Premiumizearr -v /volumeUSB2/usbshare/config/premiumizearr/data:/data -e PUID=1033 -e PGID=100 -e TZ=Europe/Amsterdam -p 8182:8182 -v /volume1/Downloads:/downloads -v /volumeUSB2/usbshare/downloads/blackhole:/blackhole --restart unless-stopped ghcr.io/jackdallas/premiumizearr:v1.2-rc10

It looks like the new fixes are working then!

The new config window looking good :)

Lloytron commented 2 years ago

@Lloytron

I'm using Docker Compose (via Portainer) to manage things. This is what I use in my compose file; premiumizearr: image: ghcr.io/jackdallas/premiumizearr:latest container_name: premiumizearr environment: - PUID=1000 - PGID=1000 - TZ=Europe/London volumes: - /home/pi/Media/Downloads:/downloads - /home/pi/Media/config/premiumizearr:/data network_mode: host restart: unless-stopped

This should work with the latest rc10 I think.

I just tried rc10 and its the same, seems to give the same error now regardless of how the data folder is mapped!

JRDevo commented 2 years ago

@Lloytron

I'm using Docker Compose (via Portainer) to manage things. This is what I use in my compose file; premiumizearr: image: ghcr.io/jackdallas/premiumizearr:latest container_name: premiumizearr environment: - PUID=1000 - PGID=1000 - TZ=Europe/London volumes: - /home/pi/Media/Downloads:/downloads - /home/pi/Media/config/premiumizearr:/data network_mode: host restart: unless-stopped

This should work with the latest rc10 I think.

I just tried rc10 and its the same, seems to give the same error now regardless of how the data folder is mapped!

Yeah with @Lloytron again here.

It worked once for me, then i deleted the container, image and cleared the folder and ran it again:

sudo docker run -d --name=Premiumizearr -v /volumeUSB2/usbshare/config/premiumizearr/data:/data -e PUID=1033 -e PGID=100 -e TZ=Europe/Amsterdam -p 8182:8182 -v /volume1/Downloads:/downloads -v /volumeUSB2/usbshare/downloads/blackhole:/blackhole --restart unless-stopped ghcr.io/jackdallas/premiumizearr:v1.2-rc10

Unable to find image 'ghcr.io/jackdallas/premiumizearr:v1.2-rc10' locally
v1.2-rc10: Pulling from jackdallas/premiumizearr
125a6e411906: Pull complete
625f7960341a: Pull complete
ff484277ac4b: Pull complete
497801505c02: Pull complete
eb2e5016aded: Pull complete
5dff818df92d: Pull complete
e8976f4bdfe7: Pull complete
d02dbd399c86: Pull complete
523ca4f6f854: Pull complete
Digest: sha256:5d8afec73ef400666b53f10a518e1aaf420c5a6ff4a5300e0c3044176f76c6fa
Status: Downloaded newer image for ghcr.io/jackdallas/premiumizearr:v1.2-rc10
0c0b6f128bd2e2c69ba77c40a485ba7f727a2b33f36c7adbf9032b894ffca848

Error:

time="2022-06-06T12:57:22Z" level=info msg="---------- Starting premiumizearr daemon ----------"
time="2022-06-06T12:57:22Z" level=info
time="2022-06-06T12:57:22Z" level=warning msg="No config file found, created default config file"
time="2022-06-06T12:57:22Z" level=info msg="Starting web server..."
time="2022-06-06T12:57:22Z" level=info msg="Web server started on 0.0.0.0:8182"
time="2022-06-06T12:57:22Z" level=info msg="Starting directory watcher..."
time="2022-06-06T12:57:22Z" level=error msg="Error getting folders: error"
time="2022-06-06T12:57:22Z" level=error msg="Cannot read folders from premiumize.me, application will not run!"
time="2022-06-06T12:57:22Z" level=info msg="Clearing tmp directory..."
panic: Unzip directory is set to system root don't do that it will wipe your system!
goroutine 1 [running]:
github.com/jackdallas/premiumizearr/internal/service.(*DirectoryWatcherService).Start(0xc0000c02e8)
    /home/runner/work/Premiumizearr/Premiumizearr/internal/service/directory_watcher_service.go:71 +0x574
main.(*App).Start(0xc0000c01c0, {0x8327ce, 0xc00001ef80}, {0xc00002601e, 0x5}, {0xc00002604f, 0x5})
    /home/runner/work/Premiumizearr/Premiumizearr/cmd/premiumizearrd/app.go:105 +0xa46
main.main()
    /home/runner/work/Premiumizearr/Premiumizearr/cmd/premiumizearrd/main.go:22 +0x235
JackDallas commented 2 years ago

Okay I think I got it !

rc-11 out now on docker. this works for me if y'all could add -e PREMIUMIZEARR_LOG_LEVEL=trace to your command if you still get errors and reply back with the log, or just let me know it works I'd appreciate it

dallas@cartman:~$ sudo rm -r test/data/*
[sudo] password for dallas:
dallas@cartman:~$ docker run -v /home/dallas/test/data:/data -v /home/dallas/test/blackhole:/blackhole -v /home/dallas/test/downloads:/downloads -p 8182:8182 -e PREMIUMIZEARR_LOG_LEVEL=trace ghcr.io/jackdallas/premiumizearr:v1.2-rc11
Unable to find image 'ghcr.io/jackdallas/premiumizearr:v1.2-rc11' locally
v1.2-rc11: Pulling from jackdallas/premiumizearr
125a6e411906: Already exists
22f185bc5a16: Pull complete
6796777e0bba: Pull complete
55047dd12baa: Pull complete
c0d03191bb5b: Pull complete
4632378dd890: Pull complete
11bb6ff33f65: Pull complete
e09e2ffab0f0: Pull complete
c3c20f846b9a: Pull complete
Digest: sha256:93a0397f6c5b4f5a18760013b19dcbd45c5d1ea6e500c164e2c7c0929ae06ba4
Status: Downloaded newer image for ghcr.io/jackdallas/premiumizearr:v1.2-rc11
time="2022-06-06T15:08:44Z" level=info msg="---------- Starting premiumizearr daemon ----------"
time="2022-06-06T15:08:44Z" level=info
time="2022-06-06T15:08:44Z" level=trace msg="Running load or create config"
time="2022-06-06T15:08:44Z" level=trace msg="Reading config file location from flag or env: /data"
time="2022-06-06T15:08:44Z" level=trace msg="Trying to load config from disk"
time="2022-06-06T15:08:44Z" level=trace msg="Reading config from /data/config.yaml"
time="2022-06-06T15:08:44Z" level=trace msg="Failed to find config file"
time="2022-06-06T15:08:44Z" level=warning msg="No config file found, created default config file"
time="2022-06-06T15:08:44Z" level=info msg="Running in docker, overriding unzip directory!"
time="2022-06-06T15:08:44Z" level=trace msg="Running in docker, overriding blank directory settings for blackhole directory"
time="2022-06-06T15:08:44Z" level=trace msg="Running in docker, overriding blank directory settings for downloads directory"
time="2022-06-06T15:08:44Z" level=trace msg="Setting config location to /data"
time="2022-06-06T15:08:44Z" level=trace msg="Marshaling & saving config"
time="2022-06-06T15:08:44Z" level=trace msg="Writing config to /data/config.yaml"
time="2022-06-06T15:08:44Z" level=trace msg="Config saved"
time="2022-06-06T15:08:44Z" level=info msg="Cleaning unzip directory"
time="2022-06-06T15:08:44Z" level=trace msg="Unzip directory set to: /unzip"
time="2022-06-06T15:08:44Z" level=info msg="Starting web server..."
time="2022-06-06T15:08:44Z" level=info msg="Web server started on 0.0.0.0:8182"
time="2022-06-06T15:08:44Z" level=info msg="Starting directory watcher..."
time="2022-06-06T15:08:44Z" level=trace msg="Getting folder list from premiumize.me"
time="2022-06-06T15:08:44Z" level=error msg="Error getting folders: error"
time="2022-06-06T15:08:44Z" level=error msg="Cannot read folders from premiumize.me, application will not run!"
time="2022-06-06T15:08:44Z" level=info msg="Creating Queue..."
time="2022-06-06T15:08:44Z" level=info msg="Starting uploads processor..."
time="2022-06-06T15:08:44Z" level=info msg="Running initial directory scan..."
time="2022-06-06T15:08:44Z" level=trace msg="Getting folder list from premiumize.me"
time="2022-06-06T15:08:44Z" level=trace msg="No files in Queue, sleeping for 10 seconds"
time="2022-06-06T15:08:44Z" level=trace msg="Initial directory scan"
time="2022-06-06T15:08:44Z" level=error msg="Error getting folders: error"
time="2022-06-06T15:08:44Z" level=error msg="Cannot read folders from premiumize.me, application will not run!"
time="2022-06-06T15:08:44Z" level=debug msg="Running Task UpdateTransfersList"
time="2022-06-06T15:08:44Z" level=trace msg="Getting transfers list from premiumize.me"
time="2022-06-06T15:08:45Z" level=trace msg="Received 0 transfers"
time="2022-06-06T15:08:45Z" level=debug msg="Running Task CheckPremiumizeDownloadsFolder"
time="2022-06-06T15:08:45Z" level=trace msg="Reading response"
time="2022-06-06T15:08:45Z" level=error msg="Error listing downloads folder: Could not decode folder id"
^Cdallas@cartman:~$ ls test/data/
config.yaml  premiumizearr.error.log  premiumizearr.general.log  premiumizearr.info.log
dallas@cartman:~$ cat test/data/config.yaml
PremiumizemeAPIKey: xxxxxxxxx
Arrs:
- Name: Sonarr
  URL: http://localhost:8989
  APIKey: xxxxxxxxx
  Type: Sonarr
- Name: Radarr
  URL: http://localhost:7878
  APIKey: xxxxxxxxx
  Type: Radarr
BlackholeDirectory: /blackhole
DownloadsDirectory: /downloads
UnzipDirectory: /unzip
bindIP: 0.0.0.0
bindPort: "8182"
WebRoot: ""
SimultaneousDownloads: 5
JackDallas commented 2 years ago

Just re-build my main setup config (dpkg) and can confirm it works fully via that install method as well as simply running the binary

Lloytron commented 2 years ago

I just updated the docker container and it looks good. UI appears and config.yaml file was created on my remote drive with default values.

Mapped the values I needed and it detected the folders, files in the blackhole dir showed up immediately and started straight away. Looks good so far!

JRDevo commented 2 years ago

Working like a charm thanks @JackDallas!

JackDallas commented 2 years ago

Working like a charm thanks @JackDallas!

Excellent news, once @Lloytron confirms their setup also works I'll merge this, tag 1.2 and start looking at refactoring the downloads manager and fixing docker overriding latest with rc's 🙄

JRDevo commented 2 years ago

Not sure if this is concerning?

time="2022-06-06T16:43:57Z" level=error msg="Error listing downloads folder: Could not decode folder id"
time="2022-06-06T16:44:12Z" level=error msg="Error listing downloads folder: Could not decode folder id"
time="2022-06-06T16:44:27Z" level=error msg="Error listing downloads folder: Could not decode folder id"
time="2022-06-06T16:44:42Z" level=error msg="Error listing downloads folder: Could not decode folder id"
time="2022-06-06T16:44:57Z" level=error msg="Error listing downloads folder: Could not decode folder id"
time="2022-06-06T16:45:13Z" level=error msg="Error listing downloads folder: Could not decode folder id"
time="2022-06-06T16:45:28Z" level=error msg="Error listing downloads folder: Could not decode folder id"
time="2022-06-06T16:45:43Z" level=error msg="Error listing downloads folder: Could not decode folder id"
time="2022-06-06T16:45:58Z" level=error msg="Error listing downloads folder: Could not decode folder id"
JackDallas commented 2 years ago

Err is your premiumize.me api key set and saved ? That's what normally causes that error, I may add a handler for that particular one to make it more clear what's happening

JRDevo commented 2 years ago

yeah, if I reload the config page then all the settings remain... same if I restart the container

JRDevo commented 2 years ago

think deleting the folder in premiumize.me resolved this

Edited:

Yup, working :)

JackDallas commented 2 years ago

Now that's odd ... I'm gonna ignore that for the moment if other people report it as an issue I'll have a look at handling it better. I will look at making that error message more clear before the 1.2 release though

JackDallas commented 2 years ago

I've merged in the changes and am tagging v1.2 now. Thanks for all the help @Lloytron & @JRDevo you've made this a lot quicker. I'm gonna get the pre-releases not overriding the docker latest tag next then I'll start work on the downloads manager changes https://github.com/JackDallas/Premiumizearr/issues/41