· 10 years ago · Apr 01, 2016, 10:03 AM
1#
2# Galaxy is configured by default to be usable in a single-user development
3# environment. To tune the application for a multi-user production
4# environment, see the documentation at:
5#
6# http://usegalaxy.org/production
7#
8
9# Throughout this sample configuration file, except where stated otherwise,
10# uncommented values override the default if left unset, whereas commented
11# values are set to the default value. Relative paths are relative to the root
12# Galaxy directory.
13#
14# Examples of many of these options are explained in more detail in the wiki:
15#
16# https://wiki.galaxyproject.org/Admin/Config
17#
18# Config hackers are encouraged to check there before asking for help.
19
20# ---- HTTP Server ----------------------------------------------------------
21
22# Configuration of the internal HTTP server.
23
24[server:main]
25
26# The internal HTTP server to use. Currently only Paste is provided. This
27# option is required.
28use = egg:Paste#http
29
30# The port on which to listen.
31port = 8082
32
33# The address on which to listen. By default, only listen to localhost (Galaxy
34# will not be accessible over the network). Use '0.0.0.0' to listen on all
35# available network interfaces.
36host = 127.0.0.1
37# Use a threadpool for the web server instead of creating a thread for each
38# request.
39use_threadpool = True
40
41# Number of threads in the web server thread pool.
42threadpool_workers = 5
43
44# Set the number of seconds a thread can work before you should kill it
45# (assuming it will never finish) to 3 hours. Default is 600 (10 minutes).
46threadpool_kill_thread_limit = 10800
47
48# ---- Filters --------------------------------------------------------------
49
50# Filters sit between Galaxy and the HTTP server.
51
52# These filters are disabled by default. They can be enabled with
53# 'filter-with' in the [app:main] section below.
54
55# Define the gzip filter.
56[filter:gzip]
57use = egg:Paste#gzip
58
59# Define the proxy-prefix filter.
60[filter:proxy-prefix]
61use = egg:PasteDeploy#prefix
62prefix = /galaxy
63
64# ---- Galaxy ---------------------------------------------------------------
65
66# Configuration of the Galaxy application.
67
68[app:main]
69
70# -- Application and filtering
71
72# The factory for the WSGI application. This should not be changed.
73paste.app_factory = galaxy.web.buildapp:app_factory
74
75# If not running behind a proxy server, you may want to enable gzip compression
76# to decrease the size of data transferred over the network. If using a proxy
77# server, please enable gzip compression there instead.
78#filter-with = gzip
79
80# If running behind a proxy server and Galaxy is served from a subdirectory,
81# enable the proxy-prefix filter and set the prefix in the
82# [filter:proxy-prefix] section above.
83#filter-with = proxy-prefix
84
85# If proxy-prefix is enabled and you're running more than one Galaxy instance
86# behind one hostname, you will want to set this to the same path as the prefix
87# in the filter above. This value becomes the "path" attribute set in the
88# cookie so the cookies from each instance will not clobber each other.
89#cookie_path = None
90
91# -- Database
92
93# By default, Galaxy uses a SQLite database at 'database/universe.sqlite'. You
94# may use a SQLAlchemy connection string to specify an external database
95# instead. This string takes many options which are explained in detail in the
96# config file documentation.
97#database_connection = sqlite:///./database/universe.sqlite?isolation_level=IMMEDIATE
98
99database_connection = postgresql://galaxy:password@localhost/galaxydb
100
101# If the server logs errors about not having enough database pool connections,
102# you will want to increase these values, or consider running more Galaxy
103# processes.
104database_engine_option_pool_size = 5
105database_engine_option_max_overflow = 10
106
107# If using MySQL and the server logs the error "MySQL server has gone away",
108# you will want to set this to some positive value (7200 should work).
109#database_engine_option_pool_recycle = -1
110
111# If large database query results are causing memory or response time issues in
112# the Galaxy process, leave the result on the server instead. This option is
113# only available for PostgreSQL and is highly recommended.
114#database_engine_option_server_side_cursors = True
115# Log all database transactions, can be useful for debugging and performance
116# profiling. Logging is done via Python's 'logging' module under the qualname
117# 'galaxy.model.orm.logging_connection_proxy'
118#database_query_profiling_proxy = False
119
120# By default, Galaxy will use the same database to track user data and
121# tool shed install data. There are many situations in which it is
122# valuable to separate these - for instance bootstrapping fresh Galaxy
123# instances with pretested installs. The following option can be used to
124# separate the tool shed install database (all other options listed above
125# but prefixed with install_ are also available).
126#install_database_connection = sqlite:///./database/universe.sqlite?isolation_level=IMMEDIATE
127
128# -- Files and directories
129
130# Dataset files are stored in this directory.
131#file_path = database/files
132
133# Temporary files are stored in this directory.
134#new_file_path = database/tmp
135
136# Tool config files, defines what tools are available in Galaxy.
137# Tools can be locally developed or installed from Galaxy tool sheds.
138# (config/tool_conf.xml.sample will be used if left unset and
139# config/tool_conf.xml does not exist).
140tool_config_file = config/tool_conf.xml,config/shed_tool_conf.xml
141
142# Enable / disable checking if any tools defined in the above non-shed
143# tool_config_files (i.e., tool_conf.xml) have been migrated from the Galaxy
144# code distribution to the Tool Shed. This setting should generally be set to
145# False only for development Galaxy environments that are often rebuilt from
146# scratch where migrated tools do not need to be available in the Galaxy tool
147# panel. If the following setting remains commented, the default setting will
148# be True.
149#heck_migrate_tools = False
150
151# Tool config maintained by tool migration scripts. If you use the migration
152# scripts to install tools that have been migrated to the tool shed upon a new
153# release, they will be added to this tool config file.
154#migrated_tools_config = config/migrated_tools_conf.xml
155
156# File that contains the XML section and tool tags from all tool panel config
157# files integrated into a single file that defines the tool panel layout. This
158# file can be changed by the Galaxy administrator to alter the layout of the
159# tool panel. If not present, Galaxy will create it.
160#integrated_tool_panel_config = integrated_tool_panel.xml
161
162# Default path to the directory containing the tools defined in tool_conf.xml.
163# Other tool config files must include the tool_path as an attribute in the
164# <toolbox> tag.
165tool_path = tools
166
167# Path to the directory in which tool dependencies are placed. This is used by
168# the tool shed to install dependencies and can also be used by administrators
169# to manually install or link to dependencies. For details, see:
170# https://wiki.galaxyproject.org/Admin/Config/ToolDependencies
171# If this option is not set to a valid path, installing tools with dependencies
172# from the Tool Shed will fail.
173tool_dependency_dir = depend
174
175# The dependency resolves config file specifies an ordering and options for how
176# Galaxy resolves tool dependencies (requirement tags in Tool XML). The default
177# ordering is to the use the tool shed for tools installed that way, use local
178# Galaxy packages, and then use conda if available.
179# See https://github.com/galaxyproject/galaxy/blob/dev/doc/source/admin/dependency_resolvers.rst
180# for more information on these options.
181#dependency_resolvers_config_file = config/dependency_resolvers_conf.xml
182
183# Following conda dependeny resolution options are experimental as of early
184# 2016. These will change the defaults for each conda resolver, but multiple
185# resolvers can be configured independently and these options overridden in
186# dependency_resolvers_config_file.
187#conda_prefix = <tool_dependency_dir>/_conda
188# Override the conda executable to use, it will default to the one on the
189# PATH (if available) and then to <conda_prefix>/bin/conda
190#conda_exec =
191# Pass debug flag to conda commands.
192#conda_debug = False
193# conda channels to enable by default (http://conda.pydata.org/docs/custom-channels.html)
194#conda_ensure_channels = r,bioconda
195# Set to True to instruct Galaxy to look for and install missing tool
196# dependencies before each job runs.
197#conda_auto_install = False
198# Set to True to instruct Galaxy to install conda from the web automatically
199# if it cannot find a local copy and conda_exec is not configured.
200#conda_auto_init = False
201
202# File containing the Galaxy Tool Sheds that should be made available to
203# install from in the admin interface (.sample used if default does not exist).
204#tool_sheds_config_file = config/tool_sheds_conf.xml
205
206# Set to True to enable monitoring of tools and tool directories
207# listed in any tool config file specified in tool_config_file option.
208# If changes are found, tools are automatically reloaded. Watchdog (
209# https://pypi.python.org/pypi/watchdog ) must be installed and
210# available to Galaxy to use this option. Other options include 'auto'
211# which will attempt to watch tools if the watchdog library is available
212# but won't fail to load Galaxy if it is not and 'polling' which will use
213# a less efficient monitoring scheme that may work in wider range of scenarios
214# than the watchdog default.
215#watch_tools = False
216
217# Enable automatic polling of relative tool sheds to see if any updates
218# are available for installed repositories. Ideally only one Galaxy
219# server process should be able to check for repository updates. The
220# setting for hours_between_check should be an integer between 1 and 24.
221#enable_tool_shed_check = False
222hours_between_check = 22
223
224# Enable use of an in-memory registry with bi-directional relationships between
225# repositories (i.e., in addition to lists of dependencies for a repository,
226# keep an in-memory registry of dependent items for each repository.
227#manage_dependency_relationships = False
228
229# XML config file that contains data table entries for the
230# ToolDataTableManager. This file is manually # maintained by the Galaxy
231# administrator (.sample used if default does not exist).
232tool_data_table_config_path = config/tool_data_table_conf.xml
233
234# XML config file that contains additional data table entries for the
235# ToolDataTableManager. This file is automatically generated based on the
236# current installed tool shed repositories that contain valid
237# tool_data_table_conf.xml.sample files. At the time of installation, these
238# entries are automatically added to the following file, which is parsed and
239# applied to the ToolDataTableManager at server start up.
240#shed_tool_data_table_config = config/shed_tool_data_table_conf.xml
241
242# Directory where data used by tools is located, see the samples in that
243# directory and the wiki for help:
244# https://wiki.galaxyproject.org/Admin/DataIntegration
245#tool_data_path = tool-data
246
247# Directory where Tool Data Table related files will be placed
248# when installed from a ToolShed. Defaults to tool_data_path.
249#shed_tool_data_path = tool-data
250
251# File containing old-style genome builds
252#builds_file_path = tool-data/shared/ucsc/builds.txt
253
254# Directory where chrom len files are kept, currently mainly used by trackster
255#len_file_path = tool-data/shared/ucsc/chrom
256
257# Datatypes config file(s), defines what data (file) types are available in
258# Galaxy (.sample is used if default does not exist). If a datatype appears in
259# multiple files, the last definition is used (though the first sniffer is used
260# so limit sniffer definitions to one file).
261#datatypes_config_file = config/datatypes_conf.xml
262
263# Disable the 'Auto-detect' option for file uploads
264#datatypes_disable_auto = False
265
266# Visualizations config directory: where to look for individual visualization
267# plugins. The path is relative to the Galaxy root dir. To use an absolute
268# path begin the path with '/'. This is a comma separated list.
269# Defaults to "config/plugins/visualizations".
270#visualization_plugins_directory = config/plugins/visualizations
271
272# Interactive environment plugins root directory: where to look for interactive
273# environment plugins. By default none will be loaded. Set to
274# config/plugins/interactive_environments to load Galaxy's stock plugins
275# (currently just IPython). These will require Docker to be configured and
276# have security considerations, so proceed with caution. The path is relative to the
277# Galaxy root dir. To use an absolute path begin the path with '/'. This is a comma
278# separated list.
279#interactive_environment_plugins_directory =
280
281# Interactive tour directory: where to store interactive tour definition files.
282# Galaxy ships with several basic interface tours enabled, though a different
283# directory with custom tours can be specified here. The path is relative to the
284# Galaxy root dir. To use an absolute path begin the path with '/'. This is a comma
285# separated list.
286#tour_config_dir = config/plugins/tours
287
288# Each job is given a unique empty directory as its current working directory.
289# This option defines in what parent directory those directories will be
290# created.
291#job_working_directory = database/job_working_directory
292
293# If using a cluster, Galaxy will write job scripts and stdout/stderr to this
294# directory.
295#cluster_files_directory = database/pbs
296
297# Mako templates are compiled as needed and cached for reuse, this directory is
298# used for the cache
299#template_cache_path = database/compiled_templates
300
301# Set to false to disable various checks Galaxy will do to ensure it
302# can run job scripts before attempting to execute or submit them.
303#check_job_script_integrity = True
304
305# Citation related caching. Tool citations information maybe fetched from
306# external sources such as http://dx.doi.org/ by Galaxy - the following
307# parameters can be used to control the caching used to store this information.
308#citation_cache_type = file
309#citation_cache_data_dir = database/citations/data
310#citation_cache_lock_dir = database/citations/lock
311
312# External service types config file, defining what types of external_services
313# configurations are available in Galaxy (.sample is used if default does not
314# exist).
315#external_service_type_config_file = config/external_service_types_conf.xml
316
317# Path to the directory containing the external_service_types defined in the
318# config.
319#external_service_type_path = external_service_types
320
321# Tools with a number of outputs not known until runtime can write these
322# outputs to a directory for collection by Galaxy when the job is done.
323# Previously, this directory was new_file_path, but using one global directory
324# can cause performance problems, so using job_working_directory ('.' or cwd
325# when a job is run) is encouraged. By default, both are checked to avoid
326# breaking existing tools.
327#collect_outputs_from = new_file_path,job_working_directory
328
329# -- Data Storage (Object Store)
330#
331# Configuration file for the object store
332# If this is set and exists, it overrides any other objectstore settings.
333# object_store_config_file = config/object_store_conf.xml
334
335
336# -- Mail and notification
337
338# Galaxy sends mail for various things: subscribing users to the mailing list
339# if they request it, password resets, notifications from the Galaxy Sample
340# Tracking system, reporting dataset errors, and sending activation emails.
341# To do this, it needs to send mail through an SMTP server, which you may
342# define here (host:port).
343# Galaxy will automatically try STARTTLS but will continue upon failure.
344smtp_server = localhost
345
346# If your SMTP server requires a username and password, you can provide them
347# here (password in cleartext here, but if your server supports STARTTLS it
348# will be sent over the network encrypted).
349#smtp_username = None
350#smtp_password = None
351
352# If your SMTP server requires SSL from the beginning of the connection
353# smtp_ssl = False
354
355# On the user registration form, users may choose to join a mailing list. This
356# is the address used to subscribe to the list. Uncomment and leave empty if you
357# want to remove this option from the user registration form.
358#mailing_join_addr = galaxy-announce-join@bx.psu.edu
359
360# Datasets in an error state include a link to report the error. Those reports
361# will be sent to this address. Error reports are disabled if no address is
362# set. Also this email is shown as a contact to user in case of Galaxy
363# misconfiguration and other events user may encounter.
364#error_email_to = None
365
366# Email address to use in the 'From' field when sending emails for
367# account activations, workflow step notifications and password resets.
368# We recommend using string in the following format:
369# Galaxy Project <galaxy-no-reply@example.com>
370# If not configured, '<galaxy-no-reply@HOSTNAME>' will be used.
371#email_from = None
372
373# URL of the support resource for the galaxy instance. Used in activation
374# emails.
375#instance_resource_url = https://wiki.galaxyproject.org/
376
377# E-mail domains blacklist is used for filtering out users that are using
378# disposable email address during the registration. If their address domain
379# matches any domain in the blacklist, they are refused the registration.
380#blacklist_file = config/disposable_email_blacklist.conf
381
382# Registration warning message is used to discourage people from registering
383# multiple accounts. Applies mostly for the main Galaxy instance.
384# If no message specified the warning box will not be shown.
385#registration_warning_message = Please register only one account - we provide this service free of charge and have limited computational resources. Multi-accounts are tracked and will be subjected to account termination and data deletion.
386
387
388# -- Account activation
389
390# User account activation feature global flag. If set to "False", the rest of
391# the Account activation configuration is ignored and user activation is
392# disabled (i.e. accounts are active since registration).
393# The activation is also not working in case the SMTP server is not defined.
394#user_activation_on = False
395
396# Activation grace period (in hours). Activation is not forced (login is not
397# disabled) until grace period has passed. Users under grace period can't run
398# jobs (see inactivity_box_content). Default is 3. Enter 0 to disable grace
399# period.
400# Users with OpenID logins have grace period forever.
401#activation_grace_period = 0
402
403# Used for warning box for inactive accounts (unable to run jobs).
404# In use only if activation_grace_period is set.
405#inactivity_box_content = Your account has not been activated yet. Feel free to browse around and see what's available, but you won't be able to upload data or run jobs until you have verified your email address.
406
407
408
409# Galaxy Session Timeout
410# This provides a timeout (in minutes) after which a user will have to log back in.
411# A duration of 0 disables this feature.
412#session_duration = 0
413
414
415# -- Analytics
416
417# You can enter tracking code here to track visitor's behavior
418# through your Google Analytics account. Example: UA-XXXXXXXX-Y
419#ga_code = None
420
421# -- Display sites
422
423# Galaxy can display data at various external browsers. These options specify
424# which browsers should be available. URLs and builds available at these
425# browsers are defined in the specifield files.
426
427# If use_remote_user = True, display application servers will be denied access
428# to Galaxy and so displaying datasets in these sites will fail.
429# display_servers contains a list of hostnames which should be allowed to
430# bypass security to display datasets. Please be aware that there are security
431# implications if this is allowed. More details (including required changes to
432# the proxy server config) are available in the Apache proxy documentation on
433# the wiki.
434#
435# The list of servers in this sample config are for the UCSC Main, Test and
436# Archaea browsers, but the default if left commented is to not allow any
437# display sites to bypass security (you must uncomment the line below to allow
438# them).
439#display_servers = hgw1.cse.ucsc.edu,hgw2.cse.ucsc.edu,hgw3.cse.ucsc.edu,hgw4.cse.ucsc.edu,hgw5.cse.ucsc.edu,hgw6.cse.ucsc.edu,hgw7.cse.ucsc.edu,hgw8.cse.ucsc.edu,lowepub.cse.ucsc.edu
440
441# To disable the old-style display applications that are hardcoded into
442# datatype classes, set enable_old_display_applications = False.
443# This may be desirable due to using the new-style, XML-defined, display
444# applications that have been defined for many of the datatypes that have the
445# old-style.
446# There is also a potential security concern with the old-style applications,
447# where a malicious party could provide a link that appears to reference the
448# Galaxy server, but contains a redirect to a third-party server, tricking a
449# Galaxy user to access said site.
450#enable_old_display_applications = True
451
452# -- Next gen LIMS interface on top of existing Galaxy Sample/Request
453# management code.
454
455use_nglims = False
456nglims_config_file = tool-data/nglims.yaml
457
458# -- UI Localization
459
460# Show a message box under the masthead.
461#message_box_visible = False
462#message_box_content = None
463#message_box_class = info
464
465# Append "/{brand}" to the "Galaxy" text in the masthead.
466#brand = None
467
468# Format string used when showing date and time information.
469# The string may contain:
470# - the directives used by Python time.strftime() function (see
471# https://docs.python.org/2/library/time.html#time.strftime ),
472# - $locale (complete format string for the server locale),
473# - $iso8601 (complete format string as specified by ISO 8601 international
474# standard).
475# pretty_datetime_format = $locale (UTC)
476
477# URL (with schema http/https) of the Galaxy instance as accessible within your
478# local network - if specified used as a default by pulsar file staging and
479# IPython Docker container for communicating back with Galaxy via the API.
480#galaxy_infrastructure_url = http://localhost:8080
481
482# If the above URL cannot be determined ahead of time in dynamic environments
483# but the port which should be used to access Galaxy can be - this should be
484# set to prevent Galaxy from having to guess. For example if Galaxy is sitting
485# behind a proxy with REMOTE_USER enabled - infrastructure shouldn't talk to
486# Python processes directly and this should be set to 80 or 443, etc... If
487# unset this file will be read for a server block defining a port corresponding
488# to the webapp.
489#galaxy_infrastructure_web_port = 8080
490
491# The URL of the page to display in Galaxy's middle pane when loaded. This can
492# be an absolute or relative URL.
493#welcome_url = /static/welcome.html
494
495# The URL linked by the "Galaxy/brand" text.
496#logo_url = /
497
498# The URL linked by the "Wiki" link in the "Help" menu.
499#wiki_url = https://wiki.galaxyproject.org/
500
501# The URL linked by the "Support" link in the "Help" menu.
502#support_url = https://wiki.galaxyproject.org/Support
503
504# The URL linked by the "How to Cite Galaxy" link in the "Help" menu.
505#citation_url = https://wiki.galaxyproject.org/CitingGalaxy
506
507#The URL linked by the "Search" link in the "Help" menu.
508#search_url = http://galaxyproject.org/search/usegalaxy/
509
510#The URL linked by the "Mailing Lists" link in the "Help" menu.
511#mailing_lists_url = https://wiki.galaxyproject.org/MailingLists
512
513#The URL linked by the "Videos" link in the "Help" menu.
514#screencasts_url = https://vimeo.com/galaxyproject
515
516# The URL linked by the "Terms and Conditions" link in the "Help" menu, as well
517# as on the user registration and login forms and in the activation emails.
518#terms_url = None
519
520# The URL linked by the "Galaxy Q&A" link in the "Help" menu
521# The Galaxy Q&A site is under development; when the site is done, this URL
522# will be set and uncommented.
523#qa_url =
524
525# Serve static content, which must be enabled if you're not serving it via a
526# proxy server. These options should be self explanatory and so are not
527# documented individually. You can use these paths (or ones in the proxy
528# server) to point to your own styles.
529#static_enabled = True
530#static_cache_time = 360
531#static_dir = static/
532#static_images_dir = static/images
533#static_favicon_dir = static/favicon.ico
534#static_scripts_dir = static/scripts/
535#static_style_dir = static/june_2007_style/blue
536#static_robots_txt = static/robots.txt
537
538# Incremental Display Options
539
540#display_chunk_size = 65536
541
542# -- Advanced proxy features
543
544# For help on configuring the Advanced proxy features, see:
545# http://usegalaxy.org/production
546
547# Apache can handle file downloads (Galaxy-to-user) via mod_xsendfile. Set
548# this to True to inform Galaxy that mod_xsendfile is enabled upstream.
549apache_xsendfile = True
550
551# The same download handling can be done by nginx using X-Accel-Redirect. This
552# should be set to the path defined in the nginx config as an internal redirect
553# with access to Galaxy's data files (see documentation linked above).
554#nginx_x_accel_redirect_base = False
555
556# nginx can make use of mod_zip to create zip files containing multiple library
557# files. If using X-Accel-Redirect, this can be the same value as that option.
558#nginx_x_archive_files_base = False
559
560# If using compression in the upstream proxy server, use this option to disable
561# gzipping of library .tar.gz and .zip archives, since the proxy server will do
562# it faster on the fly.
563#upstream_gzip = False
564
565# The following default adds a header to web request responses that
566# will cause modern web browsers to not allow Galaxy to be embedded in
567# the frames of web applications hosted at other hosts - this can help
568# prevent a class of attack called clickjacking
569# (https://www.owasp.org/index.php/Clickjacking). If you configure a
570# proxy in front of Galaxy - please ensure this header remains intact
571# to protect your users. Uncomment and leave empty to not set the
572# `X-Frame-Options` header.
573#x_frame_options = SAMEORIGIN
574
575# nginx can also handle file uploads (user-to-Galaxy) via nginx_upload_module.
576# Configuration for this is complex and explained in detail in the
577# documentation linked above. The upload store is a temporary directory in
578# which files uploaded by the upload module will be placed.
579#nginx_upload_store = True
580
581# This value overrides the action set on the file upload form, e.g. the web
582# path where the nginx_upload_module has been configured to intercept upload
583# requests.
584#ginx_upload_path = True
585
586# Galaxy can also use nginx_upload_module to receive files staged out upon job
587# completion by remote job runners (i.e. Pulsar) that initiate staging
588# operations on the remote end. See the Galaxy nginx documentation for the
589# corresponding nginx configuration.
590#nginx_upload_job_files_store = False
591#nginx_upload_job_files_path = False
592
593# Have Galaxy manage dynamic proxy component for routing requests to other
594# services based on Galaxy's session cookie. It will attempt to do this by
595# default though you do need to install node+npm and do an npm install from
596# `lib/galaxy/web/proxy/js`. It is generally more robust to configure this
597# externally managing it however Galaxy is managed. If True Galaxy will only
598# launch the proxy if it is actually going to be used (e.g. for IPython).
599#dynamic_proxy_manage=True
600
601# Dynamic proxy can use an SQLite database or a JSON file for IPC, set that
602# here.
603#dynamic_proxy_session_map=database/session_map.sqlite
604
605# Set the port and IP for the the dynamic proxy to bind to, this must match
606# the external configuration if dynamic_proxy_manage is False.
607#dynamic_proxy_bind_port=8800
608#dynamic_proxy_bind_ip=0.0.0.0
609
610# Enable verbose debugging of Galaxy-managed dynamic proxy.
611#dynamic_proxy_debug=False
612
613# The dynamic proxy is proxied by an external proxy (e.g. apache frontend to
614# nodejs to wrap connections in SSL).
615#dynamic_proxy_external_proxy=True
616
617# Additionally, when the dynamic proxy is proxied by an upstream server, you'll
618# want to specify a prefixed URL so both Galaxy and the proxy reside under the
619# same path that your cookies are under. This will result in a url like
620# https://FQDN/galaxy-prefix/gie_proxy for proxying
621#dynamic_proxy_prefix=gie_proxy
622
623# -- Logging and Debugging
624
625# If True, Galaxy will attempt to configure a simple root logger if a
626# "loggers" section does not appear in this configuration file.
627auto_configure_logging = False
628
629# Verbosity of console log messages. Acceptable values can be found here:
630# https://docs.python.org/2/library/logging.html#logging-levels
631log_level = ERROR
632
633# Print database operations to the server log (warning, quite verbose!).
634database_engine_option_echo = True
635
636# Print database pool operations to the server log (warning, quite verbose!).
637#database_engine_option_echo_pool = False
638
639# Turn on logging of application events and some user events to the database.
640#log_events = True
641
642# Turn on logging of user actions to the database. Actions currently logged
643# are grid views, tool searches, and use of "recently" used tools menu. The
644# log_events and log_actions functionality will eventually be merged.
645#log_actions = True
646
647# Sanitize all HTML tool output. By default, all tool output served as
648# 'text/html' will be sanitized thoroughly. This can be disabled if you have
649# special tools that require unaltered output. WARNING: disabling this does
650# make the Galaxy instance susceptible to XSS attacks initiated by your users.
651#sanitize_all_html = True
652
653# Whitelist sanitization file.
654# Datasets created by tools listed in this file are trusted and will not have
655# their HTML sanitized on display. This can be manually edited or manipulated
656# through the Admin control panel -- see "Manage Display Whitelist"
657#sanitize_whitelist_file = config/sanitize_whitelist.txt
658
659# By default Galaxy will serve non-HTML tool output that may potentially
660# contain browser executable JavaScript content as plain text. This will for
661# instance cause SVG datasets to not render properly and so may be disabled
662# by setting the following option to True.
663#serve_xss_vulnerable_mimetypes = False
664
665# Set the following to True to use IPython nbconvert to build HTML from IPython
666# notebooks in Galaxy histories. This process may allow users to execute
667# arbitrary code or serve arbitrary HTML. If enabled, IPython must be
668# available and on Galaxy's PATH, to do this run
669# `pip install jinja2 pygments ipython` in Galaxy's virtualenv.
670#trust_ipython_notebook_conversion = False
671
672# Debug enables access to various config options useful for development and
673# debugging: use_lint, use_profile, use_printdebug and use_interactive. It
674# also causes the files used by PBS/SGE (submission script, output, and error)
675# to remain on disk after the job is complete.
676debug = False
677
678# Check for WSGI compliance.
679#use_lint = False
680
681# Run the Python profiler on each request.
682#use_profile = False
683
684# Intercept print statements and show them on the returned page.
685#use_printdebug = True
686
687# Enable live debugging in your browser. This should NEVER be enabled on a
688# public site. Enabled in the sample config for development.
689use_interactive = True
690
691# Write thread status periodically to 'heartbeat.log', (careful, uses disk
692# space rapidly!). Useful to determine why your processes may be consuming a
693# lot of CPU.
694#use_heartbeat = False
695
696# Log to Sentry
697# Sentry is an open source logging and error aggregation platform. Setting
698# sentry_dsn will enable the Sentry middleware and errors will be sent to the
699# indicated sentry instance. This connection string is available in your
700# sentry instance under <project_name> -> Settings -> API Keys.
701#sentry_dsn = None
702
703# Log to statsd
704# Statsd is an external statistics aggregator (https://github.com/etsy/statsd)
705# Enabling the following options will cause galaxy to log request timing and
706# other statistics to the configured statsd instance.
707#statsd_host=
708#statsd_port=8125
709
710# -- Data Libraries
711
712# These library upload options are described in much more detail in the wiki:
713# https://wiki.galaxyproject.org/Admin/DataLibraries/UploadingLibraryFiles
714
715# Add an option to the library upload form which allows administrators to
716# upload a directory of files.
717#library_import_dir = None
718
719# Add an option to the library upload form which allows authorized
720# non-administrators to upload a directory of files. The configured directory
721# must contain sub-directories named the same as the non-admin user's Galaxy
722# login ( email ). The non-admin user is restricted to uploading files or
723# sub-directories of files contained in their directory.
724#user_library_import_dir = None
725
726# Add an option to the admin library upload tool allowing admins to paste
727# filesystem paths to files and directories in a box, and these paths will be
728# added to a library. Set to True to enable. Please note the security
729# implication that this will give Galaxy Admins access to anything your Galaxy
730# user has access to.
731#allow_library_path_paste = False
732
733# Users may choose to download multiple files from a library in an archive. By
734# default, Galaxy allows users to select from a few different archive formats
735# if testing shows that Galaxy is able to create files using these formats.
736# Specific formats can be disabled with this option, separate more than one
737# format with commas. Available formats are currently 'zip', 'gz', and 'bz2'.
738#disable_library_comptypes =
739
740# Some sequencer integration features in beta allow you to automatically
741# transfer datasets. This is done using a lightweight transfer manager which
742# runs outside of Galaxy (but is spawned by it automatically). Galaxy will
743# communicate with this manager over the port specified here.
744#transfer_manager_port = 8163
745
746# Search data libraries with whoosh
747#enable_whoosh_library_search = True
748# Whoosh indexes are stored in this directory.
749#whoosh_index_dir = database/whoosh_indexes
750
751# Search data libraries with lucene
752#enable_lucene_library_search = False
753# maxiumum file size to index for searching, in MB
754#fulltext_max_size = 500
755#fulltext_noindex_filetypes = bam,sam,wig,bigwig,fasta,fastq,fastqsolexa,fastqillumina,fastqsanger
756# base URL of server providing search functionality using lucene
757#fulltext_url = http://localhost:8081
758
759# -- Toolbox Search
760
761# The following boosts are used to customize this instance's toolbox search.
762# The higher the boost, the more importance the scoring algorithm gives to the
763# given field. Section refers to the tool group in the tool panel. Rest of
764# the fields are tool's attributes.
765# tool_name_boost = 9
766# tool_section_boost = 3
767# tool_description_boost = 2
768# tool_help_boost = 0.5
769
770# Limits the number of results in toolbox search. Can be used to tweak how many
771# results will appear.
772# tool_search_limit = 20
773
774# -- Users and Security
775
776# Galaxy encodes various internal values when these values will be output in
777# some format (for example, in a URL or cookie). You should set a key to be
778# used by the algorithm that encodes and decodes these values. It can be any
779# string. If left unchanged, anyone could construct a cookie that would grant
780# them access to others' sessions.
781# One simple way to generate a value for this is with the shell command:
782# python -c 'import time; print time.time()' | md5sum | cut -f 1 -d ' '
783#id_secret = USING THE DEFAULT IS NOT SECURE!
784
785# User authentication can be delegated to an upstream proxy server (usually
786# Apache). The upstream proxy should set a REMOTE_USER header in the request.
787# Enabling remote user disables regular logins. For more information, see:
788# https://wiki.galaxyproject.org/Admin/Config/ApacheProxy
789#use_remote_user = False
790
791# If use_remote_user is enabled and your external authentication
792# method just returns bare usernames, set a default mail domain to be appended
793# to usernames, to become your Galaxy usernames (email addresses).
794#remote_user_maildomain = None
795
796# If use_remote_user is enabled, the header that the upstream proxy provides
797# the remote username in defaults to HTTP_REMOTE_USER (the 'HTTP_' is prepended
798# by WSGI). This option allows you to change the header. Note, you still need
799# to prepend 'HTTP_' to the header in this option, but your proxy server should
800# *not* include 'HTTP_' at the beginning of the header name.
801#remote_user_header = HTTP_REMOTE_USER
802
803# If use_remote_user is enabled, anyone who can log in to the Galaxy host may
804# impersonate any other user by simply sending the appropriate header. Thus a
805# secret shared between the upstream proxy server, and Galaxy is required.
806# If anyone other than the Galaxy user is using the server, then apache/nginx
807# should pass a value in the header 'GX_SECRET' that is identical to the one
808# below.
809#remote_user_secret = USING THE DEFAULT IS NOT SECURE!
810
811# If use_remote_user is enabled, you can set this to a URL that will log your
812# users out.
813#remote_user_logout_href = None
814
815# If your proxy and/or authentication source does not normalize e-mail
816# addresses or user names being passed to Galaxy - set the following option
817# to True to force these to lower case.
818#normalize_remote_user_email = False
819
820# Administrative users - set this to a comma-separated list of valid Galaxy
821# users (email addresses). These users will have access to the Admin section
822# of the server, and will have access to create users, groups, roles,
823# libraries, and more. For more information, see:
824# https://wiki.galaxyproject.org/Admin/Interface
825admin_users = aaao@google.com
826
827# Force everyone to log in (disable anonymous access).
828#require_login = True
829
830# Show the site's welcome page (see welcome_url) alongside the login page
831# (even if require_login is True)
832#show_welcome_with_login = False
833
834# Allow unregistered users to create new accounts (otherwise, they will have to
835# be created by an admin).
836allow_user_creation = False
837
838# Allow administrators to delete accounts.
839allow_user_deletion = True
840
841# Allow administrators to log in as other users (useful for debugging)
842allow_user_impersonation = True
843
844# Allow users to remove their datasets from disk immediately (otherwise,
845# datasets will be removed after a time period specified by an administrator in
846# the cleanup scripts run via cron)
847#allow_user_dataset_purge = False
848
849# By default, users' data will be public, but setting this to True will cause
850# it to be private. Does not affect existing users and data, only ones created
851# after this option is set. Users may still change their default back to
852# public.
853#new_user_dataset_access_role_default_private = False
854
855# Expose user list. Setting this to True will expose the user list to
856# authenticated users. This makes sharing datasets in smaller galaxy instances
857# much easier as they can type a name/email and have the correct user show up.
858# This makes less sense on large public Galaxy instances where that data
859# shouldn't be exposed. For semi-public Galaxies, it may make sense to expose
860# just the username and not email, or vice versa.
861#expose_user_name = False
862#expose_user_email = False
863
864# -- Beta features
865# Enable new run workflow form
866#run_workflow_toolform_upgrade = False
867
868# Enable Galaxy to communicate directly with a sequencer
869#enable_sequencer_communication = False
870
871# Separate tool command from rest of job script so tool dependencies
872# don't interfer with metadata generation.
873# Despite the name, this feature is enabled by default
874# in 16.01 and the option will go away in the future.
875#enable_beta_tool_command_isolation = True
876
877
878# Set the following to a number of threads greater than 1 to spawn
879# a Python task queue for dealing with large tool submissions (either
880# through the tool form or as part of an individual workflow step across
881# large collection). The size of a "large" tool request is controlled by
882# the second parameter below and defaults to 10. This affects workflow
883# scheduling and web processes, not job handlers.
884#tool_submission_burst_threads = 1
885#tool_submission_burst_at = 10
886
887# Enable beta workflow modules that should not yet be considered part of Galaxy's
888# stable API.
889#enable_beta_workflow_modules = False
890
891# Force usage of Galaxy's beta workflow scheduler under certain circumstances -
892# this workflow scheduling forces Galaxy to schedule workflows in the background
893# so initial submission of the workflows is signficantly sped up. This does
894# however force the user to refresh their history manually to see newly scheduled
895# steps (for "normal" workflows - steps are still scheduled far in advance of
896# them being queued and scheduling here doesn't refer to actual cluster job
897# scheduling).
898# Workflows containing more than the specified number of steps will always use
899# the Galaxy's beta workflow scheduling.
900#force_beta_workflow_scheduled_min_steps=250
901# Switch to using Galaxy's beta workflow scheduling for all workflows involving
902# ccollections.
903#force_beta_workflow_scheduled_for_collections=False
904
905# Enable authentication via OpenID. Allows users to log in to their Galaxy
906# account by authenticating with an OpenID provider.
907#enable_openid = False
908# .sample used if default does not exist
909#openid_config_file = config/openid_conf.xml
910#openid_consumer_cache_path = database/openid_consumer_cache
911
912# XML config file that allows the use of different authentication providers
913# (e.g. LDAP) instead or in addition to local authentication (.sample is used
914# if default does not exist).
915#auth_config_file = config/auth_conf.xml
916
917# Optional list of email addresses of API users who can make calls on behalf of
918# other users.
919#api_allow_run_as = None
920
921# Master key that allows many API admin actions to be used without actually
922# having a defined admin user in the database/config. Only set this if you
923# need to bootstrap Galaxy, you probably do not want to set this on public
924# servers.
925#master_api_key = changethis
926
927# Enable tool tags (associating tools with tags). This has its own option
928# since its implementation has a few performance implications on startup for
929# large servers.
930#enable_tool_tags = False
931
932# Enable a feature when running workflows. When enabled, default datasets
933# are selected for "Set at Runtime" inputs from the history such that the
934# same input will not be selected twice, unless there are more inputs than
935# compatible datasets in the history.
936# When False, the most recently added compatible item in the history will
937# be used for each "Set at Runtime" input, independent of others in the Workflow
938#enable_unique_workflow_defaults = False
939
940# The URL to the myExperiment instance being used (omit scheme but include port)
941#myexperiment_url = www.myexperiment.org:80
942
943# Enable Galaxy's "Upload via FTP" interface. You'll need to install and
944# configure an FTP server (we've used ProFTPd since it can use Galaxy's
945# database for authentication) and set the following two options.
946
947# This should point to a directory containing subdirectories matching users'
948# email addresses, where Galaxy will look for files.
949#ftp_upload_dir = None
950
951# This should be the hostname of your FTP server, which will be provided to
952# users in the help text.
953#ftp_upload_site = None
954
955# Enable enforcement of quotas. Quotas can be set from the Admin interface.
956#enable_quotas = False
957
958# This option allows users to see the full path of datasets via the "View
959# Details" option in the history. Administrators can always see this.
960#expose_dataset_path = False
961
962# Data manager configuration options
963# Allow non-admin users to view available Data Manager options.
964#enable_data_manager_user_view = False
965# File where Data Managers are configured (.sample used if default does not
966# exist).
967#data_manager_config_file = config/data_manager_conf.xml
968# File where Tool Shed based Data Managers are configured.
969#shed_data_manager_config_file = config/shed_data_manager_conf.xml
970# Directory to store Data Manager based tool-data; defaults to tool_data_path.
971#galaxy_data_manager_data_path = tool-data
972
973# -- Job Execution
974
975# To increase performance of job execution and the web interface, you can
976# separate Galaxy into multiple processes. There are more than one way to do
977# this, and they are explained in detail in the documentation:
978#
979# https://wiki.galaxyproject.org/Admin/Config/Performance/Scaling
980
981# By default, Galaxy manages and executes jobs from within a single process and
982# notifies itself of new jobs via in-memory queues. Jobs are run locally on
983# the system on which Galaxy is started. Advanced job running capabilities can
984# be configured through the job configuration file.
985#job_config_file = config/job_conf.xml
986
987# In multiprocess configurations, notification between processes about new jobs
988# must be done via the database. In single process configurations, this can be
989# done in memory, which is a bit quicker.
990#track_jobs_in_database = True
991
992# This enables splitting of jobs into tasks, if specified by the particular tool
993# config.
994# This is a new feature and not recommended for production servers yet.
995#use_tasked_jobs = False
996#local_task_queue_workers = 2
997
998# Enable job recovery (if Galaxy is restarted while cluster jobs are running,
999# it can "recover" them when it starts). This is not safe to use if you are
1000# running more than one Galaxy server using the same database.
1001#enable_job_recovery = True
1002
1003# Although it is fairly reliable, setting metadata can occasionally fail. In
1004# these instances, you can choose to retry setting it internally or leave it in
1005# a failed state (since retrying internally may cause the Galaxy process to be
1006# unresponsive). If this option is set to False, the user will be given the
1007# option to retry externally, or set metadata manually (when possible).
1008#retry_metadata_internally = True
1009
1010# Very large metadata values can cause Galaxy crashes. This will allow
1011# limiting the maximum metadata key size (in bytes used in memory, not the end
1012# result database value size) Galaxy will attempt to save with a dataset. Use
1013# 0 to disable this feature. The default is 5MB, but as low as 1MB seems to be
1014# a reasonable size.
1015#max_metadata_value_size = 5242880
1016
1017# If (for example) you run on a cluster and your datasets (by default,
1018# database/files/) are mounted read-only, this option will override tool output
1019# paths to write outputs to the working directory instead, and the job manager
1020# will move the outputs to their proper place in the dataset directory on the
1021# Galaxy server after the job completes.
1022#outputs_to_working_directory = False
1023
1024# If your network filesystem's caching prevents the Galaxy server from seeing
1025# the job's stdout and stderr files when it completes, you can retry reading
1026# these files. The job runner will retry the number of times specified below,
1027# waiting 1 second between tries. For NFS, you may want to try the -noac mount
1028# option (Linux) or -actimeo=0 (Solaris).
1029#retry_job_output_collection = 0
1030
1031# Clean up various bits of jobs left on the filesystem after completion. These
1032# bits include the job working directory, external metadata temporary files,
1033# and DRM stdout and stderr files (if using a DRM). Possible values are:
1034# always, onsuccess, never
1035#cleanup_job = always
1036
1037# For sites where all users in Galaxy match users on the system on which Galaxy
1038# runs, the DRMAA job runner can be configured to submit jobs to the DRM as the
1039# actual user instead of as the user running the Galaxy server process. For
1040# details on these options, see the documentation at:
1041#
1042# https://wiki.galaxyproject.org/Admin/Config/Performance/Cluster
1043#
1044#drmaa_external_runjob_script = scripts/drmaa_external_runner.py
1045#drmaa_external_killjob_script = scripts/drmaa_external_killer.py
1046#external_chown_script = scripts/external_chown_script.py
1047
1048# File to source to set up the environment when running jobs. By default, the
1049# environment in which the Galaxy server starts is used when running jobs
1050# locally, and the environment set up per the DRM's submission method and
1051# policy is used when running jobs on a cluster (try testing with `qsub` on the
1052# command line). environment_setup_file can be set to the path of a file on
1053# the cluster that should be sourced by the user to set up the environment
1054# prior to running tools. This can be especially useful for running jobs as
1055# the actual user, to remove the need to configure each user's environment
1056# individually.
1057#environment_setup_file = None
1058
1059# Optional file containing job resource data entry fields definition.
1060# These fields will be presented to users in the tool forms and allow them to
1061# overwrite default job resources such as number of processors, memory and
1062# walltime.
1063#job_resource_params_file = config/job_resource_params_conf.xml
1064
1065# If using job concurrency limits (configured in job_config_file), several
1066# extra database queries must be performed to determine the number of jobs a
1067# user has dispatched to a given destination. By default, these queries will
1068# happen for every job that is waiting to run, but if cache_user_job_count is
1069# set to True, it will only happen once per iteration of the handler queue.
1070# Although better for performance due to reduced queries, the tradeoff is a
1071# greater possibility that jobs will be dispatched past the configured limits
1072# if running many handlers.
1073#cache_user_job_count = False
1074
1075# ToolBox filtering
1076
1077# Modules from lib/galaxy/tools/toolbox/filters/ can be specified in
1078# the following lines. tool_* filters will be applied for all users
1079# and can not be changed by them. user_tool_* filters will be shown
1080# under user preferences and can be toogled on and off by
1081# runtime. Example shown below are not real defaults (no custom
1082# filters applied by defualt) but can be enabled with by renaming the
1083# example.py.sample in the filters directory to example.py.
1084
1085#tool_filters =
1086#tool_label_filters =
1087#tool_section_filters =
1088#user_tool_filters = examples:restrict_upload_to_admins, examples:restrict_encode
1089#user_tool_section_filters = examples:restrict_text
1090#user_tool_label_filters = examples:restrict_upload_to_admins, examples:restrict_encode
1091
1092# The base modules that are searched for modules as described above
1093# can be modified and modules external to Galaxy can be searched by
1094# modifying the following option.
1095#toolbox_filter_base_modules = galaxy.tools.toolbox.filters,galaxy.tools.filters
1096
1097# Galaxy Application Internal Message Queue
1098
1099# Galaxy uses AMQP internally TODO more documentation on what for.
1100# For examples, see http://ask.github.io/kombu/userguide/connections.html
1101#
1102# Without specifying anything here, galaxy will first attempt to use your
1103# specified database_connection above. If that's not specified either, Galaxy
1104# will automatically create and use a separate sqlite database located in your
1105# <galaxy>/database folder (indicated in the commented out line below).
1106
1107#amqp_internal_connection = sqlalchemy+sqlite:///./database/control.sqlite?isolation_level=IMMEDIATE
1108
1109
1110
1111# ---- Galaxy External Message Queue -------------------------------------------------
1112
1113# Galaxy uses Advanced Message Queuing Protocol (AMQP) to receive messages from
1114# external sources like barcode scanners. Galaxy has been tested against
1115# RabbitMQ AMQP implementation. For Galaxy to receive messages from a message
1116# queue, the RabbitMQ server has to be set up with a user account and other
1117# parameters listed below. The 'host' and 'port' fields should point to where
1118# the RabbitMQ server is running.
1119
1120[galaxy_amqp]
1121
1122#host = 127.0.0.1
1123#port = 5672
1124#userid = galaxy
1125#password = galaxy
1126#virtual_host = galaxy_messaging_engine
1127#queue = galaxy_queue
1128#exchange = galaxy_exchange
1129#routing_key = bar_code_scanner
1130#rabbitmqctl_path = /path/to/rabbitmqctl