-
Notifications
You must be signed in to change notification settings - Fork 16
/
ckan.ini
377 lines (286 loc) · 12.2 KB
/
ckan.ini
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
#
# CKAN - Pylons configuration
#
# These are some of the configuration options available for your CKAN
# instance. Check the documentation in 'doc/configuration.rst' or at the
# following URL for a description of what they do and the full list of
# available options:
#
# http://docs.ckan.org/en/latest/maintaining/configuration.html
#
# The %(here)s variable will be replaced with the parent directory of this file
#
[DEFAULT]
# WARNING: *THIS SETTING MUST BE SET TO FALSE ON A PUBLIC ENVIRONMENT*
# With debug mode enabled, a visitor to your site could execute malicious commands.
debug = true
[app:celery]
BROKER_BACKEND = redis
BROKER_HOST = $CKAN_REDIS_URL
CELERY_RESULT_BACKEND = redis
[app:main]
use = egg:ckan
## Development settings
ckan.devserver.host = localhost
ckan.devserver.port = 5000
## Session settings
cache_dir = /tmp/%(ckan.site_id)s/
beaker.session.key = ckan
# This is the secret token that the beaker library uses to hash the cookie sent
# to the client. `ckan generate config` generates a unique value for this each
# time it generates a config file.
beaker.session.secret = TShFJxS41xNdVJAxQsoIEm5zu
beaker.session.type=ext:database
#beaker.session.url=postgresql://ckan:ckan@db/ckan
beaker.session.cookie_expires=true
beaker.session.secure = True
beaker.session.samesite = Lax
beaker.session.url = $CKAN___BEAKER__SESSION__URL
beaker.session.timeout=900
# CKAN caching
ckan.cache_expires = 3600
ckan.cache_enabled = True
# `ckan generate config` generates a unique value for this each time it generates
# a config file.
app_instance_uuid = 092e6c01-feec-42c8-b05d-9f311c8eddda
# repoze.who config
who.config_file = %(here)s/who.ini
who.log_level = warning
who.log_file = %(cache_dir)s/who_log.ini
# Session timeout (user logged out after period of inactivity, in seconds).
# Inactive by default, so the session doesn't expire.
who.timeout = 900
who.secure = True
ckan.csrf_protection.ignore_extensions=False
## Database Settings
# sqlalchemy.url = postgresql://ckan_default:pass@localhost/ckan_default
# Possible tweaks to production sizing
# sqlalchemy.pool_size = {{ sqlalchemy_pool_size }}
# sqlalchemy.max_overflow = {{ sqlalchemy_max_overflow }}
#ckan.datastore.write_url = postgresql://ckan_default:pass@localhost/datastore_default
#ckan.datastore.read_url = postgresql://datastore_default:pass@localhost/datastore_default
# PostgreSQL' full-text search parameters
ckan.datastore.default_fts_lang = english
ckan.datastore.default_fts_index_method = gist
## Site Settings
# ckan.site_url =
#ckan.use_pylons_response_cleanup_middleware = true
## Authorization Settings
ckan.auth.anon_create_dataset = false
ckan.auth.create_unowned_dataset = false
ckan.auth.create_dataset_if_not_in_organization = false
ckan.auth.user_create_groups = false
ckan.auth.user_create_organizations = false
ckan.auth.user_delete_groups = false
ckan.auth.user_delete_organizations = false
ckan.auth.create_user_via_api = false
ckan.auth.create_user_via_web = false
ckan.auth.roles_that_cascade_to_sub_groups = admin
ckan.auth.public_user_details = false
ckan.auth.public_activity_stream_detail = false
ckan.auth.allow_dataset_collaborators = false
ckan.auth.create_default_api_keys = false
## API Token Settings
# Take default, https://docs.ckan.org/en/2.9/maintaining/configuration.html#api-token-settings
## API Token: expire_api_token plugin
# expire_api_token.default_lifetime = 3600
## Search Settings
ckan.site_id = datagov_catalog
# solr_url = http://127.0.0.1:8983/solr
# ckan.search.solr_commit = false
ckan.search.solr_allowed_query_parsers = frange
## Redis Settings
# URL to your Redis instance, including the database to be used.
#ckan.redis.url = redis://localhost:6379/0
## CORS Settings
# Allow dataset count to populate on data.gov
ckan.cors.origin_allow_all = False
ckan.cors.origin_whitelist = https://data.gov https://www.data.gov
## Plugins Settings
# Note: Add ``datastore`` to enable the CKAN DataStore
# Add ``datapusher`` to enable DataPusher
# Add ``resource_proxy`` to enable resorce proxying and get around the
# same origin policy
# TODO: Re-enable pending https://github.com/GSA/data.gov/issues/3986
# qa archiver
ckan.plugins = image_view text_view recline_view metrics_dashboard report ckan_harvester datajson_validator datajson_harvest geodatagov datagovtheme datagov_harvest geodatagov_miscs z3950_harvester arcgis_harvester geodatagov_geoportal_harvester waf_harvester_collection geodatagov_csw_harvester geodatagov_doc_harvester geodatagov_waf_harvester spatial_metadata spatial_query spatial_harvest_metadata_api dcat dcat_json_interface structured_data datagovcatalog saml2auth envvars
# Define which views should be created by default
# (plugins must be loaded in ckan.plugins)
ckan.views.default_views = image_view text_view recline_view
# Customize which text formats the text_view plugin will show
#ckan.preview.json_formats = json
#ckan.preview.xml_formats = xml rdf rdf+xml owl+xml atom rss
#ckan.preview.text_formats = text plain text/plain
# Customize which image formats the image_view plugin will show
#ckan.preview.image_formats = png jpeg jpg gif
ckan.spatial.validator.profiles = iso19139ngdc
## Front-End Settings
ckan.site_title = Catalog
ckan.site_logo = /images/logo-geodata-small.png
ckan.site_description =
ckan.favicon = /images/favicon.ico
ckan.gravatar_default = identicon
ckan.preview.direct = png jpg gif
ckan.preview.loadable = html htm rdf+xml owl+xml xml n3 n-triples turtle plain atom csv tsv rss txt json
ckan.display_timezone = server
# package_hide_extras = for_search_index_only
#package_edit_return_url = http://another.frontend/dataset/<NAME>
#package_new_return_url = http://another.frontend/dataset/<NAME>
#ckan.recaptcha.publickey =
#ckan.recaptcha.privatekey =
#licenses_group_url = http://licenses.opendefinition.org/licenses/groups/ckan.json
# ckan.template_footer_end =
# TODO: Integrate this in datagovtheme and remove
ckan.template_head_end = <link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css">
## Internationalisation Settings
ckan.locale_default = en
# ckan.locale_order = en pt_BR ja it cs_CZ ca es fr el sv sr sr@latin no sk fi ru de pl nl bg ko_KR hu sa sl lv
# ckan.locales_offered =
ckan.locales_filtered_out = am ar bg bs ca cs_CZ da_DK de el en_AU en_GB es es_AR eu fa_IR fi fr gl he hr hu id is it ja km ko_KR lt lv mk mn_MN my_MM nb_NO ne nl no pl pt_BR pt_PT ro ru sk sl sq sr sr_Latn sv th tl tr uk uk_UA vi zh_Hans_CN zh_Hant_TW
## Feeds Settings
ckan.feeds.authority_name =
ckan.feeds.date =
ckan.feeds.author_name =
ckan.feeds.author_link =
## Storage Settings
#ckan.storage_path = /var/lib/ckan
#ckan.max_resource_size = 10
#ckan.max_image_size = 2
## Webassets Settings
#ckan.webassets.use_x_sendfile = false
#ckan.webassets.path = /var/lib/ckan/webassets
# Resource Proxy settings
# Preview size limit, default: 1MB
ckan.resource_proxy.max_file_size = 52428800
# Size of chunks to read/write.
#ckan.resource_proxy.chunk_size = 4096
## Activity Streams Settings
#ckan.activity_streams_enabled = true
#ckan.activity_list_limit = 31
#ckan.activity_streams_email_notifications = true
#ckan.email_notifications_since = 2 days
ckan.hide_activity_from_users = %(ckan.site_id)s
## Email settings
#email_to = errors@example.com
#error_email_from = ckan-errors@example.com
#smtp.server = localhost
#smtp.starttls = False
#smtp.user = username@example.com
#smtp.password = your_password
#smtp.mail_from =
#smtp.reply_to =
## Background Job Settings
ckan.jobs.timeout = 180
ckan.tracking_enabled = True
# Disable this in favor of CKANEXT__DATAGOVTHEME__JS_RECENT_VIEW
ckanext.datagovcatalog.add_packages_tracking_info = false
# Render recent view using AJAX call to boost page loading speed
ckanext.datagovtheme.js_recent_view = true
# Max number of resources to be allowed in a dataset to be harvested
ckanext.datajson.max_resource_count = 1500
## Spatial settings
ckanext.spatial.search_backend = solr-bbox
# Customize map widget
ckanext.spatial.common_map.type = custom
# three map tile servers options are described at
# https://github.com/GSA/data.gov/issues/4493#issuecomment-1791347298
# otpion 1: paid service
# ckanext.spatial.common_map.custom_url = https://tiles.stadiamaps.com/tiles/stamen_terrain/{z}/{x}/{y}{r}.png
# ckanext.spatial.common_map.attribution = <a href=https://stadiamaps.com/>Stadia Maps</a>. <a href=https://openstreetmap.org/>OpenStreetMap</a> contributors
# option 2: free .gov service but less zoom levels
# ckanext.spatial.common_map.custom_url = https://basemap.nationalmap.gov/arcgis/rest/services/USGSTopo/MapServer/tile/{z}/{y}/{x}
# ckanext.spatial.common_map.attribution = Tiles courtesy of the <a href="https://usgs.gov/">U.S. Geological Survey</a>
# option 3: free .org service with CND caching to reduce load on the server
ckanext.spatial.common_map.custom_url = /maptiles/{z}/{x}/{y}.png
ckanext.spatial.common_map.attribution = <a href="http://openstreetmap.org/copyright">OpenStreetMap</a> contributors
## Harvest settings
# ckanext-harvest will use ckan.redis.url if redis configuration
# is not specified here.
# Mark as finished Jobs in 'Running' status after x minutes (4320 min = 72 hours)
ckan.harvest.timeout = 4320
# define the time frame in days to clean the harvest logs
ckan.harvest.log_timeframe = 180
ckan.harvest.mq.type = redis
ckanext.harvest.email = on
ckan.harvest.status_mail.all=True
## SAML2auth Settings
# TODO fetch and verify remote metadata https://github.com/GSA/datagov-deploy/issues/2860
ckanext.saml2auth.idp_metadata.location=local
#ckanext.saml2auth.idp_metadata.local_path = $CKANEXT__SAML2AUTH__IDP_METADATA__LOCAL_PATH
#ckanext.saml2auth.key_file_path = $CKANEXT__SAML2AUTH__KEY_FILE_PATH
#ckanext.saml2auth.cert_file_path = $CKANEXT__SAML2AUTH__CERT_FILE_PATH
ckanext.saml2auth.user_firstname=first_name
ckanext.saml2auth.user_lastname=last_name
ckanext.saml2auth.user_email=email
ckanext.saml2auth.allow_unknown_attributes=true
ckanext.saml2auth.sp.name_id_format=urn:oasis:names:tc:saml:2.0:nameid-format:persistent urn:oasis:names:tc:saml:2.0:nameid-format:transient urn:oasis:names:tc:saml:2.0:nameid-format:emailaddress
#ckanext.saml2auth.entity_id = $CKANEXT__SAML2AUTH__ENTITY_ID
ckanext.saml2auth.want_response_signed=false
ckanext.saml2auth.want_assertions_signed=false
ckanext.saml2auth.want_assertions_or_response_signed=true
ckanext.saml2auth.requested_authn_context = http://idmanagement.gov/ns/assurance/aal/3?hspd12=true
ckanext.saml2auth.enable_ckan_internal_login=false
ckanext.saml2auth.create_user_via_saml=false
# ckanext-geodatagov settings
ckanext.geodatagov.bureau_csv.url=https://resources.data.gov/schemas/dcat-us/v1.1/omb_bureau_codes.csv
ckanext.geodatagov.bureau_csv.url_default=https://resources.data.gov/schemas/dcat-us/v1.1/omb_bureau_codes.csv
ckanext.geodatagov.metrics_csv.aws_storage_path = gsa/catalog-next/metrics/
ckanext.geodatagov.s3sitemap.aws_storage_path = gsa/catalog-next/sitemap/
ckanext.geodatagov.jsonlexport.aws_storage_path = gsa/catalog-next/jsonl/
ckanext.geodatagov.s3sitemap.aws_s3_url = https://filestore.data.gov/
ckanext.geodatagov.aws_bucket_name = {{catalog_bucket_name}}
ckanext.geodatagov.aws_access_key_id = _placeholder
ckanext.geodatagov.aws_secret_access_key = _placeholder
# DataGovTheme settings
ckanext.datagovtheme.use.archiver=false
ckanext.datagovtheme.use.qa=false
# Archiver Settings
ckanext-archiver.cache_url_root={{ckan_site_domain}}
ckanext-archiver.max_content_length=10240
## Logging configuration
[loggers]
keys = root, ckan, ckanext, werkzeug, saml2, model
[handlers]
keys = console,consoleerror
[formatters]
keys = generic
[logger_root]
level = WARNING
handlers = console,consoleerror
[logger_werkzeug]
level = WARNING
handlers = console,consoleerror
qualname = werkzeug
propagate = 0
[logger_ckan]
level = INFO
handlers = console,consoleerror
qualname = ckan
propagate = 0
[logger_model]
level = INFO
handlers = console,consoleerror
qualname = ckan.model
propagate = 0
[logger_ckanext]
level = DEBUG
handlers = console,consoleerror
qualname = ckanext
propagate = 0
[logger_saml2]
level = INFO
handlers = console,consoleerror
qualname = saml2
propagate = 0
[handler_console]
class = StreamHandler
args = (sys.stdout,)
level = NOTSET
formatter = generic
[handler_consoleerror]
class = StreamHandler
args = (sys.stderr,)
level = ERROR
formatter = generic
[formatter_generic]
format = %(asctime)s %(levelname)-5.5s [%(name)s] %(message)s