amschaal / glims

3 stars 0 forks source link

Make bioshare app use hardlinks #33

Open amschaal opened 7 years ago

amschaal commented 7 years ago

Projects are currently shared to Bioshare using symlinks, such that: /project_directory/share/ contains symlinks to: /project_directory/data/

The share directory is then linked to from Bioshare. This breaks SFTP on Bioshare, since the symlinks point to a directory outside the jailed root. By using HARDLINKS, this issue is resolved. As an added bonus, the project files can be deleted, while still leaving the deliverables in place.

However, hardlinks may not be used on a file system like AFS, which limits them to the same directory.

amschaal commented 7 years ago

@monicabritton made the point that it is often necessary to upload to Bioshare alongside the main deliverables, potentially even allowing clients to upload collaboratively. Whatever the solution is, it should probably:

  1. Allow Bioshare to write to the shared directory (for additional uploading/collaboration).
  2. Allow users to share data from the command line.
  3. Prevent Bioshare users from deleting/overwriting LIMS deliverables.

If we used hardlinks, we could set RO permissions for Bioshare which would keep the data safe from being overwritten/deleted.