WrightonLabCSU / DRAM

Distilled and Refined Annotation of Metabolism: A tool for the annotation and curation of function for microbial and viral genomes
GNU General Public License v3.0
239 stars 50 forks source link

Permission error when setting up databases #297

Closed pabloati closed 7 months ago

pabloati commented 9 months ago

Hi,

I am trying to set up teh DRAM databases on a HPC cluster where I am the user. The issue comes because the CONFIG file has been installed in a directory where I do not have write permission, and I cannot get them.

(base) [pablop@g-01-c0003 DRAM]$ DRAM-setup.py prepare_databases --output_dir ./ /services/tools/dram/1.4.6/lib/python3.10/site-packages/mag_annotator/database_handler.py:166: UserWarning: Database does not exist at path None warnings.warn( /services/tools/dram/1.4.6/lib/python3.10/site-packages/mag_annotator/database_handler.py:123: UserWarning: Database does not exist at path None warnings.warn("Database does not exist at path %s" % description_loc) Traceback (most recent call last): File "/services/tools/dram/1.4.6/bin/DRAM-setup.py", line 184, in args.func(**args_dict) File "/services/tools/dram/1.4.6/lib/python3.10/site-packages/mag_annotator/database_processing.py", line 476, in prepare_databases db_handler.write_config() File "/services/tools/dram/1.4.6/lib/python3.10/site-packages/mag_annotator/database_handler.py", line 334, in write_config with open(config_loc, "w") as f: PermissionError: [Errno 13] Permission denied: '/services/tools/dram/1.4.6/lib/python3.10/site-packages/mag_annotator/CONFIG'

Is there any way to set up the databases and assign a different config file?

Thank you

BioRRW commented 9 months ago

Apologies for the late response but thank you for your question. It may be a good idea to reach out to your system administrator to set up the DRAM databases.

Alternatively, I would try specifying an output directory, that you have permissions to read/write to, when running DRAM-setup.py prepare_databases --output_dir /Path/you/have/permissions/.

Good luck and keep us updated, thanks!

pabloati commented 9 months ago

Hi, I had to install DRAM manually out of the support of the system administrators. As I said, the issue was not with the output directory, as I had the permissions to modifyit.

The issue is that DRAM was installed in a protected folder, as all the different programs that are installed by the system administrator. So when DRAM had to access its config file to update the database locations, the file could not be modified by me (in my cluster I have to manage the installation of the databases of the programs). I think it would be really useful for this cases to include an option in the set up where you can set a personalized location for the config file that DRAM uses for the databases.

Thank you for your answer

jrr-microbio commented 7 months ago

When working in HPC environment - it is recommended to install DRAM (and all other software) via conda to prevent this from happening. This will also ensure that you don't have competing dependencies as well, as an HPC can have different software versions running.