Unable to configure storage in Apps edit screen

NahsiN

Dabbler
Joined
Jul 21, 2015
Messages
20
Hello, after upgrading my images, I noticed that for some of my apps (radarr, sonarr, jellyfin, deluge and sabnzbd), I am unable to edit (add or update) Host paths under Additional Storage. The Type box appears grayed out after I click on Add whereas I was expecting a dropdown. This was working previously. Moreover I am unable to see the existing host paths in the UI but I've confirmed that they are correctly mounted by dropping into the shell. Please see attached screenshots. For. e.g for Jellyfin, I'm running 10.8.11_1.1.1.

Unable to add a new path
Screenshot from 2023-10-29 17-39-27.png



Existing working host path but it is not shown in UI
Screenshot from 2023-10-29 18-21-40.png
 
Last edited:

LarsR

Guru
Joined
Oct 23, 2020
Messages
719
Well it's literally written in the field: when choosing ixvolume, truenas will create a path znder ix-applications, which cannot ne Changed. Only when choosing hostpath you're able to choose an existing path or create a new one.
 

NahsiN

Dabbler
Joined
Jul 21, 2015
Messages
20
Well it's literally written in the field: when choosing ixvolume, truenas will create a path znder ix-applications, which cannot ne Changed. Only when choosing hostpath you're able to choose an existing path or create a new one.
Thanks for your response. Previous to me upgrading those apps, I was indeed presented with that choice so I think I know what you're talking about. However post upgrade, I am saying that I am unable to choose between a) path under ix-application and b) hostpath.
 

PhilD13

Patron
Joined
Sep 18, 2020
Messages
203
Same issue. I am unable to choose between a) path under ix-application and b) hostpath. under Config Storage/Additional Storage
Under Advanced Settings for Apps the Enable host path safety checks is unchecked and all had been working just fine
I noticed this after the latest Bluefin update to TrueNAS-SCALE-22.12.4.2.
 

Pyrot_LW87

Cadet
Joined
Nov 29, 2023
Messages
3
This should be fixed in Scale 23.10.1 (not to be confused with current version 23.10.0.1), which has an expected release date of December 19th. So if we want to add additional storage for a particular app, we either need to wait for this bug to be fixed or do a full re-install of the app and add the addional storage during the initial install.

Just wondering whether there is a third option : editing the app settings via a different method. Perhaps through the SACLE CLI of by editing some conf/yaml/... file that contains the settings for the app in question. Does anyone know how to do this? What's the command (scale cli or linux shell)? Where does TrueNAS Scale store the "setings" for an app?

