Implement/enable "Manage Your Remote File Sources" on local version of galaxy

How can enable the “Manage Your Remote File Sources” option in my local version of galaxy? I followed the GTN steps to setup galaxy (25.0) using ansible. I haven’t come across the specific setting in the configuration files to enable this but on the galaxy training website the option is discussed ( FAQ: How do I manage my repositories on Galaxy? )

Welcome @fvdk

Great that you have your local Galaxy set up with ansible! That will help with the next steps.

Admin Tutorials

Hopefully this helps! :slight_smile:

Thanks for the answer. I added the option for dropbox, but in the file_sources_conf.yml I find that the accessToken

accessToken: ${user.preferences.get(‘dropbox|access_token’, ‘’) if $user.preferences else ‘’}

is always empty and I cannot access the dropbox location. When I hard-copy the token in the this file, e.g.

accessToken: sl.u…….

it does work. I tried several ways to try to copy the user variables but none of them worked.

Do I need to specify some settings to enable the extra variables stored in the user_preferences_extra_conf.yml file?

snippet of my galaxyservers.yml file

galaxy_config:
  galaxy:
    
    database_connection: "postgresql:///{{ galaxy_db_name }}?host=/var/run/postgresql"
    file_path: /data/datasets
    job_working_directory: /data/jobs
    object_store_config_file: "{{ galaxy_config_dir }}/object_store_conf.xml"
    file_sources_config_file: "{{ galaxy_config_dir }}/file_sources_conf.yml"    
    user_preferences_extra_conf_path: "{{ galaxy_config_dir }}/user_preferences_extra_conf.yml"

....

galaxy_config_files:
  - src: templates/galaxy/config/user_preferences_extra_conf.yml
    dest: "{{ galaxy_config.galaxy.user_preferences_extra_conf_path }}"
  - src: templates/galaxy/config/file_sources_conf.yml
    dest: "{{ galaxy_config.galaxy.file_sources_config_file }}"

Thanks again.

Thanks for the answer. I added the option for dropbox, but in the file_sources_conf.yml I find that the accessToken

accessToken: ${user.preferences.get(‘dropbox|access_token’, ‘’) if $user.preferences else ‘’}

is always empty and I cannot access the dropbox location. When I hard-copy the token in the this file, e.g.

accessToken: sl.u…….

it does work. I tried several ways to try to copy the user variables but none of them worked.

Do I need to specify some settings to enable the extra variables stored in the user_preferences_extra_conf.yml file?

snippet of my galaxyservers.yml file

galaxy_config:
  galaxy:
    
    database_connection: "postgresql:///{{ galaxy_db_name }}?host=/var/run/postgresql"
    file_path: /data/datasets
    job_working_directory: /data/jobs
    object_store_config_file: "{{ galaxy_config_dir }}/object_store_conf.xml"
    file_sources_config_file: "{{ galaxy_config_dir }}/file_sources_conf.yml"    
    user_preferences_extra_conf_path: "{{ galaxy_config_dir }}/user_preferences_extra_conf.yml"

....

galaxy_config_files:
  - src: templates/galaxy/config/user_preferences_extra_conf.yml
    dest: "{{ galaxy_config.galaxy.user_preferences_extra_conf_path }}"
  - src: templates/galaxy/config/file_sources_conf.yml
    dest: "{{ galaxy_config.galaxy.file_sources_config_file }}"

Thanks again

## Edit

I managed to solve it by using the following template matching strings in file_sources_conf.yml

- type: dropbox
  id: dropbox
  label: Your Dropbox Files
  doc: Your Dropbox files - configure an access token via the user preferences
  accessToken: ${user.preferences['dropbox|access_token']}

- type: s3fs
  label: AWS-s3
  id: aws
  doc: Access to own data on AWS.
  bucket: ${user.preferences['aws|bucket']}
  writable: true
  secret: ${user.preferences['aws|secret']}
  key: ${user.preferences['aws|key']}

1 Like