Default Data Directories for DroboApps

I’m curious about what opinions everyone has about where to put any default data directories for a Drobo App install? The SDK doc doesn’t really provide guidelines on this and I haven’t seen it in the forums. I’ve got my own opinions but would like to get input from the community and hopefully document some sort of best practice.

I see at least 3 different types of application data:

  1. the basic configuration data which should be stored in the app install directory.
  2. application runtime data that is only accessed using the installed drobo app and you wouldn’t want shared as a directory
  3. application runtime data that is typically accessed through the drobo app, but the user may want to share this data directly

This question also points out a big flaw in the DroboApp auto-install process that there is no way to prompt the user for input or confirmation on any install options. This means that the applications need to make assumptions in order to install and start correctly or the app must fail on install and expect the users to complete the installation.


Are there any app developers or packagers that would like to add input to this? I would like to create a pseudo “best practices” for drobo apps and this is a basic one that will add consistency to applications from different people. In the long run it will make things better for end users if they see consistency.

Here are some examples:

  • subversion repositories: expose them as a share or hide them somewhere?
  • web app or wiki running on drobo, where should it store data files in the filesystem?

If every application expects a specific share name for it’s data, its going to get messy over time. If apps use the install directory, you will get lots of users complaining about losing data during upgrades.

One thought is to have a standard data share similar to DroboApps that would be exclusively for data and each app creates it’s data subdirectory there using the “app name” just like the apps install directory. When an app is uninstalled or reinstalled, the data share would be left untouched so the user won’t lose data.