In my case: I need to add an additional storage for Radarr (mounted the media path, but forgot to add the download client's path).
When I run the below command in the linux shell :
k3s kubectl -n ix-radarr describe deploy radarr
I get to see the following:
Mounts:
/mnt/directories/config from config (rw)
/mnt/directories/media from radarr-0 (rw)
and furhter down:
Volumes:
config:
Type: HostPath (bare host directory volume)
Path: /mnt/apps_pool/ix-applications/releases/radarr/volumes/ix_volumes/config
HostPathType:
radarr-0:
Type: HostPath (bare host directory volume)
Path: /mnt/data_pool/media
HostPathType:
tmp:
Type: EmptyDir (a temporary directory that shares a pod's lifetime)
Medium:
SizeLimit: <unset>
Where or how would I be able to add a another 'HostPath'?

PS: In case you haven't noticed yet, I'm not very familiar with how containers work. So if this is a stupid question, apologies. And yes, I know that I could just re-install the Radarr app and re-configure it from scratch, but I would like to prevent having to re-configure it.
 

macnugget

Dabbler
Joined
Sep 10, 2019
Messages
15
Where or how would I be able to add a another 'HostPath'?

I tried and failed. Posting my progress here in case it's helpful to others...

On a lark I tried the "Kubernetes" way of doing this. I don't use Radarr, but I have a Jellyfin app installed that's in the same situation. I used this command:

Code:
k3s kubectl edit deployment jellyfin --namespace ix-jellyfin


This edits the Kubernetes deployment configuration YAML (default editor is vim, so caveat editor if you don't know how to use vim)

From there it's a simple matter of adding another volume.hostPath something like this. jellyfin-0 was already there, I added jellyfin-1.

Code:
      - hostPath:
          path: /mnt/rust/Apps/Jellyfin/movies
          type: ""
        name: jellyfin-0
      - hostPath:
          path: /mnt/rust/Apps/Jellyfin/tvshows
          type: ""
        name: jellyfin-1


That seemed to work as far as the container is concerned, but I think there's more that needs doing since I can't see the tvshows mount when I'm actually in the Jellyfin app. I haven't tried anything beyond this.
 

Pyrot_LW87

Cadet
Joined
Nov 29, 2023
Messages
3
@macnugget Thanks for your input. I guess we'll just have to wait for the update.

Just to make sure: you added the 'mount' path as well? As you did not specify this in your post.
And I assume that you're OK permissions wise?
 

macnugget

Dabbler
Joined
Sep 10, 2019
Messages
15
Just to make sure: you added the 'mount' path as well? As you did not specify this in your post.
Thanks so much for mentioning this because I totally missed that. Added the mount path and it's working exactly as hoped.
 

rafpigna

Dabbler
Joined
Dec 6, 2023
Messages
12
I have to do this. Please could you post the right changes with the mountpath too? I'm a newbie at this, but I can't wait Decembre 19th for the new version to come out... thanks!
 

rafpigna

Dabbler
Joined
Dec 6, 2023
Messages
12
I tried and found the way but I'm not sure I'm doing it properly.
When I launch the command
Code:
k3s kubectl edit deployment radarr --namespace ix-radarr

it opens VIM, and I never used it but I found a tutorial on how to change a file.

My doubts are that, lookin on the lowest part of the scree, it says that the file that I'm editing is something "temp" like
Code:
/tmp/kubectl-edit-668212471.yaml

is this ok, and the file will be the right one when I will save and exit vim ?
 

macnugget

Dabbler
Joined
Sep 10, 2019
Messages
15
I have to do this. Please could you post the right changes with the mountpath too? I'm a newbie at this, but I can't wait Decembre 19th for the new version to come out... thanks!
Here's what my working k3s YAML config looks like (trimmed to just the relevant parts). The key that @Pyrot_LW87 caught is that there are two different sections in the YAML that need to be configured and I'd only added one of the two necessary sections. YAML is a human-readable format for data files where white space and indentation are meaningful. Make sure if you're adding a section or lines that you precisely indent them with the same number of spaces as the other lines at the same "level" in the file.

There should be a volumeMounts section that's nested a few levels deep. This establishes the mount points from the perspective inside the container. As the App is running, mounted filesystems will be presented at the absolute file path defined here. From jellyfin, mine looks like this:

Code:
        volumeMounts:
        - mountPath: /cache
          name: cache
        - mountPath: /config
          name: config
        - mountPath: /library/movies
          name: jellyfin-0
        - mountPath: /tmp
          name: tmp
        - mountPath: /config/transcodes
          name: transcode
        - mountPath: /library/youtube
          name: jellyfin-1


I added the "jellyfin-1" named mountPath above, which looks like it's a truenas/truecharts naming convention.

Then a bit lower in the YAML config is a corresponding volumes section that looks like something this:

Code:
      volumes:
      - hostPath:
          path: /mnt/tank/path/on/truenas/to/files/cache
          type: ""
        name: cache
      - hostPath:
          path: /mnt/tank/path/on/truenas/to/files/config
          type: ""
        name: config
      - hostPath:
          path: /mnt/tank/path/on/truenas/to/movies
          type: ""
        name: jellyfin-0
      - hostPath:
          path: /mnt/tank/path/on/truenas/to/youtube
          type: ""
        name: jellyfin-1


Initially I'd just added to the volumes block, but not the volumeMounts block, which isn't enough. Once I got both sections updated it all worked fine.

As soon as you save/exit the editor it will restart your App container with the changes you've made.
 

beernose

Cadet
Joined
Dec 22, 2023
Messages
2
This should be fixed in Scale 23.10.1 (not to be confused with current version 23.10.0.1), which has an expected release date of December 19th. So if we want to add additional storage for a particular app, we either need to wait for this bug to be fixed or do a full re-install of the app and add the addional storage during the initial install.

Just wondering whether there is a third option : editing the app settings via a different method. Perhaps through the SACLE CLI of by editing some conf/yaml/... file that contains the settings for the app in question. Does anyone know how to do this? What's the command (scale cli or linux shell)? Where does TrueNAS Scale store the "setings" for an app?

In my case: I need to add an additional storage for Radarr (mounted the media path, but forgot to add the download client's path).
When I run the below command in the linux shell :

I get to see the following:

and furhter down:

Where or how would I be able to add a another 'HostPath'?

PS: In case you haven't noticed yet, I'm not very familiar with how containers work. So if this is a stupid question, apologies. And yes, I know that I could just re-install the Radarr app and re-configure it from scratch, but I would like to prevent having to re-configure it.

Sorry to say, at least for existing installations, Scale 23.10.1 still has this bug. Installed the 23.10.1 update today, tried to add a new Storage configuration for FileBrowser app, still not able to select a "Type".
 

macnugget

Dabbler
Joined
Sep 10, 2019
Messages
15
Sorry to say, at least for existing installations, Scale 23.10.1 still has this bug. Installed the 23.10.1 update today, tried to add a new Storage configuration for FileBrowser app, still not able to select a "Type".
Make sure you shift-reload or otherwise clear your browser cache.
 
Top